Cara Mendapatkan Keistimewaan Root pada Ubuntu | Panduan Penukaran Selamat dan Efisien

1. Pengenalan

Pada Ubuntu, beberapa tugas pengurusan sistem memerlukan keistimewaan root, yang tidak dapat diakses oleh pengguna biasa. Akaun root bersamaan dengan “akaun pentadbir” sistem dan membenarkan pengguna melaksanakan tugas kritikal seperti operasi sistem fail, pemasangan pakej, dan perubahan konfigurasi. Artikel ini menerangkan cara menukar kepada pengguna root pada Ubuntu serta perkara penting yang perlu dipertimbangkan semasa melakukannya.

侍エンジニア塾

2. Keistimewaan Root dalam Ubuntu dan Ciri-cirinya

Dasar keselamatan Ubuntu melumpuhkan akaun root secara lalai untuk mengurangkan risiko sistem yang berkaitan dengan penggunaan root yang tidak perlu. Sebaliknya, Ubuntu memberikan keistimewaan root sementara kepada pengguna biasa melalui arahan “sudo”.

2.1 Perbezaan Antara Pengguna Biasa dan Pengguna Root

Pengguna biasa hanya dapat mengakses direktori mereka dan tetapan sistem terhad, manakala pengguna root mempunyai kawalan tanpa sekatan ke atas sistem. Oleh itu, keistimewaan root diperlukan untuk tugas yang melibatkan fail sistem dan kebenaran. Walau bagaimanapun, penggunaan keistimewaan root yang tidak betul boleh menjejaskan kestabilan sistem, jadi pengetahuan yang tepat adalah penting.

2.2 Keistimewaan Root Sementara Menggunakan sudo

Pada Ubuntu, bukannya menukar terus kepada akaun root, disarankan untuk menggunakan arahan sudo bagi memperoleh keistimewaan root sementara bila diperlukan. Bahagian berikut menerangkan penggunaannya serta langkah berjaga-jaga secara terperinci.

3. Cara Menukar Sementara kepada Root

Apabila keistimewaan root diperlukan pada Ubuntu, disarankan untuk memberikan akses root hanya kepada arahan tertentu dan bukannya menukar sepenuhnya kepada pengguna root. Kaedah ini mengurangkan risiko operasi tidak sengaja, kerana sistem kembali kepada keistimewaan biasa selepas menyiapkan tugas. Di bawah, kami menjelaskan penggunaan arahan sudo langkah demi langkah.

3.1 Penggunaan Asas Arahan sudo

“sudo” merupakan singkatan bagi “substitute user do”, yang membenarkan pengguna menukar keistimewaan mereka secara sementara. Walaupun pengguna biasa, mereka boleh melaksanakan arahan tertentu dengan keistimewaan root menggunakan sudo. Arahan tersebut digunakan seperti berikut:

$ sudo [command]

Sebagai contoh, untuk mengemas kini pakej, masukkan arahan berikut:

$ sudo apt update

Oleh kerana arahan ini memerlukan keistimewaan root, penggunaan sudo membolehkan peningkatan keistimewaan sementara untuk melaksanakannya.

3.2 Input Kata Laluan Semasa Menggunakan sudo

Apabila menggunakan sudo buat pertama kali, anda akan diminta memasukkan kata laluan pengguna semasa anda. Ini memastikan sudo tidak dapat diakses secara bebas oleh sesiapa, meningkatkan keselamatan. Pengesahan tetap sah untuk tempoh tertentu, jadi anda tidak perlu memasukkan semula kata laluan untuk setiap arahan.

3.3 Tempoh Kesahihan Sementara sudo

Tempoh tamat lalai untuk keistimewaan sudo pada Ubuntu adalah kira-kira 15 minit. Jika akses root yang berpanjangan tidak diperlukan, anda boleh menolak keistimewaan secara manual dengan menjalankan arahan sudo -k, yang serta-merta membatalkan pengesahan, memerlukan kata laluan semula untuk penggunaan sudo seterusnya.

4. Cara Menukar kepada Shell Root

Menukar kepada shell root membenarkan pengguna terus beroperasi sebagai pengguna root, yang berguna untuk melaksanakan pelbagai tugas pentadbiran. Pada Ubuntu, anda boleh menggunakan arahan sudo -i atau sudo su untuk menukar kepada shell root. Bahagian berikut menerangkan penggunaan dan ciri-ciri setiap arahan.

4.1 Menukar kepada Shell Root Menggunakan sudo -i

Arahan sudo -i menukar kepada shell root dengan persekitaran yang sepenuhnya diinisialisasi. Apabila menggunakan arahan ini, profil pengguna root dimuatkan, dan pembolehubah persekitaran khusus root diterapkan. Jalankan arahan berikut:

$ sudo -i

Selepas melaksanakan arahan ini, persekitaran root diwarisi sepenuhnya, membolehkan penggunaan serta-merta pembolehubah persekitaran dan laluan yang dikonfigurasikan untuk root. Setelah tugas selesai, gunakan arahan exit untuk kembali ke akaun pengguna biasa anda.

4.2 Menukar kepada Shell Root Menggunakan sudo su

The sudo su command is similar to sudo -i but has slightly different behavior. While it switches to the root shell, it may not inherit environment variables that are loaded at login. This means that the current user’s environment variables remain while operating with root privileges.

$ sudo su

Using sudo su maintains the existing session while granting root privileges. It is useful when you want to perform administrative tasks without inheriting a fresh root environment.

4.3 Menukar Tanpa Mewarisi Pembolehubah Persekitaran (su -)

