파일 시스템 루트에 대한 권한을 변경할 수 없습니다.

파일 시스템 루트에 대한 권한을 변경할 수 없습니다.

ls -la를 작성하면 출력은 다음과 같습니다.

tusharmakkar08-위성-C660 tusharmakkar08 # ls -la
총 88개
drwxr-x---+ 10 루트 4096 4월 18일, 19:43.
drwxr-xr-x 4root4096 3월 18일, 17:35..
drwxr-xr-x 4 root32768 1970년 1월 1일 CFB1-5DDA
drwxrwxrwx 2root4096 2월 23일 00:09 FA38015738011473
drwxrwxrwx 2 루트 루트 4096 4월 17일 14:00 로컬
drwxrwxrwx 2 루트 루트 4096 3월 19일 05:04 local\040Disk1
drwxrwxrwx 2 루트 루트 4096 4월 18일 19시 43분 local\134x20Disk1
drwxrwxrwx 2 루트 루트 4096 2월 23일 00:09 로컬 디스크
drwxrwxrwx 1 루트 루트 24576 4월 19일 15:15 local\x20Disk1
drwxrwxrwx 2 루트 root4096 2월 23일 00:08 PENDRIVE

이제 CFB1-5DDA의 권한을 변경하고 싶은데 변경할 수 없습니다. 내가 글을 쓸 때

chmod 777 CFB1-5DDA

권한은 변경되지 않습니다. 산출

sudo blkid -c /dev/null

tusharmakkar08-satellite-C660 tusharmakkar08 # sudo blkid -c /dev/null
/dev/sda2: UUID="FA38015738011473" 유형="ntfs"
/dev/sda3: LABEL="로컬 디스크" UUID="01CD72098BB21B70" TYPE="ntfs"
/dev/sda4: UUID="2ca94bc3-eb3e-41cf-ad06-293cf89791f2" 유형="ext4"
/dev/sda5: UUID="CFB1-5DDA" 유형="vfat"

산출

고양이/etc/fstab 

tusharmakkar08-satellite-C660 tusharmakkar08 # 고양이 /etc/fstab
# /etc/fstab: 정적 파일 시스템 정보.
#
#                

#/dev/sda4 항목:
UUID=2ca94bc3-eb3e-41cf-ad06-293cf89791f2 / ext4 기본값 01
#/dev/sda2 항목:
UUID=FA38015738011473 /media/sda2 ntfs-3g 기본값, locale=en_IN 0 0
#/dev/sda5 항목:
UUID=CFB1-5DDA /media/tusharmakkar08/CFB1-5DDA vfat 기본값 0 0
/dev/sda3 /media/tusharmakkar08/Local\134x20Disk1 fusionblk 기본값, nosuid, nodev, 허용_기타, blksize=4096 0 0
/dev/sda3 /media/tusharmakkar08/Local\x20Disk1 ntfs-3g 기본값, nosuid, nodev, locale=en_IN 0 0

#/dev/sda3 /media/tusharmakkar08/Local\134x20Disk1 ntfs 기본값,nls=utf8,umask=0222,nosuid,nodev 0 0

그리고 출력

tusharmakkar08-satellite-C660 tusharmakkar08 # 설치
/dev/sda4 켜짐/ 입력 ext4(rw)
/proc의 proc 유형 proc(rw,noexec,nosuid,nodev)
/sys의 sysfs 유형 sysfs(rw, noexec, nosuid, nodev)
/sys/fs/fuse/connections에 fusectl(rw) 유형이 없습니다.
/sys/kernel/debug 유형 debugfs(rw)에는 없음
/sys/kernel/security 유형 securityfs(rw)에 없음
/dev에서 udev 유형 devtmpfs(rw,mode=0755)
/dev/pts 유형 devpts의 devpts(rw,noexec,nosuid,gid=5,mode=0620)
/run에서 tmpfs 유형 tmpfs(rw,noexec,nosuid,size=10%,mode=0755)
/run/lock 유형은 tmpfs에서 사용할 수 없습니다(rw, noexec, nosuid, nodev, size=5242880)
/run/shm 유형 tmpfs를 사용할 수 없음(rw, nosuid, nodev)
/run/user 유형 tmpfs를 사용할 수 없음(rw, noexec, nosuid, nodev, size=104857600, mode=0755)
/sys/fs/cgroup의 cgroup 유형 tmpfs(rw,relatime,mode=755)
/sys/fs/cgroup/cpuset의 cgroup 유형 cgroup(rw, relatime, cpuset)
/sys/fs/cgroup/cpu의 cgroup 유형 cgroup(rw, relatime, CPU)
/sys/fs/cgroup/cpuacct의 cgroup 유형 cgroup(rw, relatime, cpuacct)
/sys/fs/cgroup/memory의 cgroup 유형 cgroup(rw, relatime, memory)
/sys/fs/cgroup/devices의 cgroup 유형 cgroup(rw, relatime, devices)
/sys/fs/cgroup/freezer의 cgroup 유형 cgroup(rw, relatime, Freezer)
/sys/fs/cgroup/blkio의 cgroup 유형 cgroup(rw, relatime, blkio)
/sys/fs/cgroup/perf_event의 cgroup 유형 cgroup(rw,relatime,perf_event)
/dev/sda2 /media/sda2의 fusionblk(rw,nosuid,nodev,allow_other,blksize=4096) 유형
/dev/sda5는 /media/tusharmakkar08/CFB1-5DDA 유형 vfat(rw)에 있습니다.
/media/tusharmakkar08/Local\x20Disk1의 /dev/sda3 유형 fusionblk(rw,nosuid,nodev,allow_other,blksize=4096)
binfmt_misc 유형 binfmt_misc(/proc/sys/fs/binfmt_misc)(rw, noexec, nosuid, nodev)
/run/user/tusharmakkar08/gvfs의 gvfsd-fuse 유형 fusion.gvfsd-fuse (rw,nosuid,nodev,user=tusharmakkar08)

