Thứ sáu, 11/05/2018 | 00:00 GMT+7

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:

Output
nmbd.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
Output
1: 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 :

/etc/samba/smb.conf
[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ụng samba_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ỗi samba.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ột standalone 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òng interfaces . 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ác interfaces đượ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ổng 445 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] :

/etc/samba/smb.conf
        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 passdbauth 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:

Output
Load 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 , janelucy . 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 , janelucy .

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ệnh adduser 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 group sambashare , 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 , janelucy ).

Để 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 :

/etc/samba/smb.conf
... [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ệu valid 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:

/etc/samba/smb.conf
[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 , janelucy . Chỉ thay đổi chia sẻ [name] , pathvalid 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:

/etc/samba/smb.conf
... [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:

/etc/samba/smb.conf
[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:

Output
Load 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:

Output
smbclient: 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:

  1. Chọn Mạng từ danh sách Địa điểm .
  2. Nhấp vào Thêm folder mạng . Hình ảnh hiển thị Mạng được đánh dấu trong danh sách Địa điểm
  3. Chọn tùy chọn ổ đĩa mạng Microsoft Windows .
  4. Nhấp vào Tiếp theo
  5. 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 .
  6. Nhấp vào Lưu & Kết nối .
  7. Nhập tên user và password cho user mà bạn sẽ truy cập vào phần chia sẻ Samba.
  8. Bấm OK .

Dolphin bây giờ sẽ kết nối và mở phần chia sẻ Samba sẽ giống như sau:

Hình ảnh hiển thị Dolphin được kết nối với một chia sẻ Samba

Đế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 , rmmkdir ; 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:

  1. Mở Finder và nhấp vào Go trong thanh menu.
  2. Nhấp vào Kết nối với Server từ danh sách các tùy chọn.
  3. 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 server samba.example.com .
  4. Đánh dấu phần chia sẻ Samba bằng cách nhấp vào nút có biểu tượng + .
  5. Nhấp vào Kết nối Hình ảnh hiển thị chi tiết kết nối chia sẻ samba
  6. Chọn người dùng đã đăng ký
  7. Nhập tên user và password cho user chia sẻ Samba.
  8. Quyết định xem bạn có muốn macOS lưu password hay không.
  9. 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:

Hình ảnh hiển thị nội dung của chia sẻ được kết nối

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:

Output
Enter 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:

  1. Nhấp chuột phải vào PC này .
  2. 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. Hình ảnh hiển thị menu ngữ cảnh cho PC này
  3. Nhấp vào Chọn một vị trí mạng tùy chỉnh .
  4. Nhấp vào Tiếp theo
  5. 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 .
  6. Nhấp vào Tiếp theo .
  7. Nhập tên user và password cho user .
  8. Quyết định xem bạn có muốn Windows ghi nhớ password hay không.
  9. 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:

Hình ảnh hiển thị chia sẻ Samba trong PC này

Đế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.


Tags:

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.04
2018-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