NTFSドライブまたはSambaを介してドライブのディレクトリを共有しようとしていましたが、わずか数分で(アップデートとパッケージのインストールを除く)これを行う方法を示すいくつかのチュートリアルが見つかりました。 3週間ほど使ってみましたが動作しませんね。 現在、ネットワーク上の他のコンピュータはホスト名を解決できません。これがエラー0x80070035の根本原因であると考えられます。
\\ 192.168.1.xx \などのIPアドレスを使用すると、共有の「共有」が表示され、ユーザー名/パスワードの入力を求められます。ただし、ユーザー名とパスワードを入力すると、次のエラーコードが表示されます。0x80070035 ネットワークパスが見つかりません。(スーパーユーザーの問題のイメージ)私はすでに始めましたこの問題SuperUserでは静止状態なのでここに来て、これらすべてについて何ができるか尋ねなければならないと思いました。
私が使ったチュートリアル
チュートリアル 1 - Raspberry Pi NAS: Raspberry Pi Samba サーバーの構築
チュートリアル2 - Raspberry Piを低電力ネットワークストレージデバイスに切り替える方法
チュートリアル3 / YouTube DIY - Sambaを使用してRaspberry PiをNASとして使用する - 方法
質問と研究
n00b Sambaのトラブルシューティングを始めるには?これを行うのに役立つチュートリアルはありますか?
新しいラズベリーパイのイメージを焼いて最初から始めましたが、役に立ちませんでした。私はsamba / netbiosを使用しているので、avahi / Bonjourは必要ありませんし、HOSTSファイルの変更を使用したいコンピュータが複数あるので使用したくありません。そこにパッケージとチュートリアルがあることを考えると、なぜそれを起動して実行することができず、なぜそれほど難しいのかを混乱させます。特にガイドラインの均一性を考慮すると、さらにそうです。
nsswitch.conf
# /etc/nsswitch.conf
#
# Example configuration of GNU Name Service Switch functionality.
# If you have the `glibc-doc-reference' and `info' packages installed, try:
# `info libc "Name Service Switch"' for information about this file.
passwd: compat
group: compat
shadow: compat
hosts: files mdns4_minimal dns mdns4 wins [NOTFOUND=return]
networks: files
protocols: db files
services: db files
ethers: db files
rpc: db files
netgroup: nis
ラズベリーパイのping:
$ ping -c3 raspberrypi
PING raspberrypi (127.0.1.1) 56(84) bytes of data.
64 bytes from raspberrypi (127.0.1.1): icmp_req=1 ttl=64 time=0.208 ms
64 bytes from raspberrypi (127.0.1.1): icmp_req=2 ttl=64 time=0.200 ms
64 bytes from raspberrypi (127.0.1.1): icmp_req=3 ttl=64 time=0.240 ms
--- raspberrypi ping statistics ---
3 packets transmitted, 3 received, 0% packet loss, time 2003ms
rtt min/avg/max/mdev = 0.200/0.216/0.240/0.017 ms
smb構成ファイル
[global]
workgroup = WORKGROUP
# NetBIOS name = raspberrypi
server string = %h server
dns proxy = no
log file = /var/log/samba/log.%m
max log size = 1000
syslog = 0
panic action = /usr/share/samba/panic-action %d
security = user
encrypt passwords = true
passdb backend = tdbsam
obey pam restrictions = yes
unix password sync = yes
passwd program = /usr/bin/passwd %u
passwd chat = *Enter\snew\s*\spassword:* %n\n *Retype\snew\s*\spassword:* %n$
pam password change = yes
map to guest = bad user
usershare allow guests = yes
[homes]
comment = Home Directories
browseable = no
read only = yes
create mask = 0700
directory mask = 0700
valid users = %S
[printers]
comment = All Printers
browseable = no
path = /var/spool/samba
printable = yes
guest ok = no
read only = yes
create mask = 0700
[print$]
comment = Printer Drivers
path = /var/lib/samba/printers
browseable = yes
read only = yes
guest ok = no
[Shares]
comment = Shares Folder
path = '/media/80Gigger/shares'
browsable = yes
read only = no
システムテーブル
proc /proc proc defaults 0 0
/dev/mmcblk0p1 /boot vfat defaults 0 2
/dev/mmcblk0p2 / ext4 defaults,noatime 0 1
#/dev/sda1 /media/USB auto gid=1002,uid=1001 0 0
# a swapfile is not a swap partition, so no using swapon|off from here on, use dphys-swapfile swap[o$
アップデート1
ちょっと\ホスト
127.0.0.1 localhost
::1 localhost ip6-localhost ip6-loopback
fe00::0 ip6-localnet
ff00::0 ip6-mcastprefix
ff02::1 ip6-allnodes
ff02::2 ip6-allrouters
127.0.1.1 raspberrypi
アップデート2
Windows コンピュータがドメインに参加していません。 piにはデフォルトのホスト名とホストファイルがあります。 「操作」と言えば何を変えなければなりませんか?
$ hostname
raspberrypi
$ nmblookup raspberrypi
querying raspberrypi on 192.168.1.255
192.168.1.14 raspberrypi<00>
$ nmblookup -M -- -
querying __MSBROWSE__ on 192.168.1.255
192.168.1.14 __MSBROWSE__<01>
$ smbclient -L 192.168.1.14
Enter pi's password:
Domain=[WORKGROUP] OS=[Unix] Server=[Samba 3.6.6]
Sharename Type Comment
--------- ---- -------
print$ Disk Printer Drivers
Shares Disk Shares Folder
IPC$ IPC IPC Service (raspberrypi server)
Domain=[WORKGROUP] OS=[Unix] Server=[Samba 3.6.6]
Server Comment
--------- -------
D-WHALEY2
LAPTOP
RASPBERRYPI raspberrypi server
Workgroup Master
--------- -------
WORKGROUP RASPBERRYPI
アップデート3
Raspberry PiでNetBiosフィールドのコメントを削除しましたが、Windowsエクスプローラでエラー0x80004005が表示されます。 \raspberrypi\に移動しようとすると、このエラーが発生します。 この問題を発見しましたこれはエラーのいくつかの側面を説明します。ただし、Microsoft 6to4アダプタは1つしか見つかりませんでした。削除して再起動しても効果はありません。
\ 192.168.1.14 \に移動して適切な資格情報を入力しても、エラー0x80070035が発生します。
Windows 7ノートブックでipv6を無効にしました。しかし、私はこれが現象に影響を与えないと思います。
Raspberry PiはWindowsシステムの名前をpingすることはできず、Windows 7システムのSamba共有にアクセスすることもできません。 PCMANFMがこれを行うことができるかどうかはわかりませんが、確実には機能しません。
アップデート4
Sambaを使用して共有内のファイルを表示できるようになりましたが、名前解決はまだ機能しません。進展!今まで皆様のご協力ありがとうございました!
2つ以上の問題を解決しているようですが、アクセス共有の問題を解決しました。ドライブにはSambaが読み書きするための永久マウントポイントが必要なので、fstabファイルを変更する必要がありました。そして、ボリューム名からスペースを消したときにsmb.confファイルでoathの周りに一重引用符を残しましたが、Sambaログを見るとそれが問題になったようで、その部分も修正しなければなりませんでした。
それでもPyの名前をIPにすることはできませんが、役に立つような以下の答えを解読しようとしています。
以前にこれを忘れた場合に備えて、使用しているアカウントに対してsmbpasswdを再実行しました。
sudo smbpasswd -a backups
これは私の新しいホストファイルです。
127.0.0.1 raspberrypi localhost
::1 raspberrypi localhost ip6-localhost ip6-loopback
fe00::0 ip6-localnet
ff00::0 ip6-mcastprefix
ff02::1 ip6-allnodes
ff02::2 ip6-allrouters
#127.0.0.1 raspberrypi
#127.0.1.1 raspberrypi
これは私のfstabファイルです。
proc /proc proc defaults 0 0
/dev/mmcblk0p1 /boot vfat defaults 0 2
/dev/mmcblk0p2 / ext4 defaults,noatime 0 1
/dev/sda1 /media/80Gigger auto gid=1002,uid=1001 0 $
# a swapfile is not a swap partition, so no using swapon|off from here on, use $
これは私の新しいsmb.confです:
[global]
workgroup = WORKGROUP
#netbios name = raspberrypi
server string = %h server
dns proxy = no
log file = /var/log/samba/log.%m
max log size = 1000
syslog = 0
panic action = /usr/share/samba/panic-action %d
security = user
encrypt passwords = true
passdb backend = tdbsam
obey pam restrictions = yes
unix password sync = yes
passwd program = /usr/bin/passwd %u
passwd chat = *Enter\snew\s*\spassword:* %n\n *Retype\snew\s*\spassword:* %n$
pam password change = yes
map to guest = bad user
usershare allow guests = yes
[homes]
comment = Home Directories
browseable = no
read only = yes
create mask = 0700
directory mask = 0700
valid users = %S
[printers]
comment = All Printers
browseable = no
path = /var/spool/samba
printable = yes
guest ok = no
read only = yes
create mask = 0700
[print$]
comment = Printer Drivers
path = /var/lib/samba/printers
browseable = yes
read only = yes
guest ok = no
[Shares]
comment = Shares Folder
path = /media/80Gigger/shares
browsable = yes
答え1
「ping raspberrypi」と言うと、Windowsシステムと同じ方法で名前の検索は行われません。おそらく。つまり、SMB/CIFS プロトコルには名前検索を実行する 3 つの方法がありますが、残りの 2 つの方法は実際にドメインを構成する場合にのみ使用され、ドメインを構成しません。
これは、NMBプロトコルを介して名前検索を実行する必要があることを意味します。 Sambaはデフォルトでローカルコンピュータのホスト名(コマンドの出力hostname
)をNMB名として使用します。実行して、予想されるホスト名であることを確認してください。そうでない場合は、/etc/hosts
そうなるまで触ってください。 / etc / hostnameを回復する必要があるかもしれません(ただし、hostname
後者のファイルの変更はinitスクリプトを実行または再起動するまでは適用されません)。
当然、NMB検索を実行するために使用されるSambaツールはですnmblookup
。引数として出力を使用してRaspberry Piでプログラムを実行し、hostname
Raspberry PiのIPアドレスと一致することを確認します。そうでない場合は、出力を公開してください。もしそうなら、IPアドレスの前に山かっこ(<String>)の間に16進数字を付ければ大丈夫です。 16進数は結果型です。考えられる結果の種類はたくさんあります。
NMBプロトコルは部分的に「マスターブラウザ」ホストを選択しようとしているため、ひどいですが、常に機能するわけではありません。実行してみてくださいnmblookup -M -- -
(例: nmblookup
dash-capital m-space-dash-dash-space-dash. はい、見苦しいです)。これでマスターブラウザが検索されます。戻りIPアドレスをメモしてください。実行smbclient -L ip
、どこでアイピーそのIPアドレスです。 Raspberry Piがリストにあることを確認してください。そうでない場合preferred master = yes
はログインを試みることができますsmb.conf
。ただし、ドメインを実行している場合はこれを行わないでください(ドメインホストはマスターブラウザである必要があります。そうしないとドメインログインは失敗します)。
ドメインに参加しているWindows 7以降を実行している場合、WindowsはデフォルトでNMB検索を実行しません。この場合、これらのデフォルト値を変更するためにいくつかのレジストリキーを設定する必要があります(これはSamba Wikiにあります)。また、Raspberry Pi を Windows ドメインに参加させて、NMB が不要になるようにすることもできます。
答え2
これは正しい方向を示すことができますが、問題を解決できない可能性があります。ルータのDHCPとDNSの悪魔は、状況を台無しにすることができます。私の場合、opensuseとraspberypiで同じ問題が発生しました。私が行ったすべてのステップは次のとおりです。
- ホスト名ファイル/etc/hostnameも編集してみましたが、
mymacnine
どちらmycmachine.domain
も機能しませんでした。 - resolv.confを混乱させ、Windowsシステムで何かが更新または削除されるまで機能し続けました。
- 私はWRT1900acにドメイン名を入力して実行できる場所があり、毎回動作することがわかりました。
誰かがNetBIOS名がコメントアウトされていると指摘しました。
答え3
解決策
コメントでこの内容を提供することはできませんが、作業hosts
ファイル(私のGentooのインストール作業中)を見てほしいです。
# /etc/hosts: Local Host Database
#
# This file describes a number of aliases-to-address mappings for the for
# local hosts that share this file.
#
# In the presence of the domain name service or NIS, this file may not be
# consulted at all; see /etc/host.conf for the resolution order.
#
# IPv4 and IPv6 localhost aliases
127.0.0.1 bedroom-gentoo.myISP.net bedroom-gentoo localhost
::1 bedroom-gentoo.myISP.net bedroom-gentoo localhost
#
# Imaginary network.
#10.0.0.2 myname
#10.0.0.3 myfriend
#
# According to RFC 1918, you can use the following IP networks for private
# nets which will never be connected to the Internet:
#
# 10.0.0.0 - 10.255.255.255
# 172.16.0.0 - 172.31.255.255
# 192.168.0.0 - 192.168.255.255
#
# In case you want to be able to connect directly to the Internet (i.e. not
# behind a NAT, ADSL router, etc...), you need real official assigned
# numbers. Do not try to invent your own network numbers but instead get one
# from your network provider (if any) or from your regional registry (ARIN,
# APNIC, LACNIC, RIPE NCC, or AfriNIC.)
#
localhost
アドレスは複数の127.0.0.1
名前として解釈できます。
- アプリケーションが要求する場合は、FQDN(2番目の列)です。 (OPが提供するリンクに記載されています。)
- マイコンピュータ名(3列目)
- localhost(4列目)。
また、IPv4とIPv6を区別しません。
この形式を使用すると、127.0.1.1
ネットワークの他の人が自分のコンピュータを見たくないので、仮想ネットワーク部分をコメントアウトしましたが、そうしたい場合は追加します(あなたのデバイスがあると仮定)。 :
#
# Real Network
192.168.1.14 raspberrypi.myISP.net raspberrypi
192.168.1.x D-WHALEY2.myISP.net D-WHALEY2
192.168.1.xx LAPTOP.myISP.net LAPTOP
# Imaginary Network
#10.0.0.2 myname
#10.0.0.3 myfriend
#
これが毎回機能するには、ルータにログインし、MACフィルタリングを介して割り当て、hosts
Raspianファイルから127.0.1.1を削除する必要があります。これは一度だけ実行できます。 (MACアドレスは固定IPアドレスで確認されます。)
- PiのMACアドレス - > 192.168.1.14
- D-WHALEY2のMACアドレス --> 192.168.1.x
- ラップトップMACアドレス - > 192.168.1.xx
これにより、ネットワーク上のデバイスが起動するたびにhosts
ファイルと一致するアドレスが割り当てられます。また、内部アドレスを確認するためにWindowsコンピュータは必要ありません。
質問
Windowsは、次の2つの理由でPiのアドレスを確認できません。
127.0.1.1
は有効な内部アドレスではありません。RFC 1918、に取り替えるRFC 6761。hosts
ファイルの説明も参照してください。127.0.1.1
Windowsにはそのアドレスを含まないホストファイルがあるため、それを別のローカルホストアドレスとして扱います(参照:誰が127.0.0.1をローカルホストとして選択したのですか?ポイントは何ですか?)、なぜ。この動作により、OPで説明されているエラーが発生します。
簡単に言えば、これはWindowsの問題であり、Debianベースのディストリビューションの「機能」です。 「機能」を削除し、Windowsで問題を「修正」するようにルータを設定すると、Samba接続が許可されます。