以前に試したすべてのLinuxでは、誰かが何かを置くたびに/etc/fstab
システムが再起動されたときに自動的にインストールされますが、Debian 10をインストールした後も同じメカニズムが機能しないようです。
fstabエントリは次のとおりです。
//hostname/Share /Share cifs _netdev,dir_mode=0777,file_mode=0777,username=<NAME>,password=<PASSWORD>,rw,uid=1000,gid=1000 0 0
再起動後、マウントフォルダは空になり、マウントには表示されません。 dmesgを見た結果、マウントまたはcifへの唯一の言及は次のとおりです。
[ 3.067180] FS-Cache: Netfs 'cifs' registered for caching
[ 3.067243] Key type cifs.spnego registered
[ 3.067247] Key type cifs.idmap registered
[ 3.068769] No dialect specified on mount. Default has changed to a more secure dialect, SMB2.1 or later (e.g. SMB3), from CIFS (SMB1). To use the less secure SMB1 dialect to access old servers which do not support SMB3 (or SMB2.1) specify vers=1.0 on mount.
ただし、再起動するたびに方言メッセージが表示されるわけではありません。
sudo mount -a
表示するには、crontabに@restartを追加する必要がありましたが、他のDebianのようにfstabを認識するDebian 10がより「正しい」方法はありますか?
答え1
systemd
「インストール単位」は、レガシーファイルの内容を使用して動的に生成されます/etc/fstab
。失敗した理由を理解するには、インストール装置の状態を確認する必要があります。を実行しますsystemctl status Share.mount
。
最も可能性の高い原因は、提案されているnmbd
ようにマウントしようとしたときにNetBIOS名前解決を使用できないためです(つまり、Sambaはまだ実行されていません)。対応する Debian Wiki ページ。
man systemd.mount
で利用可能なシステム固有のマウントオプションを参照してください/etc/fstab
。たとえば、これを回避策として使用できますx-systemd.automount
。これにより、systemdは最初に使用しようとしたときにファイルシステムを自動的にマウントする必要があります。
また、以下を確認してくださいsystemctl status network-online.target
。静的ネットワーク構成があると、システムはネットワーク接続が「オンライン」のときに正しく検出されない可能性があるため、ネットワークファイルシステムを早期にマウントしようとします。WAIT_ONLINE_IFACE=
ネットワークオンライン検出をより確実にする方法については、設定ファイルで新しい追加と設定を確認してください。WAIT_ONLINE_METHOD=
/etc/default/networking
また、方言メッセージをミュートするには、インストールvers=N.N
オプションに追加する必要があります。利用可能な値のリストman mount.cifs
とN.N
そのバージョンのWindowsについては、リソースを参照してください。これは、サーバーがWindows Server 2008R2以降の場合に機能しますvers=2.1
。
以前のプロトコルバージョンは、vers=1.0
2017年の悪名高いWannaCryランサムウェアに脆弱で修正できませんでした。したがって、すべての最新のオペレーティングシステムは、そのバージョンを嫌い、特に要求しない限り、使用しないようにプログラムする必要があります。 。 (サーバーがまだ最新のプロトコルバージョンをサポートできない場合は、サーバーをアップグレードする必要があります。)
答え2
誰かに役立つことを願ってここに投稿します。 4時間以上かかりましたね。
Debian 10 では、以下を実行する必要があります。
systemctl enable systemd-networkd-wait-online.service
fstabパラメーターを使用しています。
NFS-Server-IP:/FolderName /mnt/FolderName nfs rw,bg,intr,hard,timeo=600,nfsvers=3 0 0
答え3
auto
Debian Busterで(SystemDの代わりに)SysVinitを使用している場合は、自動マウントするにはfstabフィールドに必要なようです。さらに、(最後のフィールド)は、一貫性の理由以外に他の理由がなければ、おそらくそうする必要があります(しかし、この変更なしで失敗するかどうかテストしていません)。_netdev
<options>
<pass>
3
0
だから
//hostname/Share /Share cifs auto,_netdev,dir_mode=0777,file_mode=0777,username=<NAME>,password=<PASSWORD>,rw,uid=1000,gid=1000 0 3
答え4
ただNFSマウントで問題が発生しましたfstab
。起動時にネットワークがまだ準備されていない状態でインストールを試みることがわかりました。
インストールだけでnetwork-manager
問題は解決します。