Cách thiết lập chia sẻ Samba cho tổ chức nhỏ trên Ubuntu 16.04
Samba là một triển khai open-souce của giao thức mạng SMB / CIFS được sử dụng trong môi trường Windows cho các dịch vụ chia sẻ như truy cập file và máy in và Active Directory. Samba cũng được dùng để tạo chia sẻ file đa nền tảng trong một cấu hình được gọi là server độc lập .Trong hướng dẫn này, bạn sẽ cài đặt và cấu hình một server Samba độc lập để cung cấp repository hoặc chia sẻ file được nối mạng cho một tổ chức nhỏ giả định có tên là Example.com . Tổ chức này có một số yêu cầu đối với việc chia sẻ file của họ: 1. Mọi nhân viên cần được chia sẻ file cá nhân, riêng tư; 2. Tất cả nhân viên phải có quyền truy cập đọc và ghi đối với một phần chia sẻ file chung; 3. Một admin-user nên có quyền truy cập đọc và ghi đối với tất cả các cổ phiếu cá nhân và quyền sở hữu cổ phiếu chung.
Server Samba của bạn sẽ đáp ứng tất cả các yêu cầu này. Bạn cũng sẽ học cách truy cập các chia sẻ từ Windows, Linux và macOS.
Yêu cầu
Trước khi bắt đầu hướng dẫn này, bạn cần những thứ sau:
Server Ubuntu 16.04 với user sudo không phải root. Vui lòng tham khảo hướng dẫn cài đặt server ban đầu Ubuntu 16.04 để biết thêm thông tin. Samba có yêu cầu RAM và CPU khiêm tốn và sẽ hoạt động tốt trên server 1GB. Bạn có nhiều khả năng hết dung lượng lưu trữ hơn, vì vậy đây nên là cân nhắc chính của bạn khi chọn kích thước server của bạn .
Các kết nối TCP đến được phép trên cổng
445
. Nếu bạn đang sử dụng firewall UFW , hãy tham khảo Cách cài đặt firewall với UFW trên Ubuntu và Server cloud Debian để được hướng dẫn. Nếu bạn đang sử dụng firewall bên ngoài hoặc khác, vui lòng tham khảo tài liệu liên quan.
Bước 1 - Cài đặt Samba
Hãy bắt đầu bằng cách cài đặt Samba bằng hệ thống quản lý gói của Ubuntu.
Trước khi cài đặt các gói mới, hãy cập nhật index gói local để bao gồm các version mới nhất từ repository Ubuntu:
- sudo apt-get update
Tiếp theo, cài đặt Samba:
- sudo apt-get install samba
Lệnh này sẽ cài đặt và khởi động cả server Samba smbd
và server Samba NetBIOS nmbd
. nmbd
không bắt buộc đối với hướng dẫn này, vì vậy vì lợi ích bảo mật, bạn có thể dừng và tắt nó bằng systemctl
:
- sudo systemctl stop nmbd.service
- sudo systemctl disable nmbd.service
Lệnh sudo systemctl disable nmbd.service
sẽ tạo ra kết quả sau khi chạy:
Outputnmbd.service is not a native service, redirecting to systemd-sysv-install Executing /lib/systemd/systemd-sysv-install disable nmbd insserv: warning: current start runlevel(s) (empty) of script `nmbd' overrides LSB defaults (2 3 4 5). insserv: warning: current stop runlevel(s) (0 1 2 3 4 5 6) of script `nmbd' overrides LSB defaults (0 1 6).
Đầu ra này thông báo rằng vì nmbd
không có cấu hình quản lý systemd
root , nó đang bị vô hiệu hóa bởi hệ thống init SysV cũ hơn.
Để tránh các vấn đề bảo mật có thể phát sinh do chạy một dịch vụ hỗ trợ mạng, chưa được cấu hình , hãy dừng server Samba cho đến khi có chi tiết cấu hình:
- sudo systemctl stop smbd.service
Samba hiện đã được cài đặt và sẵn sàng được cấu hình.
Bước 2 - Đặt các tùy chọn chung của Samba
Hãy xác định cách server Samba sẽ hoạt động bằng cách sửa đổi file cấu hình của nó, nằm tại /etc/samba/smb.conf
. Tệp này có hai phần: phần [global]
và phần [shares]
. Phần [global]
cấu hình hành vi của server Samba và phần [shares]
cấu hình chia sẻ file . Hãy bắt đầu bằng cách cài đặt các chỉ thị trong phần [global]
.
Thay vì chỉnh sửa /etc/samba/smb.conf
trực tiếp, hãy đổi tên nó thành smb.conf.original
và tạo một file mới với tên smb.conf
:
- sudo mv /etc/samba/smb.conf /etc/samba/smb.conf.orig
Trước khi chỉnh sửa /etc/samba/smb.conf
, hãy kiểm tra các giao diện có sẵn để cho Samba biết nó sẽ nhận dạng được giao diện nào. Nhập nội dung sau:
- ip link
Output1: lo: <LOOPBACK,UP,LOWER_UP> mtu 65536 qdisc noqueue state UNKNOWN mode DEFAULT group default qlen 1 link/loopback 00:00:00:00:00:00 brd 00:00:00:00:00:00 2: eth0: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc pfifo_fast state UP mode DEFAULT group default qlen 1000 link/ether 02:21:2c:03:ef:e2 brd ff:ff:ff:ff:ff:ff
Đầu ra này cho biết lo
là giao diện loopback và eth0
là network interface bên ngoài, mặc dù giao diện bên ngoài của bạn có thể khác. Hãy lưu ý cả hai: bạn sẽ đưa chúng vào chỉ thị interfaces
trong phần [global]
của file smb.conf
.
Hãy bắt đầu chỉnh sửa file này bằng nano
hoặc editor bạn quen dùng :
- sudo nano /etc/samba/smb.conf
Phần [global]
của file này sẽ xác định tên, role và các chi tiết khác của server , bao gồm các network interface :
[global] server string = samba_server server role = standalone server interfaces = lo your_network_interface bind interfaces only = yes disable netbios = yes smb ports = 445 log file = /var/log/samba/smb.log max log size = 10000
Các chỉ thị này chỉ định những điều sau:
-
server string
- Đây là thông tin nhận dạng sẽ được cung cấp cho user trong quá trình kết nối. Bạn có thể sử dụngsamba_server
hoặc một tên khác sẽ xác định server của bạn. Trong suốt hướng dẫn này, bạn sẽ thấy chuỗisamba.example.com
để biểu thị phần chia sẻ Samba cho tổ chức Example.com . -
server role
- Điều này xác định loại server Samba sẽ được tạo. Trong trường hợp này, nó là mộtstandalone server
, tức là một file chia sẻ. Các loại server khác bao gồm server thành viên domain và bộ điều khiển domain . -
interfaces
- Đây là những network interface mà Samba sẽ liên kết với.lo
là giao diện lặp lại (127.0.0.1) và là bắt buộc. Bạn cũng cần bao gồm network interface bên ngoài mà bạn đã xuất trước đó. Đây thường làeth0
. -
bind interfaces only
- Điều này đảm bảo Samba chỉ liên kết với các giao diện được liệt kê trên dònginterfaces
. Như một biện pháp bảo mật, điều này khiến Samba bỏ qua các gói không tương ứng với cácinterfaces
được chỉ định. -
disable netbios
- Thao tác này vô hiệu hóa tất cả các chức năng NetBIOS không cần thiết trong một server độc lập. Làm điều này đơn giản hóa quá trình phân giải tên server và vận chuyển lưu lượng SMB. -
smb ports
- Điều này đặt cổng mà Samba sẽ lắng nghe. Cổng445
là cổng tiêu chuẩn cho Samba. -
log file
- Điều này đặt tên và vị trí của file log của Samba. -
max log size
- Điều này đặt giới hạn kích thước trên file log . Số được liệt kê tính bằng byte và bằng 10MB. Một số điều cần lưu ý khi đặt giới hạn kích thước này: Khi đạt đến giới hạn kích thước này, Samba sẽ tạo file log mới và chuyển nội dung cũ sang bản sao có phần mở rộng.old
. Nếu vượt quá giới hạn , file.old
hiện có sẽ bị hủy. Điều này ngăn không gian đĩa / phân vùng bị quá tải với nội dung của một file log duy nhất. Do đó, bạn nên xác định kích thước file phù hợp với tài nguyên hệ thống của bạn .
Nếu bạn muốn ghi log chi tiết hơn trong khi cài đặt server , hãy nối dòng sau vào phần [global]
:
log level = 3 passdb:5 auth:5
Đây bộ mức độ log 3 (thông tin), tăng granularity thông tin đăng nhập từ các cài đặt mặc định của 1. Cài đặt cao hơn 5 cho passdb
và auth
lớp debug cung cấp thêm thông tin liên quan đến xác thực user .
Lưu file khi bạn đã tạo xong phần này.
Khi nào bạn chỉnh sửa smb.conf
, bạn nên chạy testparm
tiện ích Samba để kiểm tra xem không có lỗi cú pháp nào:
- testparm
Chạy lệnh testparm
trên file smb.conf
tạo ra kết quả sau:
OutputLoad smb config files from /etc/samba/smb.conf Loaded services file OK. Server role: ROLE_STANDALONE Press enter to see a dump of your service definitions
Nhấn ENTER
tạo ra kết quả sau:
Output# Global parameters [global] server string = samba_server interfaces = lo your_network_interface bind interfaces only = Yes server role = standalone server log file = /var/log/samba/smb.log max log size = 10000 smb ports = 445 disable netbios = Yes idmap config * : backend = tdb
Nếu testparm
báo cáo Loaded services file OK.
, thì không có lỗi cú pháp nào có thể ngăn server Samba khởi động.
Cấu hình phần [global]
là tất cả những gì cần thiết để khởi động server Samba. Tuy nhiên, chức năng của nó sẽ bị hạn chế nếu không có cấu hình chia sẻ. Chia sẻ bao gồm hai phần, user và folder , cả hai phần này phải được tạo và cấu hình để cho phép đăng nhập và thử nghiệm. Phần tiếp theo sẽ giải thích cách tạo user có thể truy cập các lượt chia sẻ.
Bước 3 - Tạo user
Trong bước này, ta sẽ tạo user có thể truy cập các chia sẻ. Họ cần quyền truy cập với quyền là user Samba và user hệ thống để xác thực với server Samba khi họ đăng nhập và đọc và ghi vào hệ thống file .
Trong công ty giả định Example.com, có bốn nhân viên cần được thêm vào server Samba và được tạo như user trên hệ thống Linux: david , mike , jane và lucy . Ngoài bốn người này, sẽ có một user quản trị , người sẽ có thể truy cập và quản lý các chia sẻ cá nhân. User này cũng sẽ sở hữu những chia sẻ chung mà mọi người có thể truy cập.
Bước đầu tiên để thêm user hệ thống là tạo folder chính cho từng người trong số họ. Thay vì sử dụng các folder chính tiêu chuẩn tại /home/user
, các folder và dữ liệu Samba sẽ được đặt tại /samba/
. Giữ dữ liệu Samba ở một vị trí duy nhất và tách biệt với dữ liệu user khác sẽ giúp các việc quản lý trong tương lai như backup trở nên dễ dàng hơn.
Lưu ý: User được tạo trong hướng dẫn này không nhằm mục đích đăng nhập SSH. Nếu user của bạn đã có account trên server , bạn nên tạo một user Samba dành riêng cho họ để làm theo hướng dẫn này.
Phần tiếp theo sẽ giải thích quy trình thêm user đầu tiên, david , nhưng bạn cần lặp lại quy trình này cho mike , jane và lucy .
Bước đầu tiên là tạo folder nơi dữ liệu Samba sẽ được lưu trữ, tại folder root của hệ thống file . Thư mục này sẽ được gọi là /samba/
và quyền sở hữu group của nó sẽ được đặt thành sambashare
, một group được tạo khi bạn cài đặt Samba.
Thực hiện các lệnh sau để tạo folder /samba/
và đặt quyền sở hữu group thành sambashare
:
- sudo mkdir /samba/
- sudo chown :sambashare /samba/
Tiếp theo, tạo folder chính của david trong folder /samba/
:
- sudo mkdir /samba/david
Bây giờ, hãy thêm david làm user hệ thống bằng lệnh sau:
- sudo adduser --home /samba/david --no-create-home --shell /usr/sbin/nologin --ingroup sambashare david
Các tùy chọn làm như sau:
-
--home
- Điều này đặt vị trí của folder chính của user . -
--no-create-home
- Thao tác này ngăn lệnhadduser
tạo folder chính của david . Nếu hệ thống tạo folder này, thì folder đó sẽ chứa các file cấu hình như.bash_history
không cần thiết cho cài đặt hiện tại. -
--shell
- Điều này đặt david shell nào sẽ được cấp phát khi anh ta đăng nhập bằng SSH. Đăng nhập SSH là không cần thiết để truy cập vào chia sẻ Samba; cài đặt này thành/usr/sbin/nologin
sẽ vô hiệu hóa đăng nhập SSH. -
--in-group sambashare
- Điều này thêm user vào groupsambashare
, cấp cho họ quyền truy cập đọc và ghi vào các chia sẻ của riêng họ và vào chia sẻ chung.
Bạn sẽ được yêu cầu nhập password khi chạy lệnh này. Chọn một password duy nhất, không dựa trên từ điển, gồm 10 ký tự trở lên.
Bây giờ david user hệ thống đã tồn tại, bạn có thể đặt quyền sở hữu và quyền trên folder chính Samba của anh ta:
- sudo chown david:sambashare /samba/david/
- sudo chmod 2770 /samba/david/
Đặt quyền của folder thành 2770
nghĩa là các file hoặc folder mới được tạo trong /samba/david/
sẽ kế thừa quyền sở hữu group của folder mẹ chứ không phải group chính của user đã tạo file hoặc folder . Điều này có nghĩa, ví dụ, rằng nếu user quản trị là để tạo ra một folder mới trong phần david ‘s, david sẽ có thể đọc và ghi vào nó.
Tiếp theo, thêm david vào server Samba. Samba lưu giữ database user và password của riêng mình, được sử dụng để xác thực thông tin đăng nhập. Để đăng nhập, tất cả user phải được thêm vào server Samba và được kích hoạt. Thực thi các lệnh smbpasswd
sau để hoàn thành cả hai tác vụ này:
- sudo smbpasswd -a david
- sudo smbpasswd -e david
Các tùy chọn được sử dụng ở đây làm như sau:
-
-a
- Điều này thêm user vào server Samba mà không cho phép họ. -
-e
- Điều này cho phép user đã thêm trước đó.
Mật khẩu bạn nhập ở đây sẽ được sử dụng để truy cập vào phần chia sẻ Samba và có thể khác với password hệ thống.
David user hiện tồn tại như một user hệ thống mà không có khả năng SSH vào server . Anh ấy có một folder chính tại /samba/david
, và được đăng ký và kích hoạt với quyền là một user Samba.
Lặp lại quy trình này cho mọi user Samba ( mike , jane và lucy ).
Để tạo user quản trị , hãy chạy qua các lệnh sau, thay đổi folder chính thành /samba/everyone/
:
- sudo mkdir /samba/everyone
- sudo adduser --home /samba/everyone --no-create-home --shell /usr/sbin/nologin --ingroup sambashare admin
- sudo chown admin:sambashare /samba/everyone/
- sudo chmod 2770 /samba/everyone/
- sudo smbpasswd -a admin
- sudo smbpasswd -e admin
Ngoài việc tạo user quản trị , hãy tạo một group có tên là administrator để giúp việc quản lý server dễ dàng hơn. Với quyền đọc và ghi cho mỗi lượt chia sẻ, group này có thể đơn giản hóa công việc thêm và xóa user . Ví dụ: nếu user cá nhân hoạt động với quyền là user quản trị và sau đó rời khỏi tổ chức, họ cần được xóa riêng khỏi mỗi lượt chia sẻ. Administrator mới cũng cần được thêm thủ công vào mỗi lượt chia sẻ. Việc tạo một group administrator và cấp cho group này quyền truy cập đọc-ghi vào các chia sẻ nghĩa là việc thêm và xóa user chỉ yêu cầu một lệnh duy nhất.
Thực thi các lệnh sau để tạo một group mới gọi là administrator và thêm quản trị user vào group này:
- sudo groupadd admins
- sudo usermod -G admins admin
User bổ sung có thể được thêm vào group administrator bằng cách chạy lệnh thứ hai, sudo usermod -G admins admin
và thay thế một user khác thay cho admin
.
Cấu hình hệ thống hiện đã hoàn tất, với user của tổ chức Example.com được đặt làm hệ thống và user Samba. Hãy chuyển sang cấu hình server Samba để những user này có thể truy cập folder chia sẻ của họ.
Bước 4 - Cấu hình Samba Shares
Mỗi phần chia sẻ sẽ có phần riêng trong file cấu hình Samba chính, /etc/samba/smb.conf
, theo sau các tham số chung. Các phần này sẽ xác định cách thức hoạt động của mỗi chia sẻ.
Sử dụng lại editor nano
để mở và chỉnh sửa file này:
- sudo nano /etc/samba/smb.conf
đoạn cấu hình sau sẽ xác định chia sẻ cá nhân của mỗi user :
... [share_name] path = browseable = read only = force create mode = force directory mode = valid users =
Các tùy chọn này bao gồm:
-
share_name
- Đây là tên của chia sẻ mà bạn sẽ sử dụng khi đăng nhập. -
path
- Đây là đường dẫn tuyệt đối để chia sẻ trong hệ thống file . -
browsable
- Điều này đặt liệu những user khác có thể xem chia sẻ hay không. Bật tùy chọn này chỉ cho phép những user khác của server Samba thấy sự tồn tại của phần chia sẻ. Nó không cấp bất kỳ quyền đọc hoặc ghi nào. -
read only
- Điều này đặt liệuvalid users
có thể ghi vào chia sẻ hay không. -
force create mode
-force create mode
này buộc các quyền cho các file nào được ghi vào chia sẻ. -
force directory mode
- Điều này buộc các quyền cho bất kỳ folder nào được tạo trong chia sẻ. -
valid users
- Đây là danh sách những user có quyền truy cập vào phần chia sẻ. Cài đặt này có thể lấy tên user hoặc group hệ thống, chẳng hạn như administrator . Các group phải được liệt kê với một@
ở phía trước, ví dụ:@admins
.
Thêm đoạn cấu hình chia sẻ sau cho david , xác định folder chính của anh ấy, quyền đối với quyền sở hữu group của folder này và những user phải có quyền truy cập vào phần chia sẻ của anh ấy:
[david] path = /samba/david browseable = no read only = no force create mode = 0660 force directory mode = 2770 valid users = david @admins
Lưu ý quyền folder đặt quyền sở hữu group thành quyền sở hữu của folder mẹ.
Tạo một khối chia sẻ cho mike , jane và lucy . Chỉ thay đổi chia sẻ [name]
, path
và valid users
để phản ánh từng tên của user .
Chia sẻ [everyone]
sẽ khác với những chia sẻ khác ở cả [name]
, path
, valid users
và các tùy chọn browsable
, và sẽ giống như sau:
... [everyone] path = /samba/everyone browseable = yes read only = no force create mode = 0660 force directory mode = 2770 valid users = @sambashare @admins
Việc cấp cho group sambashare
quyền truy cập đọc-ghi vào phần chia sẻ cho phép tất cả user truy cập vào phần chia sẻ, vì họ đã được thêm vào group này khi họ được tạo.
Tệp smb.conf
hoàn chỉnh sẽ trông như thế này:
[global] server string = samba_server server role = standalone server interfaces = lo your_network_interface bind interfaces only = yes disable netbios = yes smb ports = 445 log file = /var/log/samba/smb.log max log size = 10000 [david] path = /samba/david browseable = no read only = no force create mode = 0660 force directory mode = 2770 valid users = david @admins [mike] path = /samba/mike browseable = no read only = no force create mode = 0660 force directory mode = 2770 valid users = mike @admins [jane] path = /samba/jane browseable = no read only = no force create mode = 0660 force directory mode = 2770 valid users = jane @admins [lucy] path = /samba/lucy browseable = no read only = no force create mode = 0660 force directory mode = 2770 valid users = lucy @admins [everyone] path = /samba/everyone browseable = yes read only = no force create mode = 0660 force directory mode = 2770 valid users = @sambashare @admins
Lưu file khi bạn đã chỉnh sửa xong.
Kiểm tra lại cấu hình:
- testparm
Điều này sẽ tạo ra kết quả giống như sau:
OutputLoad smb config files from /etc/samba/smb.conf rlimit_max: increasing rlimit_max (1024) to minimum Windows limit (16384) Processing section "[david]" Processing section "[jane]" Processing section "[mike]" Processing section "[lucy]" Processing section "[everyone]" Loaded services file OK. Server role: ROLE_STANDALONE Press enter to see a dump of your service definitions
Khi quá trình kiểm tra cấu hình hoàn tất, hãy khởi động server Samba với systemctl
:
- sudo systemctl start smbd.service
Server Samba hiện đang chạy và sẵn sàng chấp nhận đăng nhập. Bước tiếp theo là đăng nhập vào server Samba để kiểm tra xem nó có hoạt động như mong đợi hay không. Phần sau sẽ đề cập đến việc đăng nhập vào server Samba từ Windows, Linux và macOS.
Bước 5 - Đăng nhập vào server Samba
Trong phần này, ta sẽ giới thiệu cách truy cập các chia sẻ Samba mà ta đã tạo từ Linux, Windows và macOS.
Linux - Dòng lệnh
Bạn có thể sử dụng một công cụ gọi là smbclient
để truy cập Samba từ dòng lệnh. Gói này không được bao gồm theo mặc định trên hầu hết các bản phân phối Linux, vì vậy bạn cần cài đặt nó với trình quản lý gói local của bạn .
Trên server Debian và Ubuntu, hãy cài đặt smbclient
bằng lệnh sau:
- sudo apt-get update
- sudo apt-get install smbclient
Trên hệ thống Fedora, hãy sử dụng như sau:
- sudo dnf update
- sudo samba-client
Và trên CentOS:
- sudo yum update
- sudo yum install samba-client
Lưu ý: Trên một số bản phân phối Linux, smbclient
sẽ không thành công với thông báo lỗi sau:
Outputsmbclient: Can't load /etc/samba/smb.conf - run testparm to debug it
Nếu bạn thấy thông báo lỗi này, hãy kiểm tra đảm bảo rằng bạn đã tạo file tại /etc/samba/smb.conf
.
smbclient
sử dụng định dạng sau để truy cập các chia sẻ Samba:
- smbclient //your_samba_hostname_or_server_ip/share -U username
Bạn có thể sử dụng IP của server hoặc tên server mà bạn đã xác định trong /etc/samba/smb.conf
để truy cập chia sẻ. Ví dụ này sử dụng tên server samba.example.com
để truy cập chia sẻ của david trên server Samba mà bạn đã tạo trong các bước trước:
- smbclient //samba.example.com/david -U david
Nếu david muốn truy cập vào phần chia sẻ chung ( everyone
), hãy thay đổi lệnh thành:
- smbclient //samba.example.com/everyone -U david
Sau khi chạy lệnh smbclient
, bạn sẽ được yêu cầu nhập password Samba và đăng nhập vào giao diện dòng lệnh gợi nhớ đến giao diện văn bản FTP:
smb: \>
Giao diện này hữu ích nhất để kiểm tra tên user và password và quyền truy cập đọc-ghi. Ví dụ: bạn có thể tạo một folder và liệt kê nội dung của nó như sau:
- mkdir test
- ls
Bạn sẽ thấy kết quả sau:
Output . D 0 Fri Feb 2 14:49:01 2018 .. D 0 Wed Jan 24 12:11:33 2018 test D 0 Fri Feb 2 14:49:01 2018
Xóa folder bằng lệnh :
- rmdir test
Quản lý dữ liệu trong một lượt chia sẻ thường dễ dàng hơn với công cụ GUI. Phần tiếp theo sẽ xem xét các công cụ GUI tích hợp cho KDE.
Linux - KDE với Dolphin
Dolphin là trình quản lý file mặc định trong KDE và có chức năng tích hợp để truy cập các chia sẻ Samba.
Sau khi mở Dolphin, hãy thực hiện các bước sau:
- Chọn Mạng từ danh sách Địa điểm .
- Nhấp vào Thêm folder mạng .
- Chọn tùy chọn ổ đĩa mạng Microsoft Windows .
- Nhấp vào Tiếp theo
- Nhập chi tiết cho phần chia sẻ Samba:
- Tên - Đây là một tên dễ nhớ sẽ được hiển thị dưới dạng đánh dấu trong Dolphin để chia sẻ.
- Server - Đây là tên server hoặc địa chỉ IP của server Samba. Trong ví dụ này, nó sẽ là
samba.example.com
. - Thư mục - Đây là tên của phần chia sẻ được đặt trong
smb.conf
.
- Nhấp vào Lưu & Kết nối .
- Nhập tên user và password cho user mà bạn sẽ truy cập vào phần chia sẻ Samba.
- Bấm OK .
Dolphin bây giờ sẽ kết nối và mở phần chia sẻ Samba sẽ giống như sau:
Đến đây bạn có thể sử dụng chia sẻ Samba như thể nó là một folder local để sao chép, xóa và đổi tên các file và folder . Chia sẻ cũng sẽ xuất hiện dưới dạng dấu trang vĩnh viễn trong các vị trí Mạng .
MacOS - Dòng lệnh
MacOS được cài đặt sẵn với các công cụ dòng lệnh mà bạn có thể sử dụng để truy cập phần chia sẻ Samba. Mở terminal bằng Launchpad bằng cách nhấp vào biểu tượng Thiết bị terminal .
Thao tác này sẽ mở một terminal dòng lệnh trong folder chính của bạn. Để mount phần chia sẻ Samba, bạn có thể tạo một folder mới sẽ hoạt động như điểm mount cho phần chia sẻ. Điểm mount là vị trí mà hai hệ thống file được kết hợp: trong trường hợp này là hệ thống file local của bạn và hệ thống file Samba từ xa.
Tạo một folder mới có tên samba
:
- mkdir samba
Tiếp theo, gắn chia sẻ Samba trong folder samba
mới. Lệnh này có dạng:
- sudo mount_smbfs //username@your_samba_hostname_or_server_ip/share ./mount_point
Thay thế các chi tiết từ example.com bằng david user trông giống như sau:
- sudo mount_smbfs //david@samba.example.com/david ./samba
Thư mục samba
bây giờ sẽ hiển thị nội dung của chia sẻ david trên server Samba của Example.com . Các file và folder có thể được thao tác bằng các công cụ bình thường như ls
, rm
và mkdir
; tuy nhiên, folder samba
sẽ được sở hữu bởi root sau khi phần chia sẻ đã được mount . Do đó, bạn cần sử dụng sudo
để truy cập folder samba
và nội dung của nó.
Để ngắt kết nối chia sẻ Samba, hãy chạy lệnh umount
từ cùng một folder mà bạn đã chạy mkdir
:
- umount samba
Phần tiếp theo sẽ xem xét việc truy cập chia sẻ Samba bằng ứng dụng GUI trên máy tính để bàn trong macOS.
MacOS - Máy tính để bàn
MacOS cũng có thể truy cập các chia sẻ Samba bằng ứng dụng Finder.
Thực hiện các bước sau:
- Mở Finder và nhấp vào Go trong thanh menu.
- Nhấp vào Kết nối với Server từ danh sách các tùy chọn.
- Sử dụng URL định dạng
smb://
bao gồm tên user , tên server hoặc IP server của bạn và tên chia sẻ của bạn:smb:// username @ your_samba_hostname_or_server_ip / share
. Trong ví dụ hiển thị ở đây, bạn sẽ thấy tên user david và tên serversamba.example.com
. - Đánh dấu phần chia sẻ Samba bằng cách nhấp vào nút có biểu tượng + .
- Nhấp vào Kết nối
- Chọn người dùng đã đăng ký
- Nhập tên user và password cho user chia sẻ Samba.
- Quyết định xem bạn có muốn macOS lưu password hay không.
- Nhấp vào Kết nối .
Sau khi bạn đã kết nối thành công với phần chia sẻ Samba, nó sẽ xuất hiện trong Finder như hình dưới đây:
Phần tiếp theo sẽ khám phá cách truy cập chia sẻ Samba từ Windows 10.
Windows 10 - Dòng lệnh
Việc gắn chia sẻ Samba từ dòng lệnh Windows chỉ yêu cầu một lệnh duy nhất:
- net use drive_letter \\your_samba_hostname_or_server_ip\share
Thay thế các biến từ chia sẻ của user david và đặt ký tự ổ đĩa thành X:
::
- net use X: \\samba.example.com\david
Khi lệnh này được nhập, bạn sẽ được yêu cầu nhập tên user và password của david . Sau khi nhập những điều này, bạn sẽ nhận được xác nhận chia sẻ đã được mount thành công:
OutputEnter the user name for 'samba.example.com': david Enter the password for samba.example.com: The command completed successfully.
Như vậy, bạn có thể duyệt qua phần chia sẻ Samba trong File Explorer và thao tác các file và folder như thể chúng ở trên máy tính của bạn.
Phần tiếp theo sẽ xem xét việc sử dụng các công cụ GUI của Windows để truy cập chia sẻ Samba.
Windows 10 - Máy tính để bàn
Windows 10 cũng có khả năng kết nối root với một chia sẻ Samba. Các bước sau sẽ kết nối bạn với phần chia sẻ Samba của bạn và giữ nó làm dấu trang bằng Windows File Explorer. Bắt đầu các bước sau bằng cách mở File Explorer:
- Nhấp chuột phải vào PC này .
- Nhấp vào Thêm vị trí mạng và sau đó nhấp vào Tiếp theo trên trang tiếp theo.
- Nhấp vào Chọn một vị trí mạng tùy chỉnh .
- Nhấp vào Tiếp theo
- Nhập địa chỉ kiểu Windows của server Samba và tên chia sẻ. Windows sử dụng dạng URL Samba sau:
\\ your_samba_hostname_or_server_ip \ share \
. Trong hình ảnh ví dụ, tên server làsamba.example.com
và tên chia sẻ làdavid
:\\ samba.example.com \ david
. - Nhấp vào Tiếp theo .
- Nhập tên user và password cho user .
- Quyết định xem bạn có muốn Windows ghi nhớ password hay không.
- Bấm OK .
File Explorer bây giờ sẽ kết nối với phần chia sẻ Samba. Sau khi kết nối thành công, một vị trí mới sẽ được tạo trong This PC trong File Explorer:
Đến đây bạn sẽ có thể sử dụng folder này để quản lý các file và folder trong chia sẻ Samba như thể nó là một folder local .
Kết luận
Trong bài viết này, bạn đã tạo chia sẻ file trực tuyến đa nền tảng bằng server Samba. Bạn cũng đã truy cập những chia sẻ này từ Windows, Linux và macOS.
Chia sẻ Samba đã trở nên phổ biến đến mức nhiều ứng dụng có thể truy cập vào dữ liệu được lưu trữ trong đó. Các ứng dụng này có thể mở rộng chức năng và tính hữu ích của các chia sẻ Samba của bạn. Ví dụ: version di động của trình phát đa phương tiện VLC có thể kết nối và phát trực tuyến nhạc và video từ phần chia sẻ Samba của bạn. Để truy cập nó, hãy chọn mở MRL và sử dụng URL Samba chuẩn: smb:// username @ your_samba_hostname_or_server_ip / share
. Bạn cũng có thể sử dụng chia sẻ Samba làm đích cho các bản backup của bạn với tiện ích backup đa nền tảng BackupPC .
Ngoài việc hoạt động như một chia sẻ file đơn giản, Samba có thể hoạt động với Windows Active Directory với quyền là bộ điều khiển domain hoặc thành viên của domain . Tài liệu User Wiki Samba chứa thêm thông tin về cách thực hiện việc này.
Các tin liên quan
Cách tự động hóa triển khai Elixir-Phoenix với Distillery và edeliver trên Ubuntu 16.042018-05-03
Cách thiết lập khóa SSH trên Ubuntu 18.04
2018-04-27
Cách nâng cấp lên Ubuntu 18.04 Bionic Beaver
2018-04-26
Có gì mới trong Ubuntu 18.04 Bionic Beaver
2018-04-26
Cách cài đặt và cấu hình Ghost trên Ubuntu 16.04
2018-04-13
Cách lưu trữ một trang web với Caddy trên Ubuntu 16.04
2018-04-12
Cách thiết lập khóa SSH trên Ubuntu 16.04
2018-04-12
Cách đồng bộ hóa dữ liệu đã chuyển đổi từ MongoDB sang Elasticsearch với Transporter trên Ubuntu 16.04
2018-04-05
Cách triển khai trang web Jekyll bằng Git Hooks trên Ubuntu 16.04
2018-03-29
Cách chặn nỗ lực đăng nhập SSH không mong muốn với PyFilter trên Ubuntu 16.04
2018-03-27