我使用了 2 个命令cpio
来tar
执行相同的操作,将数据备份到外部驱动器,即我的 8Gb 笔式驱动器(sandisk 品牌)。在执行命令时,它输出一些内容,暗示它已经备份了某些内容,但当我检查媒体时,它是空白的。
ravi@ravi-Aspire-5315:~/Documents/testing$ find . -type f -newer .last_time
./jill1
ravi@ravi-Aspire-5315:~/Documents/testing$ find . -type f -newer .last_time | cpio -o > /dev/sdb2
1 block
ravi@ravi-Aspire-5315:~/Documents/testing$
现在请查看备份的媒体。
ravi@ravi-Aspire-5315:/media/ravi$ df -h | grep sdb2
/dev/sdb2 3.9G 8.0M 3.7G 1% /media/ravi
ravi@ravi-Aspire-5315:/media/ravi$ ll
total 24
drwxr-xr-x 3 ravi ravi 4096 Jan 12 11:10 ./
drwxr-xr-x 3 root root 4096 Nov 20 13:51 ../
drwx------ 2 root root 16384 Jan 12 11:10 lost+found/
我也尝试了很多次备份所有文件,但注意到上面的目录中显示的/media/ravi
是安装点/dev/sdb2
我尝试了该tar
命令,但出现了同样的问题。
ravi@ravi-Aspire-5315:~/Documents/testing$ tar -cvf /dev/sdb2 `find . -type f -newer .last_time`
./jill1
然后,为了通过 检查媒体nautilus
,我单击了媒体文件。
这里提到的是挂载点,/media/ravi/poon
但df -h
提到了不同的挂载点/media/ravi
ravi@ravi-Aspire-5315:~/Documents/testing$ df -h | grep sdb
/dev/sdb2 3.0T 3.0T 3.9G 100% /media/ravi
尽管如本线程开头的命令输出所示,大小为 3.9 GB,但现在也错误地显示为 3.0T。
以上是我在我的随身碟中找到的内容。
在使用此介质之前,我首先尝试使用 32 GB 的 SD 卡。问题也随之而来。所以,我觉得问题出在 SD 卡上,因为我怀疑该卡的巧妙之处。但在使用我从 amazon.in 购买的品牌 8GB 随身碟(sandisk 品牌)后,我确认问题是其他问题。
答案1
您需要将 /dev/sdb2 视为原始分区或文件系统,而不是两者兼而有之。看起来好像您曾经在其上创建了一个文件系统并将其安装在 /media/ravi 上,但是一旦您将 tar 或 cpio 输出直接通过管道传输到 /dev/sdb2 ,您就破坏了该文件系统。
写入文件系统上的文件,或者将其视为未挂载的原始设备。
(在 /dev/sdb2 上重新创建文件系统并将其挂载到 /media/ravi)
tar -cvf /media/ravi/backup.tar
find . -type f -newer .last_time
tar tf /media/ravi/backup.tar
-或者-
umount /media/ravi ## 如果可能的话
tar -cvf /dev/sdb2
find . -type f -newer .last_time
焦油 tf /dev/sdb2