Masih mengenai hal dasar di GNU/Linux. Setelah artikel sebelumnya kita membahas mengenai pengenalan terhadap access permission di GNU/Linux. Ada perihal dasar lainnya yang wajib pula kita ketahui, ketika menggunakan GNU/Linux. Yakni pengetahuan mengenai beberapa atribut berkas di GNU/Linux.
Everything is a File
Yang menarik dari GNU/Linux adalah segala suatu yang ada di dalamnya adalah sebuah berkas. Meskipun kita melihat direktori di sana, tetap saja direktori tersebut merupakan berkas. Anda bisa buktikan sendiri dengan cara membuat satu berkas dan satu direktori dengan nama yang sama persis. Pasti di GNU/Linux Anda tidak akan bisa melakukannya. Coba saja lakukan perintah berikut:
touch kambing mkdir kambing
Perkatikan gambar di atas. Padahal kita mau membuat direktori bernama kambing
, namun tidak bisa karena terdapat berkas bernama kambing
juga. Kalau di Windows tentu saja hal demikian bisa kita buat. Lihat gambar di bawah ini:
Inilah mengapa di GNU/Linux dikatakan segala sesuatu yang ada di dalamnya adalah sebuah berkas (everything is a file). Kalau semuanya berupa berkas lalu bagaimana kita dapat membuat direktori? Semua berkas diberikan atribut spesial (special attribute) untuk menandakan apakah berkas itu berupa berkas (as a file) atau berupa direktori (as a directory).
Kita bisa melihat perbedaannya dengan melakukan perintah ls -lah
di Terminal. Jika itu memang berupa berkas biasa kita akan melihat tanda strip di awal , jika berupa direktori, ada tanda d
di awal. Lihatlah gambar di bawah ini:
Attribute
Di GNU/Linux pengelempokan suatu berkas dibagi menjadi 8 kelompok yakni 7 untuk special attribute dan satu atribut untuk berupa berkas asli (regular / standard file). Adapun 8 kelompok atribut tersebut bisa kita lihat dalam tabel di bawah ini:
Jenis | Nama dan Keterangan |
---|---|
- | Tanda strip mengindkasikan bahwa itu adalah _regular / standard file_. |
b | _Block special file_. Yakni _major_ dan _minor number_ untuk pengontrolan `dev`.` ` |
c | _Character special file. _Yakni yang menangani tentang _proccess character _komunikasi dari _hardware_.`` |
d | _Directory._ Berkas dinyatakan sebagai direktori jika bertanda ini. |
l | _Symbolic Link_. Seperti halnya berkas _shortcut_ di Windows. |
p | _FIFO (first-in-first-out) _diberinama_ pipe file. _Ini berkaitan dengan kernel._ _ |
s | _Socket_ _file._ |
w | _Whiteout_ atau State of UnionFS. |
Beberapa berkas dari jenis di atas mungkin bisa kita lihat sendiri, seperti berkas berupa block
dan character
. Lakukan perintah berikut:
ls -lah /dev
Perhatikan gambar di atas. Kita melihat tulisan di awal berupa c
, b
, d
, dan l
. Ternyata dalam direktori /dev
terdapat banyak special attribute. Untuk Socket file, saya sendiri belum tahu dimana letaknya, baru satu yang saya temukan ketika menjalankan php-fpm
lihat gambar di bawah.
Untuk beberap berkas seperti FIFO p
dan _whiteout _w
. Saya sendiri belum menemukan di mana letak berkas tersebut. Tapi yang jelas sebagai pengguna GNU/Linux kita wajib mengetahui nama-nama atribut di berkas.
Kesimpulan
Di GNU/Linux segala sesuatu itu adalah sebuah berkas (everything is a file). Untuk membedakan mana berkas asli atau itu berupa direktori dapat kita lihat dalam special attribute-nya yakni tertulis dengan beberapa simbol di awal ketika kita melakukan perintah ls -lah
.
Oke semoga bermanfaat.
Sumber
* <a href="https://www.cyberciti.biz/faq/explain-the-nine-permissions-bits-on-files/" target="_blank">https://www.cyberciti.biz/faq/explain-the-nine-permissions-bits-on-files/</a>
* <a href="https://linux.die.net/man/3/mkfifo" target="_blank">https://linux.die.net/man/3/mkfifo</a>
* <a href="https://askubuntu.com/questions/39826/what-does-whiteout-mean-in-a-copy-on-write-filesystem" target="_blank">https://askubuntu.com/questions/39826/what-does-whiteout-mean-in-a-copy-on-write-filesystem</a>
* <a href="https://en.wikipedia.org/wiki/UnionFS" target="_blank">https://en.wikipedia.org/wiki/UnionFS</a>
Komentar