В одной из предыдущих статей мы рассказывали про проблему, связанную с ограничением количества одновременных подключений к общим папкам на клиентских ОС. И, как в ней было сказано, решение этой проблемы, в общем-то, одно: установка OS X Server. Предположим, вы установили OS X Server, настроили общий доступ к нужным вам папкам, и теперь к ним может подключиться неограниченное количество пользователей. Вроде бы тут и сказке конец? Отнюдь! Именно теперь у вас может возникнуть потребность отслеживать действия пользователей в ваших общих папках. Согласитесь, бывает полезно узнать кто, когда и какой файл удалил или добавил (особенно, если этого делать не следовало). И, как выяснилось, устроить это довольно просто.
Достаточно открыть Терминал из папки «Утилиты» и ввести команду sudo serveradmin settings afp:activityLog=yes
Готово! Теперь в Консоли (которую можно запустить из папки «Утилиты») добавится новый лог-файл «AppleFileServerAccess.log», в котором будут храниться записи обо всех действиях совершенных пользователями, подключенными к общим папкам на вашем сервере с указанием IP-адреса компьютера, с которого поступила та или иная команда.
Стоит отметить, что AFP – протокол довольно «болтливый», а значит файл с логами будет занимать довольно много места на диске, что стоит учитывать, особенно если место на вашем компьютере в дефиците.
Также не стоит забывать, что данный трюк распространяется только на подключения через AFP. Если вы также используете подключения по SMB, информация про них в «AppleFileServerAccess.log» добавляться не будет. С логами SMB подключений всё немного сложнее. Дело в том, что в SMBX, который в OS X 10.7 пришел на смену Samba, штатная функция ведения логов не предусмотрена. Однако, можно включить режим откладки для этого сервиса, и, таким образом, логи SMB подключений будут отображаться в файле «system.log».
Для этого можно воспользоваться программой Property List Editor, о которой мы уже упоминали в одной из предыдущих статей.
- Загрузите Property List Editor добавьте её в папку «Программы».
- Запустите Терминал из папки «Утилиты» и введите следующую команду
sudo /Applications/Property\ List\ Editor.app/Contents/MacOS/Property\ List\ Editor /System/Library/LaunchDaemons/com.apple.smbd.plist
- Введите пароль администратора.
- В результате у вас откроется окно программы, в котором нам нужно найти раздел «Program Arguments».
- Выделите этот раздел и нажмите кнопку «Add Child».
- В добавленной строке в поле «Value» добавьте значение
-debug
- Таким же образом добавьте еще одну строку и добавьте в графу «Value» значение
-stdout
В результате у вас должно получиться следующее:
После этого сохраните изменения в меню File → Save (или сочетанием клавиш ⌘Command + S), закройте программу и перезагрузите компьютер. После перезагрузки логи SMB подключений можно будет найти в Консоли в файле «system.log», что, конечно, не так удобно, как в случае с AFP, но значительно лучше, чем ничего.