/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
에 "고정 비트"를 설정합니다 ./tmp
dir_mode=1755
디렉터리에 파일을 생성할 수 있는 권한을 부여하지 않으면 사용자가 자신의 파일을 삭제하는 것을 방지할 수 없습니다.
사용자가 삭제할 수 없는 파일을 생성하도록 허용하는 것은 이상합니다. 정말로 이 작업을 수행하려면 기존 Unix 파일 권한이나 Solaris/Linux ACL보다 더 유연한 것이 필요합니다(이 작업을 수행하려면 OSX ACL을 사용할 수 있다고 생각합니다).