Friday, September 19, 2014

OPERASI FILE DAN STRUKTUR DIREKTORI LINUX



1. ORGANISASI FILE


Sistem file pada Linux menyerupai pepohonan (tree), yaitu dimulai dari root, kemudian direktory dan sub direktory. Sistem file pada Linux diatur secara hierarkikal, yaitu dimulai dari root dengan symbol “/” seperti Gambar 3.1

Kita dapat menciptakan File dan Direktori mulai dari root ke bawah. Direktori adalah file khusus, yang berisi nama file dan INODE (Pointer yang menunjuk ke data / isi file tersebut). Secara logika, direktori dapat berisi File dan Direktori lagi (disebut juga Subdirektori).



Description: http://4.bp.blogspot.com/_uXWflkYnEP8/SQH8hv9-BWI/AAAAAAAAAFs/wxx6ZvGgNys/s320/000.bmp

2. DIREKTORI STANDAR

Setelah proses instalasi, Linux menciptakan system file yang baku, terdiri atas direktory sebagai berikut :
Description: http://1.bp.blogspot.com/_uXWflkYnEP8/SQH9J_GiFOI/AAAAAAAAAF0/h7zqtRR5_uo/s320/sistem+Flowchart1.png

Direktori /etc
Berisi file yang berhubungan dengan administrasi system, maintanance script, konfigurasi, security dll. Hanya superuser yang boleh memodifikasi file yang berada di direktori ini. Subdirektori yang sering diakses pada direktori /etc antaran lain :
• Httpd, apache web server.
• Ppp, point to point protocol untuk koneksi ke internet.
• rc.d atau init.d , inisialisasi (startup) dan terminasi (shutdown) proses di Linux dengan konsep runlevel.
• cron.d rincian proses yang dieksekusi dengan menggunakan jadwal ( time dependent process)
• FILES, file security dan konfigurasi meliputi : passwd, hosts, shadow, ftpaccess, inetd.conf, lilo.conf, motd, printcap, profile, resolv.conf, sendmail.cf, syslog.conf, dhcp.conf, smb.conf, fstab.

Direktori /dev
Konsep Unix dan Linux adalah memperlakukan peralatan hardware sama seperti penanganan file. Setiap alat mempunyai nama file yang disimpan pada direktori /dev.

Description: http://2.bp.blogspot.com/_uXWflkYnEP8/SQH9upGU8eI/AAAAAAAAAF8/L74BHEvbCY0/s320/0000.PNG

Direktori /proc
Direktori /proc adalah direktori yang dibuat diatas RAM (Random Access Memory) dengan system file yang diatur oleh kernel. /proc berisi nomor proses dari system dan nama driver yang aktif di system. Semua direktori berukuran 0 (kosong) kecuali file kcore dan self. Setiap nomor yang ada pada direktori tsb merepresentasikan PID (proses ID).


3. TIPE FILE

Pada Linux terdapat 6 buah tipe file yaitu :
• Ordinary file
• Direktori
• Block Device ( Peralatan I/O )
Merupakan representasi dari peralatan hardware yang menggunakan transmisi data per block (misalnya 1 KB block), seperti disk, floppy, tape.

• Character Device (Peralatan I/O)
Merupakan representasi dari peralatan hardware yang menggunakan transmisi data karakter per karakter, seperti terminal, modem, plotter dll.

• Named Pipe (FIFO)
File yang digunakan secara intern oleh system operasi untuk komunikasi antar proses.
• Link File

4. PROPERTI FILE
File mempunyai beberapa atribut, antara lain :
• Tipe file : menentukan tipe dari file, yaitu :
Description: http://4.bp.blogspot.com/_uXWflkYnEP8/SQH-dSgjbCI/AAAAAAAAAGE/anLR6Rlxi24/s320/0000.PNG

• Ijin akses : menentukan hak user terhadap file ini.
• Jumlah link : jumlah link untuk file ini.
• Pemilik (owner) : menentukan siapa pemilik file ini
• Group : menentukan grup yang memiliki file ini
• Jumlah karakter : menentukan ukuran file dalam byte
• Waktu Pembuatan : menentukan kapan file terakhir dimodifikasi
• Nama File : menentukan nama file yang dimaksud

Contoh
-rw-rw-r-- 1 bin auth 1639 oct 16 13:00 /etc/passwd
Penjelasan
- : merupakan tipe
rw-rw-r-- : merupakan ijin akses
1 : jumlah link
bin : pemilik
auth : group
1639 : jumlah karakter
Oct 16 13:00 : waktu
/etc/passwd : Nama file

