私はRaspberry Pi OS (旧Raspbian) を搭載したRaspberry Piを持っています。
ホーム フォルダー (/home/pi) を NFS で共有したいと考えていました。Windows 10 PC からもアクセスし、"pi" ユーザーとしてファイルの読み取りと書き込みを行いたいです。
次のコマンドを実行しました:
$ sudo apt-get install nfs-kernel-server
$ id pi
uid=1000(pi) gid=1000(pi)
$ sudo nano /etc/exports
次の行を追加しました:
/home/pi *(rw,all_squash,insecure,async,no_subtree_check,anonuid=1000,anongid=1000)
その後:
$ sudo exportfs -ra
Windows NFS クライアント コンポーネントをインストールした後、RPi ホーム フォルダーをネットワーク ドライブとして接続できるようになりました。ファイルを作成することはできますが、ファイルを編集することはできません。
例: Windows でテスト ファイルを作成しました。Linux でテスト ファイルを作成しました。
pi@sigipi:~ $ echo hello > test_pi.txt
pi@sigipi:~ $ ls -l test_*
-rw-r--r-- 1 pi pi 6 apr 19 23:29 test_pi.txt
-rwxr-xr-x 1 pi pi 0 apr 19 23:29 test_windows.txt
両方のファイルは、現在 Windows から読み取り専用になっています。編集することはできません。(ただし、削除することはできます)。
これらを編集する唯一の方法は、これを起動することです:
sudo chmod -R a+rw test*
何が足りないのでしょうか?
答え1
さらにいくつか試してみたところ、問題は解決したようです。 の UID と GID をHKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\ClientForNFS\CurrentVersion\Default
Linux システムのデフォルト ユーザー ( id <user>
) に変更しました。 でこれらの ID を設定する必要もありました/etc/exports
。
これで、ファイルから削除できるようになりましたwrite-protection / read-only
。フォルダーは保護されたままですが、削除/編集/移動できます。
非常に最近の詳細な素晴らしいブログ投稿があります:https://stealthbits.com/blog/mounting-nfs-exports-unix-server/