파일을 소유한 경우 쓰기 권한을 변경해야 하는 이유는 무엇입니까?

파일을 소유한 경우 쓰기 권한을 변경해야 하는 이유는 무엇입니까?

파일을 생성한 sudo vim test다음 ( 없이) 내 계정에서 파일을 여는 경우 sudo, 파일을 수정하려고 하면(예: 읽기 전용 옵션이 설정됨) 편집자가 불평하는 이유는 무엇입니까?

나 에 따르면 ls -l나는 주인이고 주인은rwx

왜 파일에 쓸 수 없나요?

답변1

파일을 생성하면 sudo vim test소유자는 귀하가 아닌 루트가 됩니다. 따라서 나중에 파일을 편집하려면 소유자를 루트에서 귀하로 변경하거나 권한을 변경해야 합니다.

바라보다:

jordim@bucketlist-196008:~/test$ sudo vim test
jordim@bucketlist-196008:~/test$ ls -l
total 8
(...)
-rw-r--r-- 1 root   root      2 Feb 22 15:43 test
(...)

생성된 파일은 root:root에 속하며 루트만이 해당 파일에 대한 읽기 및 쓰기 권한을 갖습니다. 이 그룹의 나머지 사용자와 다른 그룹의 다른 사용자는 읽기만 할 수 있습니다.

문제는 나중에 일반 사용자로서 파일을 편집해야 하는 경우 파일을 생성하기 위해 "sudo"를 사용하는 이유는 무엇입니까?

답변2

를 사용하여 파일을 생성하는 경우 sudo command파일 소유자는 입니다 root.

예:

$ sudo vim test
$ ls -lsa test
4 -rw-r--r-- 1 root root 5 Feb 22 16:43 test

일반 계정( 아님)을 사용하여 파일을 업데이트(쓰기)하려고 하면 root파일에 쓸 수 없습니다(파일 권한이 모든 사람에게 쓰기 가능한 경우 제외).

예:

$ echo "testing 123..." > test
bash: test: Permission denied

관련 정보