如果输出文件是/dev/sda,如何停止dd?

jug*_*108 -2 sudo dd

跑步的惊喜没必要解释

sudo dd if=/path of=/dev/sda
Run Code Online (Sandbox Code Playgroud)

sda 或任何硬盘名称。

有什么方法可以阻止这种情况发生吗?

答案还可以包括阻止上述危险命令妨碍 HDD 或所选设备的方法(脚本或工具)。

Col*_*ing 7

由于附带的权限,使用 sudo 运行命令本质上是危险的;因此,请谨慎使用它。阻止坏事发生的最好方法是三思而后行。


小智 5

将以下内容放入/usr/bin/dd

if [[ "$*" != *"of=/dev/sda"* ]]; then
    /bin/dd "$*"
else
    echo "You are not allowed to set dd output to /dev/sda!"
fi
Run Code Online (Sandbox Code Playgroud)

注意:如果您需要实际使用ddon /dev/sda,请使用

sudo /bin/dd [Arguments for dd]
Run Code Online (Sandbox Code Playgroud)

致反对者:@Gilles 指出的问题(谢谢!)现已修复,无需反对。

  • @ juggernaut1996 这个答案是完全错误的。`sudo dd` 总是调用命令,而不是函数。定义一个 `dd` 函数只会覆盖如果你运行 `dd` *而没有 * `sudo` 会发生什么。(`sudo` 不读取任何 bash 配置,bash 读取。`sudo bash` 读取`.bashrc`,`sudo dd` 不读取。) (5认同)