Linux Commands: Difference between revisions

 
(7 intermediate revisions by the same user not shown)
Line 8: Line 8:


Tutorial ini akan mengajari Anda sedikit tentang sejarah baris perintah, kemudian memandu Anda melalui beberapa latihan praktis untuk menjadi terbiasa dengan beberapa perintah dan konsep dasar. Kami menganggap tidak ada pengetahuan sebelumnya, tetapi pada akhirnya kami berharap Anda akan merasa sedikit lebih nyaman saat berikutnya Anda dihadapkan pada beberapa petunjuk yang memulai "Buka terminal".  
Tutorial ini akan mengajari Anda sedikit tentang sejarah baris perintah, kemudian memandu Anda melalui beberapa latihan praktis untuk menjadi terbiasa dengan beberapa perintah dan konsep dasar. Kami menganggap tidak ada pengetahuan sebelumnya, tetapi pada akhirnya kami berharap Anda akan merasa sedikit lebih nyaman saat berikutnya Anda dihadapkan pada beberapa petunjuk yang memulai "Buka terminal".  
==Apa yang akan kalian pelajari==
==Apa yang akan kalian pelajari==
* Sedikit sejarah tentang baris perintah.
* Sedikit sejarah tentang baris perintah.
Line 17: Line 16:
* Cara terbaik untuk menggunakan kekuatan administrator.
* Cara terbaik untuk menggunakan kekuatan administrator.
* Perintah Linux sensitif terhadap huruf besar/kecil sehingga Kalian harus berhati-hati tentang apa yang Kalian masukkan.
* Perintah Linux sensitif terhadap huruf besar/kecil sehingga Kalian harus berhati-hati tentang apa yang Kalian masukkan.
==Beberapa Perintah==
==Beberapa Perintah==
===ls –===
===ls –===
'''Daftar isi direktori'''. Jika Anda tahu [[Windows]], Anda akan tahu bahwa perintah <code>dir</code> digunakan untuk membuat daftar konten dalam direktori. Di [[Linux]], perintah <code>ls</code> digunakan untuk membuat daftar file dan direktori. Beberapa versi mungkin mendukung pengkodean warna. Nama-nama dengan warna biru mewakili nama direktori.
'''Daftar isi direktori'''. Jika Anda tahu [[Windows]], Anda akan tahu bahwa perintah <code>dir</code> digunakan untuk membuat daftar konten dalam direktori. Di [[Linux]], perintah <code>ls</code> digunakan untuk membuat daftar file dan direktori. Beberapa versi mungkin mendukung pengkodean warna. Nama-nama dengan warna biru mewakili nama direktori.


<code>ls -l</code> | <code>more -</code> ini membantu untuk memberi nomor pada keluaran sehingga Anda dapat melihat halaman demi halaman. Jika tidak, daftar bergulir ke bawah dengan cepat. Anda selalu dapat menggunakan <code>ctrl c</code> untuk kembali ke baris perintah.
<code>ls -l</code> | <code>more -</code> ini membantu untuk memberi nomor pada keluaran sehingga Anda dapat melihat halaman demi halaman. Jika tidak, daftar bergulir ke bawah dengan cepat. Anda selalu dapat menggunakan <code>ctrl c</code> untuk kembali ke baris perintah.<syntaxhighlight lang="shell">
{{Terminal|ls -l filename}}
ls -l filename
</syntaxhighlight>


===cd /var/log –===
===cd /var/log –===
Line 37: Line 36:
* Stempel waktu
* Stempel waktu
* Nama file  
* Nama file  
<syntaxhighlight lang="shell">
cd /var/log
</syntaxhighlight>


{{Terminal|cd /var/log}}
===cp===
===cp===
Gunakan perintah dasar Linux <code>cp</code> untuk menyalin file dari direktori saat ini ke direktori yang berbeda. Misalnya, perintah <code>cp scenery.jpg /home/username/Pictures</code> untuk membuat salinan scenery.jpg (dari direktori saat ini) ke direktori Pictures.
Gunakan perintah dasar Linux <code>cp</code> untuk menyalin file dari direktori saat ini ke direktori yang berbeda. Misalnya, perintah <code>cp scenery.jpg /home/username/Pictures</code> untuk membuat salinan scenery.jpg (dari direktori saat ini) ke direktori Pictures.
===mv===
===mv===
Fungsi utama command <code>mv</code> adalah untuk memindahkan file meskipun sebenarnya bisa digunakan untuk mengganti atau mengubah nama file.
Fungsi utama command <code>mv</code> adalah untuk memindahkan file meskipun sebenarnya bisa digunakan untuk mengganti atau mengubah nama file.
Line 48: Line 48:


