Terminal
Terminal adalah antarmuka berbasis teks yang menjadi jembatan antara pengguna dan sistem operasi Linux. Berbeda dengan antarmuka grafis yang menggunakan jendela, ikon, dan mouse, terminal mengandalkan perintah yang diketikkan langsung. Untuk membuka terminal di sebagian besar distribusi Linux, cari aplikasi bernama Terminal, Konsole, atau Gnome Terminal dari menu aplikasi. Setelah terbuka, Anda akan melihat prompt, yaitu baris teks yang biasanya berisi nama pengguna, nama komputer, dan direktori aktif, diakhiri dengan tanda dolar ($) untuk pengguna biasa atau tanda pagar (#) untuk pengguna root. Di sinilah Anda mulai mengetik perintah. Jangan khawatir jika tampak asing, karena setelah memahami beberapa perintah dasar, Anda akan merasakan efisiensi yang luar biasa.
1. Mengetahui Posisi Saat Ini
Ketika terminal pertama kali dibuka, Anda selalu berada di suatu tempat dalam sistem file, tepatnya di direktori home pengguna. Untuk mengetahui persis di mana posisi Anda saat ini, gunakan perintah pwd, singkatan dari print working directory. Cukup ketik pwd lalu tekan Enter, dan terminal akan menampilkan jalur lengkap direktori aktif, misalnya /home/namaanda. Perintah ini sangat penting sebagai penunjuk arah sebelum Anda mulai memindahkan atau mengelola file, karena setiap operasi sangat bergantung pada lokasi aktif.
2. Melihat Isi Direktori
Untuk mengetahui file dan folder apa saja yang ada di direktori aktif, gunakan perintah ls. Jika dijalankan tanpa opsi tambahan, ls hanya menampilkan nama item secara sederhana dalam beberapa kolom. Agar informasi lebih lengkap, gunakan opsi -l (format daftar panjang) yang menampilkan izin akses, jumlah tautan, pemilik, grup, ukuran, dan waktu modifikasi. Opsi -a menampilkan semua file, termasuk file tersembunyi yang namanya diawali dengan tanda titik. Untuk hasil paling informatif, gabungkan opsi menjadi ls -la. Contoh praktis: ls -la /home akan menampilkan seluruh isi direktori home secara lengkap, termasuk file konfigurasi tersembunyi.
3. Berpindah Direktori
Perintah cd (change directory) digunakan untuk berpindah dari satu direktori ke direktori lain. Format penulisannya adalah cd diikuti dengan jalur tujuan. Misalnya, cd /var/log akan membawa Anda ke direktori log sistem. Untuk kembali ke direktori home dari mana pun posisi Anda, cukup ketik cd tanpa argumen. Dua titik .. mewakili direktori di atasnya (parent directory), sehingga cd .. berarti naik satu tingkat. Tanda tilde ~ juga merujuk ke direktori home, sehingga cd ~/Dokumen sama dengan berpindah ke folder Dokumen di dalam home. Latihan yang baik adalah berpindah maju mundur menggunakan cd, cd .., dan cd ~ hingga Anda hafal pola navigasi pohon direktori.
4. Membuat Direktori Baru
Membuat folder atau direktori baru dilakukan dengan perintah mkdir (make directory) diikuti nama direktori yang diinginkan. Contoh sederhana: mkdir proyek akan membuat folder bernama proyek di lokasi aktif. Jika ingin membuat struktur bertingkat sekaligus, misalnya proyek/2024/laporan, gunakan opsi -p sehingga perintahnya menjadi mkdir -p proyek/2024/laporan. Opsi ini akan membuat semua direktori induk yang belum ada secara otomatis tanpa menampilkan pesan kesalahan. Pastikan Anda memiliki izin tulis pada lokasi tempat direktori baru akan dibuat, karena tanpa izin yang cukup, perintah akan gagal.
5. Membuat File Kosong
Perintah touch memiliki dua fungsi utama: membuat file kosong baru, atau memperbarui waktu akses dan modifikasi file yang sudah ada. Untuk membuat file kosong, tulis touch namafile.txt. Jika file dengan nama tersebut belum ada, sistem akan membuatkannya dengan ukuran nol byte. Jika sudah ada, touch hanya akan mengubah stempel waktu tanpa mengubah isi. Perintah ini sangat praktis untuk mempersiapkan file-file yang nanti akan diisi, seperti touch catatan.txt konfigurasi.conf data.csv. Anda juga bisa menggunakan touch untuk membuat file tersembunyi dengan menambahkan titik di depan nama, misalnya touch .hidden.
6. Menyalin File dan Direktori
Menyalin data dari satu lokasi ke lokasi lain dilakukan dengan perintah cp (copy). Format dasarnya adalah cp sumber tujuan. Contoh: cp laporan.txt /home/andi/arsip/ akan menyalin file laporan.txt ke folder arsip dengan nama yang sama. Untuk menyalin sambil mengganti nama, tulis cp laporan.txt laporan_backup.txt. Jika sumbernya adalah direktori, Anda harus menambahkan opsi -r (recursive) agar semua isi direktori ikut disalin, misalnya cp -r proyek/ proyek_backup/. Opsi -i membuat terminal bertanya terlebih dahulu sebelum menimpa file yang sudah ada, sehingga aman untuk digunakan bersama cp -ri. Biasakan menggunakan opsi -i saat belajar untuk menghindari kehilangan data.
7. Memindahkan dan Mengganti Nama
Perintah mv (move) menangani dua tugas sekaligus: memindahkan file ke lokasi lain dan mengganti nama file. Untuk memindahkan, tulis mv namafile /tujuan/baru/. Untuk mengganti nama, cukup gunakan nama baru sebagai argumen tujuan, seperti mv lama.txt baru.txt. Karena mv tidak menyalin data, melainkan hanya mengubah catatan lokasi, operasi ini sangat cepat bahkan untuk file berukuran besar. Sama seperti cp, Anda bisa menggunakan opsi -i untuk meminta konfirmasi sebelum menimpa file yang sudah ada. Ketika memindahkan direktori, mv tidak memerlukan opsi khusus karena sistem langsung memindahkan seluruh pohon direktori secara atomik.
8. Menghapus File dan Direktori
Perintah rm (remove) digunakan untuk menghapus file secara permanen. Hati-hati karena file yang dihapus dengan rm tidak masuk ke tempat sampah dan sangat sulit, bahkan tidak mungkin, dipulihkan. Format sederhananya adalah rm namafile.txt. Untuk menghapus beberapa file sekaligus, tulis rm file1.txt file2.txt file3.jpg. Menghapus direktori kosong bisa menggunakan rmdir, namun jika direktori berisi file dan subdirektori, Anda harus menggunakan rm -r namadirektori (recursive). Opsi -f (force) menekan peringatan dan tetap berjalan meskipun ada file yang dilindungi atau tidak ada file yang cocok. Kombinasi rm -rf sangat kuat dan berbahaya; pastikan Anda benar-benar yakin dengan jalur yang diberikan sebelum menjalankannya, misalnya periksa terlebih dahulu dengan ls sebelum menghapus.
9. Melihat Isi File
Linux menyediakan beberapa perintah untuk membaca isi file, masing-masing dengan kegunaan berbeda. Perintah cat (concatenate) akan mencetak seluruh isi file ke layar sekaligus, cocok untuk file pendek seperti konfigurasi sederhana. Contoh: cat /etc/hostname. Untuk file yang panjangnya lebih dari satu layar, cat akan menggulir terlalu cepat, sehingga lebih baik menggunakan less. Ketik less namafile untuk membuka file dalam halaman yang bisa digulir dengan tombol panah, spasi untuk halaman berikutnya, dan q untuk keluar. Jika Anda hanya ingin melihat sepuluh baris pertama, gunakan head -10 namafile. Sebaliknya, tail -10 namafile menampilkan sepuluh baris terakhir, yang sangat berguna untuk memantau file log karena opsi tail -f akan terus menampilkan baris baru yang ditambahkan secara langsung hingga Anda menekan Ctrl+C.
10. Memahami Izin Akses File
Setiap file dan direktori di Linux memiliki tiga tingkatan izin: baca (r), tulis (w), dan eksekusi (x), yang diterapkan secara terpisah untuk tiga kategori: pemilik, grup, dan pengguna lain. Anda bisa melihat izin ini dengan ls -l yang menampilkan deret seperti -rw-r--r--. Karakter pertama menandakan tipe (- untuk file, d untuk direktori), kemudian tiga karakter untuk pemilik, tiga untuk grup, dan tiga untuk lainnya. Untuk mengubah izin, gunakan perintah chmod. Cara angka oktal adalah metode ringkas: 4 untuk baca, 2 untuk tulis, 1 untuk eksekusi, lalu jumlahkan ketiganya. Misalnya, chmod 755 skrip.sh memberi pemilik izin penuh (7 = 4+2+1) dan grup serta pengguna lain izin baca+eksekusi (5 = 4+1). Cara simbolis juga umum: chmod u+x skrip.sh menambahkan eksekusi untuk pemilik, chmod go-w dokumen.txt menghilangkan izin tulis dari grup dan orang lain. Menguasai izin file sangat penting untuk keamanan sistem dan kerja sama tim.
11. Melihat Proses Berjalan
Sistem Linux menjalankan banyak proses secara bersamaan. Perintah ps menampilkan snapshot proses yang berjalan pada saat perintah dijalankan. Untuk melihat semua proses milik pengguna Anda, gunakan ps aux yang merupakan kombinasi opsi umum: a untuk semua pengguna, u format berorientasi pengguna, x termasuk proses tanpa terminal kontrol. Outputnya mencakup ID proses (PID), penggunaan CPU, memori, dan perintah yang dijalankan. Sementara ps hanya memberikan gambaran sesaat, perintah top menampilkan daftar proses yang terus diperbarui secara real-time, mirip dengan task manager. Di dalam tampilan top, Anda bisa menekan q untuk keluar, k diikuti PID untuk menghentikan proses, dan h untuk melihat bantuan. Versi yang lebih modern dan ramah pengguna adalah htop, yang mungkin perlu diinstal terlebih dahulu dengan sudo apt install htop di Ubuntu/Debian.
12. Menghentikan Proses
Ketika sebuah program tidak merespons atau perlu dihentikan secara paksa, gunakan perintah kill dengan PID yang diperoleh dari ps, top, atau htop. Contoh: kill 1234 mengirim sinyal default TERM (terminate) yang meminta proses berhenti dengan sopan, memberi kesempatan untuk menyimpan data. Jika proses mengabaikan sinyal tersebut, Anda bisa mengirim sinyal KILL yang tidak bisa ditolak: kill -9 1234. Selain angka, Anda juga bisa menggunakan nama sinyal seperti kill -SIGKILL 1234. Perlu diingat bahwa menghentikan proses sistem yang penting dapat menyebabkan ketidakstabilan, jadi selalu pastikan Anda tahu proses apa yang dihentikan. Untuk menghentikan proses berdasarkan nama, gunakan pkill atau killall, misalnya pkill firefox atau killall -9 chrome.
13. Membantu Diri Sendiri
Tidak ada yang perlu menghafal semua perintah karena Linux menyediakan dokumentasi bawaan yang sangat lengkap. Perintah man (manual) membuka halaman manual untuk perintah tertentu, misalnya man ls akan menampilkan penjelasan detail, semua opsi yang tersedia, contoh penggunaan, dan referensi silang. Navigasi dalam halaman man sama seperti less: gunakan tombol panah atau spasi untuk menggulir, lalu tekan q untuk keluar. Untuk ringkasan cepat opsi-opsi utama, kebanyakan perintah mendukung flag --help, seperti cp --help atau grep --help. Dokumentasi --help biasanya lebih pendek dan langsung ke poin, cocok untuk mengingat opsi yang sering dipakai. Biasakan diri membuka man setiap kali Anda menemui perintah baru, karena membaca dokumentasi asli adalah cara terbaik dan paling otoritatif untuk belajar Linux.
14. Menyambung Perintah
Salah satu konsep paling kuat di terminal adalah pipe yang dilambangkan dengan karakter garis vertikal |. Pipe mengambil output (hasil cetakan) dari perintah di sebelah kirinya dan menggunakannya sebagai input untuk perintah di sebelah kanannya. Contoh klasik: ls -la | less mengirim daftar file yang panjang ke less sehingga Anda bisa menggulirnya dengan nyaman. Contoh lain: ps aux | grep firefox akan menampilkan hanya baris dari ps aux yang mengandung kata firefox, karena output disaring melalui grep. Anda bisa merangkai banyak perintah sekaligus, misalnya cat log.txt | grep error | sort | uniq -c | less yang akan menampilkan daftar error, diurutkan, dihitung kemunculannya, lalu ditampilkan per halaman. Pipe tidak menghasilkan file sementara, melainkan mengalirkan data langsung dari memori, sehingga sangat efisien untuk memproses teks dalam jumlah besar.
15. Mengarahkan Input dan Output
Selain pipe, terminal juga mendukung pengalihan (redirection) ke file menggunakan simbol >, >>, dan <. Simbol > menulis output perintah ke sebuah file, menimpa isi file jika sudah ada. Contoh: echo "Halo dunia" > salam.txt akan membuat file salam.txt berisi teks "Halo dunia". Simbol >> menambahkan output ke akhir file tanpa menghapus isi yang sudah ada, sangat cocok untuk mencatat log. Simbol < mengarahkan isi file sebagai input untuk perintah, misalnya sort < daftar.txt akan membaca daftar.txt dan mengurutkannya. Pesan kesalahan (error) juga bisa dialihkan menggunakan 2> untuk error standar. Kombinasi command > output.txt 2>&1 mengalihkan baik output normal maupun error ke file yang sama. Kemampuan redirection ini memungkinkan Anda mencatat hasil eksekusi, membuat skrip sederhana, atau memproses data secara otomatis tanpa perlu menyalin teks secara manual.
16. Pencarian Teks
grep adalah perintah yang sangat sering digunakan untuk mencari teks menggunakan pola tertentu. Format paling sederhana: grep "kata" namafile. Perintah akan menampilkan semua baris dalam file yang mengandung kata tersebut. Agar pencarian tidak peka huruf besar-kecil (case-insensitive), gunakan opsi -i. Untuk mencari secara rekursif ke dalam seluruh direktori, grep -r "pola" . akan memeriksa semua file di bawah direktori saat ini. Opsi -n menampilkan nomor baris di samping setiap kecocokan, -v menampilkan baris yang tidak mengandung pola (kebalikan), dan -l hanya menampilkan nama file yang mengandung kecocokan tanpa menampilkan isinya. Contoh nyata: grep -r "error" /var/log/ sangat berguna untuk menemukan pesan kesalahan di seluruh file log sistem. grep juga mendukung regular expression (regex), misalnya grep "^#include" program.c mencari baris yang diawali dengan #include.
17. Menjalankan Perintah
Banyak tugas administratif, seperti menginstal perangkat lunak atau mengubah file sistem, memerlukan hak akses root (pengguna super). Perintah sudo (superuser do) menjalankan perintah berikutnya sebagai pengguna super, asalkan akun Anda terdaftar dalam file sudoers. Contoh: sudo apt update untuk memperbarui daftar paket di distribusi berbasis Debian/Ubuntu, atau sudo nano /etc/hosts untuk mengedit file hosts sistem. Saat menjalankan sudo, Anda akan diminta memasukkan password akun Anda sendiri, bukan password root. Karena sudo memberikan kekuatan penuh, gunakan dengan bijak dan hanya untuk perintah yang memang membutuhkannya. Untuk sementara menjadi pengguna root secara interaktif, Anda bisa menjalankan sudo -i, tetapi ini tidak disarankan untuk penggunaan sehari-hari karena risiko kesalahan yang fatal, seperti menghapus file sistem penting.
18. Keluar dan Mengakhiri Sesi Terminal
Untuk menutup terminal, Anda bisa menekan tombol tutup jendela seperti biasa, tetapi secara teknis perintah exit adalah cara yang bersih untuk mengakhiri sesi shell. Jika Anda terhubung ke mesin jarak jauh melalui SSH, exit akan memutuskan koneksi dengan baik. Pada sesi lokal, exit akan menutup jendela terminal. Alternatifnya, tekan Ctrl+D yang mengirimkan karakter end-of-file dan memiliki efek sama dengan exit. Sebelum keluar, pastikan tidak ada proses penting yang masih berjalan di latar belakang, karena menutup terminal akan mengirim sinyal hangup (SIGHUP) yang biasanya menghentikan semua proses turunan. Jika ingin proses tetap berjalan setelah terminal ditutup, pelajari lebih lanjut tentang perintah nohup atau screen.