У меня был файл ISO размером более 4 ГБ. Когда я пытался скопировать или переместить файл со своего компьютера на USB-накопитель, я помню, что получил некоторую ошибку о том, что файл слишком велик для перемещения операционной системы.
Итак, я выполнил эту команду, чтобы tar разбил ее на disk1.tar и disk2.tar:
tar -c -M --tape-length=2002400 --file=disk1.tar bigfile.iso
После этого я скопировал файл на USB. Теперь, когда я пытаюсь собрать файл, я выполнил команду:
tar -x -M --file=disk1.tar
Но я получаю ошибку
tar: Archive value 4209604608 is out of off_t range 0..2147483647
tar: Exiting with failure status due to previous errors
Итак, мой вопрос: как переместить большой файл с компьютера на USB-накопитель? Я даже попробовал SFTP-файл с одного сервера на другой, и он также пожаловался на то, что файл слишком велик.
Не уверен, что вы можете переформатировать USB-ключ, но если можете, вы сможете поместить его туда, не разделяя файл. Скорее всего, ошибка возникла из-за того, что USB-ключ был отформатирован в FAT32, максимальный размер файла которого составляет 2 ГБ. Если вы отформатируете его с помощью ext3 или ext4, вы сможете записать весь файл целиком.
Если у вас есть сетевое соединение, просто используйте ssh pipe.
ssh user@host "cat > file.remote" < file.local
Если вам нужно разделить файл для мультимедиа, используйте split
разбить это и cat
чтобы снова соединить его.
split -b 1G file.local filexfer
cat filexfer* > file.remote
Обратите внимание: все это предполагает, что удаленная файловая система действительно способна хранить файлы такого размера.