Cara Sharing File dan Printer di Arch linux dengan Samba

Install samba dan service

Agar Linux kita bisa nge share file kita harus menginstal package samaba , samba bisa digunakan untuk linux ataupun windows. jadi kamu tetap bisa mengakses file sharing di linux menggunakan windows.

    1. Install Samba
      install package samba menggunakan terminal atau bisa menggunakan pamac-manager (launch > system> add/remove software)
      sudo pacman -S samba
      isntall samba service di arch linux
    2. Membuat configuration file
      samba memerlukan file configurasi yang harus diletakan /etc/samba/ dengan nama smb.conf sebagai dasar samba dalam mengatur file dan printer sharing. gunakan perintah dibwah ini  untuk membuat file configurasi secara default

      sudo cp /etc/samba/smb.conf.default /etc/samba/smb.conf

      Untuk opsi/parameter dari smb.conf secara lengkap bisa dilihat di official site samba  atau penjelasan dapat dilihat di sesi cara konfigurasi samba dibawah

    3. MengEnable samba service
      Agar samba service berjalan otomatis setiap kali komputer dinyalakan maka kita harus mengenable service menggunakan service manager (arch linux menggunakan Systemd bukan init.d)

      sudo systemctl enable smbd.service nmbd.service
    4. Menjalanjan samba service
      Sebelum menjalankan service pastikan port 139,455 tidak sedang dipakai service/aplikasi lain dan tidak diblock firewall. jalankan service samba dengan perintah dibawah ini

      sudo systemctl start smbd.service nmbd.service

      untuk melihat status service setelah dijalankan gunakan perintah

      sudo systemctl status smbd.service nmbd.service

      melihat samba service status setelah dijalankan

      pastikan status active (running) dan tidak ada error, jika ada error silakan masukan kode error pada google dan cari rujukan website/forum untuk mencari solusinya.

Install Samba Plugin

Samba plugin berguna agar kita bisa ngeshare folder melalui file manager supaya lebih mudah seperti pada saat kita melkukan file sharing menggunakan windows. setiap desktop environment mempunyai nama tersendiri utnuk file managernya , misalnya untuk file manager XFCE diberi nama thunar file manager.

Cari plugin untuk file manager yang kita gunakan dengan kata kunci “samba” pada pamac-manager , jika tidak ada pada tab repositories coba klik pada bagian AUR (contoh disini saya menggunakan thunar file manager)
cara mencari dan menginstall samba plugin untuk file manager

Opsi ini akan muncul di tab folder properties pada file manager  setelah kamu melakukan konfigurasi samba dan membuat userpath sambashare
opsi samba file sharing pada file manager setelah mengaktifkan usershare option

Membuat Usershare path

fitur ini hanya opsional dan diperlukan jika kamu menggunakan linux untuk single user (komputer biasa & bukan server) agar kita bisa sharing dengan mudah menggunakan file manager (install plugin samba terlebih dahulu untuk file manager yang kamu gunakan )

Usershare adalah fitur samba yang memungkinkan non root user (user biasa ) bisa membuat,mengubah dan menghapus share file /folder.  untuk dapat menggunakan opsi usershare kamu harus membuat folder yang akan dijadikan usershare path.

  1. Buat folder untuk usershare path 
    untuk contoh nama folder untuk usershare path adalah “usershare”

    sudo mkdir -p /var/lib/samba/usershare
  2. Buat group sambashare
    sudo groupadd -r sambashare
  3. Merubah owner folder samba share ke root dan group sambashare
    sudo chown root:sambashare /var/lib/samba/usershare
  4. Merubah permision folder shambashare agar user di dalam grup sambashare bisa membaca,mennulis dan mengEksekusi
    sudo chmod 1770 /var/lib/samba/usershare
  5. Masukan User ke group sambashare
    kamu harus memasukan user ke sambashare group agar dapat menggunakan menu sharing dari file manager tanpa mengakses root
    Jika di Linux mu mempunyai banyak user maka kamu harus memasukan user mana saja yang akan diperbolehkan menggunakan fasilitas sharing dengan file manager

    sudo gpasswd sambashare -a your_username
    
    +Ganti your_username dengan username yang akan diperbolehkan menggunakan fasilitas sharing dengan file manager(tanpa root access)

    Memasukan user ke sambashare hanya memberikan fitur “user bisa sharing tanpa root access” , jadi kamu harus tetap memasukan user linux mu kedalam users samba agar kamu dapat menggunakan fasilitas sharing.

    sudo pdbedit -a your_username
    
    
    +your username diganti dengan userlinux yang akan dimasukan ke users samba.
    + password boleh beda dengan password userLinux agar lebih aman, karena username dan password inilah yang akan digunakan untuk login ketika membuka sharing dari client
  6. Menambahkan parameter usershare
    Tambahkan parameter  berikut dibawah [global] pada file /etc/samba/smb.conf

      usershare path = /var/lib/samba/usershare
      usershare max shares = 100
      usershare allow guests = yes
      usershare owner only = yes
      case sensitive=no

    sehingga menjadi tampak seperti dibawah

    samba-conf-usershare

