(この質問はおそらく Linux:「外部」パーティションのマウント時にユーザー所有権をシミュレート/マスキングしますか?-スタックオーバーフロー)
私は通常、デスクトップOSとしてUbuntu(現在は11.04)を使用しています。たとえば、私はuid = 1000のユーザーmyself
であり、グループの一部ですmyself
with gid = 1000;したがって、基本的にホームディレクトリのアクセス許可は次のようになります。
> stat ~
File: `/home/myself'
...
Access: (0755/drwxr-xr-x) Uid: ( 1000/ myself) Gid: ( 1000/ myself)
現在、同じマシンで、LiveUSB(Live-CD)を介してOpenSuse(現在は11.2)を起動する必要がある場合があります。 Live-CD環境のデフォルトユーザーがlinux
、uid = 999、一部であることを除いて、これらはすべて問題なく機能します。グループのusers
、gid = 100;したがって、ホームディレクトリのアクセス許可は次のようになります。
> stat ~
File: `/home/linux'
...
Access: (0755/drwxr-xr-x) Uid: ( 999/ linux) Gid: ( 100/ myself)
したがって、基本的に、Ubuntuドライブ(1000:1000が所有)をライブOpenSUSE(デフォルトユーザーは999:100)にマウントすると、通常どおりアクセスできません。つまり、次のようになります。
linux@linux:~> touch /media/extdrive/xxx
touch: cannot touch `/media/extdrive/xxx': Permission denied
それで、OpenSUSEマシンでlinux:users
のデフォルトの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ドライブに正常にアクセスできますが、以前はlinux:users
が所有していたOpenSUSEのものにアクセスできなくなりました。
> Sudo nano /etc/fstab
Sudo: unknown uid: 999
...つまり、bad/ etc/passwdを直接変更するという考え:)ここでの解決策は、rootシェルにドロップすることだったようです。まず、usermod
コマンドを実行し、再起動します。これで、OpenSUSE環境からアクセスできます。
linux@linux:~> stat ~
Access: (0755/drwxr-xr-x) Uid: ( 1000/ linux) Gid: ( 100/ users)
これにより、ほとんどの場合、通常どおりUbuntuファイルシステム/ドライブにアクセスできるようになります。また、OpenSUSEのデフォルトユーザーが所有するものすべてに通常アクセスできます。
ただし、念のため、グループIDも変更したいと思います。これを行うための推奨される方法は何ですか(そして、上記の説明で正しく行わなかった場合、uidを変更するための推奨される方法は何ですか)?
回答をよろしくお願いします。
乾杯!
私があなたの質問を正しく理解している場合は、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
詳細については、適切なマンページを参照してください。