Rabu, 18 Desember 2013

PENGENALAN PERINTAH PADA LINUX




1. HIRARKI FOLDER
Sistem linux mengatur file dalam sturkrur hirarki. Level tertinggi dari Linux filesystem adalan / atau root directory, lalu turun kebawah sampai kedirectory dan sub directory.
Di bawah directory root (/) terdapat beberapa directory penting yang biasa ada di dalam distro Linux. Berikut ini adalah daftar directory yang biasa ada tepat di bawah root directory(/):
/bin – lokasi untuk aplikasi binary yang penting dan umum untuk di gunakan dalam sistem Linux.
/boot – menyimpan kernel Linux, ramdisk image dan boot configuration files (Lilo atau Grub).
/dev - untuk device files seperti hard disk (/dev/hda*), RAM (/dev/ram), CD-ROM (/dev/cdrom*).
/etc – berisi configuration files untuk tugas administrasi sistem, seperti config file apache, file passwd, startup scripts, etc..
/home – tempat untuk users’ home directories.
/lib – berisi dynamic libraries penting dan juga tempat untuk kernel modules.
/lost+found - file yang dihapus masuk dalam lost+found directory.
/media – directory untuk mounted removable media seperti CD-ROM, digital camera, eksternal harddisk.
/mnt – mounted filesystems, sama seperti /media.
/opt – tempat menyimpan optional applications untuk sistem anda.
/proc – special dynamic directory yang menangani informasi mengenai kondisi dari sistem anda, termasuk processes yang sedang berjalan.
/root – home directory untuk superuser (root).
/sbin – system binaries yang penting ada dalam directory ini.
/sys – system files, fungsinya sama seperti /proc.
/tmp – tempat untuk temporary files yang digunakan oleh aplikasi.
/usr – directory untuk aplikasi dan files yang tersedia untuk digunakan oleh users. variable files seperti log file dan juga database.



2. HAK AKSES
Tidak semua folder dalam linux dapat diakses oleh semua user kecuali root.
Hal yang menyebabkan linux masih aman dalam serangan virus. masih sedikitnya user home yang menggunakan akses internet dengan sistem operasi linux dan ketatnya hak akses dalam hirarki folder linux. Hal ini yang menyebabkan ”virus maker” enggan menulis coding merusaknya pada sistem operasi yang open sorce ini.
Perintah yang berkaitan dengan penggunaan hak akses pada linux :
Chmod, chown, chgrp dan banyak perintah lainnya.
Chmod : merubah atribut file.
Chown : merubah kepemilikan file dan grup sebuah file.
Chgrp   : merubah kepemilikan grup.
Sebelum kita mengubah sebuah hak akses sebuah file atau folder, kita perlu terlebih dahulu untuk mengetahui file tersebut hak kepemilikannya.
Peirntah standar yang digunakan untuk hal ini adalah :
-         ls
-         ls –al
ketika kita pada folder yang aktif yang memiliki file kita mengetikan kan perintah ”ls –al” tanpa tanda kutip pada command shell.
”Masukan contoh dan penjelasan membaca hsk akses dari shell dengan perintah ls”
Pada chmod ada 2 cara untuk mengganti hak akases file dan folder.
Dengan menggunakan huruf dan angka. Pada linux umumnya mengenal atribut execute, write dan read.
Jika pada sebuah file kita dapat menulisnya atau membacanya kita tidak dapat mengeksekusi file yang kita modifikasi, hal ini diumpamakan kita dapat memodifikasi namun kita mengeksekusinya dilain tempat atau lain folder.
2. 1 Hak akses dengan huruf :
chmod u+x /home
menambah kan user yang aktif agar bisa mengeksekusi folder “/home”.
chmod g-rw /home
mengurangi hak pada grup yang lain, kemampuan untuk menulis dan membaca file pada folder “/home”
chmod o-r /home
mengurangi hak pada yang lainnya, kemampuan untuk membaca file pada folder “/home”
chmod u+x,g-rw,o-r /home
menambahkan user yang aktif kemampuan mengeksekusi, mengurangi hak membaca dan menulis pada grup yang lain dan mengurangi hak untuk membaca kepada user atau grup yang lain.

