Моя система имеет USB, SD-карту и соединенный SSD. Я смонтировал все устройства USB (/dev/sdb1), SSD (/dev/sda1) и SD-карта (/dev/mmcblk1p1) под/mnt. Там какой-либо путь состоит в том, чтобы размонтировать все устройства, подключенные в/mnt?
(Я могу сделать это путем выполнения grep к выводу lsblk/df/mount и размонтирования человека один, но я ищу другое легкое решение ИЛИ путем выполнения 3 раза umount/mnt),
Вот вывод lsblk (несколько точек монтирования)
lsblk
NAME MAJ:MIN RM SIZE RO TYPE MOUNTPOINT
sda 8:0 0 232.9G 0 disk
└─sda1 8:1 0 232.9G 0 part /mnt
sdb 8:16 1 14.7G 0 disk
└─sdb1 8:17 1 14.7G 0 part /mnt
и после выполнения рекурсивного umount
sudo umount --recursive /mnt
lsblk
NAME MAJ:MIN RM SIZE RO TYPE MOUNTPOINT
sda 8:0 0 232.9G 0 disk
└─sda1 8:1 0 232.9G 0 part /mnt
sdb 8:16 1 14.7G 0 disk
└─sdb1 8:17 1 14.7G 0 part
Попытка с ленивым размонтированием:
sudo umount -l /mnt
-A, --all-targets
Размонтировать все точки монтирования в текущем пространстве имен для указанного
файловая система. Файловая система может быть указана одной из точек монтирования
или имя устройства (или UUID и т. д.). Когда этот параметр используется вместе
с --recursive, тогда все вложенные монтирования в файловой системе
рекурсивно размонтирован. Этот параметр поддерживается только в системах, где
/etc/mtab — это символическая ссылка на /proc/mounts.
Может быть, вы этого хотите? От man 8 umount
Вы можете размонтировать само устройство, разрешены подстановочные знаки.
umount /dev/sda1 /dev/sdb? /dev/sdc*
Этот однострочный код работает я:
while [[ $(findmnt /mnt) != "" ]]; do sudo umount /mnt; done
Объяснение:
Если команда findmnt /mnt
выдает непустой вывод, значит что-то монтируется в /mnt
. Тест проверяет, пуст ли вывод или нет, и если вывод не пуст, мы запускаем umount /mnt
один раз. Если findmnt /mnt
выдает пустой вывод, значит, ничего больше не монтируется под /mnt
и все готово.
Если вы работаете как root, вы можете удалить sudo
из строки. Если вы работаете как обычный пользователь, вам потребуется sudo
для команды umount
, но пароль нужно будет ввести только один раз.