Untuk mengganti nama file, perintah Linux-nya adalah <code>mv oldname.ext newname.ext</code>.
Untuk mengganti nama file, perintah Linux-nya adalah <code>mv oldname.ext newname.ext</code>.
===grep –===
===grep –===
Temukan teks dalam file. Perintah grep mencari melalui banyak file sekaligus untuk menemukan teks yang Anda cari.
Temukan teks dalam file. Perintah grep mencari melalui banyak file sekaligus untuk menemukan teks yang Anda cari.<syntaxhighlight lang="shell">
 
grep PATTERN [FILE]
{{Terminal|grep PATTERN [FILE]}}
</syntaxhighlight><syntaxhighlight lang="shell">
{{Terminal|grep failed transaction.log}}
grep failed transaction.log
 
</syntaxhighlight>Perintah di atas akan menemukan semua kata dalam file yang cocok dengan kata 'gagal'.<syntaxhighlight lang="shell">
Perintah di atas akan menemukan semua kata dalam file yang cocok dengan kata 'gagal'.
grep ‘failed’ transaction.log
{{Terminal|grep ‘failed’ transaction.log}}
</syntaxhighlight>


===mkdir===
===mkdir===
Line 65: Line 63:
* Untuk membuat direktori baru di dalam direktori lain, gunakan command dasar Linux <code>mkdir Music/Newfile</code>.
* Untuk membuat direktori baru di dalam direktori lain, gunakan command dasar Linux <code>mkdir Music/Newfile</code>.
* Gunakan opsi <code>p</code> (parents) untuk membuat direktori di antara dua direktori yang sudah ada. Misalnya, <code>mkdir -p Music/2020/Newfile</code> untuk membuat file baru “2020”.
* Gunakan opsi <code>p</code> (parents) untuk membuat direktori di antara dua direktori yang sudah ada. Misalnya, <code>mkdir -p Music/2020/Newfile</code> untuk membuat file baru “2020”.
===whoami===
===whoami===
Perintah ini digunakan untuk menampilkan siapa pengguna yang masuk saat ini.
Perintah ini digunakan untuk menampilkan siapa pengguna yang masuk saat ini.<syntaxhighlight lang="shell">
{{Terminal|whoami}}
whoami
</syntaxhighlight>


===rm -rf===
===rm -rf===
Perintah ini biasanya digunakan untuk menghapus secara paksa file foleder yang tidak bisa dihapus oleh user biasa
Perintah ini biasanya digunakan untuk menghapus secara paksa file foleder yang tidak bisa dihapus oleh user biasa<syntaxhighlight lang="shell">
{{Terminal|sudo rm -rf '''file name'''}}
sudo rm -rf file name
</syntaxhighlight>


==Install dan Remove Aplikasi Linux via Terminal==
==Install dan Remove Aplikasi Linux via Terminal==
Tidak seperti windows,aplikasi dan service di [[Linux]] dikelola dan ditangani oleh aplikasi khusus yang berbeda (package manager dan service manager)
Tidak seperti windows,aplikasi dan service di [[Linux]] dikelola dan ditangani oleh aplikasi khusus yang berbeda (package manager dan service manager)


Kamu perlu paham dulu konsep,istilah dan mekanisme yang digunakan linux untuk mengelola aplikasi ataupun service.
Kamu perlu paham dulu konsep, istilah dan mekanisme yang digunakan [[linux]] untuk mengelola aplikasi ataupun service.
 
=== Aplikasi Linux Dikelola Oleh Package Manager ===
=== Aplikasi Linux Dikelola Oleh Package Manager ===
Saat kamu menggunakan [[Windows]],semua aplikasi dikenal dengan istilah aplikasi/program.
Saat kamu menggunakan [[Windows]],semua aplikasi dikenal dengan istilah aplikasi/program.
Line 88: Line 86:
Package manager digunakan untuk memudahkan dalam mengelola package/aplikasi di [[Linux]].
Package manager digunakan untuk memudahkan dalam mengelola package/aplikasi di [[Linux]].


