Я пытаюсь скопировать целое /
каталог к некоторому другому местоположению. При выполнении CP рекурсивно, это перестало работать на некоторых файлах как:-
/ # ls -lrt /sys/module/nf_conntrack_ipv4/uevent
--w------- 1 root root 4096 Mar 7 06:29 /sys/module/nf_conntrack_ipv4/uevent
/ #
/ # cat /sys/module/nf_conntrack_ipv4/uevent
cat: can't open '/sys/module/nf_conntrack_ipv4/uevent': Permission denied
/ # cp /sys/module/nf_conntrack_ipv4/uevent /tmp
cp: can't open '/sys/module/nf_conntrack_ipv4/uevent': Permission denied
Если я создаю некоторый файл с только w
полномочия и попытка к копии/кошке это, я не видел проблем там. Однако для некоторых файлов как упомянутый выше тот, я не могу скопировать его или в кошку он даже при том, что я пробую как пользователь root. Кроме того, странная вещь состоит в том, что размер вышеупомянутого файла упоминается, чтобы быть как 4 096, который подобен тому, который мы имеем для каталога. Это - что-то специальный файл?
Я предполагаю, что пропускаю что-то здесь и нуждаюсь в некотором входе для знания больше о таких файлах или таких поведениях. Любезно выручите меня в понимании, почему меня не разрешают содержанию кошки таких файлов.
Для предотвращения специальных файловых систем как /sys
и /proc
необходимо дать следующую опцию cp
:
-x, --one-file-system
stay on this file system
(заключенный в кавычки от страница руководства )
, Если у Вас есть несколько фактических файловых систем, например, /
и /home
, необходимо будет затем дать несколько cp
команды.
Быть осторожным, который Вы не копируете от и к то же место. Это может привести к бесконечным циклам, где Вы делаете копии копий копий...
В регулярной файловой системе, например. ext4
, если Вы только имеете w
разрешение в файле, Вы не сможете читать (cat
) это, Вы должны читать (r
) бит для этого. Отметьте это, root
может считать любой файл независимо от битов полномочий.
Теперь, /sys
точка монтирования специального предложения sysfs
если ядром Linux, которое является на самом деле виртуальной файловой системой и работает по-другому, чем регулярные файловые системы. /sys
содержит связанную с устройством информацию системы.
Изменение чего-то в /sys
непосредственно изменил бы внутреннюю структуру данных ядра, таким образом, она зависит от ядра, что она разрешила бы или отклонила бы.
Для /sys/module/nf_conntrack_ipv4/uevent
, Вы имеете только w
набор битов для владельца (root
), даже если Вы добавляете r
бит для root
(который является очень плохой идеей), при чтении файла, Вы получили бы ошибку ввода-вывода, потому что дизайном ядро не позволит никому читать uevents для nf_conntrack_ipv4
модуль.