Ubuntu에서 외부 하드 드라이브의 권한 / 소유권 / 그룹을 변경할 수 없습니다


12

Linux 상자에 외장 하드 드라이브가 연결되어 있습니다. 웹 서버에서 파일에 액세스하도록 설정하고 싶었지만 드라이브의 모든 파일과 디렉토리에 대한 권한 rwx은 로컬 로그인 소유자이며 그룹은 root그룹입니다.

아파치 사용자가 읽을 수있는 파일이 필요합니다. 모든 파일을로 설정하려고 chmod a+rwx -R *했지만 아무것도하지 않습니다 (오류는없고 효과가 없습니다). chgrp사용자 그룹을 사용하여 그룹을 변경하려고 했지만 그것은 작동하지 않을 것입니다. 모든 명령을 실행할 때도 권한이 없다는 오류가 발생합니다 sudo!

이 하드 드라이브는 어떻습니까 ??? sudo chmod a+rwx *무엇이든해야합니까?

답변:


19

먼저 사용중인 파일 시스템 유형을 확인하십시오 df -T.

sys @ p : ~ $ df -T
사용 된 파일 시스템 유형 1K 블록 사용 가능한 비율
ext3 ext3 19222656 1050948 17195164 6 % /
tmpfs tmpfs 1684988 0 1684988 0 % / lib / init / rw
udev tmpfs 10240 64 10176 1 % / dev
tmpfs tmpfs 1684988 0 1684988 0 % / dev / shm

/mnt/external예를 들어 마운트 된 경우 맨 오른쪽 열에 표시됩니다. 두 번째 열에서 파일 시스템 유형을 볼 수 있습니다. NTFS 인 경우 NTFS-3G를 원할 것입니다 (아마도 이미 설치되어 있지 않은 sudo apt-get install ntfs-config경우 gksu ntfs-config). Linux는 권한을 지원하지 않지만 읽기 및 쓰기에 대한 FAT 지원을 이미 갖추고 있습니다.

특정 사용자 / 그룹에 소유권이 적용된 NTFS 파티션을 마운트하려면 마운트 스위치에서 지정하십시오.

mount -o uid = 사용자 이름, gid = 그룹 이름 / dev / sdc / path / to / mount

위에서 제안한대로 ext3으로 변경하면 다음을 사용할 수 있습니다 chown.

chown -R user *
chown -R user .

4

Kim이 말했듯이 Unix 파일 시스템에서만 Unix 권한과 소유권을 얻을 수 있습니다. ext3은 좋은 후보입니다.

다시 포맷하지 않고이 드라이브를 사용해야하는 경우 mount소유자, 그룹 및 / 또는 읽기 / 쓰기 권한을 지정하는 명령 옵션을 사용하여 드라이브를 수행 할 수 있습니다 . 이 옵션은 드라이브의 모든 파일에 영향을 미칩니다 (FSTYPE을 결정하는 방법은 John T의 답변 참조).

# list files as owned by X, use numerical UID as found in /etc/passwd
$ mount -t <FSTYPE> -o uid=X /dev/?? /path/to/mount/point

# list files as owned by group Y, use numerical GID found in /etc/passwd
$ mount -t <FSTYPE> -o gid=Y /dev/?? /path/to/mount/point

# list files as accessible per umask 
#   (022 gives rwx permissions to owner, r-x permissions to everyone else)
$ mount -t <FSTYPE> -o umask=022 /dev/?? /path/to/mount/point

# combine all of the above:
$ mount -t <FSTYPE> -o uid=X,gid=Y,umask=022 /dev/?? /path/to/mount/point

2

나는 이것을했고 그것이 효과가 있었다 :

sudo umount /dev/sda3 /media/windows1
sudo umount /dev/sda5 /media/windows2

그리고

sudo mount -o rwx /dev/sda3 /media/windows1
sudo mount -o rwx /dev/sda5 /media/windows2

나는 우분투 11.10 사용하고 있습니다 sda3내 Windows되어 C:, sda5입니다 G:.


2

따라서 동일한 드라이브에있는 여러 시스템의 백업이 있었기 때문에 약간의 시간이 걸렸습니다. hdfsplus 유틸리티 (hfsprogs)를 설치 한 다음 드라이브를 마운트하고 마지막으로 사용자 및 그룹 이름을 사용하여 관련 폴더의 소유권을 변경해야했습니다.

참고 : mount터미널에 입력하기 만하면 마운트 지점과 장치를 나열 할 수 있습니다 .

먼저:

sudo apt-get install hfsprogs

그런 다음 드라이브가 이미 마운트되어 있으면 마운트를 해제하십시오.

sudo umount /media/user/mount_point

다음 인수를 사용하여 드라이브를 마운트하십시오.

sudo mount -t hfsplus -o force,rw /dev/sdb# /media/user/mount_point

문제가있는 폴더가있는 디렉토리로 이동하십시오. 그런 다음 수행하십시오.

chmod -R your_user_group:your_user_name ./target_directory

희망이 도움이됩니다.


이것은 나를 위해 일한 유일한 솔루션입니다. 다른 사람들을 모두 시험해 보았습니다. 감사!
SolStack

1

파일 권한을 지원하지 않는 FAT 형식 일 수 있습니다. 대신 ext3을 사용하십시오.

당사 사이트를 사용함과 동시에 당사의 쿠키 정책개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.