Aplikasi package manager ada yang berupa console (dpkg dan APT )dan ada pula versi gui (synaptic package manager .mintinstall)
Aplikasi package manager ada yang berupa console (dpkg dan APT) dan ada pula versi [[GUI]] (synaptic package manager .mintinstall)
 
=== Service di Linux Dikelola Oleh Service Manager ===
=== Service di Linux Dikelola Oleh Service Manager ===
* Service digunakan untuk menamai aplikasi yang berjalan di background dan hanya menyediakan interface terbatas untuk berinteraksi dengan user. Contoh service adalah: process dari file webserver,file server,printer server dan sejenisnya.
* Service digunakan untuk menamai aplikasi yang berjalan di background dan hanya menyediakan interface terbatas untuk berinteraksi dengan user. Contoh service adalah: process dari file webserver, file server, [[printer]] [[server]] dan sejenisnya.
* Aplikasi service ini biasanya berjalan secara otomatis di background begitu komputer dinyalakan dan tidak terlihat.
* Aplikasi service ini biasanya berjalan secara otomatis di background begitu komputer dinyalakan dan tidak terlihat.
* '''Daemon''' adalah Istilah ini digunakan untuk aplikasi/program/package yang berjalan sendiri di background (tidak mempunyai tampilan) dan tidak bisa dikontrol,dia hanya bekerja untuk melakukan tugas yang spesiifik.
* '''Daemon''' adalah Istilah ini digunakan untuk aplikasi/[[Software|program]]/package yang berjalan sendiri di background (tidak mempunyai tampilan) dan tidak bisa dikontrol,dia hanya bekerja untuk melakukan tugas yang spesiifik.
* Jenis aplikasi daemon/service dalam penamaannya biasanya ditambahkan akhiran '''huruf d''' dan aplikasi ini hanya bisa di start, stop, restart atau dikelola menggunakan aplikasi khusus yang disebut dengan service manager. Untuk menginstall dan menghapus aplikasi daemon kamu tetap menggunakan package manager. '''Aplikasi Service''' manager dibuat khusus untuk menangani dan mengelola (start,stop,restart) service/daemon pada sistem [[Linux]]. Dahulu aplikasi service manager yang digunakan adalah <code>initd</code> dan untuk saat ini menggunakan <code>systemd</code> yang merupakan pembaruan dari service manager lama <code>initd</code>.
* Jenis aplikasi daemon/service dalam penamaannya biasanya ditambahkan akhiran '''huruf d''' dan aplikasi ini hanya bisa di start, stop, restart atau dikelola menggunakan aplikasi khusus yang disebut dengan service manager. Untuk menginstall dan menghapus aplikasi daemon kamu tetap menggunakan package manager. '''Aplikasi Service''' manager dibuat khusus untuk menangani dan mengelola (start,stop,restart) service/daemon pada sistem [[Linux]]. Dahulu aplikasi service manager yang digunakan adalah <code>initd</code> dan untuk saat ini menggunakan <code>systemd</code> yang merupakan pembaruan dari service manager lama <code>initd</code>.
===Menggunakan Perintah DPKG===
===Menggunakan Perintah DPKG===
Untuk distro ubuntu dan distro turunan nya termasuk linux mint yang sedang kamu pakai saat ini menggunakan format *.deb sebagai format installer untuk semua aplikasi/package.
Untuk distro ubuntu dan distro turunan nya termasuk linux mint yang sedang kamu pakai saat ini menggunakan format *.deb sebagai format installer untuk semua aplikasi/package.
 
==== DPKG (Debian package manager versi lama) ====
==== DPKG (Debian package manager versi lama) ====
Merupakan package manager untuk distro berbasis debian dan hanya bisa digunakan untuk menginstall package local secara manual dan tidak bisa digunakan untuk menginstall package yang beradai di repository secara online,penyempurnaan dari DPKG adalah APT.
Merupakan package manager untuk distro berbasis debian dan hanya bisa digunakan untuk menginstall package local secara manual dan tidak bisa digunakan untuk menginstall package yang beradai di repository secara online,penyempurnaan dari DPKG adalah APT.
==== Cara Install Aplikasi Dengan Perintah DPKG ====
==== Cara Install Aplikasi Dengan Perintah DPKG ====
* Menginstall aplikasi dengan format debian package *.deb
* Menginstall aplikasi dengan format debian package *.deb
sudo dpkg -i /path/to/packageName.deb  
<syntaxhighlight lang="shell">
 
