1. Introduksi Linux
- Pengenalan Linux
Linux adalah sebuah kernel yang tersedia secara gratis yang berfungsi sebagai jembatan bagi hardware dan sistem operasi. Linux memiliki distribusi yang dikenal dengan nama "Distro" dan dikembangkan oleh Linus Torvalds pada tahun 1991.
- Distribusi Linux seperti: Ubuntu, CentOS, Xubuntu, SuSE, Debian, dan lainnya
- Linux menjadi tempat pengembangan aplikasi yang cocok untuk developer.
- Skill Linux sangat dicari di banyak lowongan pekerjaan bidang IT.
- Mendukung kebutuhan Cloud Computing, Mobile Application, dan IoT.
- Kebanyakan developer profesional menggunakan Linux sebagai OS utama.
- 85% smartphone di dunia menggunakan kernel Linux.
- 96,3% dari 1 juta web server terkenal menggunakan Linux.
- Linux juga digunakan oleh seluruh komputer super cepat di dunia.
- Keunggulan Ubuntu OS
Ubuntu adalah salah satu base Linux operating system yang diperkenalkan oleh Canonical, sebuah perusahaan dari Inggris, pada tahun 2004. Ubuntu memiliki dua versi utama:
- LTS (Long Term Support): disupport update selama 5 tahun.
- Non-LTS: disupport update selama 9 bulan saja.
- Standard Security Maintenance (5 tahun awal).
- Expanded Security Maintenance (5 tahun tambahan untuk Ubuntu Pro).
- LTS dirilis setiap dua tahun setelah versi Non-LTS.
- Versi Ubuntu menunjukkan tahun dan bulan rilis. Contoh: 22.04 LTS (Jammy Jellyfish) dirilis pada April 2022.
- Instalasi Ubuntu OS
Kebutuhan:
- VirtualBox
- Bootable OS Server Ubuntu 22.04
- 2 CPU, RAM 4GB+, 25GB Free Space
Langkah instalasi:
- Di VirtualBox, klik "New" untuk membuat mesin virtual baru.
- Masukkan nama untuk mesin virtual sesuai keinginan Anda.
- Pilih ISO image Ubuntu Server yang sudah diunduh.
- Centang "Skip Unattended Installation" dan klik "Next".
- Biarkan base memory dan processor pada pengaturan default, lalu klik "Next".
- Atur ukuran virtual disk (default 25-30 GB), lalu klik "Next".
- Periksa pengaturan di summary, lalu klik "Finish" dan kemudian "Start".
- Pilih bahasa (disarankan English) dan tekan "ENTER".
- Klik "Continue without updating" lalu "Done".
- Pilih instalasi untuk Ubuntu Server dan lanjutkan dengan "Done" untuk opsi lainnya.
- Isi setup profil, skip Ubuntu Pro dan SSH setup jika tidak diperlukan.
- Tunggu proses instalasi selesai, lalu klik "Reboot Now".
- Login dengan user dan password untuk menyelesaikan instalasi.
2. Perintah-Perintah Dasar Linux
- Pengenalan CLI dan GUI
CLI (Command Line Interface): Antarmuka berbasis teks untuk menjalankan perintah.
GUI (Graphic User Interface): Antarmuka berbasis grafis yang lebih ramah pengguna.
- Perintah Dasar Linux
Operasi Dasar
- whoami = menampilkan user saat ini
- who = menampilkan user yang sedang login
- hostnamectl = menampilkan hostname server
- date / timedatectl = menampilkan tanggal dan waktu
- clear (Ctrl + L ) = membersihkan histori perintah atau layar
Assesmen Server
- cat /etc/os-release = menampilkan sistem operasi
- uname = menampilkan sistem operasi
- lscpu = menampilkan processor server
- free -h = menampilkan memory
- lsblk atau df -h = menampilkan penyimpanan
Kalian dapat mencoba perintahnya di Ubuntu Server kalian, kalian bisa masuk ke dalam superuser atau root dengan perintah "sudo su" lalu ketik password user kalian dan klik "ENTER"
3. Manajemen File dan Direktori
Sistem Hierarki File
Sistem Hierarki File pada Linux terdiri dari berbagai direktori. Berikut adalah penjelasannya:
- / : Menduduki posisi puncak dari seluruh direktori.
- /bin/ : Direktori yang berisi perintah dasar yang dibutuhkan oleh sistem maupun user.
- /boot/ : Berisi program dan data yang dibutuhkan pada saat melakukan proses booting sistem.
- /dev/ : Direktori tempat file device.
- /etc/ : Berisi file konfigurasi sistem.
- /home/ : Direktori tempat menyimpan data user.
- /var/ : Menyimpan informasi proses, seperti histori sistem, log akses, dan log error.
- /mnt/ : Direktori untuk menyimpan mount point sementara.
- /opt/ : Direktori ini berisi paket aplikasi opsional atau paket yang diinstal user.
- Pengelolaan File dan Direktori
Manajemen File
- touch : Membuat file tanpa konten.
- echo/vim/vi/nano : Membuat file dengan konten.
- cat : Menampilkan isi konten file.
- head : Menampilkan 10 baris pertama dari sebuah file.
- tail : Menampilkan 10 baris terakhir dari sebuah file.
- rm : Menghapus file.
- cp : Menyalin file dan direktori.
- mv : Memindahkan/merename file dan direktori.
Perintah untuk Memanajemen Direktori
- cd : Masuk/keluar direktori.
- mkdir : Membuat direktori.
- rmdir : Menghapus direktori.
- ls : Menampilkan isi direktori.
- pwd : Menampilkan posisi direktori yang kalian tempati.
- Menyalin, Memindahkan, dan Menghapus File dan Direktori
Menyalin File atau Direktori
Untuk menyalin file atau direktori, gunakan perintah berikut:
cp (nama file atau direktori) (nama file atau direktori baru)
Contoh: cp tugasku.txt pekerjaanku.txt
Hasilnya: File tugasku.txt telah diganti namanya serta menyalin namanya menjadi pekerjaanku.txt.
Memindahkan File atau Direktori
Untuk memindahkan file atau direktori, gunakan perintah berikut:
mv (nama dengan arah file atau direktori) (nama dengan arah tujuan file atau direktori baru)
Contoh: mv /Desktop/tugasku.txt /Download/
Hasilnya: File tugasku.txt yang berada di Desktop telah dipindah ke Download.
Menghapus File atau Direktori
Untuk menghapus file atau direktori, gunakan perintah berikut:
rm (nama file) = untuk menghapus file
rmdir (nama direktori) = untuk menghapus direktori
Contoh: rm tugasku.txt / rmdir tugasku
Hasilnya: File dan direktori tugasku telah di hapus
4. Pengguna, Hak Akses dan Milik
- Pengelolaan User dan Group
Pastikan Anda berada dalam SuperUser atau ROOT untuk melakukan pengelolaan berikut:
Manajemen User
- useradd : Membuat user baru dengan tingkat rendah, hanya user yang terbuat tanpa ada isi file atau direktori. (Cara mudah membuat user)
- adduser : Membuat user baru dengan tingkat tinggi, user yang terbuat memiliki file dan juga direktori. (Cara lebih mendetail membuat user)
- userdel : Menghapus user.
- passwd : Mengubah password user.
Manajemen Group
- groupadd : Membuat group baru.
- groupdel : Menghapus group.
- groupmod : Memodifikasi group.
Cara Memasukkan User ke dalam Group yang Sudah Dibuat
Gunakan perintah berikut untuk menambahkan user ke dalam group:
- usermod -aG (nama group) (nama user) : 1 user masuk ke 1 grup.
- usermod -aG (nama group), (nama group2) (nama user) : 1 user masuk ke 2 grup.
- usermod -aG (nama group) (nama user), (nama user2) : 2 user masuk ke 1 grup.
Contoh:
usermod -aG Guru Bayu
usermod -aG Guru,Siswa Bayu
usermod -aG Guru Bayu,Dayu
- Mengatur Hak Akses, Kepemilikan File dan Direktori
Hak akses pada file dan direktori di Linux mengikuti format seperti ini:
- r = Readable
- w = Writeable
- x = Executable
Hak akses dibagi menjadi tiga bagian:
- Bagian pertama : Diperuntukkan untuk User/Pengguna.
- Bagian kedua : Diperuntukkan untuk Group/Grup.
- Bagian ketiga : Diperuntukkan untuk Other/Lainnya/Asing.
Jenis file dapat diketahui dengan tanda di awal:
- - : Tipe file regular
- d : Tipe untuk direktori
- l : Tipe untuk simbolik link
Cara Mengubah Hak Akses untuk File dan Direktori
Ada dua cara untuk mengubah hak akses file atau direktori:
Simbolik
- u = user
- g = group
- o = other
Contoh:
Hasilnya: User dapat read, write, dan execute. Group dapat read dan write. Other hanya dapat execute.
Numerik
- r = 4
- w = 2
- x = 1
Contoh:
Hasilnya: User dapat read, write, dan execute karena 6+2+1. Group dapat read dan write karena 4+2. Other hanya dapat execute karena 1.
Untuk Melihat Hak Akses
Gunakan perintah berikut:
ls -al
Untuk Mengubah Hak Kepemilikan File atau Direktori
Gunakan perintah berikut:
chown (nama user):(nama group) (nama file atau direktori)
Contoh:
chown Bayu:Guru Ujian.txt
5. Dasar Networking
- Pengenalan Konfigurasi Network
Metode konfigurasi jaringan pada Linux ada 2, yaitu:
- NMTUI : Biasanya digunakan pada distro Redhat.
- Netplan : Biasanya digunakan pada distro Ubuntu sendiri.
Perintah untuk Melihat Konfigurasi IP
- ip a / ifconfig : Melihat konfigurasi IP.
- traceroute : Untuk melacak dan mengawasi rute paket yang berjalan.
- ping : Memeriksa konektivitas perangkat.
- Konfigurasi IP Statis
Kalian dapat mengedit atau mengkonfigurasi IP sendiri dengan masuk ke dalam file netplan seperti berikut:
nano /etc/netplan/00-installer-config.yaml
dhcp4: false
addresses: {192.168.10.2/24}
routes:
- to: default
via: 192.168.10.1
nameservers:
addresses: {8.8.8.8}
Lalu kalian jalankan perintah > netplan apply
Contoh konfigurasi IP statis:
Tambahkan seperti di atas, kemudian simpan dengan (Ctrl + S) dan keluar dengan (Ctrl + X). Setelah itu, masukkan perintah berikut:
Konfigurasi IP statis sudah berhasil diterapkan.
- Troubleshooting Network Menggunakan Perintah Ping dan Traceroute
Untuk tes konektivitas dan melacak rute ke Google, gunakan perintah berikut:
ping google.com
traceroute google.com
Jika belum terpasang, install terlebih dahulu traceroute dengan perintah berikut:
apt install traceroute
6. Akses Remote
- Pengenalan Remote Access
Remote Access merujuk kepada kemampuan untuk mengakses dan mengontrol sistem atau perangkat dari jarak jauh, di luar lokasi fisiknya. Beberapa metode remote access yang umum digunakan adalah:
- SSH
- TELNET
- RDP
- VNC (Virtual Network Computing)
- DLL (lain-lain)
- Konfigurasi SSH Basics (SecureShell)
Untuk mengatur SSH, pertama-tama instal paket SSH dengan perintah berikut:
apt install openssh-server
Setelah itu, aktifkan layanan SSH dengan perintah:
nano /etc/ssh/sshd_config
Kalian hapus tanda # pada bagian #Port 22, lalu simpan dengan (Ctrl + S) dan keluar dengan (Ctrl + X). Setelah konfigurasi, kalian dapat meremote server menggunakan Windows Shell atau aplikasi Putty dengan perintah berikut:
ssh (user)@(ip address)
Contoh:
ssh bayu@192.168.10.2
- Konfigurasi Public Key Authentication
Untuk melakukan remote SSH tanpa memerlukan password, kalian dapat menggunakan public key authentication. Berikut adalah langkah-langkahnya:
- Generate SSH key dengan perintah:
- Copy file id_rsa.pub ke dalam server Ubuntu dengan perintah:
ssh-copy-id -i /home/bayu/.ssh/id_rsa.pub -p 2022 bayu@192.168.10.2
Klik enter hingga selesai.
Contoh:
Setelah langkah ini, kalian dapat meremote server tanpa memerlukan password.
7. Automating Task (Cron Job)
- Pengenalan Cron Job
Cron Job merupakan tools untuk membuat tugas terjadwal yang diatur untuk dijalankan secara otomatis pada waktu atau interval tertentu di sistem operasi Linux.
Tujuan : Menjadwalkan dan menjalankan tugas yang dapat diotomatisasi, seperti pembersihan file sementara, penciptaan backup, dan eksekusi skrip rutin.
Format penjadwalan Cron Job terdiri dari lima digit, yang masing-masing memiliki arti:
- Digit pertama: Menit (0-59 menit)
- Digit kedua: Jam (0-23 jam)
- Digit ketiga: Hari di bulan (1-31 hari)
- Digit keempat: Bulan (1-12)
- Digit kelima: Mingguan (0-6, di mana 0 adalah hari Minggu)
Jika kalian bingung menghitung waktunya, kalian dapat mengunjungi website crontab.guru untuk mempermudah perhitungan.
- Menjadwalkan Tugas dengan Cron Job
Masuk ke dalam Ubuntu Server dan masukkan perintah berikut:
crontab -e
Kalian dapat memilih editor teks sesuai preferensi. Setelah masuk, scroll ke bawah dan tambahkan 5 bintang dan perintah yang ingin dijalankan sesuai jadwal. Contoh:
* * * * * echo "Waktu menunjukkan $(date)" >> /home/(nama user)/(nama file).log
Contoh:
* * * * * echo "Waktu menunjukkan $(date)" >> /home/bayu/WaktuBerlalu.log
Periksa file log setelah 1 menit dengan perintah:
cat /home/(nama user)/(nama file).log
Komentar
Posting Komentar