โฮมเพจ » ทำอย่างไร » อธิบายโครงสร้างของ Linux Directory

    อธิบายโครงสร้างของ Linux Directory

    หากคุณมาจาก Windows โครงสร้างระบบไฟล์ Linux อาจดูเป็นคนต่างด้าวโดยเฉพาะ C: \ drive และตัวอักษรไดรฟ์หายไปแทนที่ด้วย / และไดเรกทอรีทำให้เกิดเสียงซึ่งส่วนใหญ่มีชื่อตัวอักษรสามตัว.

    Filesystem Hierarchy Standard (FHS) กำหนดโครงสร้างของระบบไฟล์บน Linux และระบบปฏิบัติการคล้าย UNIX อื่น ๆ อย่างไรก็ตามระบบไฟล์ Linux ยังมีบางไดเรกทอรีที่ยังไม่ได้กำหนดโดยมาตรฐาน.

    / - ไดเรกทอรีรูต

    ทุกอย่างในระบบ Linux ของคุณจะอยู่ภายใต้ไดเรกทอรี / หรือที่เรียกว่าไดเรกทอรีราก คุณสามารถนึกถึงไดเร็กตอรี่ / ที่คล้ายกับไดเร็กตอรี่ C: \ บน Windows - แต่นี่ไม่ได้เป็นความจริงอย่างเด็ดขาดเนื่องจาก Linux ไม่มีตัวอักษรไดรฟ์ ในขณะที่พาร์ทิชันอื่นจะอยู่ที่ D: \ บน Windows พาร์ติชันอื่นจะปรากฏในโฟลเดอร์อื่นภายใต้ / บน Linux.

    / bin - ไบนารีผู้ใช้ที่สำคัญ

    ไดเร็กทอรี / bin มีไบนารีผู้ใช้ที่จำเป็น (โปรแกรม) ที่ต้องแสดงเมื่อระบบถูกเมาท์ในโหมดผู้ใช้คนเดียว แอปพลิเคชันเช่น Firefox จะถูกเก็บไว้ใน / usr / bin ในขณะที่โปรแกรมระบบและยูทิลิตี้ที่สำคัญเช่น bash shell นั้นอยู่ใน / bin ไดเร็กทอรี / usr อาจถูกเก็บไว้ในพาร์ติชันอื่น - การวางไฟล์เหล่านี้ในไดเร็กทอรี / bin ทำให้แน่ใจว่าระบบจะมียูทิลิตี้สำคัญเหล่านี้แม้ว่าจะไม่มีระบบไฟล์อื่นติดตั้งอยู่ก็ตาม ไดเร็กทอรี / sbin คล้ายกัน - ประกอบด้วยไบนารีการจัดการระบบที่จำเป็น.

    / boot - ไฟล์บูตแบบคงที่

    ไดเร็กทอรี / boot มีไฟล์ที่จำเป็นสำหรับการบูตระบบ - ตัวอย่างเช่นไฟล์ของตัวโหลดบูต GRUB และเคอร์เนล Linux ของคุณจะถูกเก็บไว้ที่นี่ ไฟล์การกำหนดค่าของตัวโหลดการบูตไม่ได้อยู่ที่นี่ แต่อยู่ใน / etc พร้อมกับไฟล์การกำหนดค่าอื่น ๆ.

    / cdrom - Historical Mount Point สำหรับซีดีรอม

    ไดเรกทอรี / cdrom ไม่ได้เป็นส่วนหนึ่งของมาตรฐาน FHS แต่คุณจะยังพบมันใน Ubuntu และระบบปฏิบัติการอื่น ๆ มันเป็นตำแหน่งชั่วคราวสำหรับซีดีรอมที่ใส่เข้าไปในระบบ อย่างไรก็ตามตำแหน่งมาตรฐานสำหรับสื่อชั่วคราวนั้นอยู่ในไดเร็กทอรี / media.

    / dev - ไฟล์อุปกรณ์

    Linux แสดงอุปกรณ์เป็นไฟล์และไดเร็กทอรี / dev มีจำนวนไฟล์พิเศษที่แสดงอุปกรณ์ สิ่งเหล่านี้ไม่ใช่ไฟล์จริงที่เรารู้จัก แต่ปรากฏเป็นไฟล์ - ตัวอย่างเช่น / dev / sda แสดงถึงไดรฟ์ SATA ตัวแรกในระบบ หากคุณต้องการแบ่งพาร์ติชันคุณสามารถเริ่มตัวแก้ไขพาร์ติชันและแจ้งให้แก้ไข / dev / sda.

    ไดเรกทอรีนี้ยังมีอุปกรณ์หลอกซึ่งเป็นอุปกรณ์เสมือนจริงที่ไม่สอดคล้องกับฮาร์ดแวร์ ตัวอย่างเช่น / dev / random สร้างตัวเลขสุ่ม / dev / null เป็นอุปกรณ์พิเศษที่ไม่สร้างเอาต์พุตและจะทิ้งอินพุตทั้งหมดโดยอัตโนมัติ - เมื่อคุณไพพ์เอาต์พุตของคำสั่งไปยัง / dev / null คุณละทิ้งมัน.

    / etc - ไฟล์กำหนดค่า

    ไดเร็กทอรี / etc มีไฟล์คอนฟิกูเรชันซึ่งโดยทั่วไปสามารถแก้ไขได้ด้วยตัวเองในเท็กซ์เอดิเตอร์ โปรดทราบว่าไดเร็กทอรี / etc / บรรจุไฟล์กำหนดค่าทั้งระบบ - ไฟล์กำหนดค่าเฉพาะผู้ใช้จะอยู่ในโฮมไดเร็กตอรี่ของผู้ใช้แต่ละคน.

    / home - โฮมโฟลเดอร์

    ไดเร็กทอรี / home มีโฟลเดอร์โฮมสำหรับผู้ใช้แต่ละราย ตัวอย่างเช่นหากชื่อผู้ใช้ของคุณคือ bob คุณจะมีโฟลเดอร์บ้านอยู่ที่ / home / bob โฮมโฟลเดอร์นี้มีไฟล์ข้อมูลของผู้ใช้และไฟล์กำหนดค่าเฉพาะผู้ใช้ ผู้ใช้แต่ละคนมีสิทธิ์เข้าถึงเพื่อเขียนในโฮมโฟลเดอร์ของตนเองและต้องได้รับการยกระดับสิทธิ์ (กลายเป็นผู้ใช้รูท) เพื่อแก้ไขไฟล์อื่น ๆ ในระบบ.

    / lib - ไลบรารีที่ใช้ร่วมกันที่จำเป็น

    ไดเร็กทอรี / lib มีไลบรารีที่จำเป็นโดยไบนารีที่จำเป็นในโฟลเดอร์ / bin และ / sbin ไลบรารีที่ต้องการโดยไบนารีในโฟลเดอร์ / usr / bin อยู่ใน / usr / lib.

    / lost + found - ไฟล์ที่กู้คืน

    ระบบไฟล์ Linux แต่ละระบบมีไดเร็กทอรี + ที่หายไป หากระบบไฟล์ขัดข้องการตรวจสอบระบบไฟล์จะดำเนินการในการบู๊ตครั้งถัดไป ไฟล์ที่เสียหายใด ๆ ที่พบจะถูกวางในไดเรกทอรี + ที่หายไปดังนั้นคุณสามารถพยายามกู้คืนข้อมูลให้ได้มากที่สุด.

    / media - สื่อที่ถอดออกได้

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

    / mnt - จุดเมานท์ชั่วคราว

    ประวัติศาสตร์พูดไดเรกทอรี / mnt เป็นที่ที่ผู้ดูแลระบบติดตั้งระบบไฟล์ชั่วคราวในขณะที่ใช้พวกเขา ตัวอย่างเช่นหากคุณกำลังติดตั้งพาร์ติชัน Windows เพื่อทำการกู้คืนไฟล์คุณอาจจะเมาท์ที่ / mnt / windows อย่างไรก็ตามคุณสามารถเมานต์ระบบไฟล์อื่นได้ทุกที่บนระบบ.

    / opt - แพ็คเกจเสริม

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

    / proc - ไฟล์เคอร์เนลและกระบวนการ

    ไดเร็กทอรี / proc คล้ายกับไดเร็กทอรี / dev เนื่องจากไม่มีไฟล์มาตรฐาน มันมีไฟล์พิเศษที่เป็นตัวแทนของระบบและข้อมูลกระบวนการ.

    / root - ไดเรกทอรีบ้านรูต

    ไดเร็กทอรี / root เป็นโฮมไดเร็กทอรีของผู้ใช้รูท แทนที่จะอยู่ที่ / home / root มันอยู่ที่ / root สิ่งนี้แตกต่างจาก / ซึ่งเป็นไดเร็กทอรีรูทของระบบ.

    / run - ไฟล์สถานะของแอปพลิเคชัน

    ไดเร็กทอรี / run ค่อนข้างใหม่และให้แอปพลิเคชั่นเป็นสถานที่มาตรฐานในการจัดเก็บไฟล์ชั่วคราวที่ต้องการเช่นซ็อกเก็ตและ ID กระบวนการ ไฟล์เหล่านี้ไม่สามารถจัดเก็บใน / tmp เนื่องจากไฟล์ใน / tmp อาจถูกลบ.

    / sbin - ไบนารีการบริหารระบบ

    ไดเร็กทอรี / sbin คล้ายกับไดเร็กทอรี / bin มันมีไบนารีที่สำคัญที่โดยทั่วไปมีวัตถุประสงค์เพื่อให้ผู้ใช้รูทสำหรับการบริหารระบบ.

    / selinux - ระบบไฟล์เสมือนของ SELinux

    หากการแจกจ่าย Linux ของคุณใช้ SELinux เพื่อความปลอดภัย (เช่น Fedora และ Red Hat) ไดเร็กทอรี / selinux มีไฟล์พิเศษที่ SELinux ใช้ มันคล้ายกับ / proc Ubuntu ไม่ได้ใช้ SELinux ดังนั้นการมีโฟลเดอร์นี้ใน Ubuntu จึงเป็นข้อผิดพลาด.

    / srv - บริการข้อมูล

    ไดเรกทอรี / srv มี“ ข้อมูลสำหรับการให้บริการโดยระบบ” หากคุณใช้เซิร์ฟเวอร์ Apache HTTP เพื่อให้บริการเว็บไซต์คุณอาจจัดเก็บไฟล์ของเว็บไซต์ของคุณไว้ในไดเรกทอรีภายในไดเรกทอรี / srv.

    / tmp - ไฟล์ชั่วคราว

    แอปพลิเคชันเก็บไฟล์ชั่วคราวในไดเรกทอรี / tmp โดยทั่วไปไฟล์เหล่านี้จะถูกลบเมื่อใดก็ตามที่ระบบของคุณเริ่มต้นใหม่และอาจถูกลบได้ตลอดเวลาโดยยูทิลิตี้เช่น tmpwatch.

    / usr - ไบนารีผู้ใช้ & ข้อมูลแบบอ่านอย่างเดียว

    ไดเร็กทอรี / usr มีแอ็พพลิเคชันและไฟล์ที่ผู้ใช้ใช้ซึ่งตรงข้ามกับแอปพลิเคชันและไฟล์ที่ใช้โดยระบบ ตัวอย่างเช่นแอ็พพลิเคชันที่ไม่จำเป็นจะอยู่ภายในไดเร็กทอรี / usr / bin แทนไดเร็กทอรี / bin และไบนารีการบริหารระบบที่ไม่จำเป็นอยู่ในไดเร็กทอรี / usr / sbin แทนไดเร็กทอรี / sbin ไลบรารี่สำหรับแต่ละไฟล์จะอยู่ในไดเร็กทอรี / usr / lib ไดเร็กทอรี / usr ยังมีไดเร็กทอรีอื่นเช่นไฟล์ที่ไม่ขึ้นกับสถาปัตยกรรมเช่นกราฟิกตั้งอยู่ใน / usr / share.

    ไดเร็กทอรี / usr / local คือตำแหน่งที่แอ็พพลิเคชันที่คอมไพล์แบบโลคัลติดตั้งไว้โดยค่าเริ่มต้นซึ่งจะป้องกันมิให้ส่วนที่เหลือของระบบซ่อน.

    / var - ไฟล์ข้อมูลที่เปลี่ยนแปลงได้

    ไดเร็กทอรี / var เป็นสำเนาที่สามารถเขียนได้ไปยังไดเร็กทอรี / usr ซึ่งต้องเป็นแบบอ่านอย่างเดียวในการดำเนินการปกติ ไฟล์บันทึกการทำงานและทุกอย่างอื่นที่ปกติจะเขียนไปยัง / usr ระหว่างการดำเนินการปกติจะถูกเขียนไปยังไดเรกทอรี / var ตัวอย่างเช่นคุณจะพบไฟล์บันทึกใน / var / log.


    สำหรับข้อมูลทางเทคนิคโดยละเอียดเพิ่มเติมเกี่ยวกับลำดับชั้นของระบบไฟล์ Linux ดูที่เอกสารคู่มือ Filesystem Hierarchy Standard.