Zona waktu menjadi penting untuk aplikasi anda terutama karena secara default banyak template server cloud menggunakan zona waktu USA sebagai zona waktu defaultnya. Oleh karena itu untuk memberikan pengalaman pengguna yang lebih baik maka waktu pada server anda sebaiknya disesuaikan dengan mayoritas pengguna website anda.
Requirement
Pada tulisan ini akan dicontohkan bagaimana mengubah zona waktu pada server dengan sistem operasi distro Ubuntu, namun cara ini juga dapat digunakan pada sistem operasi seperti Debian, Fedora, CentOS, dan distro lain (lihat folder suggestion untuk melihat kesamaan struktur data.
Mengubah Zona Waktu
Dalam tulisan ini saya akan mencontohkan dua cara mengubah zona waktu pada Linux Server. Cara pertama menggunakan localtime bawaan, kemudian cara berikutnya adalah menggunakan timedatectl.
Metode Localtime
Pada metode ini kita menggunakan /etc/localtime file yang ada pada Linux. Pertama anda dapat memeriksa timezone terpilih pada komputer anda dengan perintah berikut.
date
Perintah tersebut kurang-lebih akan memberikan output berikut.
Mon Oct 22 15:00:19 UTC 2017
Selanjutnya mari kita perhatikan daftar timezone yang ada dengan perintah berikut.
ls /usr/share/zoneinfo/Asia
Gunakan tombol tab untuk melihat daftar folder yang ada pada Zoneinfo dan harap mengingat path folder untuk timezone yang anda pilih. Dalam tulisan ini saya akan mencontohkan pengubahan zona waktu menggunakan Asia/Jakarta.
Untuk mengubah zona waktu yang semula UTC, maka kita terlebih dahulu menghapus symbolic link localtime pada UTC.
unlink /etc/localtime
Kemudian kita buat kembali symbolic link pada zona waktu yang kita inginkan dengan perintah berikut.
ln -s /usr/share/zoneinfo/Asia/Jakarta /etc/localtime
Kemudian akhiri dengan melihat zona waktu terpilih saat ini dengan perintah date.
Metode Timedatectl
Metode ini sepertinya hanya dapat digunakan pada server Debian Family. Pertama anda dapat memeriksa timezone terpilih pada komputer anda dengan perintah berikut.
date
Perintah tersebut kurang-lebih akan memberikan output berikut.
Mon Oct 22 15:00:19 UTC 2017
Selanjutnya mari kita perhatikan daftar timezone yang ada dengan perintah berikut.
timedatectl list-timezones
Untuk mencari kota tertentu dapat digunakan perintah berikut (sebagai contoh kita mencari Jakarta.
timedatectl list-timezones | grep -i Jak
Kemudian set zona waktu dengan perintah berikut.
timedatectl set-timezone Asia/Jakarta
Kemudian akhiri dengan perintah date untuk memeriksa apakah perubahan waktu telah diberlakukan.
Anda dapat mencoba kedua metode tersebut pada server anda. Saya sendiri secara pribadi lebih menggunakan metode pertama karena saya anggap lebih mudah, dan berlaku pada banyak server walaupun perlu beberapa penyesuaian path. Semoga bermanfaat dan Happy Coding!