Belajar Dasar-Dasar Linux 2

6. User Permissions File dan Direktori di Linux

Karena bekerja dengan banyak user, maka hak akses file dan direktori masing-masing user juga menjadi sangat vital. Seringkali user tertentu tidak ingin direktori dan file-filenya tidak ingin dilihat oleh orang lain. Dan bisa juga direktori atau file-file tertentu saja yang dibolehkan untuk dilihat orang lain. Atau bisa juga hanya group user tersebut yang boleh melihatnya tetapi group lain tidak boleh melihatnya. Itulah gunanya user permission di Linux. Kita bisa menentukan user atau group siapa saja yang boleh melihat file atau direktori tertentu.

Coba Anda melakukan perintah ls -l, di sebelah paling kiri akan muncul user permission dari file dan direktori yang ditampilkan tersebut. Formatnya adalah seperti ini drwxrwxrwx yang terdiri dari 10 digit. Dari format tersebut, dibagi ke dalam 4 segmen, yaitu:
d rwx rwx rwx

  • Segmen 1 menandakan tipenya, apakah berupa direktori, regular file atau link file. Kodenya adalah:
    • d = direktori
    • – = regular file
    • l = link file
  • Segmen 2 menandakan permission untuk pemilik (owner)
  • Segmen 3 menandakan permission untuk group
  • Segmen 4 menandakan permission selain pemilik dan group (others)

Untuk segmen 2, 3 dan 4 selalu berformat rwx, artinya:

  • r = read, akses untuk melakukan pembacaan file
  • w = write, akses untuk melakukan penulisan, pengeditan (rename, edit), penghapusan file atau direktori.
  • x = execute, akses untuk menjalankan suatu file atau masuk ke suatu direktori.

Jadi jika format permissionnya adalah seperti ini:

  1. drwxrwxr–maka hal ini berarti bahwa:
    • Direktori tersebut (karena diawali huruf d yang berarti direktori) dapat dibaca, diedit oleh pemiliknya, dan pemilik tersebut juga dapat masuk ke direktori tersebut.
    • Direktori tersebut dapat dibaca, diedit oleh groupnya, dan groupnya dapat masuk ke direktori tersebut.
    • Direktori ini hanya dapat dilihat oleh user atau group lain, tidak bisa melakukan editing (rename dan hapus), dan tidak bisa masuk ke direktori tersebut.
  2. -rw-r—–
    • File tersebut (karena diawali tanda – yang berarti file biasa) dapat dibaca, diedit oleh pemiliknya, tetapi tidak bisa dieksekusi/dijalankan (layaknya .exe di windows), karena tidak ada permission untuk execute (x)
    • File tersebut hanya dapat dibaca oleh groupnya, tanpa dapat diedit/dihapus dan tidak dapat dieksekusi
    • File ini tidak dapat dibaca, diedit/dihapus maupun dijalankan oleh user dan group yang lain.

7. Memberikan Permission Kepada File dan Direktori

Kita sudah mengetahui permission apa saja yang ada di file dan direktori di Linux. Tetapi Kita belum mengetahui bagaimana cara memberikan permission kepada file atau direktori tersebut. Di Linux, untuk memberikan permission dapat dilakukan dengan perintah chmod permission FileAtauDirektori.

Option untuk perintah chmod ini dapat dilakukan dengan 2 cara, yaitu menggunakan symbol huruf dan menggunakan symbol angka. Untuk menggunakan symbol huruf, maka huruf yang digunakan terdiri dari:

  • u = owner
  • g = group
  • o = others
  • a = all
  • + = menambahkan permission
  • – = mengurangi permission
  • r = permission untuk membaca (read)
  • w = permission untuk menulis (write)
  • x = permission untuk menjalankan atau masuk ke direktori (execute)

Untuk memberikan akses tulis kepada group, maka option yang harus kita berikan adalah g+w.
Untuk menghilangkan akses baca kepada user atau group lainnya, maka option yang harus kita berikan adalah o-r.

Selain dengan symbol huruf, Kita juga dapat menggunakan symbol angka. Symbol angka ini harus diberikan sekaligus untuk owner, group dan others. Jadi, kalau di symbol huruf kita bisa memberikan permission untuk owner, group atau others saja, maka di symbol angka ini harus diberikan sekaligus. Karena itu, symbol angka ini selalu berisi 3 digit, dimana digit pertama akan berisi mengenai permission owner, digit kedua untuk permission group dan digit ketiga untuk permission others. Symbol angkanya adalah:

  • 4 = untuk permission baca (read)
  • 2 = untuk permission tulis (write)
  • 1 = untuk permission menjalankan (execute)

