Ubuntu 19.10を少し前にインストールしました。私がそれを使用したい方法の1つは、ファイルサーバーとしてです。 Gnome GUIを使用して、UbuntuShareというフォルダーで共有を有効にし、プロンプトをクリックしてSambaを有効にしました。チェックボックスをオンにして、誰でも共有にアクセスし、すべてのユーザーに読み取り/書き込みのアクセス許可も設定できるようにしました。
これでいくつかの奇妙なことが起こりました。
UbuntuShareフォルダーに、coreというファイルが作成されています。オレンジのロックシンボルと赤いXシンボルが付いています。これは別の共有フォルダで発生しました。私はそれを取り除くためにフォルダーを削除するのをやめましたが、それはこのフォルダーで再び起こりました。オンラインで検索しましたが何も見つからないので、これが正常かどうかはわかりませんが、奇妙に思われます。
Windows10ラップトップからUbuntuShareフォルダーを表示してアクセスできますが、これはコンピューター名またはIPアドレスを入力した場合に限られます。ネットワーク共有画面には表示されません。非常に奇妙なのは、他に2つのデスクトップがあり、コンピューター名またはIPアドレスを入力しても、どちらにも表示されないことです。 3つのマシンはすべてWindows 10であり、3つすべてのネットワーク共有設定を確認しましたが、それらは同じです。唯一の違いは、ラップトップはオフィスのドメインにあり、デスクトップは標準のワークグループにあることです。
私はラップトップからUbuntuのSamba共有にいくつかのWordドキュメントを作成して保存しました。私がUbuntuマシンにいるときは、ロック記号が付いています。 GUIでアクセス許可を確認すると、ファイルを所有しておらず、アクセス許可を変更できないと表示されます。 Windowsマシンによって追加されたファイルでこの問題が発生しないようにするにはどうすればよいですか?
どういうわけかSambaをめちゃくちゃにしているのではないかと心配しています。 Gnome GUIが共有する方法があることに気づく前に、以前のバージョンのUbuntuにSambaをインストールするために見つけたコマンドラインの指示に従っていました。 GUIの方がシンプルであることに気づいたら、SambaでSudoの適切な消去を実行して、自分が行ったすべての内容を消去し、それがクリアされることを期待しました。
私の目標は、Windowsマシンがアクセスするファイルを簡単に共有できるように、共有を機能させることです。私の小学生は2台のWindows 10マシンを使用しているため、Sambaサーバーにアクセスするために認証を受ける必要はありません。また、コアファイルが正常であれば問題ありません。そうでない場合は、修正したいと思います。
これで何か助けていただければ幸いです。
エリック
皆様のご指導、ご協力をよろしくお願いいたします。これがSambaの問題である可能性が低いことが明らかになった後、私は今日、Windowsで考えられる原因を探すためにしばらく時間を費やしました。
私は以下の記事に出くわし、ソリューションに従いました。両方のデスクトップコンピューターはすぐにsamba共有にアクセスできました。
Microsoft Support Articleソリューションは、以下に基づいています: https://support.Microsoft.com/en-us/help/4046019
コンピューターの構成\管理用テンプレート\ネットワーク\ランマンワークステーション "安全でないゲストログオンを有効にする"
smb.conf
ファイルの変更が効果がない場合、おそらく問題はこれらの2つのWindows 10マシン側にあります。 Windows 10を搭載した1台のマシンがUbuntu共有に接続できるという事実があるため、それは正しいようです。これはおそらく、ファイアウォールもsambaサービスも接続を拒否しないことを意味します。ただし、SMB2およびSMB3プロトコルのバージョンが多数存在するため、ウィンドウによってサービスへの接続が制限され、現在のSMB2またはSMB3プロトコルのバージョンを満たさない場合があります。
確認するには、PowerShellコマンドを実行し、管理者としてPowerShellを実行して、Windows 10マシンでSMB2プロトコル 有効 かどうかを確認します:
Get-SmbServerConfiguration | Select EnableSMB2Protocol
無効になっている場合は、有効にします。
Set-SmbServerConfiguration -EnableSMB2Protocol $true
SMB3プロトコルのバージョンを確認するのと同じ方法:
Get-SmbServerConfiguration | Select EnableSMB3Protocol
テストの目的で、SMB3プロトコルをしばらく無効にして、最新のSMB3プロトコルバージョンが原因かどうかを確認できます。
Set-SmbServerConfiguration -EnableSMB3Protocol $false
確認後、再度有効にします。
Set-SmbServerConfiguration -EnableSMB3Protocol $true
最後に、smb.conf
で次の指定も追加してみてください:
[global]
server min protocol = SMB2_10
client max protocol = SMB3
client min protocol = SMB2_10
しかし、役に立たない場合はコメントしてください。
そして、フルパスを使用して接続してみてください:
//ubuntu_IP_address/UbuntuShare
cd
コマンドを使用してフォルダーに移動します:cd /home/$USER/UbuntuShare
ls -ailh
コマンドを使用して、この奇妙なファイルの所有者と権限を確認してくださいそのファイルを本当に削除したい場合は、Sudo rm -fr /pathto/UbuntuShare/core
を使用できます
ただし、Sudo cat /home/$USER/UbuntuShare/core
で内部を確認することをお勧めします。
あなたの場合、共有が設定されていないデフォルトのsmb.conf
ファイルを共有しました。構成するには、/etc/samba/smb.conf
の最後にを追加します。
[SambaShare]
# replace yourusername by your real user's name
path = /home/yourusername/UbuntuShare
writable = yes
guest ok = yes
guest only = yes
read only = no
create mode = 0777
directory mode = 0777
force user = nobody
また、フォルダに必要な権限と所有権があることを確認してください:
Sudo chown -R nobody:nogroup /home/$USER/UbuntuShare
Sudo chmod -R 0777 /home/$USER/UbuntuShare
次に、Sambaサービスを再起動します。
Sudo systemctl restart smbd nmbd
また、ファイアウォールでsambaを許可します。
Sudo ufw allow samba
更新1:
Windows 10バージョン1511では、SMBv1のサポート、つまりNetBIOSデバイスの検出はデフォルトで無効にされていました。実際のエディションによっては、バージョン1709以降のWindowsの新しいバージョン(「Fall Creators Update」)では、SMBv1クライアントをインストールできなくなりました。これにより、Sambaを実行しているホストがExplorerの[ネットワーク(近隣)]ビューに表示されなくなります。接続の問題はなく、Sambaは引き続き正常に動作しますが、ユーザーはSambaホストをWindowsによって自動的に一覧表示させたい場合があります。
Ubuntu 18.04、19.10でsambaを機能させ、Windows 10バージョン1909共有ネットワークで wsddを使用して表示できるようにする
端末を使用して次の手順を実行します。
cd ~/
Sudo apt install git
git clone https://github.com/christgau/wsdd
cd wsdd
Sudo cp etc/systemd/wsdd.service /etc/systemd/system/
Sudo cp src/wsdd.py /usr/bin/wsdd
Sudo nano /etc/systemd/system/wsdd.service
変化する:Group=nobody
からGroup=nogroup
上記を追加ExecStart
:Restart=on-failure
RestartSec=15
そして、次のキーを押して終了します。Ctrl+X、その後 Y、その後 Enter
Sudo ufw allow 3702 && Sudo ufw allow 5357
#wsddトラフィックがファイアウォールを通過できるようにする
Sudo systemctl enable wsdd.service
Sudo systemctl start wsdd
systemctl status wsdd
がアクティブかどうかを確認するサービスがアクティブな場合は、wsdd
フォルダーを削除します:rm -fr ~/wsdd
また、この構成に煩わされたくない場合、およびWindows 10共有ネットワークでのUbuntuマシンの可視性が重要でない場合は、WindowsファイルエクスプローラーのUbuntuShareフォルダーをドラッグ&ドロップしてクイックアクセスそこにショートカットを作るアイテム。したがって、UbuntuマシンのIPアドレスを入力せずにアクセスできます。
Update 2:Windows 10がUbuntu共有への接続を拒否する場合は、SMB protocol to version 2または3:
smb.conf
ファイルを編集するために開きます:Sudo nano /etc/samba/smb.conf
[global]
セクションの下に、次のように入力します。protocol = SMB3
が4の場合はsamba --version
。Sudo systemctl restart smbd nmbd
systemctl status smbd nmbd
ここは混んでいます...
Win10マシンがUbuntu Sambaサーバーにアクセスする方法は4つあります。
[1] IPアドレスによる =中間プロトコルに依存しないため、「最もクリーンな」方法です。サーバーに静的IPアドレスを設定するか、ルーターを使用してそれを行う必要があり、サーバーに明示的にアクセスする必要があります\\192.168.0.100
[2] マルチキャスト =主にホームネットワークで使用されます。 2つのバリアントがあります。
** WS-Discovery =これは、Win10が他のWIn10マシンを検出して接続するために使用するもので、特定のNAS Synologyと同様、Ubuntuが適切に設定されている場合)。次に、エクスプローラーがマシンを検出して接続します。
** mDNS = Avahi(Linux)またはBonjour(MacOS)と呼ばれます。 Win10はその方法でSambaサーバーにアクセスできますが、明示的に行う必要があります\\linux-Host-name.local
-しかし、その方法でそれを発見することはできません。
[3] NetBIOS =何十年にもわたるSambaの惨劇。 WIn10は、クライアント側でSMBv1を無効にしているため、デフォルトではこの方法でホストを検出できません。必要に応じて再度有効にできますが、Linuxホスト名(NetBIOS名の派生元)が長すぎるため、とにかく機能しません。BUNTU-POWERSPEC
長さは15文字以下にする必要があります。 workgroup = WORKGROUP行のすぐ下に新しい名前を追加したい場合は、smb.conf自体で修正できます。たとえば、次のようになります。
netbios name = ubuntu-powerspc
次に、smbdとnmbdをこの順序で再起動します。
NetBIOSはMicrosoftがWin2000で20年前に取り除くことを最初に試みた不安定なものであるため、新しい名前を登録するためにマシンの場合はすべて再起動する必要があるかもしれません。
個人的には、IPアドレス、mDNS、またはWSDをこの順に使用します。
補足:「パスは許可されていませんでした」-/ media/erikの下で何かを共有しようとしているのではないかと思います。 sambaで定義されているため、そのフォルダーの下のゲスト共有はクライアントに表示される可能性がありますが、デフォルトではLinuxの/ media/erikのアクセス許可があるため、erik以外は誰もアクセスできません。それを修正する1つの方法は、ゲストを強制的にerikとして表示することです。 workgroup = WORKGROUPの下に、以下を追加します。
force user = erik
次に、smbdを再起動します。
もう1つsmb.conf
設定試してみましたが、Windows 10で機能しているようですVM試してみてください:
[global]
server max protocol = SMB3
encrypt passwords = yes
dns proxy = no
strict locking = no
oplocks = yes
deadtime = 15
max log size = 51200
max open files = 933761
logging = file
load printers = no
getwd cache = yes
guest account = nobody
map to guest = Bad User
obey pam restrictions = yes
directory name cache size = 0
kernel change notify = no
panic action = /usr/share/samba/panic-action %d
server string = Media Server
ea support = yes
store dos attributes = yes
lm announce = yes
hostname lookups = yes
time server = yes
acl allow execute always = true
dos filemode = yes
multicast dns register = yes
domain logons = no
local master = yes
server role = standalone
netbios name = Ubuntu
workgroup = WORKGROUP
security = user
create mask = 0666
directory mask = 0777
client ntlmv2 auth = yes
unix charset = UTF-8
log level = 1
[sambashare]
path = /home/spacer/sambashare
comment = sambashare on Ubuntu
directory mask = 0755
create mode = 0777
read only = no
available = yes
browseable = yes
writable = yes
guest ok = yes
public = yes
locking = no
strict locking = no
現在作業していることを忘れないでくださいsmb.conf
ファイルがバックアップされ、Sambaサービスを再起動します。
これらの指示 に従ってください。最大限の使いやすさのために、サーバー上のSAMBAアカウントのユーザー名(サーバーのユーザー名とは別)が、共有へのアクセスに使用しているWindowsアカウントのものと一致することを確認してください。
今はWindowsで試すことはできませんでしたが、少なくともubuntuで動作します。これは私が here から取得した設定であり、試してみる価値があると思います。
/etc/samba/smb.conf
ファイルをコピーして:Sudo cp /etc/samba/smb.conf /etc/samba/bk.smb.conf
/etc/samba/smb.conf
:
[global]
workgroup = WORKGROUP
server string = %h server (Samba, Ubuntu)
netbios name = UBUNTU-POWERSPEC
log file = /var/log/samba/log.%m
max log size = 10240
security = user
map to guest = Bad Password
getwd cache = yes
guest account = nobody
usershare allow guests = Yes
server signing = auto
passdb backend = tdbsam
local master = yes
vfs objects = acl_xattr
map acl inherit = yes
store dos attributes = yes
winbind nss info = template
winbind enum users = Yes
winbind enum groups = Yes
winbind use default domain = yes
client use spnego = yes
client ntlmv2 auth = yes
encrypt passwords = yes
local master = No
hide dot files = No
allow insecure wide links = yes
store dos attributes = yes
Sambaサービスを再起動します。
Sudo systemctl restart smbd nmbd
Sambaサービスのステータスを確認します。
Sudo systemctl status smbd nmbd