Skip to content

Pengenalan CLI Environment & Perintah Dasar di Linux

Mengenal Shell di Linux

Apa itu shell?

Shell adalah program komputer pengubung antara user dan sistem operasi dengan bentuk berupa command-line(CLI), shell bisa juga disebut dengan terminal/konsol. Di dalam shell kita bisa mengetikkan perintah seperti membuat file, memindah file, dan masih banyak lagi.

Macam-Macam Shell

  • Bourne shell (sh)
  • Bourne again shell (bash)
  • C shell (csh)
  • Z Shell (zsh)
  • KornShell (ksh)

Setiap shell memiliki kelebihan dan kekurangan bisa disesuaikan kebutuhan masing-masing.

Bash Shell adalah shell default yang digunakan di linux.

Arti shell dalam linux

[arya@server2 ~]$

arya -> user yang sedang kita gunakan

server2 -> nama dari host yang kita gunakan

~ -> direktori saat ini

$ -> menunjukkan bahwa kita user biasa bukan superuser/root

Ketika kita menggunakan user root maka tampilannya akan seperti ini, ditandai dengan tanda #

[root@server2 ~]#

File Hierarki Linux

Di Linux terdapat struktur penempatan file dan direktori, berikut beberapa penjelasannya

TOP Level, level terujung direktori linux ada di / (root) dimana ini mencakup semua file dan direktori yang ada di linux, kalau di Windows ini seperti C: , di bawah root ada beberapa direktori seperti

/dev berisi perangkat yang terhubung secara langsung di komputer/laptop, misal harddisk dengan tipe sata maka direktorinya /dev/sdaX, X adalah nomor perangkat yang terhubung, jika haddisk pertama kali terhubung maka direktorinya ada di /dev/sda1

/etc berisi file dan direktori untuk konfigurasi sistem, misal kita akan mengkonfigurasi apache2 web server maka letak konfigurasinya ada di direktori /etc/apache2

/root lokasi untuk home direktori user root

/mnt sebagai lokasi mounting penyimpanan sementara, misal kita menancapkan flashdrive ke linux maka secara otomatis lokasi mount pointnya ada di /mnt/blablabla

/boot berisi kernel dan konfigurasi ketika booting

/home sebagai lokasi home folder di setiap user, misal user arya maka home direktorinya ada di /home/arya

/bin berisi file binari yang bisa dijalankan oleh user biasa

/sbin berisi file binari yang bisa dijalankan oleh user root

/lib berisi file librari yang dibutuhkan untuk menjalankan perintah yang ada di /bin atau /sbin

/opt berisi file paket installasi yang di download dari luar

/usr/bin & /usr/sbin sama seperti /bin jika suatu perintah tidak ditemukan di /bin maka akan mengarah ke /usr/bin atau /usr/sbin

Perintah Dasar Linux

Dengan CLI kita bisa melakukan banyak hal layaknya kita menggunakan GUI, berikut daftar beberapa perintah yang biasanya digunakan di Linux.

Membuat direktori baru

[root@server2 ~]# mkdir linux

mkdir namadirektori

Pindah direktori

[root@server2 ~]# cd linux

cd namadirektori

Melihat kita berada di direktori mana

[root@server2 linux]# pwd 
/root/linux

Membuat file kosong

[root@server2 linux]# touch file1.txt

touch namafile

Melihat isi direktori

[root@server2 linux]# ls
file1.txt

Melihat isi direktori dengan format list

[root@server2 linux]# ls -l
total 0
-rw-r--r--. 1 root root 0 Jun 13 18:56 file1.txt

Menampilkan isi file

[root@server2 ~]# cat /etc/passwd
root:x:0:0:root:/root:/bin/bash
bin:x:1:1:bin:/bin:/sbin/nologin
daemon:x:2:2:daemon:/sbin:/sbin/nologin
adm:x:3:4:adm:/var/adm:/sbin/nologin

Format penulisan:

cat namafile

Menampilkan isi file bagian atas

[root@server2 ~]# head /etc/passwd
root:x:0:0:root:/root:/bin/bash
bin:x:1:1:bin:/bin:/sbin/nologin
daemon:x:2:2:daemon:/sbin:/sbin/nologin
adm:x:3:4:adm:/var/adm:/sbin/nologin

Menampilan isi file bagian atas dengan jumlah baris spesifik, misal 3 baris paling atas

[root@server2 ~]# head -n3 /etc/sudoers
## Sudoers allows particular users to run various commands as
## the root user, without needing the root password.
##

Menampilkan isi file bagian bawah

[root@server2 ~]# tail /etc/sudoers

## Allows members of the users group to mount and unmount the 
## cdrom as root
# %users  ALL=/sbin/mount /mnt/cdrom, /sbin/umount /mnt/cdrom

## Allows members of the users group to shutdown this system
# %users  localhost=/sbin/shutdown -h now

## Read drop-in files from /etc/sudoers.d (the # here does not mean a comment)
#includedir /etc/sudoers.d

Menampilkan isi file bagian bawah dan bisa di scroll

