그룹의 각 사용자에게 유사한 파일 권한을 부여하기 위해 사용자를 그룹화하는 방법

그룹의 각 사용자에게 유사한 파일 권한을 부여하기 위해 사용자를 그룹화하는 방법

사용자가 2명 user1이고 user2Ubuntu PC에 있습니다. user1설치하면서 만들었습니다. user2실행 가능한 Python 프로그램을 만들었습니다 . 이제 프로그램이 경로에 나타납니다 /home/user1/programs/. 따라서 user2.home 디렉토리에 있는 프로그램이 실행되고 있는 것입니다 user1. 실행 중에 출력 디렉터리에 파일을 생성할 수 없습니다 /home/user1/programs/Output/. 그래서 계속해서 권한을 확인하고 다음을 발견했습니다.

$ ls -l /home/user1/programs/
drwxrwxr-x 10 user1 user1 4096 Sep  6 11:30 Output
drwxrwxr-x  2 user1 user1 4096 Sep  5 17:50 source

$ cd Output

$ mkdir dummy1

$ ls -l
drwxrwxr-x 2 user1  user1  4096 Sep  6 11:30 dummy1

$ cd dummy1

$ vi a.txt

$ ls -l
-rw-rw-r-- 1 user1 user1 7 Sep  6 11:31 a.txt

$ cd ..

$ sudo mkdir dummy2

$ ls -l
drwxr-xr-x 2 root root 4096 Sep  6 12:37 dummy2

다른 사용자 ( 예:) 가 user2.writehomeuser1

이제 동일한 권한을 가진 동일한 그룹에 user1사용자를 추가하여 해당 그룹을 생성 하려면 어떻게 해야 합니까?user2user2rwx (7)

답변1

sudo -i
addgroup mygroup
addgroup user1 mygroup
addgroup user2 mygroup
chgrp -R mygroup /home/user1/programs/Output/
chmod -R ug+rwX  /home/user1/programs/Output/
find /home/user1/programs/Output/ -type d -exec chmod g+s {} +
exit

그러면 이름이 지정된 그룹이 추가되고, 두 명의 사용자가 그룹에 추가되며, mygroup모든 파일과 하위 디렉터리의 그룹 소유권이 로 변경됩니다./home/user1/programs/Output/mygroup

그런 다음 디렉터리에 대한 읽기, 쓰기 및 실행 권한을 설정하고 디렉터리에 있는 모든 파일을 읽고 쓸 수 있도록 허용합니다. 이번에도 이는 재귀적으로 적용됩니다.../Output/

마지막으로, chmod g+s아래에 생성된 모든 파일과 하위 디렉터리 /home/user1/programs/Output/mygroup.

이 모든 작업은 루트로 수행되어야 하므로 sudo -i루트 셸을 먼저 시작하고 exit루트 셸을 마지막으로 종료합니다.

관련 정보