5. NAMA FILE
Nama file maksimal terdiri dari 255 karakter berupa alfanumerik dan beberapa karakter spesial yaitu garis bawah, titik, koma dan lainnya kecuali spasi dan karakter-karakter berikut :
“&” , “,”, “|” , “?” , “ ’ ” , “ “ “ , “(“ , “)” , “[“ , “]” , “$” , “<” , “>” , “{“ , “}” , “^” , “#” , “\” , “/”.
Linux membedakan huruf kecil dengan huruf besar (case sensitif),
Contoh nama file yang benar :
Abcde5434
3
Prog.txt
PROG.txt
Prog.txt, old
report_1-1, v2.0.1
5-01.web.html

6. SIMBOLIC LINK
Link adalah teknik untuk memberikan lebih dari satu nama file dengan data yang sama. Bila file asli dihapus, maka data yang baru juga terhapus. Format dari Link : ln fileAsli fileDuplikat

File duplikat disebut hard link dimana kedua file akan muncul identik (link count=2) Bila fileAsli atau fileDuplikat diubah, maka perubahan akan terjadi pada file lainnya.
Simbolic link diperlukan bila file tersebut di “Link” dengan direktori /file yang berada pada partisi yang berbeda. Tipe file menjadi 1 (link) dan file tersebut menunjuk ke tempat asal. Format :
ln –s /fullpath/fileAsli /FullPath/FileDuplikat
Pilihan –s (shortcut) merupakan bentuk soft link, simbolic link dapat dilakukan pada file yang tidak ada, sedangkan pada hard link tidak dimungkinkan. Perbedaan lain, simbolic link dapat dibentuk melalui media disk atau partisi yang berbeda dengan soft link, tetapi pada hard link terbatas pada partisi disk yang sama.

7. MELIHAT ISI FILE
Untuk melihat jenis file menggunakan format :
file filename(s)
isi file akan dilaporkan dengan deskripsi level tinggi seperti contoh berikut :
# file myprog.c letter.txt webpage.html
myproc.c : C program text
letter.txt : ASCII text
webpage.html : HTML document text

perintah ini dapat digunakan secara luas untuk file yang kadang membingungkan, misalnya antara kode C++ dan java.


8. MENCARI FILE
Jika ingin melihat bagaimana pohon direktori dapat digunakan perintah
• Find
Format : find directory_name targetfile –print
Akan melihat file yang bernama targetfile (bisa berupa karakter wildcard)

• Which
Format : which command
Untuk mengetahui letak system utility

• Locate
Format : locate string
Akan mencari file pada semua direktori dengan lebih cepat dan ditampilkan dengan path yang penuh.


9. MENCARI TEXT PADA FILE
Untuk mencari text pada file digunakan perintah grep (General Regular Expression Print) dengan format perintah :
grep option pattern files
Grep akan mencari file yang bernama sesuai pattern yang diberikan dan akan menampilkan baris yang sesuai.


PERINTAH DASAR LINUX BESERTA FUNGSINYA

  • Description: Print
  • Description: Email
Description: PERINTAH DASAR LINUX BESERTA FUNGSINYAls
Melihat isi file dari direktori aktif. Pada linux perintah “dir” hanya berupa alias dari perintah “ls”. Untuk perintah “ls” sendiri sering dibuatkan alias “ls  –color”, agar pada waktu di “ls” ditampilkan warna-warna sesuai dengan file-filenya, biasanya hijau untuk execute, dsb.
ls -al
Melihat seluruh isi file pada direktori aktif beserta file hidden + attribute/permission filenya , lalu ditampilkan layar perlayar.
cd (directory)
Change directory. Menggunakan “cd” tanpa nama direktori akan menghantarkan  anda ke home direktor. Dan “cd -” akan menghantarkan anda ke direktori sebelumnya.

cp source destination
mengcopy suatu file. contohnya : cp /home/sleepholic/Desktop/Joomla.zip /opt/lampp/htdocs/.Ini berarti saya mengcopyfile Joomla.zip yang ada di desktop ke folder htdocs di lamp
mcopy source destination
Mengcopy suatu file dari/ke dos filesystem. Contoh mcopy a:autoexec.bat/junk .Gunakan “man mtools” untuk command yang sejenis: mdir, mcd, mren, move, mdel, mmd, mrd, mformat….
mv source destination
Memindahkan atau mengganti nama file. Contohnya :  mv /opt/lampp/htdocs/joomla.zip /home/sleepholic/Desktop  . ini aritnya anda memindahkan (cut) file joomla.zip ke Desktop .Untuk Rename : mv namaLama namaBaru . Contoh: mv Joomla.zip Project.zip .ini berartianda mengganti nama joomla.zip menjadi project.zip
ln -s source destination
Membuat Simbolic Links, contoh  ln  -sf /usr/X11R6/bin/XF86_SVGA /etc/X11/X, membuat Simbolic link dari file XF86_SVGA ke X
rm files
Menghapus file. Contoh  rm /opt/lampp/htdocs/Joomla.zip  ini berarti anda  menghapus file Joomla.zip dalam folder /opt/lampp/htdocs/
mkdir directory
Membuat direktori baru. contoh  mkdir /home/sleepholic/Desktop/folderbaru  .Ini berarti andatelah membuat folder baru di desktop dengan nama folderbaru
rmdir directory
Menghapus direktori yang telah kosong. Hanya bisa dilakukan untuk folder yang kosong. Contoh :  rmdir /home/sleepholic/Desktop/folderbaru  .Ini berarti anda menghapus folderbaru di Desktop
rm -r files
Recursive Remove, Menghapus file, direktori dan subdirektorinya. Tidak perduli apakah direktori/folder tersebut ada isnya atau tidak. apapun isinya akan terhapus. Hati-hati menggunakan perintah ini apabila anda login sebagai root, karena root dengan mudah dapat menghapus seluruh file pada sistem dengan perintah di atas, tidak  ada perintah untuk undelete diLinux (belum)
more
Untuk menampilkan sesuatu layar per layar. tambahkan perintah more dibelakang.Contoh : cp –help |more .Maka help dari cp akan ditampilkan layar-per-layar

