Bagaimana cara mengubah pengguna di linux?
Dalam Linux, frasa “ganti pengguna” dapat menggambarkan beberapa tindakan berbeda—beberapa sementara dan berbasis sesi, lainnya permanen dan sistem-wide. Karena Linux adalah sistem operasi multi-pengguna secara desain, ia menyediakan beberapa cara untuk beralih identitas dan izin tergantung pada apa yang ingin Anda capai: mengelola server, menjalankan aplikasi dengan hak terbatas, memperbaiki masalah akses file, atau merestrukturisasi akun pengguna.
Mengganti “pengguna” di Linux dapat berarti beberapa hal berbeda tergantung pada konteks:
- Beralih ke akun lain di shell (misalnya, dari john ke root)
Ini digunakan ketika Anda memerlukan sesi terminal interaktif sebagai pengguna lain—sering kali untuk administrasi sistem atau untuk menguji bagaimana sesuatu berperilaku di bawah lingkungan akun yang berbeda. - Menjalankan satu perintah sebagai pengguna lain
Ideal ketika Anda hanya membutuhkan hak istimewa yang lebih tinggi atau identitas yang berbeda untuk satu tugas (seperti memulai ulang layanan atau menjalankan perintah database) tanpa sepenuhnya beralih sesi Anda.
- Beralih ke akun lain di shell (misalnya, dari john ke root)
- Mengubah pengguna login default untuk layanan/proses
Layanan (server web, database, aplikasi) biasanya harus berjalan di bawah pengguna yang didedikasikan dan bukan root demi keamanan. Mengubah pengguna layanan memengaruhi cara proses berjalan dan apa yang dapat diaksesnya. - Mengubah siapa yang memiliki file dan direktori
Kepemilikan file mengontrol akses. Jika izin salah—umum setelah migrasi, pemulihan, atau penyebaran—Anda “mengganti pengguna” dengan menetapkan kembali kepemilikan sehingga akun yang benar dapat membaca/menulis file. - Mengubah atribut identitas pengguna (nama pengguna, UID, grup)
Ini adalah manajemen akun: mengganti nama pengguna, mengubah UID mereka, atau menyesuaikan keanggotaan grup (seperti memberikan akses sudo). Perubahan ini dapat memengaruhi login, izin, dan akses layanan.
Panduan ini mencakup semua skenario ini, menunjukkan kapan harus menggunakan setiap pendekatan, bagaimana melakukannya dengan aman, dan kesalahan apa yang harus dihindari—sehingga Anda dapat mengganti pengguna dengan percaya diri tanpa merusak izin, layanan, atau akses.
Beralih ke pengguna lain (shell interaktif)
su (ganti pengguna)
– (atau -l) memuat lingkungan login penuh pengguna target: direktori home, PATH, profil shell.
Tanpa -, Anda mempertahankan banyak dari lingkungan saat ini (bisa membingungkan).
Beralih ke root:
Catatan keamanan: Di banyak distro, su memerlukan kata sandi pengguna target (misalnya, kata sandi root), yang sering kali dinonaktifkan.
sudo -i (disukai untuk shell root/admin)
Memberikan Anda shell login root (mirip dengan su -), menggunakan hak sudo Anda alih-alih kata sandi root.
Beralih ke pengguna lain dengan shell login:
Jalankan satu perintah sebagai pengguna lain (non-interaktif)
sudo -u
Jalankan dengan lingkungan bersih seperti login:
Jalankan perintah sebagai root
Ubah “pengguna efektif” dari proses yang berjalan (realitas lanjutan)
Linux tidak membiarkan Anda “mengganti pengguna” dari proses yang sudah berjalan di tempat dalam sebagian besar skenario praktis. Sebagai gantinya, Anda biasanya:
memulai ulang proses di bawah pengguna yang benar
atau menggunakan manajer layanan (systemd) untuk mendefinisikan pengguna
Untuk memeriksa pengguna mana yang menjalankan proses:
Atau:
Ubah pengguna mana yang dijalankan layanan (systemd)
Sebagian besar Linux produksi menggunakan systemd. Layanan harus berjalan sebagai pengguna yang didedikasikan dan tidak memiliki hak istimewa.
Periksa konfigurasi layanan:
Cari:
User=Group=
Contoh override (metode aman):
Tambahkan:
Terapkan:
Verifikasi:
Ubah kepemilikan file (mengganti “pengguna” untuk file)
chown (perubahan pemilik)
Ubah pemilik:
Ubah pemilik dan grup:
Rekursif (hati-hati):
Pertahankan symlink (hindari mengubah target tautan):
Tip lanjutan: Untuk pohon besar, pratinjau terlebih dahulu:
Ubah identitas shell Anda saat ini vs. mengubah akun itu sendiri
Konfirmasi siapa Anda
Konfirmasi siapa yang masuk
Lihat pengguna mana yang menjalankan shell saat ini melalui sudo
Ubah nama pengguna, UID, grup (modifikasi akun)
Ganti nama pengguna (nama pengguna)
Juga pindahkan/ganti nama direktori home:
Perbarui nama grup juga (opsional):
Ubah UID
Setelah mengubah UID, perbaiki kepemilikan file:
Tambahkan pengguna ke grup (misalnya, sudo)
Verifikasi:
“Lembar curang” cepat
Beralih pengguna:
Jalankan perintah sebagai pengguna lain:
Jalankan shell root:
Ubah pemilik file:
Ubah detail akun:
