Bagaimana cara me-mount share Samba sebagai pengguna non-root


14

Apakah ada tutorial langkah-demi-langkah yang menginstruksikan secara detail cara smbmount share Samba untuk digunakan oleh pengguna non-root pada desktop Ubuntu 10,04?

Catatan: ada banyak utas pada pencarian Google yang berurusan dengan masalah yang tampaknya baru ini. Instruksi yang digunakan untuk bekerja pada Ubuntu 8.04 (atau versi smbfs yang lebih lama) tidak lagi berfungsi.

Saya perlu menemukan sesuatu yang terbaru dan dapat diproduksi ulang.

Jawaban:


13

Alat yang sangat bagus untuk dengan mudah memasang saham samba Anda di folder rumah Anda adalah SMBNetFS . Dengan alat ini Anda dapat mengakses saham samba Anda dengan hampir semua aplikasi hanya melalui titik pemasangan di rumah Anda.

Cara menggunakan SMBnetFS:

  • Instal paket melalui manajer paket Anda
  • cp /etc/smbnetfs.conf ~/.smb/smbnetfs.conf salin konfigurasi standar
  • cp /etc/samba/smb.conf ~/.smb/smb.conf salin konfigurasi samba
  • mkdir ~/sambashare atau nama lain untuk titik pemasangan
  • smbnetfs ~/sambashare pasang share ke mountpoint

Sayangnya hanya ada sedikit dokumentasi yang tersedia. Lihat man smbnetfsopsi dan buka file FAQ di /usr/share/doc/smbnetfs.


+1 untuk langkah-langkah terperinci. Saya harap ini bekerja dengan Eclipse, karena dengan gvfs Eclipse jelas tidak bekerja. Apakah Anda mengetahui perbedaan SMBnetFS dengan smbfs?
Android Eve

2
SMBNetFS menggunakan sekering. Pastikan pengguna berada dalam fusegrup.
Takkat

Beri +1 lagi! Bukankah gfvs menggunakan FUSE juga? Apa bedanya dengan apa yang sudah saya bungkus sebelumnya (gvfs) dengan desktop GNOME saya?
Android Eve

8

Saat menggunakan gnome, Anda cukup mengetikkan seseorang: // url ke Nautilus. Biasanya paket gvfs-fuse dan gvfs lainnya harus diinstal, sehingga Anda dapat memasang samba secara langsung dengan browser file. Selain itu, Anda harus menemukan semua barang yang dipasang di folder ~ / .gvfs Anda. Ini bahkan berfungsi dengan protokol lain dan file terkompresi dll.

gvfs-mount smb://user@server/storage

Saya sudah mengujinya dengan gerhana dan alat-alat lain dan berhasil. gvfs-fuse harus diinstal.


Terima kasih tapi Eclipse tidak akan bekerja dengan ini. Saya sudah mencoba ini, itu sebabnya saya secara khusus bertanya tentang smbmount (tautan simbolis ke mount.cifs yang merupakan bagian dari paket smbfs).
Android Eve

2
Jadi gerhana tidak dapat mengakses .gvfs di dir rumah Anda? Sejauh yang saya tahu, setiap program harus dapat melakukan ini. Koreksi saya jika saya salah.
matthias.lukaszek

2

man mountakan membantu Anda menentukan opsi apa yang Anda inginkan. Jika sistem windows akan selalu tersedia. Anda bisa menambahkan mount ke /etc/fstabdan itu akan dipasang. Anda dapat memungkinkan pengguna untuk memasang dan melepas partisi sesuai kebutuhan dengan menggunakan opsi user,noauto. Untuk mengizinkan orang lain melepas pemasangannya, ubah userke users.

Autofs juga mendukung tunggakan berdasarkan menggunakan samba. Mantra tergantung pada direktori mana yang ingin Anda mount ketika. Saya telah menjalankannya dengan sukses di lingkungan pengembangan.