If you need to fully separate from the regular user’s environment variables while working as root, it is recommended to use the su - command. This command logs in as root in a completely fresh state, applying only the default root user environment.

$ su -

5. Menukar ke Root Menggunakan Perintah su

You can also switch to the root user from your current user account using the su command. This method is commonly used in other Linux distributions and is useful when a root password is set. However, since Ubuntu disables the root password by default, you may need to enable it manually.

5.1 Penggunaan Asas Perintah su

The su command is used to switch users. If you want to switch to another user, specify the username. To switch to the root user, enter the following command:

$ su

This command prompts you to enter the root password. If the correct password is provided, the shell switches to the root user. After completing your tasks, use the exit command to return to your previous user session.

5.2 Perbezaan Antara su dan su –

Using su - starts a shell with the target user’s full environment settings, effectively logging you in as that user. This is useful when you want a clean root environment without inheriting your current user’s settings. Use it as follows:

$ su -

The main difference between su and su - is that su keeps the current user’s environment variables, whereas su - loads a fresh shell environment as if you logged in as root from the start.

6. Pertimbangan Keselamatan Apabila Menggunakan Keistimewaan Root

Having root privileges grants full control over the system, but misuse or accidental modifications can pose serious risks. Therefore, when managing Ubuntu, security measures should always be prioritized when using root privileges. Below are some key security considerations.

6.1 Elakkan Penggunaan Keistimewaan Root yang Tidak Perlu

Since root privileges allow powerful operations, it is best to minimize working in a root session. Using the sudo command for temporary root access is safer and reduces the risk of accidental deletions or misconfigurations. If you frequently need root access, consider running only specific commands as root instead of logging in as root entirely.

6.2 Sentiasa Log Keluar dari Sesi Root

Once you finish using a root shell, always log out with the exit command to return to your regular user account. Staying in root session increases the risk of unintended operations with root privileges. Even for short tasks, getting into the habit of logging out of root helps enhance security.

6.3 Konfigurasikan Fail sudoers dengan Betul

The sudoers file determines which users can execute sudo commands. You can edit this file with the visudo command to restrict sudo access to specific users. This prevents unauthorized users from gaining root access if your system is compromised.

6.4 Gunakan Log Audit

Ubuntu records logs of root privilege usage, allowing administrators to review which users executed root-level commands. This is especially useful in multi-user environments where regular security audits can help track system changes and prevent unauthorized actions.

7. Ralat Biasa dan Penyelesaiannya

Apabila menukar ke root atau bekerja dengan keistimewaan root pada Ubuntu, anda mungkin akan menemui beberapa ralat biasa. Memahami ralat‑rahal ini dan cara menyelesaikannya dapat membantu mempercepat proses penyelesaian masalah.

7.1 Ralat “Permission Denied”

Jika anda cuba melaksanakan perintah yang memerlukan keistimewaan root sebagai pengguna biasa, anda mungkin akan melihat ralat Permission denied. Ini bermakna anda tidak mempunyai kebenaran yang diperlukan. Untuk menyelesaikannya, jalankan semula perintah tersebut dengan sudo:

$ sudo [command]

Jika anda perlu menjalankan pelbagai perintah sebagai root, pertimbangkan untuk menukar ke shell root.

7.2 Ralat “User Is Not in the sudoers File”

Jika seorang pengguna tidak didaftarkan dalam fail sudoers, mereka akan melihat ralat user is not in the sudoers file, yang menghalang penggunaan sudo. Untuk memperbaikinya, log masuk sebagai pentadbir dan edit fail sudoers menggunakan visudo. Tambahkan baris berikut untuk memberikan akses sudo:

username ALL=(ALL) NOPASSWD: ALL

7.3 Isu Timeout sudo

Jika sudo tidak meminta kata laluan apabila melaksanakan perintah, ia mungkin disebabkan oleh tamatnya sesi. Setelah tempoh pengesahan berakhir, anda perlu memasukkan semula kata laluan. Cukup jalankan semula perintah sudo dan masukkan kata laluan anda sekali lagi.

7.4 Kata Laluan Root Dinonaktifkan

Secara lalai, akaun root dinonaktifkan dalam Ubuntu. Jika anda cuba menukar ke root menggunakan perintah su, anda mungkin akan menemui ralat “Authentication failure”. Untuk mengaktifkan akaun root, tetapkan kata laluan dengan perintah berikut:

$ sudo passwd root

Selepas menetapkan kata laluan, akaun root akan diaktifkan dan boleh digunakan.

8. Kesimpulan

Artikel ini membincangkan pelbagai kaedah menukar ke root pada Ubuntu. Oleh kerana keistimewaan root memberikan akses penuh ke sistem, menggunakannya dengan betul adalah penting untuk mengekalkan keselamatan dan kestabilan sistem. Berikut ialah ringkasan perkara utama:

  • Kepentingan Keistimewaan Root: Akses root penting untuk pentadbiran sistem yang mendalam.
  • Menggunakan sudo untuk Keistimewaan Sementara: Menjalankan perintah dengan sudo [command] mengurangkan risiko keselamatan.
  • Menukar ke Shell Root: Perintah seperti sudo -i dan sudo su membenarkan sesi shell root.
  • Memahami su dan su -: Mengetahui bila menggunakan su berbanding su - adalah penting.
  • Pertimbangan Keselamatan: Kurangkan penggunaan root dan sentiasa log keluar daripada sesi root.
  • Ralat Biasa dan Penyelesaiannya: Selidik masalah sudo dan akses root dengan berkesan.