2. 2 Hak akses dengan angka :
Hak akses dengan angka berdasarkan bilangan octal hingga 7.
0 = 000 = u-x,g-rw,o-r
Dengan kata lain 0 (nol) tidak memberi hak apapun,
1 = 001 = –x
Hanya memberi hak untuk eksekusi.
2 = 010 = -w-
Hanya memberi hak untuk menulis.
3 = 011 = -wx
Memberi hak untuk menulis dan mengeksekusi.
4 = 100 = r—
Memberikan hak untuk membaca.
5 = 101 = r-x
Memberikan hak untuk membaca dan mengeksekusi.
6 = 110 = memberikan hak untuk membaca dan menulis.
7 = 111 = memberikan hak untuk membaca, menulis dan mengeksekusi.
Contoh #chmod 755 “nama file atau folder” akan menghasilkan hakrwxr-xr-x, yang artinya memberikan user yang memiliki file ini kemampuan untuk membaca, menulis dan mengeksekusi, grup lainnya kemampuan membaca dan mengeksekusi dan yang lainnya hanya kemampuan untuk membaca saja.
2. 3 User dan Grup
Konsep user pada linux dan windows tidak terlalu berbeda jauh. Oleh karena itu akan sangat membantu bila kita sudah terbiasa dalam mengatur user dan grup pada windows, tidak berhubungan namun akan sangat membantu, seperti layaknya suatu kebiasaan menggunakan command prompt.
Seperti biasanya pada linux ada setidaknya 3 metode untuk memanajemen user dan grup.
Pertama dengan metode command shell, dengan metode GUI dan metode editing file passwd dan shadow yang biasanya metode editing file ini dilakukan untuk tujuan exreme.
Namun pada kali ini saya hanya membahas dengan metode command shell saja.
Untuk membuat user pada linux kita lebih baik menggunakan user root, ketikan ”su –” pada command shell tanpa tanda kutip, maka akan muncul permintaan password root.
Untuk menambahkan user pada linux ketikan pada shell :
#useradd –m –c ”rama saputra” rama
Kita buat password untuk mengamankan user rama dengan perintah :
#passwd rama
Maka akan muncul permintaan password baru untuk user rama.
Akan muncul permintaan 2 kali, untuk memastikan password anda sudah benar atau tidak, bila belum maka anda akan mendapatkan peringatan bahwa password tidak dapat diupdate.
Setelah kita mengerti cara membuat user dengan baik, terkadang kita menemukan bahwa dalam suatu komputer kita ingin membuat beberapa user namun kita harus mengkelompokan beberapa user hanya memiliki beberapa hak untuk mengakses file tertentu. Dengan konsep ini kita mengenal adanya grup.
Nah, dalam linux perintah untuk membuat grup baru adalah :#groupadd panitia
Selanjutnya kita ingin memasukan user kedalam grup panitia :
Pertama kita memasukan user rudi : #usermod –G panitia rudi
Kemudian masukan user juanada : #usermod –G panitia juanda
Selanjutnya grup panitia hanya bisa mengakses file /home/document/panitia/dokumen_pendaftaran.doc
Kita gunakan perintah #chgrp panitia /home/document/panitia/dokumen_pendaftaran.doc
Sedikit informasi jika kita ingin hanya user yang berada pada grup panitia yang bisa menggunakan perintah su ketikan perintah :
#chgrp panitia ‘which su`
#chmod u+s,o-rwx,u+rwx,g+rx ‘which su`
Informasi tentang user dan grup sedikitnya berada pada file
/etc/passwd
/etc/shadow
/etc/login.defs
/etc/skel
/etc/group
3. FINDUTILS
Findutils adalah tool ataupun perintah yang ada dalam linux untuk memudahkan pencarian. Dengan banyaknya hirarki folder pada linux dan file yang jumlahnya ribuan, findutils akan sangat membantu dalam menemukan file.
Fifo (fisrt in first out) disebut juga name pipe (pipa bernama) file yang dapat menerima output suatu file kemudian menyimpan sementara outputnya dan  kemudian dapat dibuka oleh proses lain sebagai input, fifo sangat membantu dalam pekerjaan findutils ini.
apa bila anda ingin isi dari derektory ditampilkan baris demi baris, maka kita cukup masuk ke current directory dan jalankan perintah $find tanpa argumen apapun
mencari file yang mengandung angka 1 di dalam nama filenya : $find -name “*1*”
mencari nama file yang terdiri dari 2 karakter, dimana karakter terakhirnya haruslah angka 1: $fine -name “?1″
mencari di /usr/bin, dengan nama file yang diawali dengan vi
$find /usr/bin/  -name “vi*”
melihat penggunaan file untuk melihat direkori dibawah direktori /usr/bin
$find /usr/bin/  -type d
bila ingin dibawa ke program wc maka $find /usr/bin/  -type d | wc –l
mencari tipe file block diderectori dev, namun yang memiliki nama diawali dengan dha1 $find /dev -type b –name
notasi untuk tipe dile yang dikenal di linux
b = block spesial
c = karakter spesial
d = directory
p = fifo
f = file (regular file)
l = untuk symbol link
s = soket
3.1 mencari berdasarkan urutan tertentu
mencari file berukuran nol byte atau direktori berukuran kosong.
$find -empty
mencari file dan direktori di /bin yang berukuran diatas 100 KB.
$find /bin -size +100k
mencari file di bin kurang dari 6 KB dengan tipe file
$find /bin -size -6k -type f
mencari file yang hanya berukuran 6 KB saja
$find /bin -size 6k -type f
mencari file dengan range lebih besar dari 15 KB namun lebih kecil dari 20 KB
$find /bin -size +15k -size -20k
ini adalah karakter ukuran:
b untuk blok 512 byte
c untuk byte
w untuk word
k untuk kilo byte (1024)
M untuk mega byte( 1048576)
G untuk giga byte
3.2 mencari berdasarkan hak akses tertentu
mencari dengan hak akses 664
$find -perm 664
mencari hak akses minimal 664 (berarti 666 dan 777 lebih baik)
$find /bin -perm -664 -size +1M  /bin/vim
mencari file dimana user, group dan orang lain dapat menulis file
$find -perm +222
3.3 mencari file yang dimiliki oleh user tertentu atau grup tertentu
mencari kefile /tmp file-file yang dimiliki oleh user nop dan nama filenya diakhiri dengan karakter 1
$find /tmp/  -user nop -name “*1″
mencari kefile /tmp file-file yang dimiliki oleh user nop  dengan uid (catatan : uid untuk user nop adalah 1000)
$find /tmp/  -user 1000
ada uid, gid dan groups (untuk groups opsi -user menjadi -users) untuk mengetahuinya
$id [nama user atau group]
3.4 mencari file dengan kriteria waktu
mencari file yang dimodifikasi 30 menit yang lau
$find -mmin +30
* atime, mencari berdasrkan file n*24 jam file terakhir diakses
* amin, berdasarkan n menit terakhir file diakses.
* Ctime, berdasarkan n*24 jam status file terakhir diubah.
* Cmin, berdasarkan n menit terakhir status diubah.
* Mtime, berdasar n*24 jam data file terakhir diubah.
* mtime, berdasar n menit data file terakhir diubah.
mencari file baru
$find -newer /home
3.5 memformat hasil pencarian
menambahkan kata found pada hasil pencarian yang hasilnya ( found : ./rama)
$find -printf ‘found : %p\n’
%p, nama lengkap file
%f, nama file tanpa directory
%s, ukuran file dalam byte
%y, tipe file
%g, group yang memiliki akses
%m, hak akses file
%t, waktu file dimodifikasi
%u, user yang memiliki file
contoh lengkap
$find -printf ‘found: %p (size: %s) (owner: %u, group: %g) (type: %y) (perm: %m)\n’
3.4 memadukan FIND dan XARGS
melihat file dengan detail
$find | xargs file
menghapus file secara massal yang nama file diakhiri degan karakter 1
$find -name “*1″ | xargs rm –rf

Tidak ada komentar:

Posting Komentar