Sumber artikel : Otomatisasi Mapping Folder Server Windows/Samba pada openSUSE
Script ini merupakan script sederhana untuk mengurangi kemungkinan kesalahan ketik dan proses yang berulang. Logika algoritmanya sederhana, yaitu :
- Meminta masukan variable untuk nama share folder, nama folder mount dan credential (user name + password)
- Melakukan penggantian nama script agar bisa digunakan berulang kali untuk share yang berbeda
- Melakukan penggantian keterangan dari file service
- Melakukan penggantian perintah mount -t cifs
- Memasukannya ke folder /etc/init.d
- Memasukkan perintah ke dalam service, menjalankannya secara otomatis saat booting dan mengaktifkannya sekarang juga
BEWARE : Password ditulis secara mentah-mentah pada file service. Silakan batasi akses file tersebut atau baca dokumentasi mengenai file credential agar user name dan password bisa disimpan difile terpisah yang dilindungi hak aksesnya.
Berikut adalah cara penggunaannya :
- Download file samba-map-auto.tar.gz. Tempatkan disalah satu folder (dalam contoh saya : /home/vavai)
- Buka konsole / terminal (ALT+F2, konsole atau ALT+F2, gnome-terminal)
- Masuk sebagai root, masuk ke folder hasil download (jangan lupa sesuaikan namanya), ekstrak dan jalankan.
su cd /home/vavai tar -zxvf samba-map-auto.tar.gz cd samba-map-auto chmod +x automount.sh ./automount.sh
Berikut adalah contoh penggunaannya (Klik untuk memperbesar gambar).
Isi script file :
automount.sh
#!/bin/sh #Hapus Layar clear echo "#############################################################################" echo "# Samba-auto-mount ver 2009.05.001 untuk openSUSE (Testing pada ver 11.1) #" echo "# Skrip untuk otomatisasi mapping folder windows/samba server pada openSUSE #" echo "# Masim "Vavai" Sugianto - vavai@vavai.com - http://www.vavai.com/blog/v2 #" echo "#############################################################################" #Default Configuration startdirectory="/tmp/samba-auto/" nama_file_old="mount-smb" echo "" echo -e "\n###############VARIABEL MAPPING###############" echo -n "1. Masukkan alamat IP / Nama Server : " read ip_server echo -n "2. Masukkan nama share folder : " read nama_share echo -n "3. Masukkan alamat folder untuk mount (contoh : /mnt/data-vavai) : " read folder_mount echo -n "4. Masukkan nama user samba : " read nama_user echo -n "5. Masukkan password samba (akan ditulis dalam bentuk plaintext) : " read passwd_user echo -n "6. Masukkan nama file service (bebas, contoh : mount-smb) : " read nama_file echo -e "\n###############PROSES KONFIGURASI###############" echo "Salin file konfigurasi ke folder temporary" mkdir -p $startdirectory rsync -av --delete . $startdirectory echo -e "\nUbah nama file................................................OK" regexp1="s/$nama_file_old/$nama_file/2" find $startdirectory -name "*$nama_file_old*" | awk '{print("mv "$1" "$1)}' | sed "$regexp1" | /bin/sh echo -e "\nUbah konfigurasi..............................................OK" regexp2="s/$nama_file_old/$nama_file/g" sed -e $regexp2 $startdirectory$nama_file > /tmp/temp-samba-auto.tmp mv /tmp/temp-samba-auto.tmp $startdirectory$nama_file # echo "Modified: " $startdirectory$nama_file # done echo -e "\nInsert perintah mount.........................................OK" echo "mount -t cifs //$ip_server/$nama_share $folder_mount -o username=$nama_user,password=$passwd_user,iocharset=utf8,file_mode=0777,dir_mode=0777" >> $startdirectory/$nama_file #Buat sebagai executable file & Pindahkan ke folder /etc/init.d chmod +x $startdirectory$nama_file cp $startdirectory$nama_file /etc/init.d/ echo -e "\nBuat folder mount.............................................OK" mkdir -p "$folder_mount" chmod 777 -R "$folder_mount" echo -e "\nMasukkan & Jalankan service...................................OK" chkconfig --add $nama_file chkconfig $nama_file on service $nama_file start echo -e "\nDisplay isi file mount........................................OK" find $folder_mount echo -e "\nProses mount data telah selesai...............................OK"
Script smb-mount.sh, masih utuh belum ada masukan perintah mount
#!/bin/sh # # /etc/init.d/mount-smb # ### BEGIN INIT INFO # Provides: mount-smb # Required-Start: $network # X-UnitedLinux-Should-Start: # Required-Stop: # X-UnitedLinux-Should-Stop: # Default-Start: 3 5 # Default-Stop: 0 1 2 6 # Short-Description: Custom Skrip untuk Mount Samba # Description: Custom Skrip untuk Mount Samba ### END INIT INFO
Artikel terkait :