Select Page

sunlink at FreeBSD

apa sih sunlink itu ??
yap mungkin dah banyak yang tahu tentang sunlink terutama bagi
pengguna unix like FreeBSD..
Sebelum kita bahas apa itu sunlink alangkah baiknya kita review dulu
tentang file permission…tapi disini tidak akan dibahas tentang
file permission.. karena dah banyak sekali tutorial tentang itu.
intinya file permisssion itu merupakan suatu permission perlakuan
terhadap suatu file bagi user, group atopun others.
File permission mengijinakn user, group or others untuk melakukan
read (r) saja, write (w) saja, x (eksekusi) saja atoupun gabungan
kombinasi dari r w x tersebut.
perhatikan juga tenttang chown dan chmod.
#man chown
#man chmod

nah sebenarnya kalo dilihat dari sisi security nya, maka sunlink
masih berhubungan dengan permission suatu file..karena sunlink itu
sendiri merupakan suatu flag yang ditambahkan pada command chflags
pada suatu file..

ga bingung kan ??
nanti dibawah ini, gw coba untuk memberikan contoh pemakaian sunlink.

File flags sunlink di FreeBSd ini, digunakan sebagai flags tambahan
supaya file yang di beri flag sunlink nantinya tidak bisa dihapus
oleh user yang bersangkutan maupun root (ikzzz..root aja ga bisa
hapus 🙁 )..
SEbagai contoh , untuk menjadikan flag uneleteable pada suatu file1
ikutilah perintah dibawah ini

# chflags sunlink file1

contoh :
[root@fl3xu5 /coba]# touch ini.txt
[root@fl3xu5 /coba]# ls -lo
total 0
-rw-r–r– 1 root wheel – 0 Aug 6 21:46 ini.txt

terlihat bahwa file ini.txt tidak ada flags sunlink (karena blom
ditambahin flag sunlink ke file ini.txt). yang ada hanya flag
root, wheel
Nah sekarang kita coba tambahkan flag sunlink di file ini.txt

[root@fl3xu5 /coba]# chflags sunlink ini.txt
[root@fl3xu5 /coba]# ls -lo
total 0
-rw-r–r– 1 root wheel sunlnk 0 Aug 6 21:46 ini.txt

nah dah nampak jelas bahwa file ini.txt mengandung 3 flag yaitu
root, wheel, sunlink.
SEperti yang dah dijelasin diatas bahwa flags sunlink diberikan
supaya file yang diberi flag sunklink tidak bisa dihapus sekalipun
anda sebagai root.
masa sihhh ???
yuu mari kita liat bersama :

[root@fl3xu5 /coba]# whoami
root
[root@fl3xu5 /coba]# ls -lo
total 0
-rw-r–r– 1 root wheel sunlnk 0 Aug 6 21:46 ini.txt
[root@fl3xu5 /coba]# rm ini.txt
rm: ini.txt: Operation not permitted

ikzzz yap ga bisa dihapus (:)).

terus gmn dunk biar bisa dihapus ???
gampang kok, tinggal ganti “sunlink” jadi “nosunlink”.
perhatikan baik2, sebelum diganti “nosunlink”

[root@fl3xu5 /coba]# ls -lo
total 0
-rw-r–r– 1 root wheel sunlnk 0 Aug 6 21:46 ini.txt

flags sunlink masih ada pada file ini.txt

Nah sekarang kita ganti “sunlink” menjadi “nosunlink”

[root@fl3xu5 /coba]# chflags nosunlink ini.txt
[root@fl3xu5 /coba]# ls -lo
total 0
-rw-r–r– 1 root wheel – 0 Aug 6 21:46 ini.txt

dan ternyata flag sunlink dah tidak ada..

terus berarti dah bisa dihapus lagi ya file itu ??
yap anda benar ..karena flag nya dah diganti “nosunlink” maka
file ini.txt dah bisa dihapus..:)
[root@fl3xu5 /coba]# ls -lo
total 0
-rw-r–r– 1 root wheel – 0 Aug 6 21:46 ini.txt
[root@fl3xu5 /coba]# rm ini.txt
[root@fl3xu5 /coba]# ls -lo
total 0

* catatan : beberapa flag mugkin hanya bisa di tambahkan or di hilang
kan di suatu file hanya oleh root user,.tapi pada kasus yang lain
file owner mungkin bisa mengeset flags.
pemberian flag sunlink juga bisa diberikan ke suat direktory, tidak
hanya pada suatu file..penjelasa dan cara nya sama dengan
pemberian flag pada suatu file.

dah segitu aja dulu yak..
Semoga bermanfaat.

refernce : freebsd handbook.

/created by fl3xu5.