macOSにアカウントを作ると勝手に「uid」が決められてしまう。
それは構わないのだが、ファイルサーバに NFS とかで接続する際、この「uid」で多少面倒になる。

っで、このuidをファイルサーバ/samba-ADで管理しているuidに変更するにはどうすればいいのだろうか。
macOS側からの歩み寄り

パスワード認証機構はmacOS側にお願いして、NFSで繋ぐときに備えてuid/gidを備える。
まぁ、sshfs、smb://<ファイルサーバ>/home/<ユーザ名>、afp://<ファイルサーバ>/home/<ユーザ名> とかで
繋げば、uid/gidを揃える必要はないのだが、macOS側でできる対応を掲示する

グループを作成

管理者権限でmacOSにログインして、「システム環境設定」から「ユーザとグループ」を起動します。
左下の鍵を解錠して、「+」リンクを押下します。新規入力欄が表示され、新規項目で「グループ」を選択して、
そのグループ名をフルネーム欄に記載します。そして「グループを作成」ボタンを押下します
2017y07m18d_125504711.png

次に、作った新規グループ「crystal」のgidを変更します。
左メニューに表示されたグループ「crystal」を選択して、右クリックメニューから「詳細オプション...」を選択します。
2017y07m18d_125607184.png

すると、グループ「crystal」の詳細が表示される。
ここで、グループID欄がgidなので、目的の値に変更して、「OK」ボタンを押下します
2017y07m18d_125637169.png

以上で新規のグループを作って、そのgidを変更してみた。
次はユーザを作成して、このグループをアサインする

ユーザ作成

同じく「システム環境設定」から「ユーザとグループ」を起動させ、「+」リンクを押下します。
新規入力欄に真名とアカウント名、パスワードを入力して、「ユーザを作成」ボタンを押下します
*この段階でホームディレクトリが用意されます
2017y07m18d_131529124.png

次に、作成した新規ユーザ「saber」のuid/gidを変更します。
目下のuid/gidは

lion:~ supervisor$ id saber
uid=502(saber) gid=20(staff) groups=20(staff),702(com.apple.sharepoint.group.2),
12(everyone),61(localaccounts),100(_lpoperator),701(com.apple.sharepoint.group.1)
lion:~ supervisor$

とuid:502, gid:20 に定義された。
加えて/Usersにホームディレクトリが作られ、フォルダ、ファイルの類が先ほどのuid/gidで用意されている。

lion:~ supervisor$ ls -l /Users/saber/
total 0
drwx------+  3 saber  staff  102  7 18 13:15 Desktop
drwx------+  3 saber  staff  102  7 18 13:15 Documents
drwx------+  3 saber  staff  102  7 18 13:15 Downloads
drwx------+ 26 saber  staff  884  7 18 13:15 Library
drwx------+  3 saber  staff  102  7 18 13:15 Movies
drwx------+  3 saber  staff  102  7 18 13:15 Music
drwx------+  3 saber  staff  102  7 18 13:15 Pictures
drwxr-xr-x+  5 saber  staff  170  7 18 13:15 Public
lion:~ supervisor$

なので

  • システム側でuid/gidの変更
  • ファイルシステム側のuid/gid変更

の2つが必要

まずはシステム側のuid/gidを変更してみる。
「システム環境設定」から「ユーザとグループ」を起動させ、左リストからユーザを選択して、右クリックメニューから「詳細オプション」を選択する
2017y07m18d_131618267.png

詳細画面が現れ、「ユーザID」と「グループ」を変更して、「OK」ボタンを押下します
2017y07m18d_132857047.png

すると、直後に、uid/gidは

lion:~ supervisor$ id saber
uid=2003(saber) gid=2001(SYBYL\crystal) groups=2001(SYBYL\crystal),702(com.apple.sharepoint.group.2),
12(everyone),61(localaccounts),100(_lpoperator),701(com.apple.sharepoint.group.1)
lion:~ supervisor$

となるが、ホームディレクトリは反映されない

lion:~ supervisor$ ls -l /Users/saber/
total 0
drwx------+  3 502  staff  102  7 18 13:15 Desktop
drwx------+  3 502  staff  102  7 18 13:15 Documents
drwx------+  3 502  staff  102  7 18 13:15 Downloads
drwx------+ 26 502  staff  884  7 18 13:15 Library
drwx------+  3 502  staff  102  7 18 13:15 Movies
drwx------+  3 502  staff  102  7 18 13:15 Music
drwx------+  3 502  staff  102  7 18 13:15 Pictures
drwxr-xr-x+  5 502  staff  170  7 18 13:15 Public
lion:~ supervisor$

なので、手動でuid/gidを変更する

lion:~ supervisor$ sudo chown -R 2003:2001 /Users/saber
Password:
lion:~ supervisor$

これで完了

留意 変更対象アカウント変更しない。管理者権限のある別なユーザで行うこと。また変更対象アカウントで稼働中のプロセスがあれば、停止してから行うこと。再起動直後、管理者権限ユーザで行うのがいいのかも。

変更対象アカウントでログインして、ログアウト後に管理者権限でログインしても、変更対象アカウントのプロセスが残っている場合があるので注意


トップ   編集 添付 複製 名前変更     ヘルプ   最終更新のRSS
Last-modified: 2017-07-18 (火) 15:36:01 (30d)