Computer >> บทช่วยสอนคอมพิวเตอร์ >  >> การแก้ไขปัญหา >> Linux

โฮมไดเร็กตอรี่ของผู้ใช้รูทชี้ไปที่ / รูท – Quick Linux Fix

คุณอาจสังเกตเห็นข้อผิดพลาดที่การพิมพ์ cd หรือ cd ~ นำคุณไปที่ /root แทนที่จะเป็นบางอย่างในไดเร็กทอรี /home ที่ดูเหมือนว่าจะเก็บโฮมไดเร็กทอรี หากคุณได้รับข้อผิดพลาดนี้ คุณอาจสังเกตเห็นมันทุกครั้งที่คุณใช้งานในฐานะผู้ใช้ขั้นสูงใน Linux การแก้ไขทำได้ง่ายมากเพราะจริงๆ แล้วมันไม่ใช่ข้อผิดพลาดเลย

แต่สิ่งนี้มีสาเหตุมาจากลักษณะเฉพาะของวิธีที่ Linux จัดการตำแหน่งของโฮมไดเร็กทอรี แม้ว่าจะเป็นพฤติกรรมที่คาดหวังไว้ แต่ก็ยังอาจทำให้เกิดความสับสนอย่างมากหากคุณไม่เคยพบเห็นมาก่อน

หากคุณพิมพ์คำสั่ง cd หรือ cd ~ จากเทอร์มินัล คุณจะถูกนำกลับไปยังโฮมไดเร็กตอรี่ของคุณไม่ว่าคุณจะอยู่ที่ใดในลำดับชั้นไดเร็กทอรี Linux สิ่งนี้จะเกิดขึ้นจริงแม้ว่าคุณจะอยู่ในพาร์ติชั่นที่แยกจากกัน หรือแม้แต่โครงสร้างไฟล์ภายนอกที่แตกต่างไปจากเดิมอย่างสิ้นเชิง หากคุณเคยสูญเสียตำแหน่งของคุณในขณะที่ปีนไดเรกทอรี เพียงพิมพ์ cd จะนำคุณไปยังจุดที่คุณน่าจะเริ่มต้นทันทีที่คุณเปิดเทอร์มินัล

บน Linux โฮมไดเร็กทอรีของผู้ใช้รูทคือ /home/root ในการกระจายแบบเลือกบางรายการ แต่โดยปกติคุณจะเห็นว่ามันอยู่ในตำแหน่ง /root ตรงระดับบนสุดของจุดเริ่มต้นของโครงสร้างไฟล์ แม้ว่าจะสามารถกำหนดค่าได้ แต่นี่คือสถานการณ์ในการกระจาย Linux ส่วนใหญ่อย่างล้นหลาม ลองพิมพ์คำสั่ง cd /root ในฐานะผู้ใช้ทั่วไปที่เทอร์มินัล คุณจะได้รับข้อผิดพลาดที่ระบุว่า "bash:cd /root:Permission rejected" เนื่องจากนี่คือโฮมไดเร็กตอรี่ของผู้ใช้ขั้นสูง

เมื่อคุณทำสิ่งนี้เสร็จแล้ว ให้เปิดหน้าต่างรูทเทอร์มินัลแบบกราฟิกโดยพิมพ์ gksu x-terminal-emulator ที่อาคารผู้โดยสาร คุณจะได้รับพร้อมท์ที่ถามรหัสผ่านผู้ดูแลระบบของคุณ เนื่องจากจะเป็นการสร้างอินสแตนซ์ของพรอมต์คำสั่งที่ยกระดับโดยสมบูรณ์

Linux จำนวนมาก โดยเฉพาะที่ใช้ Ubuntu จะแฮชชื่อผู้ใช้รูท ดังนั้นคุณจึงไม่สามารถเข้าสู่ระบบได้ หากคุณได้รับข้อผิดพลาดประเภทนี้บน Ubuntu หรือการแจกจ่ายอื่นที่คล้ายคลึงกัน คำสั่งนี้จะยังคงให้คุณเข้าสู่ระบบในฐานะรูทโดยไม่ต้องกังวลเกี่ยวกับระบบแฮชนี้ อย่างไรก็ตาม การดำเนินการนี้จะเปิดหน้าต่างเทอร์มินัลแยกต่างหากจากหน้าต่างที่คุณใช้งานอยู่

