Поскольку безопасно извлечь внешний жесткий диск невозможно (при размонтировании диск продолжает вращаться), я установил udisks
.
Следующий код в терминале успешно отключает и выключает диск:
udisks --unmount /dev/sdb1 && udisks --detach /dev/sdb
Поскольку это довольно громоздко, я решил присвоить ему псевдоним «safetyrem», который я сохранил в ~/.bashrc
и ~/.bash_aliases
.
Я попытался назначить пользовательское сочетание клавиш ctrl+shift+d
для выполнения псевдонима safetyrem с помощью кода:
gnome-terminal -e 'safetyrem'
Однако при нажатии сочетания клавиш возникает ошибка:
There was an error creating the child process for this terminal
Failed to execute child process "safetyrem" (No such file or directory)
Псевдоним работает, если я вручную открываю терминал, а также с альтернативой, guake -e 'safetyrem'
но я в недоумении, почему он не запускается на gnome-terminal
.
решение1
bash
Псевдонимы не являются реальными программами, gnome-terminal
ничего о них не знает и не может их выполнить. Создайте исполняемый файл скрипта (например, /usr/bin/safetyrem
) и он должен работать.
Кстати, тот факт, что диск вращается, когда вы его вынимаете, не означает, что вынимание небезопасно. Важно то, что система зафиксировала все операции записи и не будет инициировать новые записи на диске, когда вы его вынимаете.