Setting Raspberry Pi Tanpa Monitor dan Keyboard (Headless)

So you got your new Raspberry Pi? Pada kebanyakan penggunaan, khususnya penggunaan untuk Internet of Thing, Raspberry Pi tidak memerlukan monitor dan keyboard secara permanen. Atau, mungkin kita tidak memiliki keyboard USB dan ekstra monitor untuk konfigurasi Raspberry Pi?

Raspbian OS, sistem operasi resmi untuk Raspberry Pi, memiliki cara untuk konfigurasi tanpa monitor dan keyboard (headless). Cukup dengan membuat beberapa berkas konfigurasi di SD Card yang sudah disiapkan, maka ketika boot pertama kali, Raspbian akan melakukan konfigurasi sesuai isi berkas konfigurasi yang sudah dibuat. Konfigurasi ini termasuk koneksi ke WiFi dengan menggunakan kata sandi, sehingga untuk konfigurasi selanjutnya, seperti instalasi aplikasi, bisa dilakukan dengan SSH.

Berikut ini tutorial langkah-langkah mempersiapkan Raspberry Pi tanpa monitor dan keyboard, hingga bisa terhubung dengan SSH. Dalam tutorial ini saya menggunakan Raspberry Pi Zero W yang sudah memiliki kemampuan WiFi.

Tahap 1: Menyiapkan SD Card Dengan Raspbian OS

Sistem operasi Raspbian OS tidak membutuhkan media penyimpanan yang besar. SD Card dengan ukurang 16 GB yang saya gunakan sudah lebih dari cukup, juga untuk instalasi aplikasi dan berkas log untuk operasional sehari-hari.

Untuk mempersiapkan SD Card, gunakan Raspberry Pi Imager yang bisa diunduh pada situs resmi Raspberry Pi di tautan ini. Setelah Imager selesai diunduh, jalankan Imager. Untuk panduan menggunakan Raspberry Pi Imager, silahkan lihat gambar di bawah ini.

Setelah SD Card selesai dipersiapkan, lepaskan, dan masukkan kembali SD Card pada PC/laptop sebelum masuk ke tahap selanjutnya.

Tahap 2: Mempersiapkan SSH dan WiFi

Sebelum SD Card siap untuk Raspberry Pi, ada 2 berkas (file) yang harus dibuat.

Berkas pertama bertujuan untuk memperbolehkan SSH pada Raspberry Pi. Untuk alasan keamanan, SD Card hasil dari Imager tidak memperbolehkan SSH secara default. Untuk memperbolehkan SSH, buat file dengan nama ssh pada direktori utama SD Card. Isi file ini tidak penting, bisa berisi sebuah karakter atau spasi. Perhatikan gambar di bawah ini

File ssh dibuat di root directory SD Card. Perhatikan bahwa file ssh tidak memiliki ekstensi apapun

Berkas kedua berisi konfigurasi untuk koneksi ke WiFi. Berkas ini harus diberi nama wpa_supplicant.conf. Isi dari berkas ini adalah sebagai berikut. Jangan lupa mengganti nama WiFi (ssid) dan Password WiFi (psk) sesuai dengan WiFi yang digunakan.

country=us
update_config=1
ctrl_interface=/var/run/wpa_supplicant

network={
 ssid="MySSID"
 psk="SuperSecret"
}

Simpan file wpa_supplicant.conf pada root directory dari SD Card, di lokasi yang sama dengan file ssh. Berikut sebagian dari isi SD Card setelah kedua file ssh dan wpa_supplicant.conf selesai dibuat.

File ssh dan wpa_supplicant.conf selesai dibuat

Persiapan SD Card sudah selesai. Keluarkan SD Card dari komputer dan lanjutkan ke tahap terakhir.

Tahap 3: Booting Up dan Terhubung ke Raspberry Pi dengan SSH

Masukkan SD Card ke dalam slot SD di Raspberry Pi Zero W. Lalu, hubungkan catu daya USB ke Raspberry Pi. Lampu hijau di Raspberry Pi akan segera menyala dan berkedip selama Raspberry Pi melakukan proses booting.

Setelah lampu di Raspberry Pi tidak berkedip lagi yang menyala terus, kita siap untuk menggunakan SSH untuk terhubung dengan Raspberry Pi. Alamat IP dari Raspberry Pi biasanya bisa ditemukan dengan nama raspberrypi atau raspberrypi.local. Konfigurasi dalam aplikasi PuTTY di Windows 10 untuk komunikasi SSH adalah seperti gambar di bawah ini.

Konfigurasi PuTTY untuk koneksi ke Raspberry Pi

Apabila semua konfigurasi sudah dilakukan dengan benar, maka PuTTY akan terhubung dengan Raspberry Pi. Pilih ‘yes’ pada pertanyaan mengenai SSH Certificate. Gunakan username: root dan password standar: raspberry untuk login pertama.

Berhasil terhubung dengan Raspberry Pi.

Tahap 4: Memperbesar Partisi Raspbian

Ketika kita mempersiapkan SD Card pada tahap 1, image Raspbian yang diunduh hanya memanfaatkan sekitar 2GB dari ukuran SD Card. Hal ini supaya ukuran image yang harus diunduh tidak terlalu besar.

Untuk memperbesar partisi Raspbian bisa menggunakana “raspi-config”, seperti slideshow di bawah ini.

Selain digunakan untuk memperluas partisi Raspbian, “raspi-config” juga bisa digukanan untuk konfigurasi lainnya, seperti mengubah nama system, mengubah zona waktu, dan lain-lain.

Penutup dan Troubleshooting

Apabila koneksi SSH tidak berhasil, maka ada beberapa hal yang bisa diperiksa:

  • Pertama, pastikan file ssh yang dibuat tidak memiliki ekstensi apapun. Apabila menggunakan notepad di Windows, secara default notepad menambahkan ekstensi .txt, sehingga file menjadi ssh.txt. Ekstensi .txt ini harus dibuang
  • Pastikan konfigurasi WiFi (SSID dan Password) pada file wpa_supplicant.conf sudah benar
  • Periksa apakah Raspberry Pi merespon dengan perintah ping: ‘ping raspberrypi’, atau ‘ping raspberrypi.local’. Bila tidak ada respon, maka alamat IP Raspberry Pi bisa dicari melalui halaman administrasi dari WiFi Access Point

Selamat mencoba dan bereksperimen. Apabila ada kendala lain, silahkan tinggalkan komentar di bawah.

Referensi: https://desertbot.io/blog/headless-pi-zero-w-wifi-setup-windows