ทันทีที่คุณอยู่ที่พรอมต์ bash ให้พิมพ์คำสั่ง whoami; ซีดี; รหัสผ่าน และกดปุ่ม Enter ขั้นตอนแรกนี้จะระบุว่าคุณเข้าสู่ระบบด้วยใคร จากนั้นจะเปลี่ยนเป็นโฮมไดเร็กทอรีของผู้ใช้ปัจจุบัน คุณจะสังเกตเห็นว่าคุณเข้าสู่ระบบในฐานะผู้ใช้รูทและโฮมไดเร็กทอรีของผู้ใช้ดังกล่าวไม่ใช่ /home/root แต่แทนที่จะเป็น /root เอง การกระจาย Linux ทำเช่นนี้เพราะบางคนต้องการติดตั้งไดเร็กทอรี /home ทั้งหมดบนพาร์ติชันที่แยกจากจุดระดับบนสุด / จุดเมานท์

เมื่อคุณทำหน้าต่างรูทเสร็จแล้ว คุณจะต้องพิมพ์ทางออก คำสั่งให้ออกจากหน้าต่างนี้เนื่องจากคุณยังคงเป็นผู้ใช้รูทอยู่

หากคุณมีโครงสร้างไดเร็กทอรี /home ติดตั้งอยู่บนดิสก์อื่นและล้มเหลวในทางกายภาพ การมี /root อยู่ที่อื่นจะทำให้คุณไม่สูญเสียความสามารถในการบูตระบบเป็นอย่างน้อยในฐานะผู้ใช้ระดับสูงเพื่อวัตถุประสงค์ในการกู้คืน การแจกแจงส่วนใหญ่ทำขึ้นเพื่อให้สามารถอ่านไดเร็กทอรีของผู้ใช้ปกติที่แตกต่างกันได้ พวกเขาแต่ละคนได้รับสิทธิ์ 755 Unix ไดเร็กทอรี /root นั้นพิเศษเนื่องจากมีสิทธิ์ 700 สิทธิ์ ซึ่งหมายความว่ามีเพียงผู้ใช้ระดับสูงรูทเท่านั้นที่สามารถอ่านไดเร็กทอรีได้

เมื่อคุณเห็นสัญลักษณ์ ~ นี่เป็นเพียงส่วนเสริมที่เชลล์ใช้เพื่อแสดงโฮมไดเร็กตอรี่ของผู้ใช้ โดยไม่คำนึงถึงตำแหน่ง ดังนั้นตราบใดที่คุณได้ผลลัพธ์ที่คล้ายกันหรือเหมือนกันข้างต้น คุณก็ไม่มีข้อผิดพลาดในการแก้ไข บางครั้งคุณอาจเจอคำว่าตัวหนอน ซึ่งเป็นชื่อที่แท้จริงของสัญลักษณ์นี้และมีความหมายเหมือนกัน

เกี่ยวกับผู้เขียน

โฮมไดเร็กตอรี่ของผู้ใช้รูทชี้ไปที่ / รูท – Quick Linux Fix

เควิน แอร์โรว์ส

Kevin Arrows เป็นผู้เชี่ยวชาญด้านเทคโนโลยีที่มีประสบการณ์สูงและมีความรู้และมีประสบการณ์ในอุตสาหกรรมมานานกว่าทศวรรษ เขาได้รับการรับรองจาก Microsoft Certified Technology Specialist (MCTS) และมีความมุ่งมั่นอย่างแรงกล้าที่จะติดตามข่าวสารเกี่ยวกับการพัฒนาเทคโนโลยีล่าสุด Kevin ได้เขียนหัวข้อที่เกี่ยวข้องกับเทคโนโลยีอย่างกว้างขวาง โดยนำเสนอความเชี่ยวชาญและความรู้ของเขาในด้านต่างๆ เช่น การพัฒนาซอฟต์แวร์ ความปลอดภัยทางไซเบอร์ และการประมวลผลแบบคลาวด์ การมีส่วนร่วมของเขาในด้านเทคโนโลยีได้รับการยอมรับและเคารพอย่างกว้างขวางจากเพื่อนร่วมงานของเขา และเขาได้รับการยกย่องอย่างสูงจากความสามารถของเขาในการอธิบายแนวคิดทางเทคนิคที่ซับซ้อนในลักษณะที่ชัดเจนและรัดกุม