EDIT: Jika Anda perlu melakukan ini untuk banyak pengguna, saya sarankan menggunakan autofs untuk melakukan pemasangan. Ini tidak memerlukan perubahan untuk fstab. Memperoleh kredensial untuk berbagai pengguna mungkin menjadi masalah. Saya menggunakan struktur direktori dalam formulir /net/$HOST/$USERuntuk tunggangan saya. Autofs dikonfigurasi untuk /net/$HOSTporsi mount dan secara otomatis me-mount direktori di bawahnya sesuai kebutuhan.

Pendekatan pemasangan tertentu tergantung pada kebutuhan Anda. Saya memiliki kasus di mana pengguna memerlukan direktori Desktop mereka dipasang di server, meskipun mount khas berbasis server.

Untuk organisasi besar dengan banyak pengguna mungkin masuk akal untuk memindahkan direktori ke server Linux dan menggunakan Samba untuk berbagi file ke pengguna Windows. Saya belum mencoba yang sebaliknya, tetapi mungkin saja.


Ini berfungsi, tetapi Anda perlu akses root untuk mengubah fstab. Sekalipun root, perhatikan bahwa itu sangat tidak praktis jika Anda harus melakukannya untuk banyak pengguna, masing-masing dengan bagian khusus untuk dipasang (seperti dalam organisasi besar di mana setiap pengguna memiliki bagian pribadi di server file terpusat).

0

Saya menemukan pertanyaan ini ketika meneliti keajaiban yang saya lakukan baru-baru ini untuk melakukan hal ini untuk salah satu pengguna saya. Alur kerja saya sangat berbeda dengan jawaban lainnya. Namun perlu dicatat, ini tentang kasus yang paling sederhana.

Dengan asumsi nama pengguna Anda adalah aedan rumah Anda adalah/home/ae

1) Mengatur smbfs:
mkdir /home/ae/.smb

1a) Jika kredensial login windows diperlukan, buat dan edit file: /home/ae/.smb/smbnetfs.confuntuk memiliki konten:

auth winuser "winpassword"

winuseradalah pengguna yang dibuat di komputer Windows yang ingin Anda akses. winpasswordadalah kata sandi pengguna itu untuk masuk ke Windows di komputer itu.

2) Buat titik mount Anda:
mkdir /home/ae/nethood

3) Jalankan perintah smbnetfs:
smbnetfs /home/ae/nethood


Perhatikan bahwa seluruh "lingkungan jaringan" akan muncul di bawah /home/ae/nethooddengan workgroup menjadi lapisan pertama subdirektori.

Semua daftar di bawah ini disalin dari penjelajahan folder saya sebagai pengguna yang tidak memiliki hak istimewa di host ubuntu. Nama pengguna dan grup diubah menjadi ae. sudotidak pernah digunakan. Komputer Windows berada di jaringan Windows informal dan folder bersama dilindungi oleh pengguna / kata sandi (pada komputer Windows menggunakan nama pengguna dan kata sandi 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

Jelajahi 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

Ubah direktori ke komputer dan folder apa pun yang dibagikan akan terdaftar dan diakses seperti biasa.

$ 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

Dan file-file:

$ 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

Perhatikan bahwa direktori di atas memiliki kepemilikan root root. Kepemilikan file akan sama dengan pengguna Anda.

Tidak ada pengguna lain yang dapat mengakses folder terlepas dari titik mount atau kepemilikan atau izin folder itu. Jika pengguna Anda dapat "menulis" ke folder itu (dan itu kosong), smbnetfs akan me-mount lingkungan jaringan di sana dan bahkan tidak mengizinkan orang lain mengakses, bahkan root. Untuk rootmemiliki akses, Anda harus su ae.


Jika tidak ada folder bersama, direktori komputer akan kosong.

Jika Anda tidak memiliki kredensial ke komputer Windows, Anda mungkin mendapatkan kesalahan:
ls: cannot open directory .: Input/output error

Dengan menggunakan situs kami, Anda mengakui telah membaca dan memahami Kebijakan Cookie dan Kebijakan Privasi kami.
Licensed under cc by-sa 3.0 with attribution required.