시스템 전체의 사용자 및 그룹 ID(파일 시스템 속성 포함)를 변경하시겠습니까?

시스템 전체의 사용자 및 그룹 ID(파일 시스템 속성 포함)를 변경하시겠습니까?

(이 문제는 다음과 관련이 있을 수 있습니다.Linux: "외부" 파티션을 마운트할 때 사용자 소유권을 시뮬레이션/마스크하시겠습니까? - 스택 오버플로)

저는 보통 Ubuntu(현재 11.04)를 데스크탑 OS로 사용합니다.myselfuid=1000, 이 그룹에 속함myselfgid=1000; 기본적으로 홈 디렉토리 권한은 다음과 같습니다.

> stat ~
  File: `/home/myself'
...
Access: (0755/drwxr-xr-x)  Uid: ( 1000/   myself)   Gid: (  1000/   myself)

이제 동일한 시스템에서 LiveUSB(Live-CD)를 통해 OpenSuse(현재 11.2)를 부팅해야 하는 경우가 있습니다. Live-CD 환경의 기본 사용자가linuxuid=999, 이 그룹에 속함usersgid=100; 따라서 홈 디렉토리 권한은 다음과 같습니다.

> stat ~
  File: `/home/linux'
...
Access: (0755/drwxr-xr-x)  Uid: ( 999/   linux)   Gid: (  100/   myself)

 

따라서 기본적으로 라이브 OpenSUSE(기본 사용자는 999:100)에 Ubuntu 드라이브(1000:1000 소유)를 마운트하면 평소처럼 액세스할 수 없습니다.

linux@linux:~> touch /media/extdrive/xxx
touch: cannot touch `/media/extdrive/xxx': Permission denied

 

linux:users그래서 OpenSUSE 시스템에서 기본 uid/gud를 변경해야 한다고 생각하여 다음을 시도했습니다.

> sudo /usr/sbin/usermod -u 1000 linux
usermod: Account `linux' is currently in use.

> id linux
uid=999(linux) gid=100(users) groups=100(users),33(video)

# so if that fails.... change directly from /etc/passwd? 
> sudo nano /etc/passwd

> id linux
uid=1000(linux) gid=100(users) groups=100(users),33(video)

...uid를 변경하면 Ubuntu 드라이브에 문제 없이 액세스할 수 있습니다. 하지만 이제는 이전에 사용했던 OpenSUSE 항목에 액세스할 수 없습니다 linux:users.

> sudo nano /etc/fstab
sudo: unknown uid: 999

...그러니까,나쁜/etc/passwd를 직접 변경하는 것에 대한 생각 :) 여기서 해결 방법은 먼저 루트 셸로 이동하여 명령을 실행하고 usermod재부팅하는 것 같습니다. 이제 OpenSUSE 환경에서 부팅했습니다.

linux@linux:~> stat ~
Access: (0755/drwxr-xr-x)  Uid: ( 1000/   linux)   Gid: (  100/   users)

이를 통해 평소와 같이 Ubuntu 파일 시스템/드라이브에 액세스하는 동시에 OpenSUSE의 기본 사용자가 소유한 모든 항목에 대한 일반적인 액세스도 허용합니다.

 

그러나 안전을 위해 그룹 ID도 변경하고 싶습니다. 이를 수행하는 데 권장되는 방법은 무엇입니까(위 토론에서 올바르게 수행하지 않은 경우 uid를 변경하는 데 권장되는 방법은 무엇입니까)?

답변해 주셔서 대단히 감사합니다.
응원합니다!

답변1

귀하의 질문을 올바르게 이해했다면 조건부를 사용할 수 find있습니다 -gid.

find /media/extdrive -gid 100 | sudo xargs chown myself:myself 

또는 원하는 find경우 -exec:

sudo find /media/extdrive -gid 100 -exec chown myself:myself {} +

또는 유용한 옵션이 chown있는 맨페이지를 확인하세요 .--from

sudo chown -R myself:myself --from=:100

자세한 내용은 해당 맨페이지를 참조하십시오.

관련 정보