Mengatur Konfigurasi Sharing /etc/samba/smb.conf

Untuk bisa menggunakan file sharing pada linux kita harus melakukan konfigurasi terlebih dahulu,konfigurasi ini mempunyai logika yang sederhana

LOGIKA MUDAH :
*Kamu harus memasukan userLinux (user yang digunakan untuk login ke linux ) kedalam users samba  yang nantinya akan digunakan untuk login ketika kita membuka sharing dengan client (baik windows ataupun linux). jadi kamu harus membuat user linux dulu baru memasukan ke users samba jika kamu ingin membuat sharing dengan multiple account (misal nya pada server)
**Kamu harus menentukan bagaimana user melakukan sharing (batasan) opsi atau parameter menggunakan file /etc/samba/smb.conf , panduan lengkap silakan cek dokumentasi official samba

Mengatur Users Samba

Samba memerlukan akun userLinux yang telah didaftarkan ke users samba yang nantinya akan digunakan untuk mengakses file sharing dari client , untuk mengatur users samba dapat dilakukan dengan tool yang telah disediakan oleh samba dengan nama pdbedit , dengan pdbedit kamu bisa melakukan pengaturan penuh terhadap user samba.

jadi ingat user yang bisa didaftarkan/dimasukan ke users samba adalah user linux yang telah dibuat, jadi jika user belum ada maka buat dulu userLinux nya.

  1. Menambahkan userLinux ke users Samba
    sudo pdbedit -a your_username
    
    
    +your username diganti dengan userlinux yang akan dimasukan ke users samba.
    + password boleh beda dengan password userLinux agar lebih aman, karena username dan password inilah yang akan digunakan untuk login ketika membuka sharing dari client
  2. Menghapus users samba
    sudo pdbedit -x your_username
    
    +your_username diganti dengan username yang akan dihapus
  3. Menampilkan daftar users samba
    sudo pdbedit -L
  4. Menampilkan informasi users samba
    sudo pdbedit -r username
    
    +ganti username dengan user samba yang ingin dilihat
  5. Mengganti HomeDir Drive
    HomeDir Drive merupakan directory yang akan ditampilkan ketika kamu mengaktifkan fitur share home directory. Directory ini akan otomatis ke share tanpa melakukan apa-apa

    sudo pdbedit -D /path/to/dir your_username
    
    Contoh:
    sudo pdbedit -D /home/masarie/ShareDir  masarie
  6. Bahkan kamu bisa melakukan pengaturan lain seperti merubah home directory,merubah prifile path ,mengedit user dll kamu bisa menampilkan opsi yang ada dengan perintah
    pdbedit --help

Mengaktifkan fitur share Home Directory

Fitur ini hanya opsional,kalau kamu gak mau pake fitur ini silakan coment pada special section [homes] dengan menambahkan # atau ;

......
#============================ Share Definitions ==============================
#[homes]
# comment = Home Directories
# browseable = no
# writable = no
# valid users = %S

# Un-comment the following and create the netlogon directory for Domain Logons
; [netlogon]
......

 

fitur share home directory digunakan ketika kita memberikan fitur file sharing ke user tertentu dan kita menentukan folder mana yang akan disharing secara otomatis tanpa user melakukan setingan apapun. fitur ini sangat membantu jika di dalam mesin linux server kita mempunyai banyak user.

Untuk mengaktifkan fitur share home directory pastikan kita telah mengaktifkan special section [homes] dengna menghilangkan tanda pagar # atau tanda semicolom ; pada file /etc/samba/smb.conf

......
#============================ Share Definitions ==============================
[homes]
 comment = Home Directories
 browseable = no
 writable = no
 valid users = %S

# Un-comment the following and create the netlogon directory for Domain Logons
; [netlogon]
......

Alangkah baiknya admin menentukan share home directory pada directory yang dimiliki oleh user tersebut (owner) agar user tersebut memiliki kontrol penuh atas directory nya. biasanya berada di home directory dari user linux tersebut .

