| Original authors of zkfuse are Swee Lim & Bartlomiej M Niechwiej of Yahoo. |
| ' |
| ZooKeeper FUSE (File System in Userspace) |
| ========================================= |
| |
| Pre-requisites |
| -------------- |
| 1. Linux system with 2.6.X kernel. |
| 2. Fuse (Filesystem in Userspace) must be installed on the build node. |
| 3. Development build libraries: |
| a. fuse |
| b. log4cxx |
| c. pthread |
| d. boost |
| |
| Build instructions |
| ------------------ |
| 1. cd into this directory |
| 2. autoreconf -if |
| 3. ./configure |
| 4. make |
| 5. zkfuse binary is under the src directory |
| |
| Testing Zkfuse |
| -------------- |
| 1. Depending on permission on /dev/fuse, you may need to sudo -u root. |
| * If /dev/fuse has permissions 0600, then you have to run Zkfuse as root. |
| * If /dev/fuse has permissions 0666, then you can run Zkfuse as any user. |
| 2. Create or find a mount point that you have "rwx" permission. |
| * e.g. mkdir -p /tmp/zkfuse |
| 3. Run Zkfuse as follows: |
| zkfuse -z <hostspec> -m /tmp/zkfuse -d |
| -z specifies ZooKeeper address(es) <host>:<port> |
| -m specifies the mount point |
| -d specifies the debug mode. |
| For additional command line options, try "zkfuse -h". |
| |
| FAQ |
| --- |
| Q. How to fix "warning: macro `AM_PATH_CPPUNIT' not found in library"? |
| A. * install cppunit (src or pkg) on build machine |
| |
| Q. Why can't Zkfuse cannot write to current directory? |
| A. * If Zkfuse is running as root on a NFS mounted file system, it will not |
| have root permissions because root user is mapped to another user by |
| NFS admin. |
| * If you run Zkfuse as root, it is a good idea to run Zkfuse from a |
| directory that you have write access to. This will allow core files |
| to be saved. |
| |
| Q. Why Zkfuse cannot mount? |
| A. * Check that the mount point exists and you have "rwx" permissions. |
| * Check that previous mounts have been umounted. If Zkfuse does not |
| exit cleanly, its mount point may have to be umounted manually. |
| If you cannot umount manually, make sure that there no files is open |
| within the mount point. |
| |
| Q. Why does Zkfuse complain about logging at startup? |
| A. * Zkfuse uses log4cxx for logging. It is looking for log4cxx.properties |
| file to obtain its logging configuration. |
| * There is an example log4cxx.properties file in the Zkfuse source |
| directory. |
| |