システム全体のユーザーとグループ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

詳細については、該当するマンページを参照してください。

関連情報