Changing Greyhole Mount Points

From Amahi Wiki
Jump to: navigation, search

DISCLAIMER

This is what worked for me. This may not work for you. I recommend testing this ONLY if all of your data is backed up and recoverable outside of Greyhole. Amahi cannot be held responsible if you lose all of your data attempting this.

How To Do It

Stop Greyhole

In the HDA dashbaord:

  • Setup > Settings > Servers > Greyhole
  • Uncheck Watchdog and then press the Stop It button.


NOTE: All commands must be done as root user (Fedora) or preceded with sudo (Ubuntu).

Change Mount Points

Unmount your data drives

umount -a

Verify this completed by checking your data drives are not mounted

mount

Create your new mount points

mkdir /var/hda/files/drives/bay2
mkdir /var/hda/files/drives/bay3
mkdir /var/hda/files/drives/bay4

Backup fstab

cp /etc/fstab /etc/fstab.bak.2013.05.01

You could just use fstab.bak, but I prefer to have my backups dated.

Edit fstab

nano /etc/fstab

Look for your mount points and change them to the new folders you want to mount the data drives in.

If you haven't commented your fstab file, now's a good time for that. Here's mine:

# <file system>                           <mount point>             <type>  <options>                  <dump>  <pass>
proc                                      /proc                      proc    nodev,noexec,nosuid        0       0
# / was on /dev/sda1 during installation
UUID=45e7d257-a7cc-4a36-9dd8-20929ad54b0e /                          ext4    errors=remount-ro          0       1
# swap was on /dev/sda5 during installation
UUID=c4d9f59e-1d7b-47ba-a956-e0e8a231bc10 none                       swap    sw                         0       0
########################################## Mount 4TB Seagate drive in Bay 2 from bottom ######################
UUID=05c05271-7309-4244-9dd8-8c2d6c5aeacd /var/hda/files/drives/bay2 ext4 noatime,data=writeback,nofail 1       2
########################################## Mount 2TB Seagate drive in Bay 3 from Bottom ######################
UUID=489e45f4-16ef-4a65-47ba-456e465a4b4c /var/hda/files/drives/bay4 ext4 noatime,data=writeback,nofail 1       2

Remount the Drives

mount -a

If there are any errors from this command, FIX THEM before you reboot.

Check the drives have mounted in the new mount points with:

mount

Reboot

From the HDA dashboard:

  • Setup > Settings > Settings > click the reboot button.

Fix Greyhole

Some of these steps may not be necessary, but this is the path I took that got me results.

Several of these steps can take a LONG time depending on how many files are on the drives you have remounted.

I recommend keeping an eye on greyhole to ensure it is doing what it should.

tail -f /var/log/greyhole.log​

Press Ctrl+Z to pause this task. Note the number in brackets or use the "jobs" command to see where it is queued.

Bring it to the foreground to check it at anytime with:

fg 1

1 being the first task in the background.

Restart Greyhole

From the HDA dashboard:

  • Setup > Settings > Servers > Greyhole
  • Ensure Greyhole is started and the watchdog option is checked.

Add Drives to Greyhole

From the HDA dashboard:

  • Shares > Storage Pool > Check the drives (should be listed under the new mount points)
  • If your old mount points are still checked, uncheck them.

Remove invalid symlinks

greyhole --fix-symlinks

At this point all of your files that were located on a drive whose mount point was changed will disappear from your shares.

This is because the symlinks were no longer valid and greyhole is still looking for them in their old folders.

Bring up the log and watch it work away at removing all those symlinks.
Wait until it has completed.

Delete Orphaned Metadata

greyhole --fsck --delete-orphaned-metadata

This will remove any metadata still stored for those missing files. It is necessary for the next step to work.

Find the Orphaned Files

greyhole --fsck --find-orphaned-files --dir=/var/hda/files/drives/bay2/gh

This will run an fsck on the drive mounted in /var/hda/files/drives/bay2 and look for files without metadata.

Repeat this for each drive you have changed the mount points for.
At this point, your files should begin reappearing in your shares. If not, try running another fsck:

greyhole --fix-symlinks
greyhole --fsck