где Ubuntu сохраняет полномочия пользователя файла?

я не знаю причину, почему, но пользователь Linux полномочия не работают над файловой системой NTFS... так или иначе, если бы файл был скопирован от окон до Ubuntu, то Ubuntu должна дать им владение и полномочия пользователя также.. таким образом, где Ubuntu сохраняет полномочия пользователя файла? вещь, перемещение файла от дистрибутива Linux до другого не изменяет полномочия. таким образом, это должно быть в файле наверняка. Ubuntu переписывает каждый файл?

1
задан 2 December 2014 в 05:48

2 ответа

Linux использует NTFS с помощью программного обеспечения под названием NTFS3G (Google для получения дополнительной информации если заинтересовано). Linux и NTFS имеют полностью различное понятие пользователей, групп и полномочий файла. Это означает, что не просто перевести полномочия между системами.

Для корректировки полномочий NTFS в Linux формируются, NTFS3G имеет 2 возможности: (a) просто проигнорируйте, какой NTFS имеет и установил все файлы и все каталоги к тому же umasks; или (b) при условии, что пользователь, отображающийся, был сделан, это пытается предположить, какое значение разрешения Linux закончены из полномочий NTFS paricular файла/dir.

В случае, если (a) предоставленные Linux полномочия не хранятся нигде, и любые попытки изменить их проигнорированы. Случай (b) чтения и полномочия файла хранилищ в NTFS.

2
ответ дан 10 November 2019 в 08:13

В ext файловая система, которая используется в Linux, inodes, используется для описания хранивших файлов. inode содержит атрибуты файла, а также его местоположений блока данных (это блоки, которые содержат фактическое содержание файла). Следующее кратко, что хранится в inode:

Доступ к файлу номера Inode, измените и измененный Размер файла меток времени Местоположения Блока данных Permissions Owner Group

Таким образом для ответа на вопрос Unix хранит полномочия файла в его inode, который находится в файловой системе, например ext4.

Если Вы хотите видеть inode информацию файла, можно использовать stat команда:

$ stat /bin/bash
  File: ‘/bin/bash’
  Size: 635933          Blocks: 624        IO Block: 65536  regular file
Device: 2e208854h/773883988d    Inode: 281474976901122  Links: 1
Access: (0755/-rwxr-xr-x)  Uid: ( 1000/    Alaa)   Gid: (  513/    None)
Access: 2014-10-18 13:45:13.375853300 -0400
Modify: 2014-10-08 16:54:16.000000000 -0400
Change: 2014-10-18 13:45:13.438253400 -0400
 Birth: 2014-10-18 13:45:13.375853300 -0400

Указать на что-то в Вашем вопросе: по умолчанию при копировании файла от дистрибутива Linux до другого полномочия не копируются. То, что происходит, - то, что блоки данных (фактическое содержание) копируются, но все другие атрибуты не. Так, например, если Вы копируете файлы со своего внутреннего на Ваш внешний жесткий диск (оба отформатированные как ext4), владелец скопированных данных по внешнему жесткому диску становится (я думаю), пользователь, который сделал команду копии. Если бы Вы хотели сохранить полномочия (и другие атрибуты) файла, то необходимо было бы использовать дополнительный флаг, такой как -p (или --preserve) в cp команда:

   -p     same as --preserve=mode,ownership,timestamps

   --preserve[=ATTR_LIST]
      preserve   the   specified   attributes   (default:  mode,owner-
      ship,timestamps), if possible  additional  attributes:  context,
      links, xattr, all

Где mode полномочия. Используя опции как -p копии по тем inode приписывают новому файлу.

Windows использует FAT32 или NTFS, которые являются совершенно другими файловыми системами, которые не понимают inodes. Вот почему, когда Вы копируете что-то с Linux (ext4) в Windows (NTFS или FAT32), Windows применяет свои собственные атрибуты к файлу.

При монтировании файловой системы NTFS в Ubuntu она устанавливает полномочия на всем в разделе с помощью umask команда (или опции fmask и dmask в fstab). При копировании чего-то в тот смонтированный раздел те файлы берут что umask команда влечет за собой, и полномочия не могут быть изменены, если Вы не повторно монтируете целый раздел с новыми опциями.

Для получения дополнительной информации читайте страницу справочника ntfs-3g здесь: http://linux.die.net/man/8/ntfs-3g.

4
ответ дан 3 December 2019 в 06:33

Другие вопросы по тегам:

Похожие вопросы: