Я вошел как "userc". Мне нужен доступ ко всем файлам, которые есть у "usera". Я отредактировал следующий файл,
vi /etc/group
usera:x:1000:userb,userc
Но это, похоже, не работает. Я все еще получаю ошибку "отказано в доступе". Если я su к usera, то я могу получить доступ к этим файлам.
Каков наилучший способ получить эквивалентный доступ «root» или «usera»?
Обновление: я попробовал варианты, предложенные в ответе, но все еще получаю следующее:
[root@app company]# cd /opt/company/
[root@app company]# chmod 777 emboss/
[root@app company]# su shantanu
[shantanu@app company]$ whoami
shantanu
[shantanu@app company]$ echo "test" > /opt/company/emboss/todel.txt
bash: /opt/company/emboss/todel.txt: Permission denied
[shantanu@app company]$ sudo echo "test" > /opt/company/emboss/todel.txt
bash: /opt/company/emboss/todel.txt: Permission denied
[shantanu@app company]$ sudo -u usera echo "test" > /opt/company/emboss/todel.txt
bash: /opt/company/emboss/todel.txt: Permission denied
решение1
Ответ наКаков наилучший способ получить эквивалентный доступ «root» или «usera»?
По умолчанию вы можете использовать команду sudo для выполнения команд от имени пользователя root.
Что-то вроде следования.
отредактируйте файл /etc/sudoers и добавьте следующую строку
userc ALL=(usera) NOPASSWD:ALL ## удалите NOPASSWD: если вы хотите включить аутентификацию пользователя
Тогда пользователь userc сможет использовать sudo для запуска программ от имени пользователя usera с опцией -u без ввода пароля пользователя usera.
теперь sudo позволяет userc выполнять команду как usera. Реальные и эффективные uid и gid устанавливаются в соответствии с целевым пользователем (usera), указанным в passwd.
sudo -u usera command
решение2
Файлы, вероятно, установлены без группового доступа (как для файлов, так и для каталога) или принадлежат к другой группе вообще. Каковы разрешения для соответствующих файлов/каталогов? ( ls -l
).