less filename
Melihat suatu file layar per layar, dan tekan tombol “q” apabila ingin keluar.

pico filename
Edit suatu text file

pico -w filename
Edit suatu text file, dengan menonaktifkan fungsi word wrap, sangat berguna untuk mengedit file seperti /etc/fstab.

lynx file.html
Melihat file html atau browse ke net dengan text mode, dimana gambar/image tidak dapat ditampil-kan, tapi lynx adalah suatu browser yang sangat cepat, sangat berguna bila anda hanya menginginkan suatu artikel tanpa image.Contoh : lynx google.com .anda akan menikmati google di terminal.

tar -xvfz filename.tar.gz
Meng-untar sebuah file tar sekaligus meng-uncompress file tersebut (*.tar.gz or *.tgz), untuk meletakkannya direktori yg diinginkan tambahkan option  -C direktori, contoh tar  -zxvffilename.tar.gz -C /opt (meletakkan file tersebut di direktori /opt)

tar -xvf filename.tar
Meng-untar sebuah file tar yang tidak terkompress (*.tar).

gunzip filename.gz
Meng-uncompress sebuah file zip (*.gz” or *.z). dengan menggunakan gzip (juga zip atau compress) jika anda menginginkan mengompress file.

bunzip2 filename.bz2
Meng-uncompress file dengan format (*.bz2) dengan utiliti “bzip2″, digunakan pada file yang besar.

unzip filename.zip
Meng-uncompress file dengan format (*.zip) dengan utiliti “unzip” yang kompatibel dengan pkzip for DOS.

find / -name “filename”
Mencari “namafile” pada komputer anda dimulai dengan direktori /. Namafile tersebut mungkin saja berisi wildcard (*,?).

locate filename
Mencari file dengan string “filename”. Sangat mudah dan cepat dari perintah di atas.

talk username1
Berbicara dengan keyboard dengan user lain yg sedang login pada mesin kita (atau gunakan “talk username1@machinename” untuk berbicara dengan komputer lain) . Untuk menerima undangan percakapan, ketikkan”talk username2″. Jika seseorang mencoba untuk berbicara dengan anda dan itu dirasakan mengganggu, anda bisa menggunakan perinta”mesg n” untuk menolak pesan tersebut. Dan gunakan perintah “who” atau  ”rwho” untuk melihat siapa user yang mengganggu tersebut.

mc
Menjalankan “Morton Commander” … eh… salah maksudnya “Midnight Commander” sebagai file manager, cepat dan bagus.(kalau gak ada install dulu.)

telnet server
Untuk menghubungkan komputer kita  ke komputer lain dengan menggunakan protokol TELNET. Gunakan nama mesin atau Nomor IP mesin, dan anda akan mendapatkan prompt login name dari mesin tersebut, masukkan passwordnya, oh ya .. anda juga harus punya account di mesin remote tersebut. Telnet akan menghubungkan anda dengan komputer lain dan membiarkan anda untuk mengoperasikanmesin tersebut. Telnet sangat tidak aman, setiapyang anda ketik menjadi “open text”, juga dengan password anda! Gunakan ssh alih-alih telnet untuk mengakses mesin secara remote.

rlogin server (=remote login)
Menghubungkan anda ke komputer lain. Loginname dan password, tetapi apabila account anda tersebut telah dipakai, maka anda akan mendapatkan pesan kesalahan pada password anda. Sangat tidak aman juga, gunakan ssh sebagai gantinya. rsh server (=remote shell) Jalan lain untuk menghubungkan anda ke remote machine. Apabila login name/password anda sedang dipakai di remote mesin tsb, maka password anda tidak akan berlaku. Idem dengan rlogin, gantikan dengan ssh. ftp server Ftp ke mesin lain, ini sangat berguna untuk mengopy file ke/dari remote mesin. Juga tidak aman, gunakan scp dari keluarga ssh sebagai gantinya

