実験では、chmod
Cygwin でグループのアクセス許可を変更するために正しく機能することが示されています。
この実験では、NTFS パーティション上のファイルを使用しました。Cygwin は Windows の上に POSIX レイヤーを実装しますが、最終的には Windows 自体の機能と特定のファイルシステムの実装の機能を使用します。
最新バージョンの Windows では、ほとんどのハード ドライブが NTFS を使用するようにフォーマットされており、chmod
. ただし、通常、外付け USB ドライブは FAT32 を使用するため、同じ権限を表す機能はありません。Cygwin 層は POSIX セマンティクスを可能な限り偽造しますが、できることは限られています。
試す
$ df -T .
FAT32 ファイルシステムを使用していることが示されている場合は、おそらくそれが問題です。解決策は、代わりに NTFS ファイルシステムにファイルを保存することです。という名前のファイルはおそらく SSH 秘密鍵であり、とにかくid_dsa
保存する必要があります。$HOME/.ssh
ホーム ディレクトリは FAT32 パーティションにありますか? 私が思い出したように、Windows の最近のバージョン (「最近」とは、過去 10 年以上を意味します) は、FAT32 ファイルシステムを NTFS に変換できます。
この回答の残りの部分は、chmod
コマンドにタイプミスがあった元のバージョンの質問への回答でした。
Cygwin は、GNU Coreutils バージョンの を使用しますchmod
。これ、
chmod g=0 fileName
は正しい構文ではありません。私は得る:
$ chmod g=0 fileName
chmod: invalid mode: `g=0'
Try `chmod --help' for more information.
(これは Cygwin ではなく Linux 上にありますが、同じはずです。)
すべてのグループ権限をオフにするには、これでうまくいくはずです:
$ chmod g= fileName
$ ls -l fileName
-rw----r-- 1 kst kst 0 Jun 13 10:31 fileName
chmod
ドキュメントを参照するには:
$ info coreutils chmod
シンボリック ファイル モードに関するドキュメントを参照するには:
$ info coreutils Symbolic
シンボリック モードの形式は次のとおりです。
[ugoa...][+-=]PERMS...[,...]
ここで、PERMS は、セット 'rwxXst' からの 0 個以上の文字、またはセット 'ugo' からの 1 文字です。