我正在尝试在固态硬盘上刷新图像,但必须开始多次尝试,直到最终成功。
镜像大小为 3 GB,ssd 为 1.8 TB。我见过其他人遇到索引节点问题,但这似乎不是这里的原因。所有信息都应位于这些日志中:
$ ls -lah raspios_out.img
-rw-r--r-- 1 root root 3,0G Jun 20 19:02 raspios_out.img
$ lsblk
NAME MAJ:MIN RM SIZE RO TYPE MOUNTPOINT
sda 8:0 0 40G 0 disk
├─sda1 8:1 0 512M 0 part /boot/efi
├─sda2 8:2 0 1K 0 part
└─sda5 8:5 0 39,5G 0 part /
sdb 8:16 0 1,8T 0 disk
├─sdb1 8:17 0 256M 0 part
└─sdb2 8:18 0 1,8T 0 part
sr0 11:0 1 50,6M 0 rom
$ ls -la /dev/sdb*
brw-rw---- 1 root disk 8, 16 Jun 20 19:27 /dev/sdb
brw-rw---- 1 root disk 8, 17 Jun 20 19:25 /dev/sdb1
brw-rw---- 1 root disk 8, 18 Jun 20 19:25 /dev/sdb2
$ df -i
Filesystem Inodes IUsed IFree IUse% Mounted on
udev 227699 504 227195 1% /dev
tmpfs 251397 763 250634 1% /run
/dev/sda5 2588672 852421 1736251 33% /
tmpfs 251397 1 251396 1% /dev/shm
tmpfs 251397 5 251392 1% /run/lock
tmpfs 251397 19 251378 1% /sys/fs/cgroup
/dev/sda1 0 0 0 - /boot/efi
AustauschVM 1000 -999000 1000000 - /media/austauschVM2
tmpfs 251397 36 251361 1% /run/user/1000
none 251397 7 251390 1% /run/qemu
$ dd --version
dd (coreutils) 8.30
[...]
$ uname -a
Linux falste-linux-vm 5.15.0-75-generic #82~20.04.1-Ubuntu SMP Wed Jun 7 19:37:37 UTC 2023 x86_64 x86_64 x86_64 GNU/Linux
$ sudo dd bs=1M if=raspios_out.img of=/dev/sdb conv=fdatasync status=progress
1045430272 bytes (1,0 GB, 997 MiB) copied, 115 s, 9,1 MB/s
dd: error writing '/dev/sdb': No space left on device
1095+0 records in
1094+0 records out
1147142144 bytes (1,1 GB, 1,1 GiB) copied, 114,823 s, 10,0 MB/s
$ sudo dd bs=1M if=raspios_out.img of=/dev/sdb conv=fdatasync status=progress
702545920 bytes (703 MB, 670 MiB) copied, 79 s, 8,9 MB/s
dd: error writing '/dev/sdb': No space left on device
698+0 records in
697+0 records out
730857472 bytes (731 MB, 697 MiB) copied, 79,0955 s, 9,2 MB/s
$ sudo dd bs=1M if=raspios_out.img of=/dev/sdb conv=fdatasync status=progress
1944059904 bytes (1,9 GB, 1,8 GiB) copied, 205 s, 9,5 MB/s
dd: error writing '/dev/sdb': No space left on device
1855+0 records in
1854+0 records out
1944059904 bytes (1,9 GB, 1,8 GiB) copied, 204,887 s, 9,5 MB/s
$ sudo dd bs=1M if=raspios_out.img of=/dev/sdb conv=fdatasync status=progress
343932928 bytes (344 MB, 328 MiB) copied, 41 s, 8,3 MB/s
dd: error writing '/dev/sdb': No space left on device
355+0 records in
354+0 records out
371195904 bytes (371 MB, 354 MiB) copied, 41,5655 s, 8,9 MB/s
[...]
有一次我也遇到了这个错误,尽管我更关心另一个错误:
dd: fdatasync failed for '/dev/sdb': Input/output error
我尝试过的:
- 重新启动虚拟机
- 拔出并重新插入 SSD
- 不同的
bs
参数设置 - 多次运行该命令
我不认为其中任何一个对这个问题有任何影响。
什么可能导致这种情况?
答案1
给出的信息sdb
是正确的,并且您的映像适用于完整磁盘,这将起作用:
sudo -s # Enter your password if prompted
cat raspios_out.img >/dev/sdb
sync
不过,从我对日志的解释中看到,这sdb
是错误的设备,因为它只有大约 2GB 可用空间