MSYS2とCygwinの両方がインストールされたWindows10で作業しています。
ほとんどの場合、私はMSYS2(この場合はMINGW64シェル)を使用しており、通常、MINGW64で実行されているプログラムを使用してネットワーク共有上のファイルにアクセスすることに問題はありません。
MINGW64からのアクセス許可を確認すると、次のようになります。
user@PC MINGW64 //MYSERVER/myshare/test
$ ls -la
total 38M
drwxr-xr-x 1 user None 0 Dec 3 15:28 ./
drwxr-xr-x 1 user None 0 Nov 28 08:36 ../
-rw-r--r-- 1 user None 7.4M Dec 3 13:20 test_one.png
....
ただし、Cygwin Shellから同じことを試してみると、次のようになります。
user@PC //MYSERVER/myshare/test
$ ls -la
total 38900
drwxrwx---+ 1 Unknown+User Unix_Group+65534 0 Dec 3 15:28 .
drwxrwx---+ 1 Unknown+User Unix_Group+65534 0 Nov 28 08:36 ..
-rwxrwx---+ 1 Unknown+User Unix_Group+65534 7666914 Dec 3 13:20 test_one.png
...
明らかに、Cygwinはuser
をこのファイルの所有者とは見なしませんが、代わりにUnknown+User
を所有者と見なします。
これに対応して、このファイルをfeh
などで開きたい場合は、次のようになります。
feh WARNING: test_one.png - No read access
どういうわけかCygwinをセットアップして、MINGW64が見るのと同じように、Windowsネットワーク共有上のファイルの同じ所有権/許可を見ることができますか?
わかりました、このブログ投稿のおかげでこれを修正しました: https://salonen.wordpress.com/2011/04/22/fixing-file-permissions-on-network-shares-in-cygwin/
基本的に、Cygwinの私の/etc/fstab
はこれだけでした:
# /etc/fstab
#
# This file is read once by the first process in a Cygwin process tree.
# To pick up changes, restart all Cygwin processes. For a description
# see https://cygwin.com/cygwin-ug-net/using.html#mount-table
# This is default anyway:
none /cygdrive cygdrive binary,posix=0,user 0 0
次のように、最後の(コメントされていない)行に,noacl
を追加しただけです。
none /cygdrive cygdrive binary,posix=0,user,noacl 0 0
...次に、Cygwinターミナルを閉じて、もう一度開き、cd
から//MYSERVER/myshare/test
-これで、MSYS2と同様に、すべてのファイルがユーザー+グループuser None
によって所有されているように見えます。ケース、そして彼らはうまく開きます。
私が見つけたCygwinのもう1つの便利なコマンド( https://cygwin.cygwin.narkive.com/lZOZG8Ut/network-drive-file-permissions-permission-denied 経由)はこれです(ここではディレクトリを調べています) //MYSERVER/myshare/test
):
$ /usr/lib/csih/getVolInfo .
Device Type : 7
Characteristics : 10
Volume Name : <myshare>
Serial Number : 193090813
Max Filenamelength : 255
Filesystemname : <NTFS>
Flags : 5002f
FILE_CASE_SENSITIVE_SEARCH : TRUE
FILE_CASE_PRESERVED_NAMES : TRUE
FILE_UNICODE_ON_DISK : TRUE
FILE_PERSISTENT_ACLS : TRUE
FILE_FILE_COMPRESSION : FALSE
FILE_VOLUME_QUOTAS : TRUE
FILE_SUPPORTS_SPARSE_FILES : FALSE
FILE_SUPPORTS_REPARSE_POINTS: FALSE
FILE_SUPPORTS_REMOTE_STORAGE: FALSE
FILE_VOLUME_IS_COMPRESSED : FALSE
FILE_SUPPORTS_OBJECT_IDS : TRUE
FILE_SUPPORTS_ENCRYPTION : FALSE
FILE_NAMED_STREAMS : TRUE
FILE_READ_ONLY_VOLUME : FALSE
FILE_SEQUENTIAL_WRITE_ONCE : FALSE
FILE_SUPPORTS_TRANSACTIONS : FALSE