我经常使用以下方式下载我的 raspbian 镜像:
sudo dd if=2021-01-11-raspios-buster-armhf-full.img of=/dev/sda bs=4M conv=fsync
我编写了一个小脚本来更改一些文件,例如/etc/shadow
。但是,它失败了。然后,如果我尝试 cat shadow:
lz@vm:~/Downloads$ cd /media/lz/rootfs/etc/
lz@vm:/media/lz/rootfs/etc$ sudo cat shadow
什么都没发生。好像是 I/O 出了问题。我总是尝试拔下 SD 卡并重新插入,但问题仍然存在。最后我不得不重启机器。
这不仅发生在我的笔记本上,也发生在另一台笔记本上。
这可能是什么原因造成的?
答案1
看起来您在从映像复制之前没有卸载 SD 卡。您可以使用以下命令卸载:
sudo umount /dev/sda?
然后执行dd
命令。然后您可以使用以下命令重新挂载:
eject /dev/sda
eject -t /dev/sda
答案2
您正在以错误的方式升级 Raspbian Pi 操作系统。请参阅:
总而言之,您应该使用:
sudo apt update
sudo apt dist-upgrade
sudo apt clean
用新的磁盘映像替换当前运行的操作系统只会造成混乱,并且必须重新启动也就不足为奇了。
您还可以使用lsblk
以下命令查看您正在影响的驱动器dd
:
NAME FSTYPE LABEL MOUNTPOINT SIZE MODEL
nvme0n1 477G Samsung SSD 960 PRO 512GB
├─nvme0n1p9 swap [SWAP] 7.9G
├─nvme0n1p7 ext4 Old_Ubuntu_16.04 /mnt/old 23.1G
├─nvme0n1p5 ntfs 859M
├─nvme0n1p3 16M
├─nvme0n1p1 ntfs 450M
├─nvme0n1p8 ntfs Shared_WSL+Linux /mnt/e 9G
├─nvme0n1p10 ext4 Ubuntu_18.04 /mnt/clone 27.2G
├─nvme0n1p6 ext4 New_Ubuntu_16.04 / 45.1G
├─nvme0n1p4 ntfs NVMe_Win10 /mnt/c 363.2G
└─nvme0n1p2 vfat /boot/efi 99M
mmcblk0 119.1G
└─mmcblk0p1 vfat SANDISK128 /media/rick/SANDISK128 119.1G
sr0 1024M DVD+/-RW DW316
sda 931.5G HGST HTS721010A9
├─sda4 ntfs WINRETOOLS 450M
├─sda2 128M
├─sda5 ntfs Image 11.4G
├─sda3 ntfs HGST_Win10 /mnt/d 919G
└─sda1 vfat ESP 500M