minicom
Program Minicom (dapat dikatakan seperti “Procomm/Hyperterminal for Linux”).

./program_name
Menjalankan program pada direktori aktif, yang mana tidak terdapat pada PATH anda

xinit
Menjalankan X-window server (tanpa windows manager).

.startx
Menjalankan X-window server dan meload default windows manager. Sama seperti perintah ”win” under DOS dengan Win3.1

startx — :1
Menjalankan sesi X-windows berikutnya pada display 1 (default menggunakan display 0). Anda dapat menjalankan banyak GUI terminal secara bersamaan, untuk pindah antar GUI gunakan , , etc, tapi ini akan lebih banyak memakan memori.

x-term
(pada X terminal) ,menjalankan X-windows terminal. Untuk keluar ketikkan “exit”xboing(pada X terminal). Sangat lucu deh …., seperti games-games lama …..

gimp
Program image editor yang sangat bagus, bisa disamakan dengan Adobe Photoshop, yang membedakan adalah program ini gratis.

shutdown -h now
(sebagai root) Shut down sistem. Umumnya digunakan untuk remote shutdown. Gunakan untuk shutdown pada konsol (dapat dijalankan oleh user).

halt
reboot (sebagai root) Halt atau reboot mesin. Lebih simple dari perintah di atas.

man topic
Menampilkan daftar dari sistem manual pages (help) sesuai dengan topic. Coba “man man”. lalutekan “q” untuk keluar dari viewer. Perintah “info topic” Manual pages dapat dibaca dilhat dengan cara “any_command –help”.

apropos topic
Menampilkan bantuan manual berdasarkan topik.

pwd
Melihat direktori kerja saat ini (print working directory)

hostname
Menampilkan nama local host (mesin dimana anda sedang bekerja). Gunakan perintah “ netconf”(sebagai root) untuk merubah nama host dari mesin tersebut, atau edit file /etc/hosts

whoami
Mencetak login name anda. untuk mengetahui anda terlogin dengan user apa.

id username
Mencetak user id (uid) atau group id (gid)

date
Mencetak atau merubah tanggal dan waktu pada komputer, contoh merubah tanggal dan waktu ke 2000-12-31 23:57 dengan perintah; date 123123572000

time
Melihat jumlah waktu yg ditangani untuk penyelesaian suatu proses + info lainnya. Jangan dibingungkan dengan perintah “date”whoMelihat user yang login pada komputer kita.

rwho –a
Melihat semua user yg login pada network anda. Layanan perintah rwho ini harus diaktifkan, jalankan setup sebagai root utk mengaktifkannya.

finger username
Melihat informasi user, coba jalankan; finger root

last
Melihat user sebelumnya yang telah login di komputer.uptimeMelihat jumlah waktu pemakaian komputer oleh seseorang, terhitung proses reboot terakhir.

ps (=print status)
Melihat proses-proses yang dijalankan oleh user.

pa axu
Melihat seluruh proses yang dijalankan,walaupun tanpa terminal control, juga ditampilkan nama dari user untuk setiap proses.

top
Melihat proses yang berjalan, dengan urutan penggunaan cpu. uname –aInformasi system kernel anda.

free
Informasi memory (dalam kilobytes).

df –h
(=disk free) Melihat informasi pemakaian disk pada seluruh system (in human-readable form)

du / -bh
(=disk usage) Melihat secara detil pemakaian disk untuk setiap direktori, dimulai dari root (in human legible form).

cat /proc/cpuinfo
Cpu info. Melihat file pada /proc directori yang bukan merupakan file nyata (not real files).

cat /proc/interrupts
Melihat alamat interrupt yang dipakai.cat /proc/versionVersi dari Linux dan informasi lainnya.

cat /proc/filesystems
Melihat filesystem yang digunakan.

cat /etc/printcap
Melihat printer yang telah disetup.

lsmod
(as root) Melihat module-module kernel yang telah di load.

set
Melihat environment dari user yang aktif

echo $PATH
Melihat isi dari variabel “PATH”. Perintah ini dapat digunakan untuk menampilkan variabel environmen lain dengan baik. Gunakan “set” untuk melihat environmen secara penuh.

dmesg
Mencetak pesan-pesan pada waktu proses boot.(menampilkan file: /var/log/dmesg).

adduser
Menambah pengguna.

clear
Membersihkan Layar
*beberapa perintah mengharuskan anda login sebagai root. caranya tinggal menambahakan “sudo” di depan perintahmisalkan : sudo rmdir /home/sleepholic/Desktop/x atau sudo cp /opt/lampp/lampp /home/sleepholic/