Jadi, jika kita ingin memberikan permission seperti ini kepada user

  • drw-r-xr—maka perintahnya bila menggunakan symbol huruf adalah:
    $ chmod u+rw,u-x,g+r,g-wx,o+r,o-wx file

    bila menggunakan symbol angka, maka perintahnya:

    $ chmod 654 file

    Angka 6 berarti akses baca dan tulis, karena akses baca adalah 4 dan tulis adalah 2, maka jumlahnya adalah 6. Demikian juga untuk permission group, angka 5 berasal dari permission baca yang bernilai 4 dan permission menjalankan yang bernilai 1. Karena user atau group lainnya hanya boleh membaca saja, maka diberikan nilai 4.

  • Contoh lain lagi, misalkan permission awalnya adalah seperti ini drwxrw—- dan kita ingin menggantinya menjadi seperti ini drw-r-x—, maka perintahnya:
    $ chmod u-x, g-w,g+x file

    atau

    $ chmod 654 file

Untuk mengganti pemilik dari suatu file atau direktori, gunakan perintah berikut: chown PemilikBaru NamaFileAtauDirektori

Untuk mengganti group dari suatu file atau direktori, gunakan perintah beikut: chgrp GroupBaru NamaFileAtauDirektor

8. Contoh Penggunaan User Permission

Untuk lebih jelasnya, Kita akan langsung masuk ke contoh kasus saja.

  1. Kita akan membuat 1 group dengan nama IT Dan juga membuatkan user dengan nama-nama: Benny, Budi, dan Iwan. Dan ingat jangan lupa untuk memberikan password. Perintahnya:
    1. # groupadd it
    2. # useradd benny
    3. # passwd benny
    4. # useradd budi
    5. # passwd budi
    6. # useradd iwan
    7. # passwd iwan
  2. Kecuali Iwan, user-user tersebut adalah anggota dari group IT. Perintahnya:
    1. # usermod -G it benny
    2. # usermod -G it budi
  3. Selanjutnya adalah membuatkan direktori untuk group dimana setiap anggota group it dapat membaca, menulis dan mengeksekusi direktori tersebut, tetapi tidak untuk user atau group lainnya. Dan setiap file atau direktori yang berada di dalamnya harus mempunyai hak akses yang sama dengan direktori tersebut, yaitu dapat membaca, menulis dan mengeksekusi direktori tersebut.
    Perintahnya:

    • # mkdir /home/it
    • # chgrp it /home/it
    • # chmod g+rwxs, o-rwx /home/it (atau ditulis # chmod 2770 /home/it)
      Perhatikan ternyata untuk permissionnya ada tambahan hurus ‘s’ dan dalam symbol angka menjadi 4 digit. Huruf ‘s’ (atau angka 4 di symbol angka) berarti special permission. Efek dari special permission ini adalah, bila direktori tersebut sudah kita set groupnya menjadi it, maka setiap file atau direktori yang berada di dalamnya yang dibuat setelah permission dibuat, maka groupnya pun akan mengikuti direktori utamanya.Jika menggunakan symbol angka, maka special permission ini diletakan pada digit pertama. Berarti digit kedua adalah untuk permission owner, digit ketiga untuk permission group dan digit keempat untuk permission others. Bila tidak ada special permission, maka Kita dapat menuliskan dalam format 3 digit. Untuk symbol angka, berikut adalah artinya:

      • 4 = u+s
      • 2 = g+s
      • 1 = sticky bit (artinya yang bisa menghapusnya hanya owner, untuk symbol huruf ditandai dengan huruf ‘t’).
    • Sekarang cobalah untuk login dengan user benny, dan cobalah untuk membuat file apa saja di direktori /home/it.
    • Lalu cobalah login dengan user budi, editlah file tersebut. Ternyata user budi dapat mengedit file tersebut. Hal ini karena group file tersebut adalah it, dimana akses group tersebut adalah read, write dan execute.
    • Sekarang coba login dengan user iwan, dan coba edit file yang dibuat oleh user benny tadi. Ternyata tidak bisa. Bahkan user iwan tidak bisa masuk ke direktori /home/it sama sekali. Hal ini terjadi, karena user iwan bukan merupakan anggota group it.