sudo dpkg -i /path/to/packageName.deb
</syntaxhighlight>
* Menginstall semua paket dalam format *.deb yang berapa di suatu folder
* Menginstall semua paket dalam format *.deb yang berapa di suatu folder
sudo dpkg -R --install /path/to/folder/fillWithPackage/
<syntaxhighlight lang="shell">
sudo dpkg -R --install /path/to/folder/fillWithPackage/
</syntaxhighlight>


==== Cara Mengelola Aplikasi Terinstall Dengan DPKG ====
==== Cara Mengelola Aplikasi Terinstall Dengan DPKG ====
*  Meilihat semua aplikasi yang terinstall
*  Meilihat semua aplikasi yang terinstall
sudo dpkg -l
<syntaxhighlight lang="shell">
 
sudo dpkg -l
</syntaxhighlight>
* Untuk mengecek apakah paket/aplikasi terinstall dan menampilkan nya dalam bentuk list sederhana
* Untuk mengecek apakah paket/aplikasi terinstall dan menampilkan nya dalam bentuk list sederhana
sudo dpkg -l <span style="color:#ff0000">nama paket</span>
<syntaxhighlight lang="shell">
 
sudo dpkg -l nama paket
</syntaxhighlight>
* Melihat isi dari paket yang akan diinstall
* Melihat isi dari paket yang akan diinstall
sudo dpkg -c /path/to/<span style="color:#ff0000">nama paket.deb</span>
<syntaxhighlight lang="shell">
 
sudo dpkg -c /path/to/nama paket.deb
</syntaxhighlight>
* Mengecek apakah paket terlah terinstall dan menampilkan informasi detail tentang paket tersebut
* Mengecek apakah paket terlah terinstall dan menampilkan informasi detail tentang paket tersebut
sudo dpkg -s <span style="color:#ff0000">nama paket</span>
<syntaxhighlight lang="shell">
sudo dpkg -s nama paket
</syntaxhighlight>


==== Cara Hapus/Uninstall Aplikasi Dengan Perintah DPKG ====
==== Cara Hapus/Uninstall Aplikasi Dengan Perintah DPKG ====
* Menghapus namaPaket dan mempertahankan konfigurasi yang dibuat oleh namaPaket
* Menghapus namaPaket dan mempertahankan konfigurasi yang dibuat oleh namaPaket
sudo dpkg -r <span style="color:#ff0000">nama paket</span>
<syntaxhighlight lang="shell">
 
sudo dpkg -r nama paket
</syntaxhighlight>
* Menghapus namaPaket dan semua konfigurasi yang dibuatnya
* Menghapus namaPaket dan semua konfigurasi yang dibuatnya
sudo dpkg -p <span style="color:#ff0000">nama paket</span>
<syntaxhighlight lang="shell">
sudo dpkg -p nama paket
</syntaxhighlight>


==Networking==  
==Networking==
===Get the IP address of all interfaces Search for packages List files===
===Get the IP address of all interfaces Search for packages List files===
networkctl status
<syntaxhighlight lang="shell">
networkctl status
</syntaxhighlight>


===Display all IP addresses of the host===
===Display all IP addresses of the host===
hostname -I
<syntaxhighlight lang="shell">
hostname -I
</syntaxhighlight>


===Enable/disable interface===
===Enable/disable interface===
ip link set <span style="color:#ff0000">interface</span> up
<syntaxhighlight lang="shell">
 
ip link set interface up
ip link set <span style="color:#ff0000">interface</span> down
</syntaxhighlight><syntaxhighlight lang="shell">
ip link set interface down
</syntaxhighlight>


===Manage firewall rules===
===Manage firewall rules===
*Enable firewall:
*Enable [[firewall]]:
sudo ufw enable
<syntaxhighlight lang="shell">
 
sudo ufw enable
</syntaxhighlight>
*List rules:
*List rules:
sudo ufw status
<syntaxhighlight lang="shell">
 
sudo ufw status
</syntaxhighlight>
*Allow port:
*Allow port:
sudo ufw allow <span style="color:#ff0000">port</span>
<syntaxhighlight lang="shell">
 
sudo ufw allow port
</syntaxhighlight>
*Deny port:
*Deny port:
sudo ufw deny <span style="color:#ff0000">port</span>
<syntaxhighlight lang="shell">
 