Proses dan managemen proses
Proses adalah Program yang sedang dieksekusi. Setiap kali menjalankan suatu program, Sistem UNIX melakukan suatu fork, yaitu melakukan beberapa urutan operasi untuk membuat suatu proses konteks dan kemudian mengeksekusi program tersebut dalam konteks yang sudah dibuat. Oleh karena itu kita harus menguasai Manajemen Proses Linux. Manajemen Proses Linux adalah salah satu hal yang sangat penting yang harus dikuasai oleh seorang Teknisi Komputer. Kenapa? Karena selain kita mengetahui proses di Windows, kita harus tahu proses di Linux dan dengan penguasaan manajemen prose ini kita bisa mengetahui proses apa saja yang running pada setiap user. Atau dalam suatu jaringan juga kita bisa melakukan controlling terhadap proses setiap client.
Dalam Manajemen proses beberapa hal penting yang harus dikuasai, yaitu :
1. Mengetahui proses yang terjadi Linux
2. Dapat melakukan proses controlling terhadap proses di Linux
3. Menghentikan proses yang tidak dibutuhkan dan mengurangi performa Linux

TIPE PROSES
Terdapat beberapa tipe proses yang dikenal dalam OS berbasis Linux pada umumnya, antara lain:
  1. Interactive : proses yang dimulai (dan dikontrol oleh) shell[i][i][i]. Bisa tampak di luar (foreground) ataupun hanya di dalam (background).
  2. Batch : proses yang tidak berhubungan dengan terminal, tetapi menunggu untuk dieksekusi secara berurutan (sekuensial).
  3. Daemon : proses yang dimulai ketika Linux booting dan berjalan secara background. Proses ini menunggu permintaan dari proses lainnya, bila tidak ada request, maka berada dalam keadaan ‘idle’.
Dalam Linux, sifat-sifat proses dibagi menjadi tiga bagian, yakni: Identitas Proses, Lingkungan, dan Konteks.

IDENTITAS PROSES
Identitas proses memuat beberapa hal penting berikut:
  • Process ID (PID) → pengenal unik untuk proses; digunakan untuk menentukan proses-proses mana yang dibawa ke dalam OS saat suatu aplikasi membuat system call  untuk mengirim sinyal, mengubah, atau menunggu proses lainnya. PID adalah 32-bit bilangan yang mengidentifikasikan setiap proses dengan unik. Linux membatasi PID sekitar 0-32767 untuk menjamin kompatibilitas dengan sistem UNIX tradisional.
  • Mandat (Credentials) → setiap proses harus memiliki sebuah user ID dan satu atau lebih group ID yang menentukan hak proses untuk mengakses sumber daya sistem dan file.
  • Personality → tidak ditemukan dalam sistem UNIX, namun dalam Linux setiap proses memiliki sebuah pengenal pribadi (personality) yang dapat (sedikit) mengubah system call tertentu secara semantic. Terutama digunakan oleh library emulation agar system call dapat kompatibel dengan bentuk tertentu UNIX.
Status Proses yang dikenali dalam Linux
  1. Task Running : Proses yang siap untuk dieksekusi CPU
  2. Task Interruptable : Proses yang menunggu sebuah kondisi. Interupsi, Sinyal dan aktifitas lain akan membangunkan proses.
  3. Task Uninterruptable : Proses yang sedang sleep, dan tidak dapat di interrupt oleh signal.
  4. Task Stopped : Proses yang dihentikan
  5.  Task Zombie : Proses telah berhenti, namun masih memiliki struktur data ditask_struct di task vektor dan masih memegang sumber daya yang tidak digunakan lagi.

Description: Linux process state

Konsep Pembuatan dan Penghentian Proses
Konsep pembuatan proses pada sistem operasi linux :
  • Setiap proses diberi nomor khusus sebagai identifikasi yang disebut process identification atau PID berupa angka integer unik.
  • Jika proses selesai (Terminated) maka semua sumber daya yang digunakan termasuk PID dibebaskan kembali.
  • Proses dibuat menggunakan system call fork() yang sering disebut forking proses
  • System call fork() mengkopi proses pemanggil sehingga akan terdapat 2 proses yaitu :
1. Proses pemanggil disebut PARENT
2. Proses hasil kopian disebut CHILD
  • Proses CHILD identik dengan proses PARENT-nya tetapi memiliki PID yang berbeda.
  • Setelah proses baru (child) berhasil dibuat eksekusi dilanjutkan secara normal di masing –masing proses pada aris setelah pemanggilan system call fork().
  • Proses pemanggil (PARENT) dapat melakukan forking proses lebih dari satu kali sehingga memungkinkan terdapat banyak proses CHILD yang dieksekusi.
  • Proses CHILD dapat melakukan forking proses seperti halnya PARENT sehingga dapat terbentuk struktur pohon proses.

