Как размонтировать диск в Linux

Поради та підказки щодо софту, роботи в операційних системах, комплектуючих та зборок комп'ютерів.
Аватар користувача
toxi
Администратор
Администратор
Статті: 0
Повідомлень: 539
З нами з: 12-04-2008 07:58:25
Ваша стать: Чоловічий
І'мя: Roman
Контактна інформація:

Как размонтировать диск в Linux

Повідомлення toxi »

Синтаксис и опции umount
В отличие от mount, команда umount Linux размонтирует указанный диск. В результате он становится недоступным. Это относится и к любым подключенным устройствам. У команды достаточно понятный синтаксис:

Код: Виділити все

$ umount опции /путь/к/точке/монтирования
$ umount опции название_устройства
Перейдем к списку доступных опций:

Код: Виділити все

-a, --all – размонтировать все файловые системы, указанные в /proc/self/mountinfo. Исключение составляют roc, devfs, devpts, sysfs, rpc_pipefs и nfsd.
-A, --all-targets – размонтировать все точки монтирования в текущем пространстве имен для указанной файловой системы.
-c, --no-canonicalize – не канонизировать пути.
-d, --detach-loop – освободить петлевое устройство при размонтировании.
--fake – не выполнять никаких реальных действий, но посмотреть результат выполнения команды.
-f, --force – принудительно размонтировать, когда диск недоступен.
-l, --lazy – размонтировать файловую систему, когда она перестанет быть занятой.
-N, --namespace – размонтировать указанное пространство имен.
-n, --no-mtab – выполнение операции без записи в /etc/mtab.
-O, --test-opts – размонтировать только те файловые системы, которые имеют указанный набор опций, записанный в /etc/fstab.
-q, --quiet – не выводить сообщения с ошибкой not mounted.
-R, -- recursive – рекурсивное размонтирование.
-r, --read-only – при появлении ошибки попробовать перемонтировать файловую систему в режиме read only.
-t, --types – размонтировать файловую систему указанного типа. При необходимости параметры следует разделить запятыми.
-v, --verbose – подробное протоколирование действий.
-V, --version – вывести информацию о версии утилиты.
-h, --help – получить справочную информацию.
Это были основные опции, которые могут пригодиться при выполнении команды umount. А теперь перейдем к практическим примерам ее использования.

Как размонтировать диск в Linux
Для удобства мы разберем четыре популярных сценария, с которыми может столкнуться каждый: размонтировать диск, все подключенные устройства и разделы, конкретный путь и рекурсивное размонтирование.

1. Размонтировать диск
В качестве примера возьмем USB-диск, на который были загружены бэкапы данных. Перед отключением от компьютера его следует размонтировать. Сначала посмотрим полный список доступных дисков:

Код: Виділити все

sudo lsblk -o NAME,FSTYPE,SIZE,MOUNTPOINT,LABEL
USB-диск объемом 500 ГБ маркирован как sdb1. Для его размонтирования следует выполнить команду:

Код: Виділити все

sudo umount /dev/sdb1
В результате диск размонтируется. Вы можете посмотреть, что он пропал из списка доступных устройств в файловом менеджере Linux.

Если диск в настоящий момент занят, то возникнет ошибка. С помощью опции -l его получится размонтировать, когда он освободится:

Код: Виділити все

sudo umount -l /dev/sdb1
Ну а опция -f нужна для принудительного размонтирования. В таком случае все выполняемые операции незамедлительно прервутся, и ждать ничего не придется:

Код: Виділити все

sudo umount -f /dev/sdb1
Если при размонтировании у вас возникает ошибка Device or resource busy, посмотрите в этой статье как её решить.

2. Размонтировать все устройства
Опция -a, которая упоминалась в самом начале списка, отвечает за размонтирование всех смонтированных файловых систем. Но есть несколько разделов с исключениями: roc, devfs, devpts, sysfs, rpc_pipefs и nfsd. Запускать ее нужно с осторожностью, ведь будут размонтированы важные разделы.

Перед выполнением основной команды вы можете посмотреть то, какие устройства будут затронуты. Для этого пригодятся опции --fake (fake-команда) и -v для вывода подробной информации:

Код: Виділити все

sudo umount --fake -v -a
В результате отобразится полный список путей и устройств, которые будут размонтированы. Для полноценного запуска процедуры выполните команду без опций --fake и -v:

Код: Виділити все

sudo umount -a
А если нужно размонтировать все устройства принудительно, то дополнительно понадобится опция -f:

Код: Виділити все

sudo umount -a -f
3. Размонтировать путь
Если вы хотите отключить конкретный путь от корневой файловой системы Linux, то подход будет несколько иной. В качестве примера возьмем каталог, расположенный по пути /run/lock/tmpfs. Команда для размонтирования будет выглядеть следующим образом:

Код: Виділити все

sudo umount /run/lock/tmpfs
Если конкретно сейчас путь занят, то в терминале появится ошибка busy. В таком случае действие можно выполнить принудительно с помощью опции -f. Или дождаться, когда путь освободится с опцией -l.

4. Рекурсивное размонтирование

Для рекурсивного размонтирования определенной директории, например, каталога, к описанной выше команде следует добавить опцию -R или --recursive:

Код: Виділити все

sudo umount -R /run/lock/tmpfs
Но при запуске рекурсивного размонтирования в утилите umount стоит помнить важный нюанс. Выполнение команды будет прервано при возникновении любой ошибки. А отношение между точками монтирования регулируются правилами в документе /proc/self/mountinfo. Если же вы хотите получить дополнительную информацию при рекурсивном размонтировании, то воспользуйтесь опцией -v (Verbose mode):

Код: Виділити все

sudo umount -R -v /run/lock/tmpfs
Выводы
В начале данной статьи мы описали утилиту umount Linux, особенности ее синтаксиса и доступные опции. А затем перешли к конкретным примерам использования, с которыми может столкнуться каждый. По описанным принципам можно понять, как размонтировать диск linux, а также любой раздел или директорию.
Правила форуму :: Виконую послуги IT-адміністратора (види послуг).