Когда я создаю файл в Ubuntu, он создает только с правами чтения / записи для владельца. Но если я копирую файл с USB-накопителя fat32, права доступа к файлам дают права на чтение / выполнение Владельцу, Группе и другим.
Как сделать так, чтобы файлы, скопированные с USB-накопителя, имели те же разрешения, что и другие файлы в Ubuntu?
Unix-подобные владение и разрешения не совместимы с файловыми системами fat или ntfs. Если вам нужны разрешения для сохранения при копировании на другой диск, лучше отформатируйте его с файловой системой типа ext *. Если это флешка, то лучше с ext2, чтобы уменьшить количество записей на диск. Недостатком является то, что он сделает диск нечитаемым в Windows (и не загружается, если вы используете его для установки). Другой способ - создать архив (.tar.gz) с файлом (-ами) и скопировать архив, чтобы сохранить права доступа.
Лучший ответ, который я могу вам дать, - это использовать инструмент для архивирования на основе UNIX / Linux, такой как tar (1) или cpio (1). Это сохранит дату и права доступа к файлу (файлам), но сам файл архива нас не волнует. tar cf /media/stickdrive/foobar.tar path/to/my/file
Чтобы установить разрешения для копируемых файлов, которые поступают из файловой системы не-Unix, такой как FAT32, используйте
rsync --chmod=CHMOD source destination
, где CHMOD - желаемые разрешения для скопированных файлов. Замените CHMOD , например, 0644
предоставит право на чтение / запись владельцу и доступ только для чтения всем остальным пользователям. Для получения дополнительной информации о копировании см. rsync manpage .