Здравствуйте, есть убунту серевер, без графических оболочек, только консольный режим, есть расшаренные папки с файлами, как можно посмотреть кто сидит в файле?
Пример: лежит обычный текстовый файл у меня в шаре(на этом самом убунту сервере), кто-то заходит по сетке в него и начинает там что-нибудь печатать, в это время я тоже захотел в нем попечатать начинаю открывать, а он кем-то уже занят, и как узнать кто из 100 юзеров подключенных к сетке сидит в моём файле?
В винде было просто управление-общие папки-открытые файлы, а тут думаю накатить граф.оболочку xfce может в ней можно как-то посмотреть будет? Или может можно в консольном режиме всё это увидеть?
Кем открыт файл по сети?
[console]
#lsof | grep filename
[/console]
пример:
[root@localhost ~]#lsof | grep *index.html*
vi 13185 useradm 4u REG 8,7 12288 3129356 /home/useradm/.index.html.swp
еще как-то можно через samba все просмотреть, кем открыт/занят файл, но сейчас командочку не помню.
[console]
ebiantest:/etc/apt# smbstatus
Unknown parameter encountered: "coment"
Ignoring unknown parameter "coment"
Unknown parameter encountered: "guest"
Ignoring unknown parameter "guest"
Unknown parameter encountered: "creat mask"
Ignoring unknown parameter "creat mask"
Samba version 3.4.8
PID Username Group Machine
-------------------------------------------------------------------
<processes do not show up in anonymous mode>
Service pid machine Connected at
-------------------------------------------------------
No locked files
[/console]
Собственно можно и без grep: lsof файл
http://linuxmemo.ru/?p=755
Здравствуйте, есть убунту серевер, без графических оболочек, только консольный режим, есть расшаренные папки с файлами, как можно посмотреть кто сидит в файле?
Пример: лежит обычный текстовый файл у меня в шаре(на этом самом убунту сервере), кто-то заходит по сетке в него и начинает там что-нибудь печатать, в это время я тоже захотел в нем попечатать начинаю открывать, а он кем-то уже занят, и как узнать кто из 100 юзеров подключенных к сетке сидит в моём файле?
В винде было просто управление-общие папки-открытые файлы, а тут думаю накатить граф.оболочку xfce может в ней можно как-то посмотреть будет? Или может можно в консольном режиме всё это увидеть?
Если samba - то smbstatus. Или через SWAT.
Огромное спасибо всем за советы, Вы мне очень помогли, но еще вопрос, как можно сделать постарничный вывод информации, а то у меня там очень много файлов занято и пути к ним длинные, в общем вижу только последних пользователей, а кто был показан выше ни пролистать ничего, есть какой-то параметр выводящий информацию постранично, что smbstatus, что lsof - хелпы посмотрел ничего не увидел :(
Собственно можно и без grep: lsof файл
http://linuxmemo.ru/2010/08/24/%D0%BF%D … 8F-%D0%BA/
если это процесс то да, если файл то нет:
[root@localhost ~]# lsof /usr/sbin/sshd
COMMAND PID USER FD TYPE DEVICE SIZE NODE NAME
sshd 5079 root txt REG 8,6 379452 1059888 /usr/sbin/sshd
sshd 26614 root txt REG 8,6 379452 1059888 /usr/sbin/sshd
sshd 26616 useradm txt REG 8,6 379452 1059888 /usr/sbin/sshd
sshd 26665 root txt REG 8,6 379452 1059888 /usr/sbin/sshd
sshd 26667 useradm txt REG 8,6 379452 1059888 /usr/sbin/sshd
и
[root@localhost ~]# lsof /home/useradm/index.html
[root@localhost ~]#
как можно сделать постарничный вывод информации, а то у меня там очень много файлов занято и пути к ним длинные, в общем вижу только последних пользователей
А каналы (пайпы) не пробовали использовать? Например так:
# lsof | grep *index.html* | less
mangix, если через lsof, то добавь в конец more или less, что бы пролистать страницу нажми enter или пробел, воспользоваться поиском / ищешь то что хочешь найти, выйти из просмотра q.
Если будешь использовать less, то при поиске у тебя будет подсвечен поисковый твой запрос.
пример more:
lsof | grep root|more
lsof | grep root|less