从命令行卸载 USB 设备后如何关机?

从命令行卸载 USB 设备后如何关机?

之前我问过这个问题关于如何在设定的时间后暂停 Linux。

我想问类似的问题。假设我的系统上连接了一个 USB 设备(操作系统 = Fedora 13),是否有命令可以:

  • 断开 USB 设备,

  • 分离后,在指定的时间间隔后关闭系统。

更准确地说,分离是指安全移除设备的命令。

答案1

我假设 USB 是指安装到文件系统的随身碟或外部硬盘。您可以通过卸载设备来“分离”它。为此,您必须使用 umount 命令。您可以使用设备或安装点,例如:

umount /dev/sdb1或者umount /mnt/usb

手动卸载更多细节。

要关闭系统,请使用该shutdown命令。-h将要“关机后停止或断电”。手册页说:

SYNOPSIS
       /sbin/shutdown [-akrhPHfFnc] [-t sec] time [warning message]

因此,您可以使用它在特定时间后关闭系统。以下命令将在 30 分钟后停止您的系统:

shutdown -h 30

现在您有了一个命令,该命令只能在另一命令成功后执行。这是通过 && 完成的,&& 是条件语句的简写形式,也是 shell 的一项功能(注意:|| 也存在)。仅当第一个命令没有任何错误返回时才会执行第二个命令。这由返回代码 0 指示。例如:

umount /dev/sdb1 && shutdown -h 15将断开您的 USB 并在 15 分钟后停止您的系统。

如果这不能回答您的问题,请更具体。

答案2

听起来您希望在移除 USB 闪存盘时自动关闭计算机。

我自己没有这样做过,但是新的暴发户服务(即Fedora 9 支持开始)确实能够基于事件运行脚本。这里有一篇文章讨论了如何在以下情况下触发事件:如何热插拔设备或何时插入 USB 打印机

理论上,当您拔下 USB 设备时也可能会生成一个事件,并且该事件可以调用任意脚本,例如shutdown -h nowlock the screen

我见过 Windows 和 Mac 系统在蓝牙设备离开计算机附近时自动锁定屏幕,这在使用 Upstart 的 Linux 中可能是可能的。

相关内容