CONTOH:
User linux deni mempunyai home directory /home/deni .
Jika admin ingin mengaktifkan share home directory pada user deni maka admin harus membuat directory di teritorial user deni (dalam hal ini adalah /home/deni , karena setiap user linux mempunyai kendali penuh atas homedirectory linux -nya) .
Maka buatlah subdir di home directory milik deni misalnya /home/deni/share
Langkah selanjutnya silakan masukan userlinux Deni ke users samba dengan pdbedit dan ubah home dir drive dengan pdbedit pula seperti penjelasan diatas.

Pengetahuan dasar  /etc/samba/smb.conf

Dokumentasi lengkap dari opsi dan semua pengaturan yang bisa dilakukan dengan memodifikasi file /etc/samba/smb.conf ada di website official samba

Disini saya jelaskan poin penting aturan memodifikasi file smb.conf

  1. Tulisan (opsi,parameter,string)setelah tanda # dan ;  akan dianggap komentar dan tidak dieksekusi
  2. Samba mempunyai 3 special section yang tidak bisa dirubah nama section nya :
    [global]  –> section ini untuk melakukan konfigurasi global dari samba
    [homes]  –> fitur ini untuk mengaktifkan /mengatur share home directory user samba
    [printer]  –> section ini berguna untuk mengatur sharing printer
  3. di file /etc/samba/smb.conf.default diberikan contoh kasus dan bagaimana menuliskan nya di smb.conf
  4. Setiap kamu melakukan perubahan di file ini kamu harus merestart service smbd dan nmbd agar perubahan pada file smb.conf diterapkan pada samba yang berjalan.
    sudo systemctl restart smbd.service nmbd.service

Konfigurasi samba versi pendek 

tutorial diatas memberikan penjelasan secara terperinci,tutorial berikut cocok untuk yang suka instan (hanya untuk single user ,PC dan laptop bukan server)

  1. Install samba dan plugin (untuk plugin sesuaikan dengan file managermu)
    sudo pacman -S samba

    Untuk plugin silakan cari menggunakan pamac-manager (Launch >system>add/remove software)

  2. Aktifkan usershare path (biar bisa share lewat file manager)
    sudo mkdir -p /var/lib/samba/usershare
    sudo groupadd -r sambashare
    sudo chown root:sambashare /var/lib/samba/usershare
    sudo chmod 1770 /var/lib/samba/usershare
    sudo gpasswd sambashare -a username_mu
    sudo pdbedit -a username_mu
    
  3. Atur smb.conf
    sudo cp /etc/samba/smb.conf.default /etc/samba/smb.conf

    Edit file /etc/samba/smb.conf dan ubah bagian [global]  menjadi seperti berikut

    [global]
      usershare path = /var/lib/samba/usershare
      usershare max shares = 100
      usershare allow guests = yes
      usershare owner only = yes
      case sensitive=no
  4. Atur service samba
    sudo systemctl enable smbd.service nmbd.service
    sudo systemctl start smbd.service nmbd.service
  5. Menggunakan file sharing
    Setelah plugin terinstall dan smua telah dilakukan maka buka  file manager > klik kanan pada folder (folder dg owner user mu sendiri)>pilih properies > pada bagian tab sharing silakan atur!!
    cara share folder di linux dengan samba dan plugin file manager

Mengakses linux sharing dari windows

Linux sharing hanya dapat diakses oleh sistem operasi yang mempunyai samba protocol minimal versi 2 , dengan begitu windwos XP(samba versi 1) tidak bisa mengakses linux file sharing

untuk mengakses file sharing bisa dengan memanggil ip atau computername (harus berada di workgroup yang sama)

\\192.168.41.12

atau 

\\sparkfly

kamu bisa menuliskan alamat sharing tersebut di start> run atau di kolom search pada menu start bahkan kamu bisa menuliskan nya di address bar pada windows explorer

membuka fiile sharing linux dari windows dengan mengetikan di address bar\

Atau lewat searh box di start menu 😀

membuka fiile sharing linux dari windows dengan mengetikan di searchbox start menu

Setelah Berhasil Login !!
membuka fiile sharing linux dari windows

Mengakses windows file sharing dari Linux

Untuk bisa mengakses file sharing milik windows dari komputer linux yang kamu gunakan pastikan kamu sudah menginstall smbclient

sudo pacman -S smbclient

untuk mengakses dari file manager cukup kita ketikan ip komputer windows yang ingin kita buka sharing nya.

smb://ip_share_dari_windows_atau_Linux

Contoh :

smb://192.168.200.11

cara membuka windows file sharing dari linux

 

Kurang jelas? Silakan Bertanya