На машине x86_64 под управлением FreeBSD 10.1 при распаковке файла возникает следующая ошибка для всех файлов в tar:
x var/lib/nfs/statd/sm.bak/: Can't set user=1002/group=1002 for var/lib/nfs/statd/sm.bak
x var/lib/nfs/rmtab: Can't set user=1002/group=1002 for var/lib/nfs/rmtab
x var/lib/nfs/v4recovery/: Can't set user=1002/group=1002 for var/lib/nfs/v4recovery
x var/lib/logrotate.status: Can't set user=1002/group=1002 for var/lib/logrotate.status
x var/lib/arpd/: Can't set user=1002/group=1002 for var/lib/arpd
x var/lib/postfix/: Can't set user=1002/group=1002 for var/lib/postfix
x var/lib/systemd/: Can't set user=1002/group=1002 for var/lib/systemd
tar: Error exit delayed from previous errors.
Вышеуказанная ошибка наблюдается только тогда, когда я распаковываю файл в разделе mfdosfs. Я использую следующую команду для форматирования раздела и монтирования msdosfs.
newfs_msdos -F 32 -S 4096 -c 1 -m 0xf8 /dev/da0p7
mount -t msdosfs -o large /dev/da0p7 /data/raw
Я также пробовал монтировать как:
mount -t msdosfs -o large,uid=1002,gid=2002 /dev/da0p7 /data/raw
Но я получил тот же результат. Tar ball — это дистрибутив Linux. Я хочу, чтобы эта машина загрузилась с дуэли, поэтому ищу чистый unr-taring. Может кто-нибудь предложить решение для вышеуказанной проблемы?
EDIT 13/04/17: Кажется, я наблюдаю вышеуказанное поведение из-за разницы в файловых системах. Я не только получаю вышеуказанную ошибку, но и не могу поддерживать символическую ссылку, из-за чего не могу загрузить Linux с раздела FAT32. Интересно, есть ли какое-либо работающее решение всей проблемы.
решение1
msdosfs/NTFS/FAT
Файловые системы не поддерживают атрибуты владения и разрешения Linux/Unix.
Вам необходимо либо отформатировать раздел с использованием поддерживаемой файловой системы, либо создать файл образа с использованием поддерживаемой файловой системы для хранения файлов.
решение2
Распакуйте файл в свой домашний каталог следующим образом:
tar -C /home/satpul -xzvf filename.txz
предположим, что ваше имя пользователя satpul, а zip — это опция сжатия. Затем сделайте следующее:
mv -vRf /home/satpul/extracted_files_dir/* /some/new/directory/on/samba/share