Showing posts with label File Systems. Show all posts
Showing posts with label File Systems. Show all posts

Configuring NFS Server for Performance

Finally, a more detailed writeup on NFS configuration which I was hoping to blog. Finally it is done.
Do read Configuring NFS Server for Performance

Fsniper

Fsniper is a tool that watches for new or modified files and executes commands on the basis of the file name critieria. The tools can also respond to MIME types (MP3, mpeg etc).

After downloading the source from the project homepage
# ./configure
# ./make
# ./make install

Create the configuration file at your home folder in .config folder
# ~/.config/fsniper/config file

Copy the example.conf from source folder and modify it.

For more information, see Fsniper Project Homepage

How to install SSHFS and FUSE

  1. SSH File System (SSHFS) Website: http://fuse.sourceforge.net/sshfs.html
    Filesystem in UserSpace (FUSE) Website: http://fuse.sourceforge.net/

    How to install SSHFS and FUSE: http://crazytoon.com/2008/10/07/sshfs-how-do-you-install-sshfs-and-fuse-centoslinuxredhat/
  2. Some potential error during my installation:

    "fuse: failed to open /dev/fuse: Permission denied", the solution is to use root to run"chmod o+rw /dev/fuse"

    "sshfs: error while loading shared libraries: libfuse.so.2: cannot open shared object file: No such file or directory." The solution is to run "ln -s /usr/local/lib/libfuse.so.2 /lib64/" for 64 bit or ln -s /usr/local/lib/libfuse.so.2 /lib/ for 32-bit

NFS Client Recommended Configuration

NFS is one of the most commonly used file networked file system. Quite often we build it ourselves using standard out-of-the-box hardware we find. This NFS Client Recommended Configuration (my blog too) shows in slightly more details how to configure the mounting of the NFS clients

EXT3-fs error (device hda3) in start_transaction: Journal has aborted

Taken from Racker Hacker *(http://rackerhacker.com/2007/11/20/ext3-fs-error-device-hda3-in-start_transaction-journal-has-aborted/)

If your system abruptly loses power, or if a RAID card is beginning to fail, you might see an ominous message like this within your logs:

EXT3-fs error (device hda3) in start_transaction: Journal has aborted

Basically, the system is telling you that it’s detected a filesystem/journal mismatch, and it can’t utilize the journal any longer. When this situation pops up, the filesystem gets mounted read-only almost immediately. To fix the situation, you can remount the partition as ext2 (if it isn’t your active root partition), or you can commence the repair operations.

If you’re working with an active root partition, you will need to boot into some rescue media and perform these operations there. If this error occurs with an additional partition besides the root partition, simply unmount the broken filesystem and proceed with these operations.
Remove the journal from the filesystem (effectively turning it into ext2):

# tune2fs -O ^has_journal /dev/hda3


Now, you will need to fsck it to correct any possible problems (throw in a -y flag to say yes to all repairs, -C for a progress bar):

# e2fsck /dev/hda3

Once that's finished, make a new journal which effectively makes the partition an ext3 filesystem again

# tune2fs -j /dev/hda3

You should be able to mount the partition as an ext3 partition at this time:

# mount -t ext3 /dev/hda3 /mnt/fixed

Be sure to check your dmesg output for any additional errors after you’re finished!

Ksplice - Install updates without Rebooting

Ksplice Uptrack and discover how you can:


  1. Keep your systems up to date and secure, without rebooting.
  2. Save time by updating in seconds, while your systems are running.
  3. Avoid disruptive downtime.
  4. Prevent costly security incidents by patching in a timely manner.
It is free for Ubuntu 9.04 and 9.10. For more technical details on how ksplice works, you can take a look at
ksplice technical paper

Manually Changing FAT permission on USB

FAT32 does not support file permission and ownerships. In order to support permission and ownership, you have to use umask for permission and uid/gid for user and group permission. Basically umask=000 will results in rwxrwxrwx.

# mkdir -p /media/usb
# mount -t vfat -o umask=000,uid=youruserid,gid=users /dev/sdb1 /media/usb

The results will be
drwxrwxr-x 3 youruserid users 12288 1970-01-01 07:30 usb

If you want to mount the usb and only allows yourself and users in the group to view it, you can use umask=007

# mount -t vfat -o umask=007,uid=youruserid,gid=users /dev/sdb1 /media/usb


Notes on umask:

To calculate permissions which will result from specific UMASK values, subtract the UMASK from 666 for files and from 777 for directories.

If you want all files created with permissions of 666, set your UMASK to 000. Alternatively, if you want all files created with permissions of 000, set your UMASK to 666.