답변1

chmod 777 CFB1-5DDACFB1-5DDA마운트 지점이고 마운트된 파일 시스템이 vfat이므로 실패했습니다 . 따라서 파일 시스템이 지원하지 않는(즉, 저장할 수 없는) 파일 시스템에 메타데이터를 쓰려고 합니다. 그렇게 간단합니다.

strace chmod 777 CFB1-5DDA커널 오류를 표시합니다.

접근 권한을 변경하려면 설치( -o remount또는 umount; mount)를 변경해야 합니다.

답변2

권한 문제를 일으키는 디렉터리/파일을 실제로 지원하는 파티션/마운트가 무엇인지 알 수 없습니다.

NTFS이거나 Fusion 파일 시스템 중 하나인 경우 클라이언트에 표시되는 권한이 오해의 소지가 있을 수 있습니다. 반드시 실제 권한은 아닙니다. 이에 대한 실제 권한은 NTFS/FUSE 공유 설치를 수행하는 실제 계정에 의해 제어됩니다.

실제 권한을 얻으려면 클라이언트보다는 권한 개시자(즉, 파일이 공유되는 컴퓨터)를 살펴봐야 할 것입니다.

예를 들어

여기서는 mount.cifs를 사용하여 Samba 공유를 마운트합니다. 공유가 마운트되기 전에 공유를 마운트하는 디렉터리(마운트 지점이라고도 함)에 다음과 같이 라이센스가 부여됩니다.

$ ls -dl /mnt
drwxr-xr-x. 5 root root 4096 Apr 20  2011 /mnt/

이 디렉토리의 내용은 다음과 같습니다.

$ ls -la /mnt
total 20
drwxr-xr-x.  5 root root 4096 Apr 20  2011 .
drwxr-xr-x. 26 root root 4096 Apr 26 08:11 ..
drwxr-xr-x.  2 root root 4096 Dec 28  2010 m1
drwxr-xr-x   2 root root 4096 Apr 20  2011 test1
drwxr-xr-x   2 root root 4096 Apr 20  2011 test2

이제 사용자 계정 "sam"을 사용하여 "bart" 서버에서 Samba 공유 "sam"을 마운트합니다.

노트:사용자 계정 "sam"은 내 로컬 컴퓨터가 아닌 서버 "bart"에 로컬입니다.

$ mount -t cifs //bart/sam -o username=sam /mnt

이제 /mnt가 어떻게 보이는지 살펴보겠습니다.

$ ls -ld /mnt/
drwxr-x--- 123 5060 1000 0 Apr 28 12:14 /mnt/

$ ls -l /mnt/ | head -5
total 72828
drwxr-xr-x  3 5060 users        0 Oct 23  2009 backup_archives
-rw-r--r--  1 5060  1000     9907 Jan 31 14:39 bashrc
-rw-r--r--  1 root root     50664 Oct 10  2007 bg_body.png
drwxr-xr-x  4 5060 users        0 Mar 16  2012 bin

Samba 공유를 해당 위치에 마운트하자마자 /mnt 디렉토리에 대한 이전 권한이 사라집니다. 원래의 /mnt가 사라지지 않았습니다. 원래의 unmount /mnt/mnt가 아직 거기에 있다면 마운트해도 마운트한 디렉토리의 내용이 삭제되지 않습니다.

노트:사용자 ID는 5060으로 표시됩니다. 이는 원격 파일 시스템을 다루고 있으며 로컬 시스템이 이러한 사용자 ID에 대해 모른다는 더 많은 증거입니다.

기억해야 할 핵심 사항

  • 표시되는 파일은 실제로 로컬 파일 시스템의 일부가 아닙니다.
  • 권한은 클라이언트가 아닌 파일 서버에 의해 결정됩니다.
  • 설치 기술은 본질적으로 다르기 때문에 어떤 기술이 어디에 사용되는지 주의를 기울여야 합니다.

관련 정보