Kullanıcı adımı nasıl değiştirebilirim?

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 :

  1. Eski kimlik bilgilerinizle giriş yapın ve tty1'de "geçici" gibi yeni bir kullanıcı ekleyin:

    sudo adduser temporary

    şifreyi ayarlayın.

  2. Kullanıcıyı sudo grubuna ekleyerek geçici kullanıcının sudo çalıştırmasına izin ver:

    sudo adduser temporary sudo
  3. Komutla oturumu kapat exit.
  4. 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)
  5. 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.
  6. Geçici kullanıcı ve klasörü sil:

    sudo deluser temporarysudo rm -r /home/temporary

Hepsini bir araya getirmek için:

  1. Oturumunuzdan çıkın veya başlangıç ekranına dönmek için bilgisayarınızı yeniden başlatın.

  2. Başlangıç ekranında bir konsol modu tty'ye gidin. Basın Ctrl+Alt+F1 (bazı Ubuntu revizyonlarında bu olabilir Ctrl+Alt+F2 yerine)

  3. Kullanıcı adınızı ve şifrenizi kullanarak giriş.

  4. "kök" hesabı için bir şifre belirleyin.

     sudo passwd root
  5. Çıkış yap.

     exit
  6. "root" hesabını ve daha önce belirlediğiniz şifreyi kullanarak giriş yapın.

  7. Kullanıcı adı ve giriş klasörünü istediğiniz yeni adla değiştirin.

     usermod -l <newname> -d /home/<newname> -m <oldname>
  8. Grup adını istediğiniz yeni adla değiştirin.

     groupmod -n <newgroup> <oldgroup>
  9. "kök" hesabını kilitleyin.

     passwd -l root
  10. 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.

  11. Çıkış yap.

    exit
  12. 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.

Kurtarma modunda yeniden başlatın ve kök komut istemi kabuğuna gidin ("Kök kabuk istemine bırak")

Önce kökü yeniden bağlayın

mount -o remount,rw /

Kullanıcı adı ve giriş klasörü adını değiştirmek için,

usermod -l <newname> -d /home/<newname> -m <oldname>

Grup adı için,

groupmod -n <newgroup> <oldgroup>

Ubuntu 13.10, 14.04, 16.04'te:

  1. "Sistem Ayarları" simgesine tıklayın.
  2. "Kullanıcı Hesapları" na tıklayın.
  3. Yönetici hesabınız görüntülenmelidir.
  4. "Kilidini Aç" düğmesine tıklayın.
  5. Hesabınızda değişikliklere izin vermek için kullanıcı şifrenizi istediğiniz gibi girin.
  6. Kilidi açıldıktan sonra, değiştirmek istediğiniz eski kullanıcı adınızı tıklayabilir ve değiştirmek için yeni bir kullanıcı adı yazabilirsiniz.
  7. Yeni adı yazdığınızda, değişikliği kalıcı hale getirmek için "Kilitle" düğmesine tıklayın.
  8. Yeniden Ubuntu.

Alırken usermod: can't change /etc/password sadece aşağıdaki komutları çalıştırın:

Kök kurtarma konsolunda çalıştır:

mount -o remount,rw /

Sonra yeniden çalıştır:

usermod -l <newname> -d /home/<newname> -m <oldname>

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

sudo -- usermod -l <newname> -d /home/<newname> -m <oldname>

ve

sudo --  groupmod -n <newgroup> <oldgroup>

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:

  1. 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.
  2. Geçerli hesapla oturumu kapatın ve 1. adımda belirtilen hesapla oturum açın.
  3. Önceki kullanıcının tüm işlemlerini öldür.
  4. Şimdi @karthick87 tarafından belirtilen adımları izleyin ve kullanıcı adını ve ayrıca giriş dizini sahibini değiştirin.
  5. Ardından grup adını değiştirmek için @Sriraj Hebbar'ın cevabını takip edin.
  6. 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?