sudo ufw deny port
</syntaxhighlight>
*Secara default, UFW menolak semua koneksi masuk dan mengizinkan semua koneksi keluar. Ini berarti bahwa klien yang mencoba menjangkau server kami tidak akan dapat terhubung. Ketika aplikasi dari server kami mencoba menghubungkan server lain di luar, itu akan diizinkan. Perintah berikut melayani tujuan tersebut.
*Secara default, UFW menolak semua koneksi masuk dan mengizinkan semua koneksi keluar. Ini berarti bahwa klien yang mencoba menjangkau server kami tidak akan dapat terhubung. Ketika aplikasi dari server kami mencoba menghubungkan server lain di luar, itu akan diizinkan. Perintah berikut melayani tujuan tersebut.
sudo ufw default deny incoming
<syntaxhighlight lang="shell">
 
sudo ufw default deny incoming
sudo ufw default allow outgoing
</syntaxhighlight><syntaxhighlight lang="shell">
sudo ufw default allow outgoing
</syntaxhighlight>


===SSH===
===SSH===
*Mengaktifkan SSH
*Mengaktifkan SSH
sudo ufw allow ssh
<syntaxhighlight lang="shell">
 
sudo ufw allow ssh
</syntaxhighlight>
*Connect ke SSH server
*Connect ke SSH server
ssh <span style="color:#ff0000">user</span>@<span style="color:#ff0000">host IP</span>
<syntaxhighlight lang="shell">
 
ssh userhost IP
</syntaxhighlight>
*Perintah di atas akan membuat aturan firewall yang mengizinkan semua koneksi pada port <code>22</code>, yang merupakan port default tempat daemon [[SSH]] ''listening''. UFW menggunakan port yang tercantum dalam file file <code>/etc/services</code>.
*Perintah di atas akan membuat aturan firewall yang mengizinkan semua koneksi pada port <code>22</code>, yang merupakan port default tempat daemon [[SSH]] ''listening''. UFW menggunakan port yang tercantum dalam file file <code>/etc/services</code>.
*Jika daemon SSH dikonfigurasi pada port selain default, kita dapat menentukannya dalam perintah untuk menggunakan port tersebut. Perintah berikut menggunakan port <code>2222</code>.
*Jika daemon SSH dikonfigurasi pada port selain default, kita dapat menentukannya dalam perintah untuk menggunakan port tersebut. Perintah berikut menggunakan port <code>2222</code>.
sudo ufw allow 2222
<syntaxhighlight lang="shell">
sudo ufw allow 2222
</syntaxhighlight>


==Packages==
==Packages==
===Search for Packages===
===Search for Packages===
apt search <span style="color:#ff0000">string</span>
<syntaxhighlight lang="shell">
 
apt search string
snap find <span style="color:#ff0000">string</span>
</syntaxhighlight><syntaxhighlight lang="shell">
snap find string
</syntaxhighlight>


===List available updates===
===List available updates===
apt list --upgradable
<syntaxhighlight lang="shell">
apt list --upgradable
</syntaxhighlight>


===Apply all available updates===
===Apply all available updates===
sudo apt update && sudo apt upgrade
<syntaxhighlight lang="shell">
sudo apt update && sudo apt upgrade
</syntaxhighlight>


===Install from the snap store===
===Install from the snap store===
sudo snap install <span style="color:#ff0000">package</span>
<syntaxhighlight lang="shell">
sudo snap install package
</syntaxhighlight>


===Which package provides this file===
===Which package provides this file===
sudo apt install apt-file
<syntaxhighlight lang="shell">
 
sudo apt install apt-file
sudo apt-file update
</syntaxhighlight><syntaxhighlight lang="shell">
 
sudo apt-file update
apt-file <file name or commad>
</syntaxhighlight><syntaxhighlight lang="shell">
 
apt-file <package name or commad>
==Referensi==
</syntaxhighlight>
*[https://bit.ly/2UW6Gpk ubuntudotcom]
*[https://bit.ly/3yqAtEw hostadvicedotcom]


==Terkait==
*[[Perintah Dasar di Linux]]
==Source==
*[https://ubuntu.com/server/docs/security-firewall ubuntu.com]
*[https://hostadvice.com/how-to/how-to-configure-firewall-with-ufw-on-ubuntu-18/ hostadvice.com]
[[Category:Linux]][[Category:Tutorial]]
[[Category:Linux]][[Category:Tutorial]]