Perintah Dasar Linux untuk Pengelola Server
Artikel ini akan memberikan pengenalan
terhadap beberapa perintah dasar yang dapat anda manfaatkan untuk
mengelola server linux anda melalui Shell.
Untuk semua perintah linux, kita dapat menekan tombol <tab> sebanyak dua kali untuk melihat kemungkinan perintah yang dapat digunakan. Misalnya apabila ingin mengetahui command apa saja yang dimulai dengan huruf awal co, maka cukup ketikkan c lalu tekan <tab> dua kali, maka command-command dengan huruf awal co akan muncul.
Contohnya apabila kita ingin memecah output yang kita dapat dari perintah listing (ls) yang lebih dari satu halaman, kita dapat menggunakan perintah more, hal ini akan menghentikan tampilan perhalaman. Atau kita ingin melakukan filter output dari ps, misalnya hanya ingin menampilkan baris yang memiliki kata nginx, dapat dilakukan dengan menggunakan grep;
Untuk menginstall atau update paket, dapat menggunakan perintah:
Mendownload file dari server:
Bila kita ingin mematikan server, maka commandnya adalah:
Untuk semua perintah linux, kita dapat menekan tombol <tab> sebanyak dua kali untuk melihat kemungkinan perintah yang dapat digunakan. Misalnya apabila ingin mengetahui command apa saja yang dimulai dengan huruf awal co, maka cukup ketikkan c lalu tekan <tab> dua kali, maka command-command dengan huruf awal co akan muncul.
# co <tab> 2x col colrm comm compgen complete consoletype colcrt column command compile_et consolehelper continue
Help
Masing-masing perintah biasanya memiliki parameter yang dapat kita gunakan, hal ini dapat kita ketahui dengan mudah dengan mengetikkan tambahan (spasi) –help di perintah yang ingin kita pelajari lebih lanjut.# ps --help ********* simple selection ********* ********* selection by list ********* -A all processes -C by command name -N negate selection -G by real group ID (supports names) -a all w/ tty except session leaders -U by real user ID (supports names) ... dan seterusnya
Pipe(|)
Pipe (|) dapat digunakan untuk mengkombinasikan dua atau lebih perintah demi mencapai output yang kita inginkan, perintah yang berbeda tersebut cukup dipisahkan dengan symbol “|”.Contohnya apabila kita ingin memecah output yang kita dapat dari perintah listing (ls) yang lebih dari satu halaman, kita dapat menggunakan perintah more, hal ini akan menghentikan tampilan perhalaman. Atau kita ingin melakukan filter output dari ps, misalnya hanya ingin menampilkan baris yang memiliki kata nginx, dapat dilakukan dengan menggunakan grep;
# ps aux | grep nginx root 10148 0.0 0.3 42948 1012 ? Ss 21:42 0:00 nginx: master process /usr/local/sbin/nginx nobody 10149 0.0 0.8 43848 2316 ? S 21:42 0:00 nginx: worker process nobody 10150 0.0 0.8 43716 2196 ? S 21:42 0:00 nginx: worker process nobody 10151 0.0 0.9 43956 2424 ? S 21:42 0:00 nginx: worker process nobody 10152 0.0 0.5 43324 1444 ? S 21:42 0:00 nginx: worker process nobody 10153 0.0 0.8 44120 2308 ? S 21:42 0:00 nginx: worker process root 11328 0.0 0.2 5996 540 pts/0 R+ 22:41 0:00 grep nginx
df
Digunakan untuk melihat informasi filesystem pada setiap partisi. Namun yang biasa digunakan adalah df -h karena tampilannya mudah dimengerti oleh kita, beberapa parameter lain dapat dimanfaatkan untuk merubah preferensi yang anda inginkan.# df -h Filesystem Size Used Avail Use% Mounted on /dev/sda1 40G 17G 21G 46% / varrun 512M 84K 512M 1% /var/run varlock 512M 0 512M 0% /var/lock udev 512M 16K 512M 1% /dev devshm 512M 0 512M 0% /dev/shm none 512M 0 512M 0% /dev/shm
ps
ps adalah perintah yang digunakan jika kita perlu mengecek proses yang berjalan pada server. Contoh perintah ps dasar adalah ps -aux, karena semua proses yang berjalan akan tampil. Bila kita hanya ingin melihat suatu proses (misalnya apache), maka gunakan perintah ps -aux | grep apache.top
Menampilkan statistik sistem dan detil terhadap proses di server yang aktif.w
Untuk melihat siapa saja yang sedang login pada servernetstat
Menampilkan ringkasan koneksi network dan status socket yang sedang berjalan di server. Kita dapat mengkhususkan ke port tertentu (misalnya port 80), maka perintah yang dapat digunakan adalah netstat | grep :80yum / apt-get
yum merupakan perintah manipulasi paket yang biasanya digunakan oleh distribusi linux berbasis rpm seperti Redhat, CentOS dan Fedora, sementara apt-get digunakan oleh distribusi linux berbasis debian seperti Debian dan Ubuntu. Manipulasi file dengan package management akan sangat tergantung kepada distribusi linux yang digunakan.Untuk menginstall atau update paket, dapat menggunakan perintah:
yum install <nama paket> apt-get install <nama paket>Atau kalau kita perlu mengupdate packet, dapat gunakan perintah:
yum update <nama paket>Atau untuk mencari paket yang tersedia sesuai dengan keyword yang kita masukkan dapat dilakukan dengan cara;
yum search keyword
ree
Digunakan untuk melihat sisa memory dan swap yang terpakai, umumnya digunakan free -m yaitu mengecek memory dengan satuan MB. Contoh penggunaan:# free -m total used free shared buffers cached Mem: 1024 387 636 0 154 98 -/+ buffers/cache: 135 888 Swap: 2047 0 2047
wget
Dapat digunakan untuk mendownload file, grab website, mirroring,dll. Berikut contoh-contoh penggunaannyaMendownload file dari server:
wget http://www.goldendrake.web.id/contoh.txt
wget -c http://www.goldendrake.web.id/contoh.txt
wget -b http://www.goldendrake.web.id/contoh.txt
kill
Seperti namanya, command ini digunakan untuk membunuh atau menghentikan sebuah proses. Biasanya sebelum menggunakan kill, maka terlebih dahulu kita menjalankan perintah ps untuk melihat ID proses yang ingin dikill.$ ps aux | grep apache2 www-data 9576 0.0 0.2 11272 2156 ? S Sep06 0:00 /usr/sbin/apache2 -k start www-data 9577 0.0 0.1 11456 2020 ? S Sep06 0:00 /usr/sbin/apache2 -k start www-data 9578 0.0 0.3 185916 3588 ? Sl Sep06 0:00 /usr/sbin/apache2 -k start www-data 10523 0.0 0.3 185912 3596 ? Sl Sep06 0:00 /usr/sbin/apache2 -k startLalu untuk menghentikan prosesnya, kita mengetikkan command kill disertai -9 [yang berarti eksekusi] dan PID IDnya:
kill -9 1537
ifconfig
Perintah ini digunakan untuk melihat konfigurasi IP yang sudah ada pada network interface yang ada dalam server kita. Perintah ifconfig juga dapat dipakai untuk menentukan alamat IP dan netmask pada suatu interface. Contoh penggunaan ifconfig untuk melihat konfigurasi ethernet tertentu;# ifconfig -eth0 eth0 Link encap:Ethernet HWaddr aa:00:21:fa:62:01 inet addr:117.103.xx.xxx Bcast:117.103.xx.255 Mask:255.255.255.0 inet6 addr: fe80::a800:21ff:fefa:6201/64 Scope:Link UP BROADCAST RUNNING MULTICAST MTU:1500 Metric:1 RX packets:3052329 errors:0 dropped:0 overruns:0 frame:0 TX packets:123389 errors:0 dropped:0 overruns:0 carrier:0 collisions:0 txqueuelen:1000 RX bytes:895150664 (853.6 MB) TX bytes:20386246 (19.4 MB)
last
Perintah ini digunakan untuk melihat orang yang login terakhir.# last test pts/0 117.103.52.34 Mon Sep 7 15:37 still logged in
locate
Digunakan untuk mencari file berdasarkan nama file atau berdasarkan keyword.locate <nama file>
tail
Digunakan untuk menampilkan potongan akhir file.tail /var/log/messages #melihat 10 baris terakhir dari /var/log/messages tail -f /var/log/messages # melihat line dari /var/log/messages secara terus menerus
ping
Sama seperti windows, linux juga dapat mengecek komunikasi antar komputer dalam sebuah jaringan melalui protokol TCP/IP.ping ip.address.atau.hostname
traceroute
Traceroute biasa digunakan untuk mengetest koneksi link terhadap suatu server. Perintah ini akan menampilkan routing paket TCP/IP dari host kita ke host yang dituju.traceroute ip.address.atau.hostname
shutdown
Perintah ini digunakan untuk mematikan atau mereboot sistem.shutdown
-r now
# akan melakukan restart
Bila kita ingin mematikan server, maka commandnya adalah:
shutdown
-h now
pwd
Digunakan untuk melihat kita berada di direktori mana.#pwd /home/testBerarti kita berada di folder /home/test
Perintah Yum Pada RHEL / Centos Linux
Perintah yum digunakan untuk install, update dan patch pada RHEL atau
Centos Linux. Untuk menggunakan perintah yum, kita diharuskan untuk
login sebagai root.
Perintah Yum RHEL / Centos Linux
Menampilkan apakah ada update dari aplikasi yang terinstall
output :# yum check-update
mysql.x86_64 5.1.66-1.el6_3 updates
mysql-libs.x86_64 5.1.66-1.el6_3 updates
mysql-server.x86_64 5.1.66-1.el6_3 updates
openssh.x86_64 5.3p1-81.el6_3 updates
openssh-clients.x86_64 5.3p1-81.el6_3 updates
openssh-server.x86_64 5.3p1-81.el6_3 updates
php-common.x86_64 5.3.3-14.el6_3 updates
php-gd.x86_64 5.3.3-14.el6_3 updates
php-mbstring.x86_64 5.3.3-14.el6_3 updates
php-mysql.x86_64 5.3.3-14.el6_3 updates
php-pdo.x86_64 5.3.3-14.el6_3 updates
php-soap.x86_64 5.3.3-14.el6_3 updates
php-xml.x86_64 5.3.3-14.el6_3 updates
selinux-policy.noarch 3.7.19-155.el6_3.6 updates
Download dan install semua update
# yum update
Daftar semua aplikasi yang terinstall
# rpm -qa
# yum list installed
Contoh penggunaan, misal aplikasi httpd sudah terinstall atau belum, dengan :
# rpm -qa | grep httpd
# yum list installed httpd
Check update pada spesifik aplikasi
# yum update <namaaplikasi>
Mencari aplikasi by name
# yum list <namaaplikasi>
Install aplikasi
# yum install <namaaplikasi-1> <namaaplikasi-2>
Uninstall aplikasi
# yum remove <namaaplikasi-1> <namaaplikasi-2>
Menampilkan daftar dari group aplikasi
Output :# yum grouplistInstalled Groups:
Engineering and Scientific
MySQL Database
Editors
System Tools
Text-based Internet
Legacy Network Server
DNS Name Server
Dialup Networking Support
FTP Server
Network Servers
Legacy Software Development
Legacy Software Support
Development Libraries
Graphics
Web Server
Ruby
Printing Support
Mail Server
Server Configuration Tools
PostgreSQL Database
Available Groups:
Office/Productivity
Administration Tools
Beagle
Development Tools
GNOME Software Development
X Software Development
Virtualization
GNOME Desktop Environment
Authoring and Publishing
Mono
Games and Entertainment
XFCE-4.4
Tomboy
Java
Java Development
Emacs
X Window System
Windows File Server
KDE Software Development
KDE (K Desktop Environment)
Horde
Sound and Video
FreeNX and NX
News Server
Yum Utilities
Graphical Internet
Done
Install group aplikasi
# yum groupinstall “<namagroupaplikasi>”
Update group aplikasi
# yum groupupdate “<namagroupaplikasi>”
Uninstall group aplikasi
# yum groupremove “<namagroupaplikasi>”
Install aplikasi particular architecture
Jika menggunakan RHEL/Centos versi 64 bit memungkinkan untuk menginstall aplikasi 32 bit
# yum install <namapackage>.<architecture>
# yum install mysql.i386
Menampilkan aplikasi yang tidak tersedia pada repo official
Output :# yum list extras
Loading “installonlyn” plugin
Loading “security” plugin
Setting up repositories
Reading repository metadata in from local files
Extra Packages
DenyHosts.noarch 2.6-python2.4 installed
VMwareTools.i386 6532-44356 installed
john.i386 1.7.0.2-3.el5.rf installed
kernel.i686 2.6.18-8.1.15.el5 installed
kernel-devel.i686 2.6.18-8.1.15.el5 installed
lighttpd.i386 1.4.18-1.el5.rf installed
lighttpd-fastcgi.i386 1.4.18-1.el5.rf installed
psad.i386 2.1-1 installed
rssh.i386 2.3.2-1.2.el5.rf installed
Melihat perintah yum yang lain
# man yum