Sedangkan pada proses penghentian pada OS linux, jika telah menyelesaikan pernyataan terakhir, dan meminta pada sistem operasi untuk menghapusnya dengan menggunakan system call exit. Proses mengembalikan semua data (output) ke parent proses melalui system call wait. Kemudian proses dihapus dari list atau tabel sistem, dilanjutkan dengan menghapus PCB.
Penghapusan proses ini akan menjadi sangat kompleks jika ternyata proses yang akan dihentikan tersebut membuat proses-proses yang lain. Pada beberapa sistem, proses-proses anak akan dihentikan secara otomatis jika proses induknya berhenti. Namun, ada beberapa sistem yang menganggap bahwa proses anak ini terpisah dengan induknya, sehingga proses anak tidak ikut dihentikan secara otomatis pada saat proses induk dihentikan.
Parent dapat menghentikan eksekusi proses child dengan menggunakan system call abort. Proses anak dihentikan parent karena beberapa alasan, antara lain :
  • Child mengalokasikan sumber daya melampaui batas
  • Tugas child tidak dibutuhkan lebih lanjut
  • Parent berhenti, karena system operasi tidak mengijinkan child untuk melanjutkan jika parent berhenti dan terminasi dilanjutkan

Manajemen user dan group - Administrator sistem melakukan beberapa hal penting berkaitan dengan user dan group antara lain :
  1. Pendaftaran nama login
  2. Pembekuan nama login user
  3. Penghapusan nama login user
  4. Pembuatan group baru
  5. Pembagian group
  6. Pengaturan direktori home
  7. Pengamanan file-file password

Dalam sistem Linux, nama login dapat diberikan pada :
  1. User biasa. Contoh : anton. wiwit, afri, pelatihan2000
  2. Aplikasi. Contoh : mysql, qmail, squid
  3. Device. Contoh : lp
  4. Service. Contoh : cron, ftp

Tujuan pemberian nama login adalah untuk memberikan identitas pada tiap entitas agar dapat memiliki file, direktori dan proses sendiri. Jadi user belum berati seseorang pengguna. Dapat juga berupa program ataupun pengguna. Bagi user biasa, nama login dapat digunakan untuk memasuki sebuah shellyang disiapkan sistem melalui proses otentikasi password dan melakukan pekerjaan-pekerjaan dalam sistem tersebut.

1. Pencatatan user dan group
Pada Linux RedHat 6.2, sebuah nama login dianggap sah dalam suatu sistem apabila :
  1. Data-data terdapat pada file /etc/passwd
  2. Password dalam bentuk terenkripsi berada pada file /etc/shadow
  3. Nama login berada pada group yang terdapat di /etc/group

Dengan menambah, merubah atau menghapus data-data padafile-file diatas maka anda telah dapat menambah, merubah atau manghapus user atau group. Namun untuk memudahkan pekerjaan, sistem Linux telah menyiapkan beberapa utilitas yang merupakan utilitas pengubah file-file diatas, utilitas tersebut antara lain :
  1. useradd, digunakan untuk menambahkan sebuah user
  2. userdel, digunakan untuk menghapus sebuah user
  3. usermod, digunakan untuk memodifikasi data-data user
  4. passwd, digunakan untuk merubah password sebuah user
  5. groupadd, digunakan untuk menambah sebuah group
  6. groupdel, digunakan untuk menghapus sebuah group

groupmod, digunakan untuk memodifikasi data-data group Isi dari file /etc/passwd dapat dilihat sebagai berikut :
# cat /etc/passwd
root:x:0:0:root:/root:/bin/bash
bin:x:1:1:bin:/bin:
daemon:x:2:2:daemon:/sbin:
adm:x:3:4:adm:/var/adm:
lp:x:4:7:lp:/var/spool/lpd:
sync:x:5:0:sync:/sbin:/bin/sync
shutdown:x:6:0:shutdown:/sbin:/sbin/shutdown
halt:x:7:0:halt:/sbin:/sbin/halt
mail:x:8:12:mail:/var/spool/mail:
news:x:9:13:news:/var/spool/news:
uucp:x:10:14:uucp:/var/spool/uucp:
operator:x:11:0:operator:/root:
games:x:12:100:games:/usr/games:
gopher:x:13:30:gopher:/usr/lib/gopher-data:
ftp:x:14:50:FTP User:/home/ftp:
nobody:x:99:99:Nobody:/:
xfs:x:43:43:X Font Server:/etc/X11/fs:/bin/false
gdm:x:42:42::/home/gdm:/bin/bash
anton:x:500:500:STT Telkom 97:/home/anton:/bin/bash

Bagian-bagian baris dalam /etc/passwd :
  1. anton:x:500:500:user1:/home/anton:/bin/bash
  2. anton : nama login user tertentu
  3. x : password yang dienkripsi, disimpan di file /etc/shadow
  4. 500 : nomor UID (User ID)
  5. 500 : nomor GID (Group ID)
  6. user1 : komentar atau deskripsi nama login
  7. /home/anton : direktori home untuk user anton

