На основе ответов на этот вопрос
из чего командная строка эквивалентна, безопасно удаляют диск
Я записал этот сценарий.
#!/bin/bash
echo "This script works on sdb and sdb1"
echo "Have a look at the following and if all is well continue."
lsblk
read -p "press the Enter key if you want to continue..." key
udisksctl unmount --block-device /dev/sdb1
sudo fsck /dev/sdb1
udisksctl power-off --block-device /dev/sdb
Я думаю, что инструкция "взглянула на следующее и если все, хорошо продолжаются", означает что если вывод от lsblk
шоу, что диск, который мы хотим удалить, является логическим диском sdb1
затем продолжите.
Вывод от lsblk
NAME MAJ:MIN RM SIZE RO TYPE MOUNTPOINT
sda 8:0 0 232.9G 0 disk
├─sda1 8:1 0 549M 0 part
├─sda2 8:2 0 115.9G 0 part
├─sda3 8:3 0 833M 0 part
├─sda4 8:4 0 1K 0 part
├─sda5 8:5 0 107.9G 0 part /
└─sda6 8:6 0 7.8G 0 part [SWAP]
sdb 8:16 1 14.5G 0 disk
└─sdb1 8:17 1 14.5G 0 part /media/jack/Flash
sr0 11:0 1 1024M 0 rom
loop0 7:0 0 89.5M 1 loop /snap/core/6130
loop1 7:1 0 89.5M 1 loop /snap/core/6034
loop2 7:2 0 88.2M 1 loop /snap/core/5897
Диск, который будет удален, является действительно логическим диском sdb1
.
Этот сценарий работал хорошо с Ubuntu 16.04 в течение прошлых 2,5 лет. Я использую этот сценарий в среднем о два раза в неделю. Затем в декабре 2018, вызывание сценария заставило мою внешнюю мышь (Logitech Trackman) прекращать работать (над 2 случаями) или чтобы Ubuntu полностью зависла с искаженным экраном (в 1 случае).
Учитывая, что Ubuntu изменяется через apt
казалось бы, что или Ubuntu имеет новую ошибку или что сценарий является устаревшим. Каковы правильное решение или корректный сценарий, учитывая состояние Ubuntu теперь.
Это - известная проблема. Некоторые ядра подвешивают ОС. Детали в этой ссылке.
Так как это - проблема ядра, можно заставить это происходить независимо от того, используете ли Вы GUI, или командная строка к "безопасно удаляют".
Заключить в кавычки из связанной страницы:
Это - известная проблема с последними 4.4.0-139-универсальными, 4.4.0-140-универсальными и 4.4.0-141-универсальными ядрами Linux. На панели запуска это известно как ошибка 1803929 (в настоящее время подтверждаемый 5 пользователями).
Временное решение состоит в том, чтобы использовать 138 (4.4.0-138-универсальных) ядер.