Я использовал 2 команды cpio
и tar
, чтобы выполнить ту же операцию резервного копирования данных на внешний диск, который является мой флеш-накопитель на 8 ГБ (бренд 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
Затем я обнаружил, что мой носитель / dev / sdb2
поврежден!
Затем, чтобы проверить медиа с помощью 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.0T, хотя он составляет 3.9 ГБ, как показано в выходных данных команды в начале эта ветка.
Выше я обнаружил на своем флеш-накопителе.
Перед тем, как использовать этот носитель, я сначала попробовал установить SD-карту на 32 ГБ. Там тоже возникла проблема. Итак, я почувствовал, что проблема в SD-карте, поскольку подозревал, что эта карта изобретательна.Но после использования моего фирменного флеш-накопителя на 8 ГБ (бренд sandisk), купленного на amazon.in, я убедился, что проблема в другом.
Вам нужно обращаться с /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
-or-
umount /media/ravi ## if possible
tar -cvf /dev/sdb2 find . -type f -newer . last_time
tar tf /dev/sdb2