Cách cài đặt chia sẻ Windows chính xác


20

Tôi đã gắn một chia sẻ Windows vào hệ thống Ubuntu 11.10 của mình bằng cách thêm dòng sau vào /etc/fstab:

//serveraddr/sharedfolder /mnt/foldername/ smbfs credentials=/home/myname/.smbpasswd 0 0

sử dụng hướng dẫn ở đây .

Nhưng có một vấn đề với các quyền. Chủ sở hữu của thư mục gắn kết là root. Tôi không thể tạo bất kỳ thư mục hoặc tệp nào trong điểm được gắn kết là tôi không trở thành root. Ngay cả tôi cũng không thể thay đổi quyền sở hữu cho người dùng mặc định của mình thông qua

sudo chown -R myname .

Tôi googled và thấy rằng nó có thể xuất phát từ thực tế là các định dạng tệp Windows (fat32 / ntfs) không thể lưu quyền sở hữu. Nhưng khi tôi kết nối đến cùng một vị trí thông qua samba như

smb://serveraddr/sharedfolder

bằng cách cung cấp thông tin đăng nhập của tôi, tôi có đặc quyền để viết mà không phải là root.

Làm thế nào tôi có thể làm cho nó để cho tôi viết vào thư mục được gắn kết?

Câu trả lời:


29

Không sử dụng smbfs, tên của giao thức mới là cifsmột phần của gói cifs-tools(cài đặt nó nếu bạn chưa có.

Thay vào đó hãy sử dụng dòng này trong fstab

//server/share /mnt/mountname cifs username=server_user,password=user_password,iocharset=utf8,file_mode=0777,dir_mode=07‌​77 0 0

Ở đâu

server = your server that you are trying to access
share = mapped share on that server
/mnt/mountname = any folder that you created with sudo /mnt/<folder_name>
username = the name of the user on that server that can access the mount
password = the password for that user

Sau đó, bạn có thể kiểm tra sudo mount -a, nếu bạn không gặp phải lỗi nào, bạn có thể khởi động lại một cách an toàn để tìm cổ phần của mình được gắn vào /mnt/<folder_name>.

Để sử dụng tệp thông tin xác thực thay vì usernamepasswordtham số trên, fstabbạn có thể tạo tệp có 2 dòng đó để tên người dùng và mật khẩu của bạn không được hiển thị rõ ràng trong fstab

sudo nano /etc/cifspwd

Thêm các dòng này vào tập tin

username=<username on server>
password=<password for that username>

Nhấn phím ctrl + x và khi được yêu cầu nhấn yđể lưu tệp.

Bảo vệ nó với

sudo chmod 600 /etc/cifspwd

Sử dụng dòng này thay vì trước đó

//server/share /mnt/mountname cifs credentials=/etc/cifspwd,iocharset=utf8,file_mode=0777,dir_mode=07‌​77 0 0

Sau đó, nó sẽ an toàn để khởi động lại và bạn nên gắn kết và các chi tiết của bạn được bảo mật.


Nếu điều này không làm việc, vui lòng dán đầu ra của cat ~/.smbpasswd.
Bruno Pereira

@ bbrunopereira81: Nó không hoạt động. cat .smbpasswdcho user=name.surname pass=******* dom=domainname
petrichor

@ İsmailArı tại sao bạn có tên miền? bạn là một phần của một tên miền ??? hãy thử sử dụng tất cả trên cùng một dòng thay vì tạo một tệp riêng biệt cho thông tin đăng nhập, hãy thử điều này trên thiết bị đầu cuối : sudo mount -t cifs //ip_from_windows_pc/sharename /mnt/share -o username=windows_username,password=windows_password_for_user,iocharset=utf8,file_‌​mode=0777,dir_mode=0777. nếu bạn gặp lỗi hãy viết chúng ra.
Bruno Pereira

1
Đã thêm thông tin cho tệp thông tin đăng nhập, bạn cũng có thể sử dụng phương pháp đó.
Bruno Pereira

2
Tôi nghĩ rằng đáng chú ý là trong Ubuntu 12.10, "chế độ" không phải là một tham số hợp lệ. Thay vào đó, tôi đã phải sử dụng "file_mode". Ngoài ra, tôi không chắc chắn tôi hoàn toàn đồng ý với các quyền chung của 0777. Nếu bạn đang tự chia sẻ một phần riêng tư, tôi nghĩ một cái gì đó như "file_mode = 0660, dir_mode = 0770" sẽ phù hợp hơn.
Avian00
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.