लिनक्स के लिए विंडोज सबसिस्टम पर उपयोगकर्ता की होम डायरेक्टरी बदलना


26

मैं उपयोगकर्ता की होम निर्देशिका को बदलना चाहता हूं जिसे मैंने शुरू में लिनक्स के लिए विंडोज सबसिस्टम पर सेटअप किया था। मुझे यह आदेश मिला

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

जिसे यह अनुमति देनी चाहिए, हालांकि मुझे यह त्रुटि मिल रही है

usermod: user alex is currently used by process 2

शायद इसलिए कि मैं उस उपयोगकर्ता के रूप में लॉग इन हूं। मैंने रूट करके sudo su -और फिर कमांड चलाने की कोशिश की है, लेकिन मुझे वही मुद्दा मिल गया है। मैंने उपयोगकर्ता alexपर रूट से लॉग आउट करने के लिए Google पर मिली एक कमांड की कोशिश की, लेकिन उसने मुझे पूरी तरह से बैश से बाहर कर दिया।

कोई विचार?


क्या आप उस खाते का लॉगआउट नहीं कर सकते हैं, दूसरे खाते के रूप में लॉगिन कर सकते हैं, और फिर आदेश देख सकते हैं कि आपको क्या परिणाम मिलेगा?
पिंप जूस आईटी

उस खाते से लॉगिंग करने से लिनक्स बैश बंद हो जाता है और आपको विंडोज प्रॉम्प्ट पर वापस मिल जाता है। बस लॉग इन करना आपको डिफ़ॉल्ट रूप से उस उपयोगकर्ता में डालता है। और रूट करने के लिए स्विचिंग के माध्यम से sudo su -मुझे अभी भी प्रक्रिया त्रुटि
मिलती है

मुझे लगता है, मुझे लगता है कि आप उस खाते से लॉग आउट करते समय किसी अन्य खाते के रूप में विंडोज में लॉग इन नहीं कर सकते हैं, और फिर बैश कमांड को फिर उस खाते से दूसरे खाते के लिए चलाएं? मैंने अभी तक विंडोज के भीतर सेटअप बैश नहीं किया है इसलिए अभी भी संभावित सरल समाधानों के बारे में सोच रहा हूं, हालांकि ऐसा करना असुविधाजनक होगा, लेकिन अगर यह सिर्फ एक बार का सौदा है तो किया, शायद यह काम करेगा। हालांकि त्वरित विचार।
दलाल रस आईटी

दुर्भाग्य से बैश वातावरण वर्तमान उपयोगकर्ता विंडोज से बंधा हुआ है,% appdata% में संग्रहीत। तो एक अन्य उपयोगकर्ता को अपना स्वयं का बैश वातावरण मिलेगा
Xeon06

आप डिफ़ॉल्ट उपयोगकर्ता नाम को विंडोज़ में निष्पादित करके बदल सकते हैं (बैश नहीं) lxrun /setdefaultuser myusername
harrymcc

जवाबों:


41

WSL के साथ होम डायरेक्टरी को बदलना लिनक्स की तरह ही किया जाता है:

  1. बैश दर्ज करें
  2. कमांड टाइप करें sudo vim /etc/passwd
  3. अपने खाते की लाइन ढूंढें, जो इस तरह दिख सकती है:
    harry:x:1000:1000:"",,,:/home/harry:/bin/bash
  4. /home/harryWSL संकेतन का उपयोग करते हुए , होम निर्देशिका को बदलें, जो कि नई निर्देशिका में है
  5. फ़ाइल सहेजें
  6. बैश से बाहर निकलें और इसे फिर से लॉन्च करें
  7. आदेशों का परीक्षण करने के लिए:
    cd ~
    pwd

कृपया मुझे बताएं कि क्या आपको और अधिक जानकारी चाहिये?


मैं डब्ल्यूएसएल को नहीं जानता, मैं बस उत्सुक हूं: सामान्य तौर पर यह सिर्फ सुरक्षित है vim /etc/passwd? लिनक्स में हमारे पास vipwविशेष रूप से नौकरी के लिए है।
कामिल मैकियोरोस्की

@KamilMaciorowski: मैंने अभी WSL के साथ शुरुआत की है, लेकिन मैं यह कह सकता हूं कि sudo /usr/sbin/vipwमेरी बात 2 से ऊपर बिल्कुल वैसी ही है। बदलना /etc/passwdउतना ही सुरक्षित है जितना कि लिनक्स पर करना। शायद सुरक्षित हो क्योंकि इसे नष्ट करने से विंडोज लॉगऑन प्रभावित नहीं होता है।
harrymc

धन्यवाद! मुझे नहीं पता कि मैं इसे संपादित करने का एकमात्र तरीका क्यों ढूंढ सकता था usermod
Xeon06 22

4
इससे सावधान रहें - यदि आप मुख्य नकली लिनक्स फाइल सिस्टम से बाहर निकलते हैं, तो आप पाएंगे कि आप फ़ाइल अनुमति को ठीक से संपादित नहीं कर सकते।
हिप्पीजिम

@ हिप्पीजिम मैं एक ही मुद्दे का सामना कर रहा हूं और पता करता हूं कि यह एसओ एवसर मदद कर सकता है (इसके लिए विन 10 इनसाइडर बिल्ड 17063 और उससे ऊपर की आवश्यकता है)।
सप्ताहांत

1

आप lxrun /setdefaultuser rootकमांड प्रॉम्प्ट में चलने की कोशिश कर सकते हैं , फिर निर्देशिका बदल सकते हैं, फिर डिफ़ॉल्ट उपयोगकर्ता को एलेक्स में बदल सकते हैं।

हमारी साइट का प्रयोग करके, आप स्वीकार करते हैं कि आपने हमारी Cookie Policy और निजता नीति को पढ़ और समझा लिया है।
Licensed under cc by-sa 3.0 with attribution required.