Làm cách nào để tôi chia sẻ Samba với tư cách là người dùng không root


14

Có hướng dẫn từng bước hướng dẫn chi tiết cách smbmount một chia sẻ Samba được sử dụng bởi người dùng không root trên máy tính để bàn Ubuntu 10.04 không?

Lưu ý: có rất nhiều chủ đề trên tìm kiếm của Google đối phó với vấn đề dường như mới này. Các hướng dẫn được sử dụng để hoạt động trên Ubuntu 8.04 (hoặc phiên bản cũ hơn của smbfs) không còn hoạt động.

Tôi cần tìm thứ gì đó cập nhật và có thể tái tạo.

Câu trả lời:


13

Một công cụ rất hay để dễ dàng gắn kết cổ phiếu samba của bạn trong thư mục nhà của bạn là SMBNetFS . Với công cụ này, bạn có thể truy cập vào chia sẻ samba của mình bằng gần như tất cả các ứng dụng chỉ đơn giản thông qua một điểm gắn kết trong nhà của bạn.

Cách sử dụng SMBnetFS:

  • Cài đặt gói thông qua trình quản lý gói của bạn
  • cp /etc/smbnetfs.conf ~/.smb/smbnetfs.conf sao chép cấu hình tiêu chuẩn
  • cp /etc/samba/smb.conf ~/.smb/smb.conf sao chép cấu hình samba
  • mkdir ~/sambashare hoặc bất kỳ tên nào khác cho điểm gắn kết
  • smbnetfs ~/sambashare gắn kết cổ phiếu đến điểm gắn kết

Thật không may, chỉ có ít tài liệu có sẵn. Xem man smbnetfsđể biết các tùy chọn và đi qua tệp FAQ trong /usr/share/doc/smbnetfs.


+1 cho các bước chi tiết. Tôi hy vọng điều này hoạt động với Eclipse, bởi vì với gvfs Eclipse chắc chắn không hoạt động. Bạn có biết SMBnetFS khác với smbfs như thế nào không?
Android đêm

2
SMBNetFS sử dụng cầu chì. Hãy chắc chắn rằng người dùng đang ở trong fusenhóm.
Takkat

+1 lại! Không phải gfvs cũng sử dụng FUSE sao? Nó khác với những gì tôi đã đóng gói sẵn (gvfs) với máy tính để bàn Gnome của tôi như thế nào?
Android đêm

8

Khi sử dụng gnome, bạn chỉ cần nhập url smb: // vào Nautilus. Thông thường gvfs-fuse và các gói gvfs khác nên được cài đặt, để bạn có thể gắn samba trực tiếp với trình duyệt tệp. Ngoài ra, bạn sẽ tìm thấy tất cả các công cụ được gắn kết trong thư mục ~ / .gvfs của bạn. Điều này thậm chí hoạt động với các giao thức và tập tin nén khác, vv

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

Tôi đã thử nó với nhật thực và các công cụ khác và nó hoạt động. gvfs-cầu chì phải được cài đặt.


Cảm ơn nhưng Eclipse sẽ không làm việc với điều này. Tôi đã thử điều này rồi, đó là lý do tại sao tôi đặc biệt hỏi về smbmount (một liên kết tượng trưng đến mount.cifs là một phần của gói smbfs).
Android đêm

2
Vì vậy nhật thực không thể truy cập .gvfs trong thư mục nhà của bạn? Theo tôi biết, mọi chương trình sẽ có thể làm điều này. Sửa tôi nếu tôi sai.
matthias.lukaszek

2

man mountsẽ giúp bạn xác định những lựa chọn bạn muốn. Nếu hệ thống cửa sổ sẽ luôn luôn có sẵn. Bạn chỉ có thể thêm gắn kết vào /etc/fstabvà nó sẽ được gắn kết. Bạn có thể cho phép người dùng gắn kết và ngắt kết nối phân vùng theo yêu cầu bằng các tùy chọn user,noauto. Để cho phép người khác tháo gỡ nó thay đổi userthành users.

Autofs cũng hỗ trợ các yêu cầu gắn kết bằng samba. Câu thần chú phụ thuộc vào thư mục bạn muốn gắn kết khi nào. Tôi đã chạy nó thành công trong một môi trường phát triển.

