私のホームネットワークは次のとおりです。
共有ファイルを自分のマシンでも、ハウスメイトなどのネットワークにジャンプする他の人でも簡単に機能させたい.
ファイルサーバーには、ブート用のraid 1に2個の120gb SSD、Devと呼ばれるdevファイル用のraid 1に2個の2tb HDD、およびメディアと呼ばれる私の家のネットワークアクセス可能なメディア用に共有されるスペア2tbドライブがあります。
各フォルダーを開いてプロパティを開き、共有を有効にし、すべてのアクセス許可を付与し、ゲストアクセスをチェックし、他のユーザーがこのフォルダーでファイルを作成および削除できるようにすることでフォルダーを共有しました。開発用ドライブのアクセス許可は後で変更する予定ですが、最初に機能するために必要なだけです。
ラップトップから[ファイル]-> [他の場所]に移動して、そこにあるサーバーを確認し、[共有]をクリックしてファイルにアクセスできます。
Windowsでエクスプローラーを開いて[ネットワーク]をクリックすると、サーバーが表示されません。ドライブを手動でマップする必要がないため、ここに表示したいので、ファイルに簡単にアクセスできるようにします。
Windows 10のネットワークでネットワークドライブを可視化するにはどうすればよいですか? Sambaを使用する必要がありますか、それとも共有方法はうまく機能していますか?
[1]すでにSambaを使用しているようです。次のコマンドを実行して確認してください:
net usershare info --long
[2] Ubuntu 18.04は、mDNS(Avahi)を使用して、Sambaサーバーを残りのネットワークに自動的に「登録」します。他のすべてのLinuxマシンとmacOSは、この登録を自動的に「検出」できます。
[3] Win10がサーバーを検出できない理由は、mDNSを使用できるにもかかわらず、ネットワークを自動的にスキャンする方法がわからないためです。代わりにNETBIOSを使用し、それには複数の問題があります。
[a] Win10は、クライアント側(およびサーバー側)でSMB1を無効にし、NETBIOS(名前解決ではなくホスト名検出)とSMB1がリンクされます。 [コントロールパネル]> [プログラムと機能]> [Windowsの機能の有効化または無効化]> SMB 1.0/CIFSファイル共有サポート> SMB 1.0/CIFSクライアント。
[b]しかし、その後、NETBIOSルール(つまり、ホスト名の長さは15文字を超えることはできません)に従う必要があります。これらの種類はsmb.confで修正できます。 /etc/samba/smb.confを編集して、workgroup = WORKGROUP行のすぐ下に次の2行を追加します。
netbios name = ubserv1804
name resolve order = bcast Host lmhosts wins
次に、sambaを次の順序で再起動します。
Sudo service smbd restart
Sudo service nmbd restart
その後、約10分ほど待ちます-真剣に。 NETBIOSは非常に原始的であるため、nmbdを再起動するとWindowsで混乱が生じ、再び正常に動作するようになるまで少し時間がかかります。
誰かが興味を持っているなら、私はWindows 10に関して代替手段を持っています。ランチパッドでバグ/機能リクエストとしてこれを提出しました: https://bugs.launchpad.net/ubuntu/+source/samba/+bug/1831441
Githubには、このほとんどが既に作成されているものが存在します。 Ubuntuで使用できますが、実装するには多少の作業が必要です。
[1]ファイルをダウンロードします。
wget https://github.com/christgau/wsdd/archive/master.Zip
[2] UnZip it:
unzip master.Zip
[3] pythonスクリプトの名前を変更します
Sudo mv wsdd-master/src/wsdd.py wsdd-master/src/wsdd
[4]/usr/binにコピーします
Sudo cp wsdd-master/src/wsdd /usr/bin
[5] systemdサービスファイルは既にパッケージで提供されており、正しい場所にコピーする必要があります。
Sudo cp wsdd-master/etc/systemd/wsdd.service /etc/systemd/system
[6] wsdd.serviceファイルを編集して、nobodyユーザーへの参照を削除する必要があります。
#User=nobody
#Group=nobody
[7]次に、サービスを有効にします。
Sudo systemctl daemon-reload
Sudo systemctl start wsdd
Sudo systemctl enable wsdd
これで、Win10は独自のネイティブWSDプロトコルでUbuntuサーバーを検出できるようになり、クライアント側でsmb1を有効にする必要がなくなりました。