Skip to content

lbendig/mucommander

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Mucommander

muCommander is a lightweight, cross-platform file manager with a dual-pane interface.

Motivation

Forked from mucommander-svn, this modification replaces the already existing Hadoop [HDFS] (http://hadoop.apache.org/docs/stable/hdfs_user_guide.html) support (which only supports 0.20.0) and also enables Quantcast File System (QFS) browsing.
The patch removes the Hadoop dependency from muCommander's runnable fat JAR, and makes it possible to provide an arbitrary Hadoop/QFS version via command line parameters. Loading of the classes are done dynamically during application startup. If such a dependency is not provided, the application starts without the corresponding file protocol support.

Hadoop support (hdfs://)

Provide the location of Hadoop dependencies via the --hadoop command line option.

java -jar mucommander-hadoop-qfs.jar --help
...
--hadoop FILE/FOLDER  HDFS Protocol support: location of Hadoop jar(s) : FILE(core-jar) or FOLDER(as of 0.21)

Note, that as of Hadoop 0.21 the hadoop-core has been split into three subprojects (Common, HDFS, MapReduce), pass the directory path in this case.

muCommander works with any* Hadoop vesions.
* Tested on:

hadoop-0.20.0
hadoop-0.20.1
hadoop-0.20.2
hadoop-0.21.0
hadoop-0.20.203.0
hadoop-0.20.204.0
hadoop-0.20.205.0
hadoop-0.23.0
hadoop-0.22.0
hadoop-1.0.0
hadoop-0.23.1
hadoop-1.0.1
hadoop-1.0.2
hadoop-1.0.3
hadoop-2.0.0-alpha
hadoop-2.0.1-alpha
hadoop-0.23.3
hadoop-2.0.2-alpha
hadoop-1.0.4
hadoop-1.1.0
hadoop-0.23.4
hadoop-0.23.5
hadoop-1.1.1
hadoop-0.23.6
hadoop-2.0.3-alpha
hadoop-1.1.2
hadoop-0.23.7 
hadoop-2.0.4-alpha
hadoop-1.2.0
hadoop-0.23.8
hadoop-2.0.5-alpha
hadoop-0.23.9
hadoop-1.2.1
hadoop-2.0.6-alpha
hadoop-2.1.0-beta
hadoop-2.1.1-beta
hadoop-2.2.0
hadoop-0.23.10
hadoop-2.3.0
hadoop-2.4.0

Cloudera releases: 0.20, 0.23 and 2.0.0

Quantcast File System (QFS) support (qfs://).

Access to the QFS C++ libraries is done via the qfs-access JNI wrapper.
Make sure that the location of the compiled QFS binaries (../qfs/build/release/bin) is in the LD_LIBRARY_PATH. Also provide the location of qfs-access.jar via the --qfs command line option:

java -jar mucommander-hadoop-qfs.jar --help
...
--qfs FILE  QFS Protocol support: location of qfs-access.jar

Compiling

mucommander-common-files

git clone https://github.com/lbendig/mucommander-commons-file.git
cd mucommander-commons-file
ant publish # publishes jar to default local repository : ~/.ivy2/local

mucommander

git clone https://github.com/lbendig/mucommander.git
cd mucommander
cp build_template.properties build.properties
ant jar

The runnable mucommander-hadoop-qfs.jar will be created under mucommander/tmp

Examples

java -jar mucommander-hadoop-qfs.jar --hadoop /home/user/hadoop/hadoop-1.0.0/hadoop-core-1.0.0.jar
java -jar mucommander-hadoop-qfs.jar --hadoop /home/user/hadoop/hadoop-2.0.0-cdh4.1.2

export LD_LIBRARY_PATH=/home/user/code/qfs/build/release/lib; \
java -jar mucommander-hadoop-qfs.jar --hadoop /home/user/hadoop/hadoop-2.0.0-cdh4.1.2 \
--qfs /home/user/qfs/build/java/qfs-access/qfs-access-1.0.1.jar

Binary distribution

mucommander-hadoop-qfs.jar

Misc

  • Use master branch, svn-sync is just for synchronizing with mucommander-svn

About

Supports any HDFS version, Quantcast QFS

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages