Linux için Windows Alt Sistemindeki kullanıcının ana dizinini değiştirme


26

Başlangıçta Linux için Windows Subsystem üzerine kurduğum kullanıcının giriş dizinini değiştirmek istiyorum. Bu komutu buldum

sudo usermod -d /mnt/c/Users/Alex alex

Buna izin vermeli ama bu hatayı alıyorum

usermod: user alex is currently used by process 2

Muhtemelen bu kullanıcı olarak giriş yaptığım için. sudo su -Yapıp tekrar komutu çalıştırarak root çalıştırmaya çalıştım ama aynı sorunu alıyorum. Google’da kullanıcı alexkökten çıkması için bulduğum bir komutu denedim ama bu da beni tamamen bash dışı bıraktı.

Düşüncesi olan var mı?


Bu hesaptan çıkış yapamaz, başka bir hesap olarak giriş yapamaz ve sonra hangi sonucu aldığınızı görmek için komutları çalıştıramaz mısınız?
Pezevenk Suyu BT,

Bu hesaptan çıkış yapmak Linux bash'ini kapatır ve sizi Windows istemine geri döndürür. Tekrar giriş yapmak sizi varsayılan olarak o kullanıcıya yerleştirir. Ve kökten geçerek sudo su -hala işlem hatası alıyorum
Xeon06

Görüyorum ki, bu hesaptan çıkarken Windows'a başka bir hesap olarak giriş yapamazsınız ve ardından bash komutunu çalıştırıp ardından bu hesaptan bash olarak diğer hesap için çalıştırırsınız. Windows içinde henüz bash kurulumunu yapmamıştım, bu yüzden yapılması zor olsa da potansiyel basit çözümleri düşünmekteydim, ancak bu bir kerelik bir anlaşma olsa bile, o zaman işe yarayabilirdi. Hızlı düşünceler sadece olsa.
Pezevenk Suyu BT

Maalesef, bash ortamı,% appdata% 'da depolanan mevcut kullanıcı Windows’a bağlı. Yani başka bir kullanıcı kendi bash ortamını elde edecek
Xeon06

Varsayılan kullanıcı adını Windows'ta çalıştırarak değiştirebilirsiniz (bash değil) lxrun /setdefaultuser myusername.
harrymc

Yanıtlar:


41

Giriş dizini WSL ile değiştirmek, Linux'ta olduğu gibi yapılır:

  1. Bash girin
  2. Komutu yazın sudo vim /etc/passwd
  3. Hesabınızın satırını bulun ve şöyle görünebilir:
    harry:x:1000:1000:"",,,:/home/harry:/bin/bash
  4. /home/harryWSL gösterimini kullanarak yukarıdaki giriş dizinini yeni dizine değiştirin
  5. Dosya 'yı kaydet
  6. Bash çıkın ve yeniden başlatın
  7. Test etmek için komutları kullanın:
    cd ~
    pwd

Daha fazla bilgiye ihtiyacınız olursa haberim olsun.


WSL'yi tanımıyorum, sadece merak ediyorum: genel olarak sadece güvenli vim /etc/passwdmidir? Linux'ta vipwözellikle iş için sahibiz .
Kamil Maciorowski 13:16

@KamilMaciorowski: WSL ile yeni başladım, ancak bunun sudo /usr/sbin/vipwtam olarak yukarıdaki 2. adımla aynı olduğunu söyleyebilirim . Değişim /etc/passwdLinux'ta yapmak kadar güvenli. Belki daha güvenli, çünkü onu yok etmek Windows oturum açmasını etkilemiyor.
harrymc

Teşekkür ederim! Bunu düzenlemek için neden bulabildiğim tek yolun neden bittiğini bilmiyorum usermod.
Xeon06

4
Buna dikkat edin - ana sahte linux dosya sisteminden çıkarsanız, dosya izinlerini düzgün şekilde düzenleyemeyeceğinizi görürsünüz.
Hippyjim

@Hippyjim Aynı sorunla karşı karşıyayım ve bu SO cevaplayıcısının yardımcı olabileceğini öğrendim (Win 10 Insider Build 17063 ve daha üstü gerekir).
Hafta sonu

1

lxrun /setdefaultuser rootKomut isteminde çalıştırmayı deneyebilir , sonra dizini değiştirebilir, ardından varsayılan kullanıcıyı Alex olarak değiştirebilirsiniz.

Sitemizi kullandığınızda şunları okuyup anladığınızı kabul etmiş olursunuz: Çerez Politikası ve Gizlilik Politikası.
Licensed under cc by-sa 3.0 with attribution required.