Ubuntu 10.04デスクトップで非ルートユーザーが使用するSamba共有をsmbmountする方法を詳細に説明するステップバイステップのチュートリアルはありますか?
注:この一見新しい問題に対処するGoogle検索には多数のスレッドがあります。 Ubuntu 8.04(または古いバージョンのsmbfs)で動作していた命令は動作しなくなりました。
最新で再現可能なものを見つける必要があります。
ホームフォルダーにSamba共有を簡単にマウントできる非常に便利なツールは、 SMBNetFS です。このツールを使用すると、自宅のマウントポイントを介して、ほぼすべてのアプリケーションでSamba共有にアクセスできます。
cp /etc/smbnetfs.conf ~/.smb/smbnetfs.conf
標準構成のコピーcp /etc/samba/smb.conf ~/.smb/smb.conf
Samba構成のコピーmkdir ~/sambashare
またはマウントポイントの他の名前smbnetfs ~/sambashare
共有をマウントポイントにマウントします残念ながら、利用できるドキュメントはほとんどありません。オプションについてはman smbnetfs
を参照し、/usr/share/doc/smbnetfs
のFAQファイルを確認してください。
Gnomeを使用する場合、smb:// URLをNautilusに入力するだけです。通常、ファイルブラウザを使用してsambaを直接マウントできるように、gvfs-Fuseおよびその他のgvfsパッケージをインストールする必要があります。さらに、〜/ .gvfsフォルダーにすべてのマウントされたものがあります。これは、他のプロトコルや圧縮ファイルなどでも機能します。
gvfs-mount smb://user@server/storage
Eclipseなどのツールでテストしましたが、動作します。 gvfs-Fuseをインストールする必要があります。
man mount
は、必要なオプションを決定するのに役立ちます。 Windowsシステムが常に利用可能な場合。マウントを/etc/fstab
に追加するだけで、マウントされます。オプションuser,noauto
を使用して、ユーザーが必要に応じてパーティションをマウントおよびアンマウントできるようにすることができます。他のユーザーがアンマウントできるようにするには、user
をusers
に変更します。
Autofsは、sambaを使用したオンデマンドマウントもサポートしています。呪文は、どのディレクトリにいつマウントするかによって異なります。開発環境で正常に実行しました。
編集:多くのユーザーのためにこれを行う必要がある場合、autofsを使用してマウントすることをお勧めします。これにはfstabの変更は必要ありません。さまざまなユーザーの資格情報の取得が問題になる場合があります。マウントには/net/$Host/$USER
という形式のディレクトリ構造を使用します。 autofsは、マウントの/net/$Host
部分に対して構成され、必要に応じてその下のディレクトリを自動的にマウントします。
特定の取り付け方法は、ニーズによって異なります。一般的なマウントはサーバーベースですが、ユーザーがサーバーにデスクトップディレクトリをマウントする必要がある場合があります。
多くのユーザーがいる大規模な組織では、ディレクトリをLinuxサーバーに移動し、Sambaを使用してWindowsユーザーとファイルを共有するのが理にかなっている場合があります。私はその逆を試していませんが、可能かもしれません。
この質問を見つけたのは、最近実行した魔法を調査して、ユーザーの1人に対してこれを正確に行うためです。私のワークフローは他の答えとは著しく異なります。ただし、これは可能な限り最も単純なケースです。
ユーザー名がae
で、自宅が/home/ae
であると仮定します
1)smbfsをセットアップします。mkdir /home/ae/.smb
1a)Windowsログイン資格情報が必要な場合は、次のファイルを作成および編集します:/home/ae/.smb/smbnetfs.conf
auth winuser "winpassword"
winuser
は、アクセスするWindowsコンピューターで作成されたユーザーです。 winpassword
は、そのコンピューターのWindowsにログインするためのユーザーのパスワードです。
2)マウントポイントを作成します。mkdir /home/ae/nethood
3)smbnetfsコマンドを実行します。smbnetfs /home/ae/nethood
「ネットワークネイバーフッド」全体が/home/ae/nethood
の下に表示され、ワークグループがサブディレクトリの最初の層になります。
以下のリストはすべて、ubuntuホスト上の非特権ユーザーとしてのフォルダーの閲覧からコピーされました。ユーザー名とグループがae
に変更されました。 Sudo
は使用されませんでした。 Windowsコンピューターは非公式のWindowsネットワーク上にあり、共有フォルダーはユーザー/パスワードで保護されています(WindowsコンピューターではWindowsユーザー名とパスワードを使用)。
$ cd nethood
$ ls -alh
total 12K
drwxrwxrwx 9 ae ae 0 Dec 31 1969 .
drwxr-xr-x 9 ae ae 21 Jul 28 11:49 ..
drwxrwxrwx 2 root root 0 Dec 31 1969 WORKGROUP
ワークグループWORKGROUP
を参照します。
$ cd WORKGROUP
$ ls -alh
total 0
drwxrwxrwx 2 root root 0 Dec 31 1969 .
drwxrwxrwx 9 root root 0 Dec 31 1969 ..
lrwxrwxrwx 1 root root 11 Dec 31 1969 HTPC -> ../HTPC
lrwxrwxrwx 1 root root 14 Dec 31 1969 NEWPC -> ../NEWPC
ディレクトリをコンピューターに変更すると、共有フォルダーがリストされ、通常どおりアクセスされます。
$ cd NEWPC
$ ls -alh
total 0
drwxrwxrwx 2 root root 0 Dec 31 1969 .
drwxrwxrwx 9 root root 0 Dec 31 1969 ..
drwxrwxrwx 2 root root 0 Dec 31 1969 Desktop
drwxrwxrwx 2 root root 0 Dec 31 1969 Users
そしてファイル:
$ cd Desktop/
$ ls -alh
ls: cannot access desktop.ini: No such file or directory
total 30M
drwxrwxrwx 2 root root 0 Dec 31 1969 .
drwxrwxrwx 2 root root 0 Dec 31 1969 ..
-rwxr--r-- 1 ae ae 1.5K Jan 25 2013 Command Prompt.lnk
-????????? ? ? ? ? ? desktop.ini
-rwxr--r-- 1 ae ae 156K May 28 2013 Download %25285%2529.iif
-rwxr--r-- 1 ae ae 2.4K Jul 24 12:28 Google Chrome.lnk
-rwxr--r-- 1 ae ae 178 Feb 4 2013 import orders.bat
-rwxr--r-- 1 ae ae 2.3M Mar 30 2012 msvc2008_x86_vcredist_x64.exe
drwxr-xr-x 2 ae ae 0 May 20 2014 OpenOffice 4.1.0 (en-US) Installation Files
-rwxr--r-- 1 ae ae 406K Jun 6 2013 Paypal_Jan_1_2012_to_Dec_31_2012.iif
-rwxr--r-- 1 ae ae 15M May 8 2012 php-5.4.3-Win32-VC9-x86.Zip
-rwxr--r-- 1 ae ae 1.9K Jul 24 13:03 PSPad.lnk
-rwxr--r-- 1 ae ae 1.1K Jul 24 12:31 VB Demo.lnk
上記のディレクトリの所有権はroot root
であることに注意してください。ファイルの所有権はユーザーと同じになります。
マウントポイントまたはそのフォルダーの所有権またはアクセス許可に関係なく、他のユーザーはフォルダーにアクセスできません。ユーザーがそのフォルダーに「書き込み」できる(および空である)場合、smbnetfsはそこにネットワークネイバーフッドをマウントし、root
でさえ、他の誰にもアクセスを許可しません。 root
にアクセスするには、su ae
する必要があります。
共有フォルダーがない場合、コンピューターのディレクトリは空になります。
Windowsコンピューターの資格情報がない場合、次のエラーが表示される場合があります。ls: cannot open directory .: Input/output error