Как предоставить пользователю права 777, не затрагивая при этом других?

Как предоставить пользователю права 777, не затрагивая при этом других?

На моем сервере CentOS есть пользователь, который не входит ни в одну группу, а работает сам по себе.

Как мне дать этому пользователю права 777, не затрагивая других пользователей на сервере? У меня отключено chroot, поэтому я могу все видеть, но пользователь не может писать.

Использовать ли мне chown?

решение1

В зависимости от того, что именно вы имеете в виду, проще всего было бы создать группу только для этого пользователя, но ваш вопрос, честно говоря, не совсем ясен. Давайте рассмотрим его подробнее.

решение2

Разрешения для файла — это то, как операционная система определяет, какой доступ предоставить данному пользователю. 0777 — это явное заявление о том, что владелец, группаивсе остальные будут иметь полные привилегии чтения-записи-выполнения.

Вам нужны списки ACL POSIX, которые можно читать getfaclи устанавливать с помощью setfacl. Они входят в aclRPM и требуют, чтобы файловая система поддерживала списки ACL. Все обычные файловые системы Linux поддерживают списки ACL и, в наши дни, должны включать поддержку ACL в метаданных файловой системы.

Лучший способ проверить, доступна ли поддержка ACL, — просто попытаться установить ACL для файла.

Так:

$ sudo yum install acl
$ setfacl -m user:fred:rwx my_file

Это предоставит fred rwx (07) разрешения, my_fileне затрагивая никого другого.

Будьте осторожны, чтобы не запутаться в ACL-списках. Они мощные, но лучше использовать их экономно. Обычно лучше создать новую группу.

решение3

Я предполагаю, что вы хотите предоставить пользователю права root, чтобы он мог читать/писать/выполнять все, не предоставляя того же другим пользователям.

Отредактируйте /etc/sudoersфайл (используя visudoкоманду от имени пользователя root) и добавьте в конец следующую строку:

# Assuming the username is dummyUser who is about to get root-like permissions
dummyUser ALL=(ALL) ALL

Связанный контент