smb で繋がってる共有フォルダの owner が Unknown+User Unix_Group+1000 みたいになって、vi で編集すると readonly とか言われるのでこの部分の改善を図った。
以下の設定を行ったところ、ls -l での表示は改善されたが、vi で readonly と言われる件は、解決出来ず。
以下の設定を行ったところ、ls -l での表示は改善されたが、vi で readonly と言われる件は、解決出来ず。
/etc/passwd と /etc/group に user と group と Windows の Account 情報の SID を記述しておくと良いらしい。
mkpasswd と mkgroup というコマンドで自動生成出来る模様。
大まかな使い方は以下の通り。
LANDISK だと
LookupAccout系の API からも確認出来るように、wautils を作ってみた。
生成したリストを /etc/{passwd,group} に転記した後、cygwin の process を一旦全部落とすと設定が反映される。
複数のプロセスが走っている場合は、いちいち落として回るのも面倒なので、私家版 apt-cyg で dist-upgrade すると手早い。
2018-12-16:
Windows と言うか samba 側の SID に対する cygwin の uid を /etc/passwd 上で統一してみた。
結果、stat で表示される uid はローカルとネットワークドライブで同じに出来たのだが、
ネットワークドライブ上のファイルは、user group other のうち other の permission が影響してしまいやはり read only の問題が解決できなかった。
mkpasswd と mkgroup というコマンドで自動生成出来る模様。
大まかな使い方は以下の通り。
mkpasswd [-l マシン名] [-u ユーザ名] [-U UNIXユーザ名] mkgroup [-l マシン名] [-g グループ名] [-U UNIXグループ名]一覧に出てこない SID もあるので「explorer.exe」から各ファイルの「プロパティ」から「セキュリティ」タブを開きグループ名またはユーザー名を確認し、名指しすると特定できると思う。
LANDISK だと
Everyone nobody (Unix User\nobody) Nogroup (Unix Group\nogroup)とか
Everyone users (Unix Group\users) Koichi OKADA(LANDISK\kou)みたいになっているので、
mkpasswd -l LANDISK -U nobody mkgroup -l LANDISK -U nogroup mkpasswd -l LANDISK -u kou mkgroup -l LANDISK -U usersのようにすると特定できる。-u, -g, -U を使い分けないと表示されない場合もある模様。
LookupAccout系の API からも確認出来るように、wautils を作ってみた。
生成したリストを /etc/{passwd,group} に転記した後、cygwin の process を一旦全部落とすと設定が反映される。
複数のプロセスが走っている場合は、いちいち落として回るのも面倒なので、私家版 apt-cyg で dist-upgrade すると手早い。
2018-12-16:
Windows と言うか samba 側の SID に対する cygwin の uid を /etc/passwd 上で統一してみた。
結果、stat で表示される uid はローカルとネットワークドライブで同じに出来たのだが、
ネットワークドライブ上のファイルは、user group other のうち other の permission が影響してしまいやはり read only の問題が解決できなかった。
- Cygwin User Guide / Chapter 3. Using Cygwin / POSIX accounts, permission, and security
タグ
コメントをかく