mount.cifs는 Ubuntu 12.04.2 LTS의 파일 권한을 존중하지 않습니다.

mount.cifs는 Ubuntu 12.04.2 LTS의 파일 권한을 존중하지 않습니다.

/etc/fstab에서 다음 줄을 사용하여 표준 Ubuntu 12.04.2 LTS에 cifs 드라이브를 마운트하려고 했습니다.

//server-name/share-name  /mnt/archive  cifs  uid=1002,file_mode=0440,credentials=/etc/.smbcredentials,iocharset=utf8,sec=ntlmi  0  0

이 마운트는 백업을 저장하는 데 사용되므로 파일을 생성할 수 있는 권한으로 마운트하고 삭제하지는 않습니다. 들어가서 삭제할 수 있고 경고만 얻을 수 있다는 점을 제외하면 모든 것이 제대로 작동하는 것 같습니다.

myuser@localhost:/mnt/archive$ ls -l
-r--r----- 0 myuser root     51 Sep 19 17:56 deleteThis.txt
-r--r----- 0 myuser root     51 Sep 19 17:31 deleteThis.txt.bak

myuser@localhost:/mnt/archive$ rm deleteThis.txt.bak
rm: remove write-protected regular file `deleteThis.txt.bak'? y

myuser@localhost:/mnt/archive$ ls -l
-r--r----- 0 myuser root     51 Sep 19 17:56 deleteThis.txt

내 파일 권한이 존중되지 않는 이유는 무엇입니까? 이게 우분투인가요?

파일을 삭제하지 않고 cifs를 통해 네트워크 공유를 마운트하는 방법이 있습니까?

답변1

Linux에서는 파일 생성 권한과 파일 삭제 권한을 별도로 관리하지 않습니다. 두 경우 모두 중요한 것은 디렉터리에 대한 쓰기 액세스 권한이 있는지 여부입니다. 디렉토리를 기본 모드로 두었기 때문에 myuser는 /mnt/archive그 안에 있는 파일에 쓸 수 있고 삭제할 수도 있고 생성할 수도 있습니다.

rm읽기 전용 파일을 삭제하려고 하면 확인 메시지가 표시되지만 이는 해당 파일을 삭제할 권한이 없다는 의미는 아닙니다.하다제거할 권리가 있지만 rm그렇게 하는 것은 나쁜 생각일 수 있다고 생각합니다.

사용자가 파일을 삭제하는 것을 방지할 수 있습니다그들이 소유하지 않은 것에서 설치 옵션을 사용하는 것과 마찬가지로 디렉터리( ) chmod +t에 "고정 비트"를 설정합니다 ./tmpdir_mode=1755

디렉터리에 파일을 생성할 수 있는 권한을 부여하지 않으면 사용자가 자신의 파일을 삭제하는 것을 방지할 수 없습니다.

사용자가 삭제할 수 없는 파일을 생성하도록 허용하는 것은 이상합니다. 정말로 이 작업을 수행하려면 기존 Unix 파일 권한이나 Solaris/Linux ACL보다 더 유연한 것이 필요합니다(이 작업을 수행하려면 OSX ACL을 사용할 수 있다고 생각합니다).

관련 정보