9. Menggunakan VI Teks Editor

Ada banyak teks editor yang tersedia di Linux, mulai dari yang berbasis CLI hingga yang berbasis GUI. Beberapa teks editor tersebut adalah

  1. vi
  2. emacs
  3. joe (bagi Anda yang ingin bernostalgia dengan wordstar/ws, joe ini mirip sekali dengannya)
  4. pico
  5. dll

Vi teks editor ini terdiri dari 2 macam mode, yaitu editing dan command. Saat berada dalam mode editing, Kita bisa mengedit file yang kita buat, seperti menambah, menghapus atau mengedit teks.

Saat berada dalam mode command, artinya kita bisa memberikan perintah-perintah kepada vi. Perintah-perintah yang dimaksud itu seperti perintah keluar, simpan, copy, delete, dsb. Command ini juga bisa dalam bentuk visual. Saat berada dalam mode visual, kita bisa melakukan blok terhadap baris-baris tertentu dan melakukan copy terhadap baris tersebut dan sebagainya.

Untuk masuk ke dalam mode editing, kita dapat menekan tombol i. Untuk berpindah mode, dari mode editing ke mode command, Kita dapat menekan tombol ESC.

  • Membuat dan membuka file
    Untuk membuat atau membuka file, dapat dilakukan dengan perintah:
    $ vi nama_file
    Jika nama file yang diberikan adalah nama file baru (filenya belum ada), maka artinya kita akan membuat file baru. Tetapi jika nama filenya sudah ada, artinya kita akan membuka file tersebut.Berikut beberapa perintah lainnya dalam membuka file:

    • $ vi +n nama_file
      Untuk membuka file langsung pada nomor baris n
    • $ vi + nama_file
      Untuk membuka file langsung pada baris terakhir
    • $ vi +/kata nama_file
      Untuk membuka file langsung pada kata pertama yang ditemukan
    • $ vi -R nama_file
      Membuka file dalam modus baca, dan tidak untuk diedit. Perintahnya juga bisa dilakukan dengan perintah $ view nama_file
  • Keluar dan menyimpan
    • Untuk keluar dari vi, tekan tombol ESC kemudian dilanjutkan dengan menekan tombol :q dan diakhiri dengan ENTER
    • Bila file telah sempat diedit, dan Kita ingin keluar tanpa menyimpannya, maka yang perlu Anda lakukan adalah tekan ESC, dilanjutkan dengan tombol :q! dan diakhiri dengan ENTER
    • Untuk menyimpan dan keluar dari vi, tekan tombol ESC dan dilanjutkan dengan menekan tombol :wq
    • Untuk menyimpan tanpa keluar, tekan tombol ESC dan dilanjutkan dengan menekan tombol :x
  • Perintah-perintah pengeditan
    1. Menggerakkan kursor
      • 0 = Pindah ke awal baris
      • $ = Pindah ke akhir baris
      • w = Pindah ke kata selanjutnya
      • b = Pindah kembali ke kata sebelumnya
      • a = Untuk menyisipkan karakter
      • c = untuk memotong kata atau baris
      • p = Untuk menyalin kata atau kalimat yang terpotong (paste)
      • yy = Untuk menyalin 1 baris.
      • 2yy = Untuk menyalin 2 baris.
      • dd = Untuk menghapus baris.
      • 2dd = Untuk menghapus 2 baris

      Untuk melakukan copy+paste secara visual, dapat dilakukan dengan cara menekan tombol v, blok baris yang akan dicopy, kemudian tekan y. Letakkan kursor ke tempat tujuan dan tekan p.

    2. Mengedit teks
      • cw = Menghapus satu kata di depan kursor
      • c2b = menghapus 2 kata sebelumnya
      • c$ = menghapus satu baris di depan kursor
      • c0 = menghapus satu kata di belakang kursor
      • ~ = mengubah huruf kecil menjadi huruf besar
      • u = Undo, melakukan pembatalan terhadap editing terakhir.
      • A = menyisipkan karakter di akhir baris
      • I = menyisipkan karakter di awal baris
      • o = membuka baris kosong di bawah kursor
      • O = membuka baris kosong di atas kursor
      • s = menghapus karakter pada kursor dan menukar teks
      • S = menghapus baris dan menukar teks
      • R = menempati karakter, kata, kalimat ke dalam baris yang telah dibuat.
      • J = menggabungkan dua baris.
    3. Menukar teks
      Format umum perintah menukar teks ini adalah:
      :<jangkauan>s/<kata yang akan diganti>/<kata pengganti>/optionOption yang dapat diberikan adalah
      g = mencari kata secara global
      i = mengabaikan huruf besar/huruf kecilContoh:
      Kita akan mengganti kata “baris” menjadi kata “line”, maka perintahnya:

      :1,$s/baris/line/g
    4. Mencari kata
      • /cari = mencari kata pertama di depan kursor yang sama dengan cari
      • ?cari = mencari kata pertama di belakang yang sama dengan cari
      • n = untuk mencari kata cari berikutnya tetapi ke arah sebelumnya
      • N = untuk mencari kata cari berikutnya tetapi ke arah setelahnya.
      • 10. Instalasi Program di LinuxInstalasi di Linux terdiri dari 2 macam, yaitu instalasi dari repositori dan instalasi program tambahan (non repositori). Instalasi dari repositori artinya Kita akan menginstall program-program tambahan yang sudah disediakan oleh distro Linux tersebut, seperti dari CD/DVD atau dari server (dan mirrornya) distro itu sendiri.Instalasi program tambahan (non repositori), artinya Kita akan menginstall program-program lain yang tidak terdapat di distro Linux tersebut atau bisa juga kita akan menginstall program-program yang berada di distro tersebut, tetapi mempunyai versi yang berbeda.
        • Installasi Dari Repositori
          Untuk installasi dari repositori, tergantung dari distro yang kita gunakan, karena masing-masing distro mempunyai perintahnya masing-masing. Berikut beberapa perintah yang ada di beberapa distro:

          1. Mandriva = urpmi
          2. Red Hat & Fedor = yum
          3. OpenSUSE & SUSE = yast2
          4. Ubuntu, Kubuntu, Edubuntu, Xubuntu = apt-get
          5. PCLinuxOS = apt-get

          Contoh:

          • Instalasi tree di Mandriva, urpmi tree
          • Instalasi webmin di PCLinuxOS, apt-get install webmin
        • Installasi Program Tambahan (non repostori)
          Ada kalanya Kita tidak menemukan aplikasi yang kita inginkan di distro Linux yang kita gunakan, atau aplikasi yang kita inginkan memang ada, tetapi kita membutuhkan versi yang lebih tinggi. Di saat seperti itulah Kita perlu menginstall program tambahan (non repositori) tersebut. Installasi program tambahan ini pun tergantung dari turunan distro yang kita gunakan.Secara umum, distro Linux yang ada saat ini dapat dibagi ke dalam 3 kelompok, yaitu:

          1. Turunan Red Hat (mempunyai installer yang berbentuk .rpm)
          2. Turunan Debian (mempunyai installer yang berbentuk .deb)
          3. Turunan Slackware (mempunyai installer yang berbentuk .tgz)

          Dalam pembahasan ini, Kita akan menggunakan installer yang berbentuk .rpm. Perintah untuk menginstall paket .rpm adalah rpm -ivh NamaPaket. Parameter i berarti Kita akan melakukan installasi.

          Parameter v berarti semua progress akan ditampilkan ke layar.

          Parameter h berarti tampilan progressnya dalam bentuk bar, sehingga akan kelihatan persentasenya.

          Untuk mengupgrade paket .rpm, gunakan parameter U untuk menggantikan parameter i. Untuk menghapus aplikasi, gunakan parametera e.

          Penjelasan dan contoh yang lebih lanjut mengenai installasi paket .rpm ini akan dijelaskan dalam thread lanjutan setelah thread ini. Di thread lanjutan nanti, akan dijelaskan cara install paket .rpm yang lebih lengkap, termasuk installasi yang membutuhkan dependensi, dan installasi melalui source code.

Leave a Reply

Fill in your details below or click an icon to log in:

WordPress.com Logo

You are commenting using your WordPress.com account. Log Out / Change )

Twitter picture

You are commenting using your Twitter account. Log Out / Change )

Facebook photo

You are commenting using your Facebook account. Log Out / Change )

Google+ photo

You are commenting using your Google+ account. Log Out / Change )

Connecting to %s