Bir süre önce Ubuntu'yu kurduğumda, hesabım için artık kullanmak istemediğim oldukça aptal bir kullanıcı adı seçtim.
Uygulamalar için ayarları kaybetmeden bunu (giriş dizinimin adı ve terminaldeki ad dahil) nasıl değiştirebilirim? Çeşitli kimlik doğrulaması için izinleri ve anahtarlarımı nasıl saklarım (örneğin, e-posta, SSH, GPG ve daha fazlası)? Kullanıcı adımı değiştirirsem hangi ayarlar kaybolabilir?
Unıx benzeri işletim sistemleri kullanıcı adını kullanıcı kimliğinden ayırır, böylece kimliği etkilemeden adı güvenle değiştirebilirsiniz. Tüm izinler, dosyalar vb. Kullanıcı adınıza değil kimliğinize (uıd) bağlıdır.
Kullanıcı veritabanının her yönünü yönetmek için usermod alet.
Kullanıcı adını değiştirmek için (muhtemelen giriş yapmadan bunu yapmak en iyisidir):
sudo usermod -l newUsername oldUsername
Ancak bu, giriş klasörünü yeniden adlandırmaz.
Giriş klasörünü değiştirmek için
sudo usermod -d /home/newHomeDir -m newUsername
kullanıcı adını değiştirdikten sonra.
Örneğin, oturumu kapatabilir, bir konsola bırakabilirsiniz (Ctrl+Alt+F1), ve sudo su - gerçek kök olmak için (aksine sudo -s, $HOME hala / home / adınız.) Belki de önce bu kullanıcıdan hala çalışan bazı işlemleri öldürmeniz gerekir. Bunu yapmak için şunu girin ps -u username, eşleşen pıd'yi arayın ve onları öldürün kill PID-number.
Güncelleştirme: belirtildiği gibi, bazı dosyalar eski giriş dizininize başvurabilir. Geriye dönük uyumluluk için sembolik bir bağlantı tutabilirsiniz, örn. ln -s /home/newname /home/oldname veya dosya içeriğini şununla değiştirebilirsiniz sed -i.bak 's/*oldname*/*newname*/g' *list of files* Her dosya için bir yedek oluşturur.bak uzantısı.
Benim gibi deneyimli olmayan kullanıcılar için bazı ek bilgiler: Yalnızca bir kullanıcı hesabım (yönetici) olduğundan, kullanıcı adını değiştirmeme izin vermez ("zaten oturum açtınız" TTY1'DEKİ yanıttı (Ctrl+Alt+F1). Bu etrafında almak için :
Eski kimlik bilgilerinizle giriş yapın ve tty1'de "geçici" gibi yeni bir kullanıcı ekleyin:
sudo adduser temporary
şifreyi ayarlayın.
Kullanıcıyı sudo grubuna ekleyerek geçici kullanıcının sudo çalıştırmasına izin ver:
sudo adduser temporary sudo
Komutla oturumu kapat exit.
Tty1'e dön: 'Geçici' kullanıcı hesabı ve parola ile giriş yapın. Kullanıcı adınızı ve klasörünüzü yukarıda belirtildiği gibi değiştirin. exit (oturum açma istemini alana kadar)
Tty7'ye geri dön (Ctrl+Alt+F7) GUI / normal masaüstü ekranında oturum açmak ve bunun işe yarayıp yaramadığını görmek için.
Ecryptfs (şifreli giriş dizini) kullanıyorsanız. Şifrelenmiş dizininizi kullanarak bağlama ecryptfs-recover-private ve düzenle <mountpoint>/.ecryptfs/Private.mnt yeni giriş dizininizi yansıtmak için.
Çıkış yap.
exit
Basın Ctrl+Alt+F7 Ubuntu grafik modu giriş ekranına geri dönmek için (bazı Ubuntu revizyonlarında bu olabilir Ctrl+Alt+F1).
Ve şimdi yeni kullanıcı adınızı kullanarak giriş yapabilirsiniz.
bunu yaptığında usermod -l <newname> -d /home/<newname> -m <oldname> alacaksın useradd: can't change /etc/passwd bunu önlemek için hata mesajı ekleyin sudo -- yukarıdaki komut gibi
Burada @karthick87 tarafından listelenen cevap gayet iyi çalışıyor, ancak burada güvende olmak ve tüm aksaklıklardan kaçınmak için ne yapardım:
Ayrı bir hesap / kullanıcı oluşturun ve bu hesabın / kullanıcının root yeteneklerinden emin olun veya root yapabilen herhangi bir kullanıcı olarak oturum açın.
Geçerli hesapla oturumu kapatın ve 1. adımda belirtilen hesapla oturum açın.
Önceki kullanıcının tüm işlemlerini öldür.
Şimdi @karthick87 tarafından belirtilen adımları izleyin ve kullanıcı adını ve ayrıca giriş dizini sahibini değiştirin.
Ardından grup adını değiştirmek için @Sriraj Hebbar'ın cevabını takip edin.
yedek kullanıcıyla oturumu kapatın ve kullanıcınızla oturum açın. Fazladan bir kullanıcı oluşturduysanız silin.
Tüm çizgiler olmadığından (ancak Ubuntu buna sahip olmalı) usermod uygulama, elle yapabilir yoludur. Kök açık olarak /etc/passwd ile düzenlemek için vim veya sistemde bulunan başka bir editör:
sudo vim /etc/passwd
ve bir satırın başında kullanıcının adını değiştirin:
user:x:500:501:username:home/user:/bin/bash
-e doğru:
newuser:x:500:501:username:home/user:/bin/bash
daha sonra root ile çalıştıysanız, sadece giriş yapın ve giriş yaptıysanız kullanıcı oturum kapatma ve relogin.
Elbette tamir etmelisin. /etc/gölge, ve /etc/grup ayrıca sistem düzgün çalışıyor. @Johan Boulé'ye teşekkürler
not: Sistemi bozmamak için bu yaklaşımı dikkatli kullanmalısınız.
not: Bu yaklaşım yalnızca Ubuntu için değil, ubuntu için de yaygındır, ancak google arama, ubuntu dışı arama için, örneğin gömülü linux için olayı gösterecektir
Neden /usr/share/applications/users adresine gidemiyoruz.masaüstü >> Adın değiştirilmesi gereken kullanıcıya tıklayın. Kullanıcı adı Değiştirme >> üzerinde >> Tamam ’ ı tıklatın adı >> Tıklayın Değiştirin. Kullanıcı adını değiştirmenin en kolay yolu bu olurdu, değil mi?