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 :


