корректное отключение USB-hdd

# по Форуму нашел только link. или подскажите "где"...
Стал подключать USB-hdd со сгоревшего ноута. Потом заметил "щелчки-hdd" при выключении системы. (IceArch: systemd, udisksctl, sata->USB-hdd-переходник).
------------------
сначала отключал контекстом Рокса:
'~/.config/rox.sourceforge.net/SendTo/.inode_blockdevice/udctl-Pwr-off.sh'
#!/bin/sh
## knn_knstntnn 210529
## для HDD-USB - перед выключением( если файлы не заняты в прогах).

 udisksctl power-off  -b $( realpath "$@")  2>/tmp/file  1>/tmp/file  ;

 notify-send -t 10000  "$(cat /tmp/file)"  ; rm /tmp/file
sleep 2 ; rox /run/media/$USER/
---------------
потом:
~/0-монтировка_rox-udisk/unmnt-all_usb-hdd.sh
#!/bin/sh
# снятие питания с USB-hdd ( если файлы не заняты в прогах) для корректного отключения.

for sd in /dev/sd*[0-9] ; do umount  $sd ; done ; for sd in /dev/sd*[0-9] ; do udisksctl power-off  -b $sd   ; done
-----------
сейчас:
/usr/local/bin/usb-hdd_pwoff.sh
#!/bin/sh
# knn_knstntnn 210607
# снятие питания с USB-hdd ( с "закрытием" 'X' и  'screen' чтобы файлы не были заняты в прогах) для корректного отключения.

screen -D  ;  killall -s SIGQUIT Xorg ;  pkill icedm ; screen -X quit  && sleep 3 ;  for sd in /dev/sd*[0-9] ; do umount  $sd ; done ; for sd in /dev/sd*[0-9] ; do udisksctl power-off  -b $sd   ; done  ; poweroff
- последнее - учитывает и если в к.-либо tty в 'screen' задействован к.-либо файл с USB-hdd.
- т.е. уже лучше, но конечно далеко неидеально ( т.к. из 'screen' выключает только "со второго раза", и кроме 'screen' могут быть и другие мультиплексоры, и файлы могут быть заняты "просто в других-tty").

? - может тут можно как-то попроще с "корректным отключением"?
? и/или как тогда "глушить" процессы обрабатывающие USB-hdd-файлы в "других-tty"?

ps
'devkit-disks' по ссылке вверху сообщения не пробовал. и не знаю можно ли его сейчас установить, и как будет отрабатывать с занятыми файлами...

