Команда lock

Продолжим нашу серию про не слишком известные, но полезные команды, “в записную книжку админа”. На очереди у нас уже однажды упоминавшаяся команда lock.

Напомню вкратце. В системе совместного доступа, какой является NAS, для того, чтобы обеспечить отсутствие конфликтов доступа, используется метод так называемого “локирования” доступа к файлу.  Это необходимо для предотвращения возможности одновременной, но неснхронизированной записи в один и тот же файл от разных клиентов, не знающих о том, что сосед тоже решил изменить тот же самый файл, уже открытый одним клиентом. Для предотвращения такой ситуации, первый открывший файл клиент получает исключительные права на запись в файл (локирует файл на запись), остальные же – только на чтение, до тех пор, пока первый клиент не закончит записи в файл.
Возможно два типа локирования, так называемый file lock, при котором ограничивается доступ на запись в файл целиком для всех, кроме залокировавшего файл на запись клиента, и byte range lock, при котором ограничивается запись к определенному участку файла.

С помощью команды lock status можно посмотреть, какой хост и какой пользователь локировал тот или иной файл на NAS-системе.

fas1>  lock status –p cifs –h  (показывает локи сортированные по имени хоста)
CIFS host=172.18.2.107(VUSER01-VPC) owner=administrator state=GRANTED mode=Read-
denyN oplock=None fsid=0×0e1d66f7 fileid=0×000000d3
path=\word.doc(/vol/vol0/share1/word.doc)

 
fas1> lock status –p cifs –o (показывает локи, сортированные по пользователю или владельцу)
CIFS owner=root host=10.34.17.49(PC002-XP) pid=65279 offset=2147483539 len=1
excl=yes state=GRANTED fsid=0×0e1d66f7 fileid=0×000000d3
path=\word.doc(/vol/vol0/share1/word.doc)

Снять же ненужное (например ошибочно “зависшее”) локирование можно командой:

fas1> lock break -f file [-o owner -h host] [-p proto]

Обратите внимание, что, хотя команда lock break –f и поддерживается, но при использовании NFS v4 ее применение не рекомендуется, по причине ряда ненужных побочных эффектов снятия локирования таким образом.

Оставить комментарий

20/0.129

Данный блог не спонсируется, не аффилирован, и не санкционирован компанией NetApp, Inc. Излагаемая в этом блоге точка зрения выражает мнение исключительно его автора и может не совпадать с позицией NetApp, Inc.

This content is not endorsed, sponsored or affiliated with NetApp, Inc. The views expressed in this blog are solely those of the author and do not represent the views of NetApp, Inc.