Bir projede harici diskteki görsellerin web de gösterilmesi gerekti. Çözüm olarak kaynak klasörü hedef klasöre şu şekilde mount ettim:
sudo mount -a /kaynak /var/www/hedef
Uyarı: Web kullanıcısının www ile aynı kullanıcı olması gerekiyor.
Mount edilen klasörün sistem her yeniden başladığında otomatik olarak mount edilmesi için /etc/init.d/foldermounter dosyasına bir bash servis yazdım:
#!/bin/bash
### BEGIN INIT INFO
# Provides: foldermounter
# Required-Start: $local_fs $syslog $remote_fs dbus
# Required-Stop: $local_fs $syslog $remote_fs
# Default-Start: 2 3 4 5
# Default-Stop: 0 1 6
# Short-Description: Auto mount: /kaynak to /var/www/hedef
### END INIT INFO
mount -o bind /kaynak /var/www/hedef
Yazılan bu servise aşağıdaki gibi gerekli izin verilerek başlangıca eklenir ve kontrol edilir:
chmod +x /etc/init.d/matemounter
chkconfig --add matemounter
chkconfig --list
log uyarısı almamak için mount edilen kaynak klasörün her üst klasörün herkes tarafından okunma iznine sahip olması gerekiyor:
chmod o+r /parent
chmod o+r /parent/child
Servis yazmamın sebebi öncelikle harici harddiski mount edip ardından harici harddiskteki klasörü mount etmekten kaynaklıydı. Eğer yerel bir klasör başka bir hedefe mount edilecek olsaydı /etc/fstab dosyasında en alta şu şekilde kayıt yazılabilirdi:
/yerel-kaynak /var/www/hedef auto auto,bind 0 0