/bin/bash : default shell yang digunakan
# cat /etc/shadow
root:$1$6qd6wJO2$aQ2c9TXPbMOZgLSqHMKXz/:11282:0:99999:7:-1:-1:134540356
bin:*:11282:0:99999:7:::
daemon:*:11282:0:99999:7:::
adm:*:11282:0:99999:7:::
lp:*:11282:0:99999:7:::
sync:*:11282:0:99999:7:::
shutdown:*:11282:0:99999:7:::
halt:*:11282:0:99999:7:::
mail:*:11282:0:99999:7:::
news:*:11282:0:99999:7:::
uucp:*:11282:0:99999:7:::
operator:*:11282:0:99999:7:::
games:*:11282:0:99999:7:::
gopher:*:11282:0:99999:7:::
ftp:*:11282:0:99999:7:::
nobody:*:11282:0:99999:7:::
xfs:!!:11282:0:99999:7:::
gdm:!!:11282:0:99999:7:::
anton:$1$qMXw5xf5$wCo9Zo9gqNYgj8L72K2pw.:11282:0:99999:7:-1:-1:134540308
 
Baris pada /etc/shadow mengandung serangkaian karakter yang tidak dapat diartikan :
$1$qMXw5xf5$wCo9Zo9gqNYgj8L72K2pw.


Karakter-karakter di atas adalah password yang telah dienkripsi. Angka-angka yang mengikuti dibelakangnya merupakan nilai saat kedaluarsa atau masa aktif password dan nama login.
# cat /etc/group
root::0:root
bin::1:root,bin,daemon
daemon::2:root,bin,daemon
users::100:anton

PERINTAH PERINTAH UNTUK MANAGE USER
ADDUSER/USERADD : perintah untuk membuat user account baru yang tidak terdapat pada sistem
oky@oky-unix:~$ adduser [-option] [namauser]
option yang bisa digunakan :
-u : nomor identitas user (UID)
-g : nomor identitas group (GID)
-d : menentukan path home direktori user secara manual
-s : shell yang akan digunakan user
-c : komentar tentang user
option diatas sifatnya optional
contoh :
oky@oky-unix:~$ adduser okey
setelah kita melakukan perintah diatas user okey sudah terdaftar di sistem tapi belom bisa digunakan karena kita blom memberikan password untuk user okey, cara memberikan password

PASSWD : perintah yang digunakan untuk mengubah password user yang terdapat pada sistem
oky@oky-unix:~$ passwd [namauser]
contoh :
oky@oky-unix:~$ passwd okey
setelah di berikan password user okey sudah bisa digunakan. Biasanya pada distro tertentu contohnya pada Ubuntu 12.10 yang saya gunakan saat kita membuat user langsung ditunjukan untuk membuat password tanpa perlu mengetikan PASSWD. Coba lihat gambar di bawah ini

Description: https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEiL8KauOXxtuOGbCn4SV-sRLrnGxIx0wwj8PtKR35SOmREZEKkGMpeB6JevO6sVjT8JO7kdK1cT3Qany6jmgPCfrikbMlCW8htGdv2QZZpFZ05OM9LXyB0sMmSSi78IyhPP-Ds5OqwO7B0/s320/adduser.png

USERMOD : perintah yang digunakan untuk memodifikasi user acount yang ada pada sistem linux
oky@oky-unix:~$ usermod [-option] [namauser]
option yang dapat digunakan :
-L : mengunci password user
contoh :
oky@oky-unix:~$ usermod -d /tmp/backup okey

USERDEL : digunakan untuk menghapus user yang ada pada sistem
oky@oky-unix:~$ userdel [-option] [namauser]
contoh :
oky@oky-unix:~$ userdel -r okey

PERINTAH PERINTAH UNTUK MANAGE GROUP
Group digunakan untuk mengelompokan banyak user yang memiliki persamaan kedalam suatu kelompuk, group biasa diguankan untuk mempermudah penanganan user, terutama untuk masalah keamanan

GROUPADD
: perintah untuk membuat group baru
oky@oky-unix:~$ groupadd [-option] [namagroup]
contoh :
oky@oky-unix:~$ groupadd -g 100 sounix
GPASSWD : perintah untuk menambahkan user ke dalam group atau menghapus user dari dalam group
oky@oky-unix:~$  gpasswd -a [namauser] [namagroup] -> menambahkan user kedalam group
oky@oky-unix:~$  gpasswd -d [namauser] [namagroup] -> menghapus user dari dalam group
contoh :
oky@oky-unix:~$  gpasswd -a okey sounix
oky@oky-unix:~$  gpasswd -d okey sounix

GROUPMOD : digunakan untuk memodifikasi group account yang ada di sistem
oky@oky-unix:~$  groupmod [-option] [namagroup]
contoh :
oky@oky-unix:~$  groupmod -g 999 sounix

GROUPDEL : digunakan untuk menghapus suatu group dari sistem
oky@oky-unix:~$  groupdel [namagroup]
contoh :
oky@oky-unix:~$  groupdel sounix
Pada pembahasan kali ini anda akan mempelajari dan dapat mengerti konsep RPM, TAR dan GZIP. menggunakan RPM, menggunakan TAR dan GZIP untuk  instalasi software .