EDIT1: поправил перекочевавшие помарки в тексте скриптов ( лишнее $sd).
ps
в пользуемых мною средствах монтирования (USB-hdd-разделов в том числе) применяется 'udisksctl mount -b /dev/dsXY'.
По итогу монтирует с 'rm=0'( и пробовал 'DC' - тот тоже монтирует с 'rm=0' # [ хотя "его механизма" не знаю).
Тут предполагаю, что возможно с 'rm=1' и будет "нормальное выключение".
(Но как задать 'rm=1' ч/з 'udisksctl' не нашел, а "руками" монтировать с 'rm=1' пока не пробовал по некоторым причинам # потом еще буду варианты пробовать - на пока хоть такой костыль есть)
knn_knstntnn
щелчки-hdd" при выключении системы.
Парковка головок и будет шелчком слышна. Ванильный системд и так размонтирует диски при выключении. Хотите чтобы еще и гарантированно парковались головки и выключалось питание добавьте сервис в зависимости poweroff, хотя вроде и так нормально выключает hdd
vs220, вы не поняли, нужна прога, которая будет
knn_knstntnn
"глушить" процессы обрабатывающие USB-hdd-файлы в "других-tty"
))) Вы так обрабатываете файлы на юсб диске, а тут раз "глушитель".
Так и не понял, что нужно ...
Редко, но иногда приходится подключать внешний диск USB-hdd, который отключаю, используя следующие команды
udisksctl unmount -b /dev/sdb1
udisksctl power-off -b /dev/sdb
Этого мне вполне достаточно ... причем тут всякие сложности? - так и не понял их необходимость.
Ошибки не исчезают с опытом - они просто умнеют
я вообще прямо из файлового менеджера отключаю кнопкой,проблем не было.пользуюсь часто.
зачем лишние заморочки?
с кривой виндой и корявым ntfs только были проблемы,если быстрый запуск не отключить и неправильно выключить.
Linux Forever!
Vadim
я вообще прямо из файлового менеджера отключаю кнопкой
Можно и так, но не всегда приходится подключать в Х-ах
Ошибки не исчезают с опытом - они просто умнеют
Мне пару дисков( по 8-11 разделов на каждом) по sata->USB приходится подключать часто - нужно перетянуть/перекомпоновать инфу.
Часто бывает иксы не запускаю ( могу включить комп просто радио послушать, да и другие варианты), а бывает параллельно tty-screen+иксы ( т.е. иногда можно запутаться - запущено ли что-нибудь в других tty. и охота было "универсальную выключалку".).
-------
По "громкому щелчку выключения"( при стандартном варианте):
- по железу мало понимаю;
- но щелчек достаточно громкий (в чем-то схож с 'grub4dos-halt' # поэтому если нужно, то по возможности отключаю 'grub2-poweroff, а гружусь в основном гр4досом');
- в процессе пока собирал команду на отключение без щелчка, бывали "неудачи" - если USB-hdd неизвлекался/неотмонтировался (например в 'screen' в vim открыт файл с его раздела ) - в результате - "отключение с громким щелчком"; следом загрузившись, 'fsck' для того раздела чего-то там ругался/правил с инодами (# тут допускаю что может из-за "ранешних косяков" - и по случаю перепроверю точнее).
- и вообще - приятней выключаться без "щелчка-на-USB-hdd".
---------------
При --"глушить" процессы обрабатывающие USB-hdd-файлы в "других-tty"-- подразумевал, что разделы с занятыми файлами udisksctl-ом не отмонтируются.

На Ледяном при выходе из 'screen' по ^a+d - файл остается занятым( пр.: в одном tty вышел из 'screen', запустил X, вышел из X, вернулся в 'screen' к просмотру/редактированию того же файла). # это один из подобных частных случаев.

А так вроде действительно неплохо бы и посоображать как сделать чтоб уведомляло какие разделы не отмонтируются( наверное ч/з "выхлоп ошибок"), и в этом случае не выключать комп( дальше - "развить варианты"). Да и в "более широком охвате"( вообще проверять запущенные в tty обработки файлов/процессы) - потом наверное подумаю...

) хотелось как по-проще/поуниверсальней - а тут уже "варианты ветвятся"...
И конечно частота применения( к.-либо скрипта) имеет значение - может в каких-то случаях и не стоит заморачиваться...
-----------
зы
про "добавку сервиса в зависимости poweroff" - спасибо - предполагал что есть что-то подобное, но не знал. буду пробовать.

EDIT1: ...
knn_knstntnn
щелчек достаточно громкий
Громкость будет зависить от расстояния головок до парковки и с какой скоростью они туда прилетят, при отключении питания без размонтирования и выключения диска конечно скорость максимальная и щелчек громче.

knn_knstntnn
неотмонтировался - в результате - "отключение с громким щелчком"; следом загрузившись, 'fsck' для того раздела чего-то там ругался/правил с инодами
Перед отключением по любому надо отмонтировать

knn_knstntnn
разделы с занятыми файлами udisksctl-ом не отмонтируются
Тогда и вопрос правильней будет имхо:
"корректное завершение процессов работающих с диском и размонтирование его разделов"

Что то вроде
fuser -vmMki /точка_монтирования
P.s. и это не касается выключения системы через systemctl poweroff , при выключении системд должен сам закрыть все процессы и отмонтировать диски ( тайм аут на невозможность отмонтирования в исходниках 30минут).
Если диск не отмонтируется надо смотреть может что то изменяли или баг какой то
 
Зарегистрироваться или войдите чтобы оставить сообщение.