pv 权限被拒绝,但 dd 工作正常且没有错误

pv 权限被拒绝,但 dd 工作正常且没有错误

pv上面正在运行程序dd。我正在将旧 HDD 克隆到新 SSD。数据有 500GB。我尝试运行以下命令将其复制sdasdb

ubuntu@ubuntu:/$ sudo pv < /dev/sda > /dev/sdb
bash: /dev/sda: Permission denied

使用dd命令不会产生此错误。

我正在从 DVD 运行 Ubuntu 系统。sda主笔记本电脑硬盘是通过 SATA 连接的,sdbSSD 驱动器是通过 USB 使用 USB-SATA 转换器连接的。

答案1

上述重定向是在分叉和执行 sudo 之前由你的 shell 设置的。你可能需要类似以下内容:

sudo bash -c 'pv < /dev/sda > /dev/sdb'

这将导致bash运行sudo。Bash 将在该 shell 中将 arg 的参数-c作为命令执行,而不是以交互方式运行。

dd命令有效,因为大概您没有使用重定向。

此外,pv不会在上面运行dd。该pv命令执行许多操作,包括显示其输出到 stdout 的进度或限制其输出的速率。

相关内容