Ответ Бруно только наполовину правильный.
После установки dconf вы должны перейти к приложениям> индикатор-сессия
Поставьте галочку для элемента «подавлять-выходить из системы»,
Это будет работать для Unity в Ubuntu 11.10, но не для Gnome 3 или Gnome Classic.
Также это может помочь:
lsof | grep \ / media \ / KINGSTON
Между тем команда фьюзера значительно улучшилась. Вы можете выполнить полную работу с помощью одной команды:
sudo fuser -ickv / "mountpoint"
Где:
k
убивает процесс нарушения v
заранее показывает процесс и его пользователя i
просит вас подтвердить. Если какой-то процесс сопротивляется, попробуйте еще раз с fuser -ickv -9
(или, в более общем смысле, с -SIGNAL
), который убивает самые упрямые. Но вы всегда найдете какой-то «бессмертный» процесс ...!
Наиболее полезным инструментом является lsof . Он показывает, какие файлы используются в каких процессах. Если / media / KINGSTON
является точкой монтирования (имя устройства также будет работать), следующая команда показывает все файлы, которые используются в этой точке монтирования:
lsof / media / KINGSTON
Если вы запустите эту команду как обычный пользователь, она покажет только ваши собственные процессы¹. Выполните sudo lsof / media / KINGSTON
, чтобы увидеть все процессы пользователей.
Выход из lsof
выглядит так:
COMMAND PID USER FD TYPE DEVICE SIZE / OFF NODE NAME zsh4 31421 gilles cwd DIR 8,1 4096 130498 / var / tmp zsh4 31421 gilles txt REG 8,1 550804 821292 / bin / zsh4 zsh4 31421 gilles mem REG 8,1 55176 821326 /usr/lib/zsh/4.3.10/zsh/complist.so zsh4 31421 gilles 12r REG 8,1 175224 822276 /usr/share/zsh/functions/Completion.zwc
Столбец COMMAND
показывает имя исполняемого файла программы, а столбец PID
показывает идентификатор процесса. Столбец NAME
показывает имя файла; вы можете увидеть (удалено)
, если файл был удален при открытии (когда файл удален, он больше не имеет имени, но он все еще существует до тех пор, пока последний процесс с его закрытием не закрывает файл). ПОЛЬЗОВАТЕЛЬ
должен быть понятным. Остальные столбцы здесь не имеют значения, кроме, возможно, FD
, который показывает, как файл используется процессом:
cwd
: current Рабочий каталог txt
: исполняемый файл программы [ mem
: файл с отображением памяти (здесь, подумайте об этом как открыть файл) r
для чтения, и w
для записи Нет механического способа найти окно, в котором файл открыт (это на самом деле не имеет технического смысла: если процесс имеет несколько окон, файл не связан конкретно ни с одним окном, ни даже с простым способом идентификации окна процесса (и, конечно, процесс не должен иметь никаких окон). Но обычно имени команды и имени файла достаточно, чтобы найти преступника и закрыть файл должным образом.
Если вы не можете закрыть файл и просто хотите закончить все это, вы можете убить процесс с помощью kill 31421
(где 31421
- это идентификатор процесса) или kill -HUP 31421
(«зависание»). Если обычное убийство не выполняет трюк, убейте его с крайним предрассудком: kill -KILL 31421
.
Существует GUI для lsof, glsof , но это еще не совсем готово к прайм-тайму, и пока он не упакован для Ubuntu.
¹ Lsof может отображать некоторую информацию о процессах других пользователей, но не обнаруживает точку монтирования, t перечислите их, если вы укажете точку монтирования. ² Исполняемый код часто называют текстом при обсуждении исполняемых форматов.
Между тем команда фьюзера значительно улучшилась. Вы можете выполнить полную работу с помощью одной команды:
sudo fuser -ickv / "mountpoint"
Где:
k
убивает процесс нарушения v
заранее показывает процесс и его пользователя i
просит вас подтвердить. Если какой-то процесс сопротивляется, попробуйте еще раз с fuser -ickv -9
(или, в более общем смысле, с -SIGNAL
), который убивает самые упрямые. Но вы всегда найдете какой-то «бессмертный» процесс ...!
vboxmanage
. -_-
– sudo
8 September 2017 в 03:04
Наиболее полезным инструментом является lsof . Он показывает, какие файлы используются в каких процессах. Если / media / KINGSTON
является точкой монтирования (имя устройства также будет работать), следующая команда показывает все файлы, которые используются в этой точке монтирования:
lsof / media / KINGSTON
Если вы запустите эту команду как обычный пользователь, она покажет только ваши собственные процессы¹. Выполните sudo lsof / media / KINGSTON
, чтобы увидеть все процессы пользователей.
Выход из lsof
выглядит так:
COMMAND PID USER FD TYPE DEVICE SIZE / OFF NODE NAME zsh4 31421 gilles cwd DIR 8,1 4096 130498 / var / tmp zsh4 31421 gilles txt REG 8,1 550804 821292 / bin / zsh4 zsh4 31421 gilles mem REG 8,1 55176 821326 /usr/lib/zsh/4.3.10/zsh/complist.so zsh4 31421 gilles 12r REG 8,1 175224 822276 /usr/share/zsh/functions/Completion.zwc
Столбец COMMAND
показывает имя исполняемого файла программы, а столбец PID
показывает идентификатор процесса. Столбец NAME
показывает имя файла; вы можете увидеть (удалено)
, если файл был удален при открытии (когда файл удален, он больше не имеет имени, но он все еще существует до тех пор, пока последний процесс с его закрытием не закрывает файл). ПОЛЬЗОВАТЕЛЬ
должен быть понятным. Остальные столбцы здесь не имеют значения, кроме, возможно, FD
, который показывает, как файл используется процессом:
cwd
: current Рабочий каталог txt
: исполняемый файл программы [ mem
: файл с отображением памяти (здесь, подумайте об этом как открыть файл) r
для чтения, и w
для записи Нет механического способа найти окно, в котором файл открыт (это на самом деле не имеет технического смысла: если процесс имеет несколько окон, файл не связан конкретно ни с одним окном, ни даже с простым способом идентификации окна процесса (и, конечно, процесс не должен иметь никаких окон). Но обычно имени команды и имени файла достаточно, чтобы найти преступника и закрыть файл должным образом.
Если вы не можете закрыть файл и просто хотите закончить все это, вы можете убить процесс с помощью kill 31421
(где 31421
- это идентификатор процесса) или kill -HUP 31421
(«зависание»). Если обычное убийство не выполняет трюк, убейте его с крайним предрассудком: kill -KILL 31421
.
Существует GUI для lsof, glsof , но это еще не совсем готово к прайм-тайму, и пока он не упакован для Ubuntu.
¹ Lsof может отображать некоторую информацию о процессах других пользователей, но не обнаруживает точку монтирования, t перечислите их, если вы укажете точку монтирования. ² Исполняемый код часто называют текстом при обсуждении исполняемых форматов.
Также это может помочь:
lsof | grep \ / media \ / KINGSTON
grep "media / KINGSTON"
– Adam Matan
16 December 2010 в 17:55