Manajemen file dan hak akses file merupakan hal penting dalam sistem operasi Linux. File system mengatur dan mengorganisir file pada disk atau partisi dengan format tertentu, sedangkan hak akses file mendefinisikan izin baca, tulis dan eksekusi untuk pemilik, grup dan pengguna lain. Perintah-perintah dasar Linux digunakan untuk memanipulasi file dan folder seperti menyalin, memindahkan, menghapus, mengkompresi, mencari, dan mengatur
1. A. Manajemen File
Manajemen File adalah metode dan struktur data yang digunakan sistem operasi untuk
mengatur dan mengorganisir ?le pada disk atau partisi. File system juga dapat diartikan sebagai
partisi atau disk yang digunakan untuk menyimpan file-file dalam cara tertentu. Cara memberi
suatu file system ke dalam disk atau partisi dengan cara melakukan Format.
untuk mempelajari perintah Linux dasar untuk memanipulasi file dan
direktori, antara lain:
Daftar konten direktori
$ ls
text1 text2 text3 text4 text5
$ ls /home/user/praktikum
text1 text2 text3 text4 text5
$ pwd
/home/user/praktikum
Menampilkan daftar direktori dengan format yang panjang Dengan tambahan -l(long) dan -a
(all) untuk menampilkan daftar direktori dengan format panjang.
$ ls –al
total 24
drwxrwxr-x. 2 user group 4096 2009-08-11 21:21 .
drwx------. 35 user group 4096 2009-08-12 10:55 ..
-rw-rw-r--. 1 ian ian 24 2009-08-11 14:02 text1
-rw-rw-r--. 1 ian ian 25 2009-08-11 14:27 text2
Pada kolom pertama merupakan penjelasan jenis file dan perizinan. Kolom kedua
menunjukkan jumlah link (entri direktori yang merujuk ke file), yang ketiga menunjukkan
pemilik file, dan yang keempat menunjukkan kelompok pemilik file. Kolom lain menunjukkan
ukuran file dalam byte, tanggal dan waktu modifikasi terakhir, dan nama file.
Karakter pertama menunjukkan :
d = directory
- = regular file
l = symbolic link
s = Unix domain socket
p = named pipe
c = character device file
b = block device file
9 karakter berikutnya menyatakan perizinan. Dibagi menjadi 3 grup, tiap grup 3 karakter
mewakili: read, write, dan execute. Karakter tersebut mudah untuk diingat, diantaranya :
r = read permission
2. w = write permission
x = execute permission
- = no permission
Menyusun File
ls -lt akan mengurutkan daftar file berdasarkan waktu (dari yang terbaru hingga terlama).
ls -lS untuk mengurutkan berdasarkan ukuran file bisa menggunakan (dari yang terbesar
hingga yang terkecil). Dengan tambahan -r dapat membalikkan urutan. Misal, dengan ls -lrt
berarti mengurutkan daftar file dari yang terlama hingga yang terbaru.
ls menampilkan dafar file yang diurutkan secara alfabet. Kita dapat menambahkan pilihan untuk
mengurutkannya berdasarkan waktu atau berdasarkan ukuran file.
Menyalin, memindahkan, atau menghapus file dan direktori
cp Digunakan untuk menyalin satu atau banyak file atau direktori.
$ cp text1 text1.new
mv Digunakan untuk memindahkan atau memberi nama baru pada satu atau banyak file atau
direktori.
$ mv text1.new backup/
Ada beberapa pilihan yang berguna untuk perintah cp dan mv:
-f atau --force Memungkinkan cp untuk mencoba menghapus file yang sudah ada walaupun file
tidak dapat ditulis.
-i atau --interactive Akan meminta konfirmasi sebelum mencoba untuk mengganti file yang ada.
-b atau --backup Akan membuat cadangan dari file yang akan diganti
rm Digunakan untuk menghapus satu atau banyak file atau direktori.
$ rm d1/d2 text1
$ rmdir -p d1/d2
Menghapus file atau direktori secara rekursif Jika terdapat banyak file atau direktori yang ingin
kita hapus, kita bisa menggunakan perintah rm dengan tambahan -r (atau -R atau --recursive)
$ rm -r d
3. Manipulasi banyak file
Membuat banyak direktori
$ mkdir dir1 dir2
Jika ingin membuat subdirektori bersarang, maka tinggal tambahkan -p setelah perintah mkdir
$ mkdir -p d1/d2/d3
Jika pilihan -p tidak ditambahkan, maka akan terjadi error mkdir: cannot create directory
`d1/d2/d3': No such file or directory
Menggunakan perintah find untuk mencari berdasarkan file
Perintah find digunakan untuk mencari file atau direktori, bisa dicari berdasarkan nama, tipe,
atau waktu
$ find . -name “text”
Perintah diatas digunakan untuk mencari file di current directory dengan nama text. Untuk
pencarian berdasarkan tipe dan waktu
Kompresi dan dekompresi file menggunakan gzip dan bzip2
Dalam lingkungan linux, ada dua program yang populer untuk kompresi yaitu gzip dan bzip2.
Perintah gzip menggunakan algoritma Lempel-Ziv, sem entara bzip2 menggunakan algoritma
Burrows-Wheeler.
Kompresi dengan gzip
$ cp /etc/services .
$ ls -l
$ gzip services
$ ls -l
Lihat perbedaan ukuran file services sebelum dan sesudah di kompres.
Tambahkan -d untuk dekompresi.
$ gzip -d services.gz
Kompresi dengan bzip2
$ bzip2 services
gunakan perintah bunzip2 untuk dekompresi file bzip2
4. $ bunzip2 services.bz2
B. Linux File Permissions
Ada tiga jenis izin akses di Linux: read, write, dan execute. Izin ini didefinisikan
secara terpisah untuk pemilik file, kelompok dan semua pengguna lain.
Read. Pada file biasa, read berarti file dapat dibuka dan dibaca. Pada sebuah direktori,
read berarti Anda dapat melihat daftar isi direktori.
Write pada file biasa, ini berarti Anda dapat memodifikasi file, alias menulis data
baru ke file. Dalam kasus sebuah direktori, write berarti Anda dapat menambah,
menghapus, dan mengubah nama file dalam direktori. Ini berarti bahwa jika file
memiliki izin write, Anda diperbolehkan untuk memodifikasi isi file, tetapi Anda
diperbolehkan untuk mengubah nama atau menghapus file hanya jika hak akses
direktori file yang memungkinkan Anda untuk melakukannya.
Execute dalam kasus sebuah file biasa, ini berarti Anda dapat menjalankan file
sebagai program atau shell script. Pada sebuah direktori, execute (disebut juga "search bit")
memungkinkan Anda untuk mengakses file dalam direktori dan memasukkannya, dengan
perintah cd, misalnya.
Setiap file atau folder di system file memiliki tiga atribut yaitu
- Owner adalah id dari user pemilik file atau folder tersebut
- Group adalah gid dari grup dimana user pemilik file atau folder tersebut terdaftar
- Mode adalah sederetan angka 0 dan 1 untuk menyatakan flags akses terhadap suatu file atau
folder
Melihat hak Akses File
Kita dapat melihat akses dari file dengan melihat daftar direktori dengan mengetikan perintah
ls -l.
root@darkstar: ~# ls -l
total 16
drwx——– 2 root root 4096 Apr 17 17:23 Downloads/
drwxr-xr-x 3 root root 4096 Apr 12 16.44 Software/
drwxr-xr-x 3 root root 4096 Apr 12 15.46 VirtualBox VMs/
-rw- r–r– l root root
0 Apr 20 00.09 a.c
drwxr-xr-x 3 root root 4096 Apr 12 17.11 Source Code/
Kolom pertama, salah satu yang terlihat seperti sekelompok omong kosong, menunjukkan jenis
file dan perizinan.
Kolom kedua menunjukkan jumlah link (entri direktori yang merujuk ke file)
ketigamenunjukkan pemilik file, dan yang keempat menunjukkan kelompok pemilik file
Kolom lain menunjukkan ukuran file dalam byte, tanggal dan waktu modifikasi
5. terakhir, dan nama file.Karakter pertama menunjukkan :
d = directory
- = regular file
l = symbolic link
s = Unix domain socket
p = named pipe
c = character device file
b = block device file
9 karakter berikutnya menyatakan perizinan. Dibagi menjadi 3 grup, tiap grup 3
karakter mewakili: read, write, dan execute. Karakter tersebut mudah untuk diingat,
diantaranya :
r = read permission
w = write permission
x = execute permission
- = no permission
Mengatur Hak Akses
Mode Simbolik
Mode simbolik cukup mudah diingat. karena dapat menentukan hak akses untuk user (u),
group (g), others (o) dan untuk ketiganya (a). kemudian dapat menambahkan permission (+),
hapus permission (-), atau menghapus hak akses sebelumnya dan menambahkan yang baru (=).
berikutnya untuk permission read (r), perizinan write (w), dan untuk execute (x). Terakhir,
Anda akan memberitahu chmod, hak akses file mana yang ingin Anda ubah. Beberapa contoh
yang bisa Anda coba. Misalkan kita mempunyai file bernama contohfile, dan file memiliki izin
akses penuh untuk semua kelompok.
Mode Numerik
Mode lain dimana chmod bisa digunakan ialah dengan modus numerik. dalam modus numeric
ini permission file bukanlah huruf, melainkan tiga digit oktal.
4 = read (r)
2 = write (w)
1 = execute (x)
0 = no permission (-)
untuk menambahkan permission, kita tinggal menambahkan angka yang sesuai dengan angka
yang di atas. sebagai contoh, hak akses rwx maka 4+2+1 = 7, rx maka 4+1 = 5 dan rw maka 4+2
= 6. untuk pengaturan user, group, dan others, tinggal menomorkan tiga digit yang mewakili hak
akses kelompok.
Mode numerik mungkin tidak sesederhana mode simbolik, tetapi dengan mode
numerik, Anda dapat lebih cepat dan efisien mengatur hak akses file.
keterangan mode Numerik :
0=—
1 = –x
2 = -w3 = -wx
6. 4 = r–
5 = r-x
6 = rw7 = rwx
Mengubah kepemilikan file & direktori
Pemilik sebuah file atau direktori dapat diganti menjadi milik user yang lain. Untuk mengganti
digunakan perintah chown. Berikut adalah cara penulisannya :
chown option pemilik_baru nama_file/direktori
Untuk melihat kepemilikan suatu file dan group, gunakan perintah ls dengan option -l Contoh
output dari perintah tersebut
-rw-rw-rw- 1 azizah azizah 0 Jan 23 05:32 contohfile
Terlihat nama azizah yang pertama adalah pemilik file dan nama azizah yang kedua adalah
nama groupnya. Secara default nama group sama seperti nama pemilik file.
Untuk mengubah kepemilikan file contohfile dengan user lain, kita bisa mengetikkan:
chown aku contohfile
Perintah tersebut mengubah kepemilikan contohfile menjadi milik user aku bukan lagi user
azizah. Untuk melihat perubahannya lihat kembali detailnya dengan menggunakan perintah.
ls –l contohfile
Salah satu option yang ada di chown adalah –R. Option –R ini mengubah permission
semua file yang ada dalam subdirektori dalam direktori yang sedang aktif. Option –R bekerja
secara rekursif,option tersebut mengubah kepemilikan semua objek yang ada dalam direktori
bukan hanya kepemilikan direktorinya saja. Contoh penggunaannya:
chown -R aku work
Perintah ini memberikan chown permission bagi user aku terhadap semua file yang ada di
direktori work.