Linux adalah sistem operasi multi-user. Artinya, satu sistem dapat digunakan oleh banyak orang sekaligus, dan setiap orang memiliki identitas serta hak aksesnya masing-masing. Identitas itu diwakili oleh konsep pengguna (user) dan grup (group). Pemahaman tentang keduanya menjadi fondasi penting sebelum Anda mempelajari hak akses file pada bab berikutnya. Pada bab ini, Anda akan mengenal UID dan GID, membaca file konfigurasi pengguna seperti /etc/passwd dan /etc/group, serta mempraktikkan perintah untuk menambah, mengubah, dan menghapus pengguna maupun grup, baik melalui terminal maupun melalui aplikasi Settings di GNOME.
Konsep Pengguna di Linux
Setiap akun pengguna di Linux diidentifikasi oleh sistem bukan berdasarkan nama, melainkan berdasarkan sebuah angka yang disebut UID (User ID). Nama pengguna seperti andi atau siti hanyalah label yang mudah diingat manusia. Ketika nama itu dipetakan ke angka, sistemlah yang sesungguhnya memakai angka tersebut untuk mengenali pemilik file, proses, dan berbagai objek lain.
UID (User ID)
UID adalah bilangan bulat yang unik untuk setiap pengguna. Secara garis besar, rentang UID dibagi menjadi beberapa kelompok.
| Rentang UID | Keterangan |
|---|---|
0 | Pengguna root, administrator penuh sistem |
1-999 | Pengguna sistem (system user), dipakai oleh service |
1000 ke atas | Pengguna reguler (manusia) |
Pengguna pertama yang dibuat saat instalasi Ubuntu 26.04 LTS maupun Fedora Workstation 44 umumnya mendapatkan UID 1000. Pengguna berikutnya akan memperoleh UID 1001, 1002, dan seterusnya. Batas pemisah ini diatur oleh variabel UID_MIN dan UID_MAX di file /etc/login.defs. Anda dapat memeriksa nilai batas tersebut dengan perintah berikut.
grep -E "^UID_MIN|^UID_MAX" /etc/login.defsTipe Pengguna: Regular User, System User, dan Root
- Regular user adalah akun untuk manusia yang memakai sistem sehari-hari. Akun ini memiliki direktori home sendiri di
/home/nama, misalnya/home/andi. - System user adalah akun yang dibuat otomatis oleh sistem untuk menjalankan layanan (service) tertentu, seperti
www-datauntuk web server atausshduntuk SSH. Akun ini tidak dimaksudkan untuk login interaktif. - Root adalah pengguna istimewa dengan UID
0yang memiliki kuasa penuh atas seluruh sistem. Pada desktop modern, Anda tidak login sebagai root, melainkan memakai perintahsudoyang akan dibahas pada bab berikutnya.
File /etc/passwd dan /etc/shadow
Informasi dasar pengguna tersimpan di file /etc/passwd. Meski namanya mengandung kata "password", file ini tidak lagi menyimpan kata sandi, melainkan hanya informasi akun. Setiap barisnya mewakili satu pengguna dan terdiri atas tujuh kolom yang dipisahkan tanda titik dua (:).
nama:x:UID:GID:info:home:shell| Kolom | Keterangan |
|---|---|
nama | Nama pengguna |
x | Penanda bahwa password disimpan di /etc/shadow |
UID | User ID |
GID | Group ID utama pengguna |
info | Keterangan tambahan, biasanya nama lengkap |
home | Lokasi direktori home |
shell | Shell yang dipakai saat login |
Kata sandi yang sesungguhnya disimpan di file /etc/shadow. File ini hanya dapat dibaca oleh root, karena berisi hash kata sandi serta informasi masa berlaku dan kedaluwarsa password. Formatnya juga terdiri atas beberapa kolom yang dipisahkan tanda titik dua.
nama:hash_password:hari_ubah_terakhir:umur_min:umur_max:peringatan:tenggang:kedaluwarsa:cadanganSelain hash password, tiga kolom yang paling sering dipakai administrator adalah umur_max (batas hari sebelum password wajib diganti), peringatan (berapa hari sebelumnya pengguna diingatkan untuk mengganti password), dan kedaluwarsa (tanggal akun dinonaktifkan sepenuhnya). Inilah mengapa pengguna biasa hanya melihat tanda x di /etc/passwd, bukan password aslinya.
Konsep Grup
Grup adalah cara mengelompokkan beberapa pengguna agar hak akses dapat diberikan secara bersama. Alih-alih memberi izin satu per satu kepada tiap orang, administrator cukup memberi izin kepada sebuah grup, lalu semua anggotanya ikut memperoleh izin tersebut.
GID (Group ID)
Sama seperti pengguna, grup juga diidentifikasi oleh angka yang disebut GID (Group ID). Rentang GID mengikuti pola yang mirip dengan UID.
| Rentang GID | Keterangan |
|---|---|
0 | Grup root, grup utama milik pengguna root |
1-999 | Grup sistem, dipakai oleh service (mis. www-data, sshd) |
1000 ke atas | Grup reguler, termasuk grup pribadi tiap pengguna dan grup buatan administrator |
Setiap pengguna pasti tergabung dalam setidaknya satu grup yang disebut primary group. Grup ini biasanya dibuat otomatis dengan nama yang sama dengan nama pengguna. Selain primary group, seorang pengguna juga dapat menjadi anggota dari satu atau lebih supplementary group (grup tambahan).
Primary Group dan Supplementary Group
- Primary group adalah grup utama pengguna. Ketika pengguna membuat file baru, file tersebut secara otomatis dimiliki oleh primary group pengguna.
- Supplementary group adalah grup tambahan tempat pengguna menjadi anggota, misalnya grup
sudodi Ubuntu, grupwheeldi Fedora, atau gruplibvirtuntuk virtualisasi.
Perbedaan keduanya penting ketika Anda mengelola izin file, karena grup yang menjadi pemilik file baru ditentukan oleh primary group.
File /etc/group dan /etc/gshadow
Daftar grup tersimpan di file /etc/group. Setiap baris mewakili satu grup dan terdiri atas empat kolom.
nama:x:GID:anggota| Kolom | Keterangan |
|---|---|
nama | Nama grup |
x | Penanda password grup |
GID | Group ID |
anggota | Daftar anggota tambahan, dipisah koma |
Perlu diperhatikan, kolom anggota pada /etc/group hanya mencantumkan anggota supplementary dari grup tersebut. Pengguna yang menjadikan grup itu sebagai primary group tidak akan tercantum di kolom ini, karena keanggotaannya sudah ditentukan lewat kolom GID di /etc/passwd. Sementara itu, file /etc/gshadow menyimpan password grup dan daftar administrator grup. Seperti /etc/shadow, file ini juga hanya dapat dibaca oleh root.
Melihat Informasi Pengguna
Beberapa perintah sederhana membantu Anda mengetahui identitas diri sendiri di sistem.
| Perintah | Fungsi |
|---|---|
whoami | Menampilkan nama pengguna saat ini |
id | Menampilkan UID, GID, dan semua grup pengguna |
groups | Menampilkan daftar grup tempat pengguna menjadi anggota |
Perintah whoami menjawab pertanyaan paling dasar: "saya login sebagai siapa?". Perintah id lebih lengkap, karena menampilkan UID, GID utama, serta seluruh supplementary group sekaligus. Jalankan id tanpa argumen untuk melihat informasi diri sendiri, atau id nama_pengguna untuk melihat informasi pengguna lain.
idPerintah groups berfokus hanya pada keanggotaan grup, sehingga berguna ketika Anda ingin memeriksa apakah sebuah akun sudah tergabung dalam grup tertentu. Jika sewaktu-waktu Anda perlu mencari satu baris tertentu di /etc/passwd atau /etc/group tanpa membuka filenya secara manual, perintah getent passwd nama_pengguna atau getent group nama_grup juga bisa dipakai; keduanya membaca sumber identitas pengguna yang aktif di sistem, termasuk jika suatu saat sistem terhubung ke direktori terpusat seperti LDAP.
Manajemen Pengguna (Perintah)
Untuk mengelola akun pengguna dari terminal, Anda memerlukan hak administratif, sehingga setiap perintah didahului oleh sudo.
useradd dan adduser: Menambah Pengguna
Terdapat dua perintah untuk menambah pengguna. useradd adalah perintah tingkat rendah yang tersedia di semua distribusi, tetapi parameternya cukup panjang. Sementara itu, adduser adalah skrip pembungkus yang lebih ramah. Di Ubuntu, adduser bersifat interaktif dan memandu Anda mengisi password serta data pengguna, sedangkan di Fedora, adduser hanyalah symbolic link ke useradd, sehingga perilakunya sama persis dengan useradd.
# di Ubuntu 26.04 LTS
sudo adduser budi
# di Fedora Workstation 44
sudo useradd -m budi
sudo passwd budiOpsi -m pada useradd berfungsi memaksa pembuatan direktori home. Perilaku bawaannya berbeda antar distro: di Ubuntu, nilai CREATE_HOME pada /etc/login.defs bawaannya no, sehingga -m wajib disertakan agar direktori home terbentuk. Di Fedora, CREATE_HOME sudah bernilai yes secara default, sehingga direktori home sebenarnya tetap terbuat meski -m tidak dituliskan. Meski begitu, tetap disarankan untuk selalu menuliskan -m secara eksplisit agar perintah Anda konsisten dan portabel ketika dipakai di distro lain.
usermod: Mengubah Atribut Pengguna
Perintah usermod dipakai untuk mengubah atribut pengguna yang sudah ada. Beberapa opsi yang sering digunakan antara lain.
| Opsi | Fungsi |
|---|---|
-aG grup | Menambahkan pengguna ke grup tambahan (append) |
-l nama_baru | Mengganti nama login |
-d /path/home | Mengubah lokasi direktori home yang tercatat di /etc/passwd |
-m | Dipakai bersama -d agar isi direktori home lama ikut dipindahkan ke lokasi baru |
-s /bin/bash | Mengubah shell login |
Perhatikan opsi -a (append). Tanpa -a, opsi -G akan menimpa seluruh daftar grup tambahan pengguna, sehingga ia bisa kehilangan keanggotaan grup yang lama. Perhatikan pula bahwa -d tanpa -m hanya mengubah catatan lokasi home di /etc/passwd, tanpa memindahkan file yang sudah ada di direktori home lama.
sudo usermod -aG sudo budiPerintah di atas menambahkan budi ke grup sudo di Ubuntu, sehingga ia dapat menjalankan perintah administratif.
userdel: Menghapus Pengguna
Perintah userdel menghapus akun pengguna. Secara bawaan, direktori home pengguna tidak ikut dihapus. Gunakan opsi -r bila Anda ingin menghapus akun sekaligus direktori home dan mail spool miliknya.
sudo userdel budi
sudo userdel -r budiDi Ubuntu, paket yang sama dengan adduser juga menyediakan perintah deluser sebagai pasangannya, yang secara fungsi setara dengan userdel namun dengan beberapa opsi bawaan yang lebih ramah pemula, misalnya sudo deluser --remove-home budi.
passwd: Mengatur Password
Perintah passwd digunakan untuk mengganti kata sandi. Jalankan tanpa argumen untuk mengganti password diri sendiri, atau dengan nama pengguna untuk mengganti password pengguna lain (memerlukan sudo).
passwd
sudo passwd budiManajemen Grup
Sama seperti pengguna, grup juga dapat dikelola melalui perintah tersendiri.
| Perintah | Fungsi |
|---|---|
groupadd | Menambah grup baru |
groupmod | Mengubah atribut grup |
groupdel | Menghapus grup |
gpasswd | Mengelola anggota dan password grup |
groupadd, groupmod, groupdel
sudo groupadd developer
sudo groupmod -n dev developer
sudo groupdel developerContoh di atas membuat grup developer, lalu mengganti namanya menjadi dev dengan opsi -n, kemudian menghapusnya. Sebuah grup hanya dapat dihapus jika tidak lagi menjadi primary group bagi pengguna mana pun. Di Ubuntu, perintah delgroup tersedia sebagai alternatif groupdel, sejalan dengan pasangan adduser/deluser.
gpasswd: Mengelola Anggota Grup
Perintah gpasswd adalah cara paling praktis untuk menambah atau mengeluarkan anggota dari sebuah grup.
sudo gpasswd -a budi developer
sudo gpasswd -d budi developerOpsi -a menambahkan anggota, sedangkan opsi -d mengeluarkan anggota. Setelah Anda mengubah keanggotaan grup, pengguna biasanya perlu logout lalu login kembali agar perubahan berlaku pada sesi yang sedang berjalan.
Manajemen Pengguna via GUI Settings
Jika Anda lebih menyukai antarmuka grafis, GNOME 50 menyediakan pengaturan pengguna melalui aplikasi Settings. Buka panel System, lalu pilih Users. Di sini Anda dapat menambah pengguna baru, mengatur foto profil, mengganti password, serta menentukan tipe akun, yaitu Standard atau Administrator. Anda juga dapat mengaktifkan opsi Automatic Login dan melihat bahasa sistem yang dipakai tiap pengguna.
Perlu diingat, beberapa perubahan seperti membuat pengguna baru atau mengganti password pengguna lain tetap memerlukan otentikasi administratif. GUI ini juga menampilkan daftar pengguna yang ada dan memungkinkan Anda menghapus akun hanya dengan beberapa klik. Panel yang sama tersedia di Ubuntu 26.04 LTS dan Fedora Workstation 44 karena keduanya menggunakan GNOME.
Memahami pengguna dan grup adalah langkah awal untuk mengelola akses di Linux. Setelah Anda mampu membuat akun, mengubah atributnya, serta mengatur keanggotaan grup, Anda telah menyiapkan fondasi yang diperlukan untuk memahami hak akses file. Pada bab berikutnya, Anda akan mempelajari bagaimana pengguna biasa menjalankan tugas administratif melalui sudo, lalu bagaimana izin baca, tulis, dan eksekusi diterapkan pada setiap file dan direktori.