MANAGEMEN APLIKASI
1.    MANAJEMEN PAKET SOFTWARE

Setiap system Linux mempunyai manajemen paket software, yang paling popular adalah RPM (RedHat Package Management). 

RPM mengatur instalasi paket software, maintenance/upgrade dan menghapus paketsoftware dari system, atau lebih dikenal dengan install dan uninstall (install / remove).

RPM menyimpan informasi tentang paket yang diinstalasi dalam sebuah database. Penghapusan paket berarti juga menghapus semua files dan direktori yang terdaftar pada database tersebut, lengkap dengan nama PATH (lokasi dimana file dan direktori tersebut berada). 

RPM menyimpan paket dalam bentuk file yang telah dikompres dan ditulis sebagai file degan ekstensi .rpm. 

2.    FUNGSI MANAJER PAKET SOFTWARE

  • Menghitung besar paketyang disesuaikan dengan kapasitas penyimpanan disk yang masih tersedia, apakah cukup atau tidak.
  • Memeriksa apakah ada library atau file- file lain yang dibutuhkan untuk software tersebut.
  • Menghindari konflik dengan software yang telah terpasang di system.
  • Proses instalasi tidak mengacaukan system (membuat system file menjadi terganggu / korup). 
  • Upgrade ke versi yang baru tanpa mengganggu konfigurasi yang sudah ada.
  • Verifikasi files dalam paket tersebut.
3.    PAKET SOFTWARE

Terdiri dari 2 jenis :
  1. Paket binary (biner), terdiri atas kumpulan program executable. Paket ini berekstensi *.rpm.
  2. Paket source, Berisi teks dari program yang kemudian dapat dikompilasi menjadi executable. Paket ini mempunyai ekstensi *.src.rpm.
4.    NAMA PAKET

Penamaan paket diatur dengan konven si sebagai berikut :
  • Nama
  • Versi
  • Release
  • Platform arsitektur (Intel, Alpha, Risc, …)
Description: Linux

5.    RPM QUERY

RPM dengan opsi  –qmemberikan informasi tentang paket sebagai berikut :

# rpm –q samba
samba –2.0.5 -1S
#

Informasi tentang versi paket samba adalah versi 2.0.5. 
Beberapa sub - opsi dapat diberikan, antara lain :

i
menampilkan informasi yang lebih rinci
l
list (daftar) se mua file(s)
d
tampilkan hanya file dokumentasi saja
c
tampilkan hanya konfigurasi file
f
info tentang paket memiliki file apa saja
p
berfungsi pada paket yang belum diinstalasi
--scripts
menampilkan script untuk instalasi

6.    TAR

Tar singkatan dari Tape A Rchive. Tar mula- mula didesain untuk backup tape, tetapi digunakan untuk membuat file tar pada semua sistem file. tar membuat satu "tar nama  versi   release   platform file" (yang disebut dengan "tarball") pada beberapa file dan direktori. File tar tidak dikompresi, hanya sebuah file heap yang dibentuk bersama dalam satu kontainer.Sehingga file tar akan mempunyai jumlah byte yang sama dengan semua file individu yang dikombinasikan ditambah sedikit file ekstra. File tar dapat dikompresi dengan menggunakan gzip atau bzip2.
Contoh :

  • tar  –xvf example.tar  mengekstraksi isi dari  example.tar dan menunjukkan file yang akan diekstraksi
  • tar  –cf backup.tar /home/ftp/pub  membuat file tar bernama backup.tar  dari isi direktori home/ftp/pub
  • tar –tvf example.tar  menampilkan isi dari example.tar pada screen. 

7.    GZIP

Gzip merupakan format ZIP UNIX yang asli. Biasanya membentuk file tar terlebih dahulu dan kemudian mengkompresi dengan menggunakan gzip. File -file ini mempunyai ekstensi .tar.gz yang menunjukkan file tar yang di - zip dengan gzip. Selain itu juga terdapat file berekstensi .tgz. File ini merupakan file kompresi dengan gzip yang kompatibel dengan WinZip dan PkZip. Sehingga file zip pada UNIX dapat di unzip pada Windows.
Contoh :

  • Untuk kompresi file menggunakan gzip, eksekusi perintah berikut  : gzip filename.tar (dimana filename.tar adalah nama file yang dikompres).  Hasil dari operasi ini adalah file yang bernama filename.tar.gz.  Defaultnya, gzip akan menghapus file filename.tar
  • Untuk dekompresi file menggunakan gzip, eksekusi perintah beriku t : gzip   – d filename.tar.gz. Hasil dari operasi ini adalah file bernama filename.tar. Defaultnya, gzip akan menghapus file filename.tar.gz



0 comments:

Post a Comment