EDIT: Nếu bạn cần làm điều này cho nhiều người dùng, tôi khuyên bạn nên sử dụng autofs để thực hiện việc gắn kết. Điều này không yêu cầu thay đổi đối với fstab. Có được thông tin đăng nhập cho những người dùng khác nhau có thể là một vấn đề. Tôi sử dụng một cấu trúc thư mục trong mẫu /net/$HOST/$USERcho gắn kết của tôi. Autofs được cấu hình cho /net/$HOSTphần gắn kết và tự động gắn các thư mục bên dưới nó khi cần thiết.

Phương pháp gắn đặc biệt phụ thuộc vào nhu cầu của bạn. Tôi đã có trường hợp người dùng cần thư mục Desktop của họ được gắn trên máy chủ, mặc dù các mount thông thường là dựa trên máy chủ.

Đối với tổ chức lớn có nhiều người dùng, việc chuyển các thư mục sang máy chủ Linux có thể có ý nghĩa và sử dụng Samba để chia sẻ các tệp cho người dùng Windows. Tôi đã không thử ngược lại, nhưng nó có thể.


Điều này hoạt động, nhưng bạn cần quyền truy cập root để thay đổi fstab. Ngay cả khi là root, lưu ý rằng nó khá không thực tế nếu bạn phải làm điều đó cho nhiều người dùng, mỗi người có một chia sẻ cụ thể để gắn kết (như trong một tổ chức lớn nơi mỗi người dùng có một chia sẻ cá nhân trong một máy chủ tệp tập trung).

0

Tôi đã tìm thấy câu hỏi này trong khi nghiên cứu phép thuật mà tôi đã thực hiện gần đây để thực hiện chính xác điều này cho một trong những người dùng của tôi. Quy trình làm việc của tôi khác biệt đáng kể với các câu trả lời khác. Hãy lưu ý, tuy nhiên, đây là về trường hợp đơn giản nhất có thể.

Giả sử tên người dùng của bạn là aevà nhà của bạn là/home/ae

1) Thiết lập smbfs:
mkdir /home/ae/.smb

1a) Nếu cần thông tin đăng nhập windows, hãy tạo và chỉnh sửa tệp: /home/ae/.smb/smbnetfs.confđể có nội dung:

auth winuser "winpassword"

winuserlà người dùng được tạo trên máy tính Windows mà bạn muốn truy cập. winpasswordlà mật khẩu của người dùng đó để đăng nhập vào Windows trên máy tính đó.

2) Tạo điểm gắn kết của bạn:
mkdir /home/ae/nethood

3) Thực thi lệnh smbnetfs:
smbnetfs /home/ae/nethood


Lưu ý toàn bộ "vùng lân cận mạng" sẽ hiển thị bên dưới /home/ae/nethoodvới các nhóm làm việc là lớp thư mục con đầu tiên.

Tất cả các danh sách dưới đây được sao chép từ trình duyệt thư mục của tôi với tư cách là người dùng không có đặc quyền trên máy chủ Ubuntu. Tên người dùng và nhóm đổi thành ae. sudođã không bao giờ được sử dụng. Các máy tính Windows nằm trên mạng Windows không chính thức và các thư mục dùng chung được bảo vệ người dùng / mật khẩu (trên máy tính Windows sử dụng tên người dùng và mật khẩu 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

Duyệt nhóm làm việc 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

Thay đổi thư mục thành máy tính và mọi thư mục dùng chung sẽ được liệt kê và truy cập như bình thường.

$ 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

Và các tập tin:

$ 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

Lưu ý các thư mục trên có quyền sở hữu root root. Quyền sở hữu tệp sẽ giống như người dùng của bạn.

Không người dùng nào khác có thể truy cập các thư mục bất kể điểm gắn kết hoặc quyền sở hữu hoặc quyền của thư mục đó. Nếu người dùng của bạn có thể "ghi" vào thư mục đó (và nó trống), smbnetfs sẽ gắn kết vùng lân cận mạng ở đó và thậm chí không cho phép bất kỳ ai khác truy cập root. Để rootcó quyền truy cập, bạn phải su ae.


Nếu không có thư mục dùng chung, thư mục của máy tính sẽ trống.

Nếu bạn không có thông tin đăng nhập vào máy tính Windows, bạn có thể gặp lỗi:
ls: cannot open directory .: Input/output error

Khi sử dụng trang web của chúng tôi, bạn xác nhận rằng bạn đã đọc và hiểu Chính sách cookieChính sách bảo mật của chúng tôi.
Licensed under cc by-sa 3.0 with attribution required.