Понадобилось мне примонтировать жесткие сетевые диски в Мак оси. Делается это как и в Линукск командой mount. Усложним задачу - сделаем монтирование при загрузке системы. У меня MAC OS 10.6 (Snow Leopard).
В Линукс это делается просто - fstab. В MAC OS X нет fstab. Точнее файл есть, но не используется. Сделать просто shell script и поставить его при загрузке не так уж и тривиально.
Рассмотрим, как все сделать из консоли. Первым делом, пишем шелл скрипт:cat mountdrv.sh
#!/bin/bash
mount -o soft,intr,rsize=8192,wsize=8192 192.168.0.11:/data/arch /usr/arch
Монтируем \\192.168.0.11\data\arch в /usr/arch
Даем права на запуск, 644, например.
chmod 644 mountdrv.sh
Далее нам надо поставить скрипт на загрузку. Для этого надо создать plist файл. Это проперти файл для системного агента launchctl.
cat test1.plist
Что надо знать:
Кладем файл в /Library/LaunchDaemons для буут скрипта, в /Library/LaunchAgents для логин скрипта. Для буут скрипта owner - root, для login скрипта - user
Далее надо зарегистрировать скрипт командой launchctl load test1.plist
Перед эти надо дать нужные права файлу. Например с 777 работать не будет
root# ls -lt
-rwxrwxrwx 1 root wheel 449 Jan 12 10:28 test1.plist
root#launchctl load test1.plist
launchctl: Dubious permissions on file (skipping): test1.plist nothing found to load
Работает только с 644.
root# chmod 644 test1.plist
root# ls -lt
-rw-r--r-- 1 root wheel 449 Jan 12 10:28 test1.plist
root#df -h
Filesystem Size Used Avail Capacity Mounted on
192.168.0.11:/data/arch 20Ti 2.9Ti 17Ti 15% /usr/arch
Что касается папок для launchctl , нашел такую справку
Applications that run on Startup:
/Library/StartupItems
plist items running on startup:
/Library/LaunchDaemons
/System/Library/LaunchDaemons
Applications that launch on User Login:
* First check your “Login Items” for that user account within the Account settings of System Preferences
~/Library/LaunchAgents
/Library/LaunchAgents/
/System/Library/LaunchAgents/
Если кто-то знает проще метод, дайте знать.
No comments:
Post a Comment