記事ディレクトリ
1.nfsの概要
NFS(Network File System)は、FreeBSDでサポートされているファイルシステムの1つであるネットワークファイルシステムであり、ネットワーク上のコンピューターがTCP / IPネットワークを介してリソースを共有できるようにします。NFSアプリケーションでは、ローカルNFSクライアントアプリケーションは、ローカルファイルにアクセスするのと同じように、リモートNFSサーバー上のファイルを透過的に読み書きできます。
- 目的:ネットワーク上の他のユーザーとディレクトリとファイルを共有する
- 利点:ディスクスペースを節約
- 目的:ファイルを共有する
注意
- NFSは暗号化を提供しません。機密データを処理する場合は、Kerberosや安全なVPNなどのプロトコルを使用してNFSトラフィックを送信してください。
- Sambaとは異なり、NFSはデフォルトでユーザーを認証する方法を提供せず、クライアントアクセス制限はIPアドレスやホストホストを介して実装されます。
- NFSは、ユーザーまたはユーザーグループ、あるいはその両方のIDがクライアントとサーバーで同じであることを想定しています。この問題を解決するには、NFSv4 IDマッピングを有効にするために使用するか、
anonuid
/anongid
を使用して/etc/exports
有効にしall_squash
、UID / GIDを手動で変更します。
2.nfsのインストールとアクティベーション
dnf search nfs
お問い合わせdnf install nfs-utils.x86_64 -y
:インストールsystemctl enable --now nfs-server
:サービス開始- ファイアウォール設定を追加します。
firewall-cmd --permanent --add-service=rpc-bind
firewall-cmd --permanent --add-service=mountd
firewall-cmd --permanent --add-service=nfs
firewall-cmd --reload
showmount -e 服务器主机IP
:NFSサーバー共有情報を表示する
showmountパラメーター | |
---|---|
-e | NFSサーバーの共有リストを表示する |
-a | マシンにマウントされているファイルリソースのステータスを表示します(NFSリソースの場合) |
-v | バージョン番号を表示 |
3.nfs構成
- 構成ファイル:/ etc / exports
#文件格式
共享目录 共享给谁(共享参数)
exportfs -rv
:/ etc / exportsを更新すると、有効になり、詳細情報が出力されます。showmount -e 服务器主机IP
:NFSサーバー共有情報を表示するmount 服务器主机IP:共享目录 挂载点
:マウント
exportfsパラメーター | |
---|---|
-r | / etc / exportsと/etc/exports.dを再読み込みして同期します |
-v | 詳細情報を出力 |
-a | / etc / exports内のすべてのディレクトリをマウントまたはアンマウントします |
-u | 単一のディレクトリをアンインストールします(すべてをアンインストールするには) |
-s | / etc / exportsに適用可能な現在のエクスポートディレクトリのリストを表示します |
3.1サーバー構成
mkdir /lwh
:共有ディレクトリを作成するchmod 777 /lwh/
:ディレクトリ権限を変更するtouch /lwh/lwh_file{1…3}
:共有ファイルを作成するvim /etc/exports
:構成ファイルを編集する
/lwh *(ro) #共享/lwh目录,共享给所有人,只读共享
共享目录 共享给谁(共享参数)
exportfs -rv
:/ etc / exportsを更新すると、有効になり、詳細情報が出力されます。
3.2クライアントテスト
showmount -e 192.168.43.101
:NFSサーバー共有情報を表示するmount 192.168.43.101:/lwh /mnt/
:マウント
4.nfs共有パラメーター
ro | 読み取り専用 |
rw | 読み書き |
同期 | データをサーバーにリアルタイムで同期します(効率は低くなりますが、データの一貫性は確保されます) |
非同期 | 変更が生成された後、データをサーバーに同期します |
root_squash | ルートユーザーとそのグループは、匿名ユーザーまたはグループnobodyにマップされます(デフォルト) |
no_root_squash | ルートユーザーマウントはIDを変更しません |
all_squash | クライアントがアクセスするIDに関係なく、匿名ユーザーnobodyにマップされます。 |
anonuid = 1000 | ユーザーIDを指定する |
anongid = 1000 | ユーザーグループIDを指定する |
4.1アクセス権
- サーバー側の構成
- クライアントマウントテスト
4.2ユーザー設定1
- サーバー側の構成
- クライアントマウントテスト
- ファイルユーザーとユーザーグループを確立するためのサーバー側の制御
4.3ユーザー設定2
- サーバー側の構成
- クライアントマウントテスト
4.4マウントするバージョン番号を追加する
mount -o vers=3 服务器端IP:共享目录 挂载目录
5. nfs + autofsは自動的にマウントおよびアンインストールします
autofs:クライアントでの自動マウントおよびアンロードを実現するソフトウェア。
マウントはファイルシステムをマウントするために使用されます。システムの起動時またはシステムの起動後にマウントできます。ハードディスクなどのローカル固定デバイスの場合、マウントを使用してマウントできます。CD、フロッピーディスク、NFS、SMBなどのファイルシステムは動的です。つまり、必要な場合にのみマウントする必要があります。光ドライブとフロッピーディスクは、マウントが必要な時期は一般的にわかっていますが、NFSとSMBの共有は必ずしもわかっているわけではありません。つまり、NFS共有とSMBをいつマウントできるかは一般的にわかりません。autofsサービスは、動的にロードされたファイルシステムを時間内にマウントできる、Windowsでの光ドライブの自動オープン機能のようなこの機能を提供します。手作業による取り付けの手間を省きます。CD-ROM、フロッピーディスクなどの動的自動マウントを実現するには、関連する構成が必要です。
dnf install autofs -y
:クライアントインストールautofs
5.1自動取り付け実験1
vim /etc/auto.master
:構成ファイルを編集する
/mnt /etc/auto.nfs
最终挂载点的上层目录 自动定义子策略文件
vim /etc/auto.nfs
:自動定義されたサブポリシーファイルを編集する
nfs -vers=3 192.168.43.101:/westosdir
最终挂载点 版本 挂载资源
vim /etc/autofs.conf
:デフォルトのアンインストール時間を変更する
timeout = 3 #自动卸载时间默认为300秒
systemctl restart autofs.service
:サービスを再開する- テスト
5.2自動取り付け実験2
5.2.1クライアントautofs構成
vim /etc/auto.master
:構成ファイルを編集する
/home /etc/auto.nfs
最终挂载点的上层目录 自动定义子策略文件
vim /etc/auto.nfs
:自動定義されたサブポリシーファイルを編集する
* -vers=3 192.168.43.101:/lwh/&
最终挂载点 版本 挂载资源
vim /etc/autofs.conf
:デフォルトのアンインストール時間を変更する
timeout = 3 #自动卸载时间默认为300秒
systemctl restart autofs.service
:サービスを再開する
5.2.2サーバー設定
mkdir /lwh/sdsnzy1 /lwh/sdsnzy2
:ディレクトリの作成とファイルの作成