![sudo를 사용할 때 사용자 권한과 루트 권한의 통합을 유지할 수 있습니까?](https://linux55.com/image/103661/sudo%EB%A5%BC%20%EC%82%AC%EC%9A%A9%ED%95%A0%20%EB%95%8C%20%EC%82%AC%EC%9A%A9%EC%9E%90%20%EA%B6%8C%ED%95%9C%EA%B3%BC%20%EB%A3%A8%ED%8A%B8%20%EA%B6%8C%ED%95%9C%EC%9D%98%20%ED%86%B5%ED%95%A9%EC%9D%84%20%EC%9C%A0%EC%A7%80%ED%95%A0%20%EC%88%98%20%EC%9E%88%EC%8A%B5%EB%8B%88%EA%B9%8C%3F.png)
이 질문은 다음과 유사합니다.이것, 하지만 좀 더 명확하게 표현되었으면 좋겠습니다.
이것이 /home
NFS 마운트 디렉토리이고 NFS 서버에 루트 압축이 활성화되어 있다고 가정합니다. 파일을 읽으려면 루트 권한이 필요하고 파일을 쓰려면 일반 사용자 권한이 필요한 다음 스크립트를 고려하십시오.
#!/bin/bash
cat /etc/shadow
touch ~/shadow
이 스크립트가 실행되지 않으면 sudo
사용자가 읽을 수 없습니다 /etc/shadow
. 그러나 실행 스크립트를 사용하면 루트가 압착되어 루트에 sudo
쓸 수 없습니다 .~/shadow
sudo
이 스크립트를 실행할 때 필요한 모든 명령을 포함하지 않고도 스크립트로 성공적으로 실행할 수 있도록 루트에 사용자 권한을 부여할 수 있습니까 ?
위의 이유로 나는 sudo
사용을 피하려고 노력하고 있습니다.여기.
답변1
로 스크립트를 실행할 수 있습니다 . 그러나 sudo
필요하지 않거나 파일 시스템을 처리할 때 nfs
루트 권한을 포기 하도록 스크립트를 수정할 수 있습니다.
#!/bin/bash
cat /etc/shadow
su -c 'touch ~/shadow' - <some_user>