Hanya ada satu pengguna di sistem saya. Bagaimana saya bisa mengubah ID penggunanya dari default 1000?
Jika ada langkah-langkah tambahan yang diperlukan untuk menghindari proses login pada instalasi desktop biasa, itu harus dimasukkan sebagai bagian dari jawaban.
user-management
ændrük
sumber
sumber
Jawaban:
Masalahnya adalah, seperti yang Anda sebutkan, Anda tidak dapat mengubah UID pengguna Anda saat login dalam suatu sesi. Anda harus menggunakan akun pengguna lain untuk melanjutkan.
Tetapi Anda tidak harus membuat akun pengguna baru, mempromosikannya ke admin, logout, masuk ke akun admin baru, ubah UID akun primer Anda, logout, masuk ke akun utama Anda kemudian hapus pengguna admin baru cukup ganti UID Anda. ;)
Anda dapat mem-boot ke mode pemulihan (ini merupakan opsi yang muncul saat Anda menyalakan komputer, atau menahan shift segera setelah pesan BIOS selesai; Gunakan ESCpada mesin Dell yang menjalankan OEM-Ubuntu). Ini akan mencatat Anda dalam sesi root. Sedang login root dan bukan akun pengguna Anda yang biasa , Anda akan dapat mengubah UID Anda.
Karena mode pemulihan hanya berfungsi di antarmuka baris perintah, setelah masuk ke sesi root, Anda harus:
Gunakan petunjuk BubbaJ untuk remount sistem file root dalam modus baca-tulis :
mount -o remount,rw /
.Gunakan perintah Luis Alvarado ini :
usermod -u NEW_UID your_username
.reboot
), sehingga Anda bisa boot dalam mode normal.sumber
usermod -u NEW_UID your_username
danfind / -uid 1000 -exec chown -h 5000 '{}' \+
, reboot mengarah ke login GUI hanya sesi-tebak./etc/login.defs
dan/etc/adduser.conf
file - file Anda jika Anda telah mengubah uid Anda di luar kebijakan yang disediakan dalam file-file konfigurasi tersebut. Pengguna di luar batas kebijakan tidak ditampilkan di loop masuk, tetapi Anda dapat mengubah kebijakan. Lihat jawabanusermod: user user_name is currently used by process 1118
@Alexandre P.Anda dapat mengubahnya
/etc/passwd
,/etc/group
dan/etc/shadow
atau Anda menggunakan salah satu kemungkinan pilihan di atas. Tapi - yang paling penting - Anda harus mengubah kepemilikan semua file milik pengguna.Misalnya, jika id pengguna lama adalah 1000 dan yang baru adalah 5000:
Dan hal yang sama untuk id grup (jika Anda mengubahnya juga).
sumber
sudo find / -xdev -uid 1000 -exec chown 5000 '{}' \+
, kalau tidak orang akan memasukkan data yang di-mount (di/mnt
, yang mungkin tidak diinginkan) dan file Anda sebaiknya tidak dipusingkan dengan/proc
dan/dev
. Lihat posting iniSolusi lengkap berdasarkan @AlexandreP. dan dokumentasi resmi @ddeimeke +. Tidak perlu reboot.
Kebijakan Debian / Ubuntu adalah bahwa jika ada pengguna
jim
dengan ID pengguna1001
, ada juga grupjim
dengan ID grup1001
. Solusi ini juga memperbarui ID grup tersebut.Aktifkan akun root :
Masuk sebagai root dan jalankan ini dengan nama pengguna dan UID lama / baru yang disediakan:
$username
Nonaktifkan akun root :
sumber
sudo setfacl -m "u:<NEWUID>:r-x" /media/<USERNAME> sudo setfacl -x "u:<OLDUID>" /media/<USERNAME>
Jika Anda masuk ke konsol dan mengetik:
usermod --help
Anda akan mendapatkan salah satu parameter yang mengatakan:-u, --uid UID UID baru untuk akun pengguna
jadi jika Anda ingin mengubah UID untuk pengguna cyrex maka lakukan:
usermod -u 1000 cyrex
itu akan mengubah uid untuk cyrex dari nilai apa pun yang dimilikinya sebelum menjadi 1000
Jika Anda ingin melakukannya secara visual maka lakukan ini:
Pergi ke
Pilih diri Anda dari daftar dan klik PENGATURAN LANJUTAN
UID ada di ujung jendela itu.
sumber
sumber
Dengan KDE: Di menu Ubah Pengaturan Pengguna Lanjut:
Mengubah dari pengguna lain tidak berfungsi untuk 1000 yang merupakan pengguna default.
Anda harus melakukannya secara manual - pengalaman saya
sumber
Pertama, Anda perlu masuk sebagai root, setidaknya untuk sementara waktu, jadi mari kita buat ini menjadi mungkin:
Reboot, ctrl + alt + f1 untuk beralih ke konsol, login sebagai root, lakukan hal berikut (kepemilikan dir home akan diurus secara otomatis):
Untuk file Anda di tempat lain selain direktori home Anda, untuk ini:
Hapus dan kunci sandi root, jika Anda mau. (Saya cenderung menyimpannya):
sumber
Saya mengikuti instruksi ddeimeke dengan perubahan berikut:
sudo su
/etc/shadow
Saya telah melihatnya disebutkan dalam jawaban lain bahwa Anda harus boot ke pemulihan atau login sebagai
root
. Milik saya adalah instalasi Ubuntu 14 baru jadi saya bersedia untuk menguji apakah itu akan bekerja tanpa masuk sebagairoot
. Juga saya melakukan ini pada contoh EC2 melalui SSH.sumber