[root@server2 ~]# tail -f /etc/shadow
nobody:*:18367:0:99999:7:::
dbus:!!:19156::::::
systemd-coredump:!!:19156::::::
systemd-resolve:!!:19156::::::

Menyalin file

[root@server2 linux]# cp file1.txt file2.txt

Format penulisan:

cp namafileyangdicopy namafilehasilcopy

Memindah file

[root@server2 linux]# mv file1.txt /home/arya

Format penulisan:

mv fileyangdipindah lokasitujuan

Menghapus file

[root@server2 linux]# rm file2.txt
rm: remove regular empty file 'file2.txt'? yes

Jika kita menghapus file yang kosong maka akan muncul pertanyaan, apakah kita yakin akan menghapusnya atau tidak. Jika tidak ingin mengabaikan argumen file maka bisa menggunakan perintah

[root@server2 linux]# rm -f file2.txt

Menghapus Direktori

[root@server2 ~]# ls
anaconda-ks.cfg  linux
[root@server2 ~]# rm -r linux
rm: remove directory 'linux'? yes

sama seperti tadi jika ingin langsung menghapus tanpa ada argumen pertanyaan tambahkan parameter -f

[root@server2 ~]# rm -rf linux

Mencari File

Menggunakan perintah find

[root@server2 arya]# find . -name halo.txt
./folder1/halo.txt

Format penulisan:

find lokasiyangingindicari -name namafile

Terlihat bahwa file halo.txt berada di dalam folder1

Mencari file dengan case sensitive

contoh mencari file/folder dengan nama yang berkaitan dengan bind

[root@server2 arya]# find /etc -iname bind*
/etc/crypto-policies/back-ends/bind.config
/etc/bindresvport.blacklist

Menggunakan perintah locate

Sebelum menggunakan perintah locate kita perlu melakukan updatedb, untuk mengupdate database yang berlokasi di /var/lib/mlocate/mlocate.db

[root@server2 ~]# updatedb

Setelah itu kita baru bisa menggunakan perintah locate, contoh mencari file yang berkaitan dengan kata “passwd”

[root@server2 ~]# locate passwd
/etc/passwd
/etc/passwd-
/etc/pam.d/passwd
/etc/security/opasswd

Mencari file berdasarkan ekstension, contoh mencari file berekstensi .sh

[root@server2 ~]# locate .sh
/etc/X11/xinit/xinitrc.d/50-systemd-user.sh
/etc/bash_completion.d/authselect-completion.sh
/etc/profile.d/colorgrep.sh
/etc/profile.d/colorls.sh
/etc/profile.d/colorxzgrep.sh
/etc/profile.d/colorzgrep.sh

Penggunaan teks editor

Teks editor adalah aplikasi untuk mengedit file teks, jika di Windows biasanya kita menggunakan Notepad kalau di linux ada banyak alternatif untuk teks editor tapi pada umumnya untuk pemula agar mudah melakukan pengeditan teks bisa menggunakan aplikasi nano.

Contoh: Kita ingin membuat file txt sederhana bernama fileku.txt

[root@server2 ~]# nano fileku.txt

Kita bisa menulis disini, misal Red Hat Linux

Kemudian untuk menyimpan gunakan perintah CTRL+O dan untuk keluar dari nano menggunakan perintah CTRL+X

Pengunaan perintah grep

grep adalah perintah yang berfungsi ketika kita ingin mencari output secara spesifik, contohnya kita ingin melihat apakah ada output dari file /etc/passwd yang memiliki kata root

[root@server2 ~]# cat /etc/passwd | grep root

Terlihat ada 2 baris hasil output dari isi file /etc/passwd yang memiliki kata root

Manage File Permission Linux

Di linux kita bisa mengubah hak akses suatu file dengan perintah chmod.

jadi chmod adalah perintah untuk memberi akses (read, write, executable) kepada user,group,dan lainnya
terhadap file/folder

  1. Read = r = memberikan kepada group / user untuk hanya sekedar membaca / melihat.
  2. Write = w = memberikan kepada group / user untuk bisa menulis file tersebut.
  3. Executable = x = memberikan kepada group / user untuk bisa mengeksekusi file tersebut.
    Kita bisa menggunakan angka misal chmod 777 dengan keterangan sebagai berikut:
    0=—
    1 = –x
    2 = -w-
    3 = -wx
    4 = r–
    5 = r-x
    6 = rw-
    7 = rwx

Jadi ketika kita menggunakan chmod 777 maka user,group,dan other(selain user dan group) bisa melakukan baca,tulis,dan eksekusi pada file.

Jika menggunakan perintah chmod 774 berarti yang bisa melakukan baca,tulis,eksekusi file hanya user dan group untuk other()

Untuk melihat permission suatu file kita bisa menggunakan perintah ls -l

[root@server2 ~]# ls -l

Ada 9 dash, 3 baris pertama untuk permission user misal chmod 777 berarti

rwxrwxrwx

rwx pertama permission untuk user

rwx kedua untuk group

rwx ketiga untuk other.

Published inLinux

Be First to Comment

Leave a Reply

Your email address will not be published. Required fields are marked *