Modul 3 — Teknologi Jaringan Komputer

3.1 Lingkungan OS untuk Pengembangan

Struktur folder proyek standar, perintah CLI Linux vs Windows, sistem izin hak akses berkas (chmod/chown), isolasi virtual environment, variabel PATH, dan analisis pesan kesalahan log sistem.

Progres disimpan di browser ini saja.

A. Struktur Direktori Proyek Standar

Pengelolaan repositori yang bersih dan modular memisahkan kode sumber, aset statis, serta konfigurasi aplikasi untuk menjaga kemudahan pemeliharaan dan keamanan:

project-app/
├── src/             <-- Kode sumber program utama (main.py, controllers, models)
├── assets/          <-- Aset visual/media statis (gambar logo, audio, ikon, font)
├── config/          <-- Pengaturan terpusat (koneksi database, konfigurasi port)
├── tests/           <-- Berkas skrip pengujian otomatis (unit test)
├── docs/            <-- Dokumentasi teknis dan panduan API
├── .gitignore       <-- Daftar berkas/folder yang dilarang ikut di-commit ke Git
├── .env             <-- Variabel lingkungan rahasia (token, password DB)
├── requirements.txt <-- Daftar dependensi pustaka paket yang dibutuhkan
└── README.md        <-- Ringkasan deskripsi dan cara menjalankan proyek

B. Perintah CLI Manajemen Berkas: Linux vs Windows

Fungsi PerintahLinux / macOS (Bash)Windows (CMD / PowerShell)
Melihat direktori kerja saat inipwdcd / cd (PowerShell: pwd / gl)
Melihat daftar isi direktorils -l / ls -ladir
Berpindah direktoricd nama_foldercd nama_folder
Membuat folder barumkdir nama_foldermkdir nama_folder
Membuat berkas baru kosongtouch file.pytype nul > file.py / ni file.py
Menyalin berkascp berkas_asal tujuan/copy berkas_asal tujuan/
Memindahkan / mengubah nama berkasmv berkas_asal tujuan/move berkas / ren lama baru
Menghapus berkasrm nama_filedel nama_file
Melihat isi teks berkas di terminalcat nama_filetype nama_file

Jalur Berkas (Path): *Path Absolut* merujuk jalur lengkap dari akar sistem direktori (contoh Linux: `/var/www/html/index.php`, Windows: `C:\Users\dev\main.py`). *Path Relatif* merujuk lokasi berkas relatif terhadap posisi folder kerja saat ini (contoh: `./src/main.py`, tanda `.` mewakili folder aktif, tanda `..` mewakili satu tingkat folder di atasnya).

C. Izin Akses Berkas di Linux (Permissions)

Setiap berkas memiliki 3 kategori pengguna: Owner/User (u), Group (g), dan Others (o). Masing-masing memiliki hak baca (*read*), tulis (*write*), dan eksekusi (*execute*):

Hak AksesHurufNilai Angka Biner / Oktal
Read (Membaca)r4
Write (Menulis/Mengubah)w2
Execute (Mengeksekusi program)x1
Tidak ada izin-0

Contoh: Izin `-rwxr-xr--` berarti: Owner = `rwx` (4+2+1 = 7), Group = `r-x` (4+0+1 = 5), Others = `r--` (4+0+0 = 4). Nilai oktalnya adalah 754.<br>Izin standar berkas teks biasa umumnya 644 (`rw-r--r--`), sedangkan folder atau skrip eksekusi umumnya 755 (`rwxr-xr-x`).

D. Konfigurasi Lingkungan & Diagnosa Pesan Log

  • Virtual Environment: Lingkungan Python terisolasi (`python -m venv venv`) agar dependensi versi paket antar-proyek tidak saling bentrok.
  • Variabel PATH: Daftar direktori yang dibaca sistem operasi untuk menemukan berkas eksekusi biner. Jika muncul galat `command not found`, berarti program belum terpasang atau path foldernya belum didaftarkan ke variabel lingkungan PATH sistem.
Pesan Galat (Log Error)Akar Penyebab PermasalahanTindakan Solutif yang Tepat
Permission deniedPengguna tidak memiliki izin baca/tulis/eksekusi pada berkas/direktori tujuan.Ubah izin hak akses berkas via `chmod` atau kepemilikan via `chown`.
command not foundProgram aplikasi belum terinstal atau berkas eksekusinya belum didaftarkan pada variabel PATH.Instal paket program atau tambahkan path folder biner ke PATH.
Address already in usePort jaringan (misal: port 80 atau 3000) sudah digunakan oleh proses aplikasi lain yang masih berjalan.Hentikan proses yang memonopoli port atau ganti port aplikasi di file konfigurasi.
Connection refusedLayanan server target belum dijalankan atau port tujuan salah.Jalankan layanan (misal: `systemctl start mysql`) dan verifikasi nomor port.
ModuleNotFoundErrorPustaka (library) paket dependensi belum terinstal di lingkungan aktif.Jalankan `pip install -r requirements.txt`.
HTTP 403 ForbiddenServer web memahami permintaan namun menolak akses karena izin file/konfigurasi restriktif.Periksa izin permission direktori web (misal: set folder web ke 755).
HTTP 404 Not FoundBerkas berkas halaman atau rute URL yang diminta tidak ditemukan di server.Periksa ejaan nama berkas dan rute URL.
HTTP 500 Internal Server ErrorTerjadi kesalahan fatal (crash) pada kode eksekusi skrip sisi server.Buka dan periksa berkas log server (`error.log`) untuk menemukan baris kode penyebab crash.

Latihan Soal

Pilih jawaban, tekan Check, lalu baca pembahasannya.

Benar 0 / 3

Soal 1mudah

Sebuah berkas skrip deploy pada sistem operasi Linux memiliki izin akses dengan simbol -rw-r--r--. Nilai representasi numerik (oktal) dari hak akses berkas tersebut adalah ...

Soal 2sedang

Ketika menjalankan perintah pada terminal Linux setelah memasang database server baru, muncul pesan galat 'mysql: command not found'. Penyebab paling logis dari pesan kesalahan tersebut adalah ...

Soal 3sedang

Dalam struktur repositori proyek perangkat lunak modern, tempat penyimpanan yang paling tepat dan aman untuk menaruh berkas konfigurasi kredensial koneksi basis data (seperti database.py) adalah di dalam folder ...