ฮาร์ดแวร์

ระบบไฟล์มีโครงสร้างอย่างไรใน gnu / linux

สารบัญ:

Anonim

แน่นอนว่าพวกคุณหลายคนอย่างฉันเรียนรู้ที่จะใช้ คอมพิวเตอร์กับ Windows บางรุ่น และเป็นไปได้ว่าหนึ่งในสิ่งแรกที่พวกเขาคุ้นเคยคือวิธีจัดการข้อมูลทั้งหมดที่เก็บไว้ในนั้นหรือบางส่วน สื่อแบบถอดได้ที่เชื่อมต่อกับพีซี นั่นคือเพื่อทำงานต่างๆเช่นการคัดลอกการวางการย้ายหรือการค้นหาไฟล์ของเรา ด้วยเหตุนี้เวลานี้เราต้องการแสดงให้คุณเห็นว่า ระบบไฟล์ มี โครงสร้างอย่างไรใน Linux / GNU แน่นอนว่ามันไม่จำเป็นที่จะต้องรู้ 100% แต่มันจะมีประโยชน์มากถ้ามีความคิดเกี่ยวกับลำดับชั้นของไฟล์

ดัชนีเนื้อหา

ระบบไฟล์มีโครงสร้างอย่างไรใน GNU / Linux

ระบบ Linux ตั้งอยู่ภายใต้แผนผังลำดับชั้นของไฟล์เช่นเดียวกับโครงสร้างของระบบ Unix ในการเริ่มต้นต้นไม้ลำดับชั้นของไดเรกทอรีและไฟล์นี้ไม่ได้อยู่ภายใต้มาตรฐานใด ๆ นั่นคือมีการเปลี่ยนแปลงระหว่างการแจกแจงแบบหนึ่งและแบบอื่น มันเป็นสิ่งนี้ที่กระตุ้นกลุ่มคนให้พัฒนาในปี 1993 สิ่งที่รู้จักกันในชื่อ Fileystem Hierarchy Standard (FHS) หรือใน Spanish File System Hierarchy Standard

FHS

FHS ถูกกำหนดให้เป็นมาตรฐานที่สร้างและให้รายละเอียดของชื่อเนื้อหาที่ตั้งและการอนุญาตของไฟล์และไดเรกทอรีในคำอื่น ๆ มันเป็น ชุดของกฎที่กำหนดโครงสร้างทั่วไปของไฟล์และไดเรกทอรีบนระบบ Linux. มาตรฐานนี้ไม่มีอะไรมากไปกว่าเอกสารนำทางซึ่งผู้ผลิตสามารถขอคำปรึกษาและนำไปใช้เมื่อสร้างการกระจายใหม่

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

วัตถุประสงค์หลักของ FHS

  • เปิดเผยระบบไฟล์แบบลำดับชั้นอย่างสม่ำเสมอและสม่ำเสมอให้ความสะดวกในการพัฒนาซอฟต์แวร์เนื่องจากจะช่วยให้การคาดเดาและการระบุไฟล์และไดเรกทอรีที่ติดตั้งง่ายให้ความสะดวกแก่ผู้ใช้ในการทำนายตำแหน่งของไฟล์และไดเรกทอรีบนคอมพิวเตอร์

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

ไฟล์ที่แชร์และไม่สามารถแชร์ได้: ไฟล์ก่อนหน้าเป็นไฟล์ที่อยู่ในคอมพิวเตอร์และไฟล์หลังเป็นไฟล์ที่สามารถแชร์ได้ระหว่างคอมพิวเตอร์เครื่องอื่น ตัวอย่างเช่น

  • ไฟล์ที่แชร์ได้: เนื้อหาใน / var / www / html (ซึ่งเป็น DocumentRoot เริ่มต้นของ Apache เว็บเซิร์ฟเวอร์โดยที่ index.html ต้อนรับเริ่มต้นจะถูกเก็บไว้) ไฟล์ที่ไม่สามารถแชร์ได้: เนื้อหาใน / boot / grub / (ไดเรกทอรีย่อย ตำแหน่งที่ไฟล์โหลดเดอร์ GRUB ตั้งอยู่)

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

ลองดูที่: คำสั่ง Linux: รู้จักและจัดการระบบ

เข้าถึงระบบไฟล์ต่าง ๆ

การรู้ประเภทไฟล์ประเภทนี้เราต้องรู้ด้วยว่า ใน Linux ทุกอย่างเป็นไฟล์ ทั้งฮาร์ดแวร์และซอฟต์แวร์กำลังจัดเก็บเป็นไฟล์ข้อความและจากที่นั่นแนวคิดของ "การติดตั้ง" หรือ "unmounting" อุปกรณ์เกิดขึ้น นั่นคือโครงสร้างแบบลอจิคัลนั้นขึ้นอยู่กับโครงสร้างฮาร์ดแวร์ดังนั้นจึงไม่ขึ้นอยู่กับว่าคอมพิวเตอร์มีฮาร์ดไดรฟ์ 1, 3 หรือ 5 ตัวเพื่อสร้าง c: \, e: \ ok: \ ไดรฟ์

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

ดังที่ฉันได้กล่าวไปแล้วเรายังสามารถเข้าถึงอุปกรณ์ฮาร์ดแวร์ด้วยกลไกนี้ แต่ไฟล์เหล่านี้เป็นไบนารีซึ่งก็คือพวกเขาตีความโดย Linux เท่านั้น ดังนั้นหากเราสร้างฉบับใด ๆ เราจะเสี่ยงต่อการออกจากระบบที่ไม่เสถียรและไม่สามารถใช้งานได้ ในระยะสั้นการเข้าถึงพวกเขาไม่ใช่ตัวเลือกนอกเสียจากคุณจะแน่ใจในสิ่งที่เราทำ ตอนนี้เรารู้ในระดับทฤษฏีว่าโครงสร้างของมันเป็นอย่างไร มาดูกันว่าการใช้ FHS ในชีวิตจริงเป็นอย่างไร?

โครงสร้างระบบไฟล์ใน Linux ตามมาตรฐาน FHS

ไดเรกทอรี ลักษณะ
/ ลำดับชั้นหลัก เรียกว่า รูท หรือรูทไดเร็กทอรีหลักคอนเทนเนอร์ของระบบไฟล์ทั้งหมดใน Linux
/ bin / มันมีไบนารีคำสั่งที่จำเป็นเพื่อให้พวกเขาสามารถใช้ได้ทั้งในเซสชั่นเดียวหรือสำหรับผู้ใช้หลายคน ซึ่งรวมถึงตัวอย่างเช่น ls, cp, cat, mkdir, rm และอื่น ๆ
/ boot / ระบบเริ่มต้น
/ dev / มีการเข้าถึงอุปกรณ์ ทั้งฮาร์ดแวร์หรือเสมือน
/ etc / ซึ่งรวมถึงไฟล์การกำหนดค่าระบบ มีการถกเถียงกันถึงความหมายของชื่อ แต่การตีความล่าสุดอ้างถึงว่าเป็น "การตั้งค่าข้อความที่แก้ไขได้"
/ etc / opt / ไฟล์การกำหนดค่าของโปรแกรมที่อยู่ในไดเรกทอรี / opt
/ etc / X11 / ไฟล์คอนฟิกูเรชัน X Window System เวอร์ชัน 11
/ etc / sgml / ไฟล์การกำหนดค่า SGML
/ etc / xml / ไฟล์คอนฟิกูเรชัน XML
/ home / มีไดเร็กทอรีการทำงานของผู้ใช้ทั้งหมดยกเว้น superuser (ผู้ดูแลระบบ root) มีไฟล์ที่บันทึกการตั้งค่าส่วนตัว ฯลฯ มันมักจะติดตั้งบนดิสก์หรือพาร์ติชันแยกต่างหาก ผู้ใช้แต่ละคนมีไดเรกทอรีของตนเองภายในโฟลเดอร์นี้
/ lib / ไลบรารีที่แบ่งใช้พื้นฐานทั้งหมดของโปรแกรมที่ติดตั้งนั้นอยู่รวมถึงที่ใช้โดยเคอร์เนล
/ เฉลี่ย / มี จุดเชื่อมต่อสำหรับ สื่อเก็บข้อมูลแบบถอดได้
/ mnt / มันคล้ายกับ / media แต่โดยปกติแล้วผู้ใช้จะใช้ เพื่อที่จะ "mount" เช่นฮาร์ดไดรฟ์และพาร์ทิชันชั่วคราว
/ opt / มีข้อมูลเกี่ยวกับแอปพลิเคชันที่ไม่บันทึกตัวเลือกการกำหนดค่าในไดเรกทอรีนี้นั่นคือผู้ใช้แชร์แอปพลิเคชัน แต่ไม่ใช่ตัวเลือกการกำหนดค่า
/ proc / มีไฟล์ที่แสดงเอกสารหลักและสถานะของกระบวนการของคุณในเวลาที่กำหนด
/ ราก / ไดเร็กทอรีหลักของผู้ใช้รูท มันเหมือน / home แต่สำหรับ superuser ระบบ (ผู้ดูแลระบบ)
/ sbin / ไฟล์เรียกทำงานหรือไบนารีที่จำเป็นสำหรับการดำเนินการคำสั่งพิเศษและโปรแกรมของผู้ดูแลระบบหรือผู้ใช้ที่มีสิทธิ์ใช้งาน
/ srv / มีข้อมูลที่ให้บริการโดยระบบ
/ tmp / มีไฟล์ชั่วคราว
/ usr / ลำดับชั้นที่สอง ของข้อมูลผู้ใช้ มันมียูทิลิตี้ส่วนใหญ่ที่มีวัตถุประสงค์หลายผู้ใช้ แต่ยังคงเป็นแบบอ่านอย่างเดียว โฟลเดอร์นี้สามารถแชร์กับผู้ใช้เครือข่ายท้องถิ่นอื่น ๆ ได้
/ usr / bin / คำสั่งไบนารีที่ไม่ใช่การดูแลระบบสำหรับผู้ใช้ทั้งหมด
/ usr / include / ไฟล์รวมมาตรฐาน
/ usr / lib / ชุดของไลบรารีหรือไบนารีที่แชร์ ไม่มีไลบรารีที่เหมือนกันสองตัวในระบบเดียวกันซึ่งปรับการใช้หน่วยความจำให้เหมาะสม
/ usr / sbin / ไบนารีที่ไม่จำเป็น ตัวอย่างเช่น daemons มีหลายเครือข่ายบริการ
/ usr / share / มีข้อมูลที่แชร์ แต่ไม่ขึ้นอยู่กับสถาปัตยกรรม
/ usr / src / มีซอร์สโค้ดของแอ็พพลิเคชันบางตัว
/ usr / X11R6 / ไดเรกทอรีที่เกี่ยวข้องกับสภาพแวดล้อมกราฟิก
/ usr / local / ลำดับชั้นที่สาม สำหรับข้อมูลท้องถิ่นนั่นคือเฉพาะกับโฮสต์นี้
/ var / มีไฟล์ตัวแปรระบบเช่นบันทึกฐานข้อมูลอีเมล
/ var / แคช / คล้ายกับ / tmp มันมีหน่วยความจำแคชของบางแอพพลิเคชั่น
/ var / crash / มีข้อมูลเกี่ยวกับข้อผิดพลาดหรือระบบล่ม
/ var / เกม / เป็นไดเรกทอรีที่ไม่จำเป็นและมีวัตถุประสงค์เพื่อเก็บข้อมูลเกี่ยวกับเกมของระบบ
/ var / lock / ไฟล์ที่มีสถานะของทรัพยากรที่ใช้อยู่จะอยู่
/ var / log / ล็อก ไฟล์
/ var / mail / คลังข้อความผู้ใช้อีเมลที่คล้ายกัน
/ var / opt / มีข้อมูลที่สามารถเป็นตัวแปรในไดเร็กทอรี / opt
/ var / run / การเข้าถึงข้อมูลตั้งแต่เริ่มระบบครั้งสุดท้าย ตัวอย่างเช่นผู้ใช้ที่เชื่อมต่ออยู่ในปัจจุบันหรือปีศาจทำงานอยู่
/ var / spool / รวมถึงงานที่รอดำเนินการ ตัวอย่างเช่นอีเมลที่ยังไม่ได้อ่านหรือคิวการพิมพ์
/ var / spool / mail / ตำแหน่งของอีเมลจากผู้ใช้ที่ไม่ผ่านการอนุมัติ
/ var / tmp / มันมีไฟล์ชั่วคราวความแตกต่างกับ / tmp คือความจริงที่ว่ามันจะไม่ถูกลบเมื่อรีบูตระบบ
เราขอแนะนำให้คุณติดตั้ง Ubuntu ใน Windows 10 ได้อย่างไร

คุณอาจสนใจอ่าน: สิ่งที่คุณต้องรู้เกี่ยวกับ รูท, su และ sudo ใน Linux

สิทธิ์

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

  • a: การอนุญาตให้อ่านไฟล์ w: การอนุญาตให้เขียนไฟล์ x: การอนุญาตให้เรียกใช้ไฟล์ s: การอนุญาตให้ทำการเปลี่ยนแปลงกับเจ้าของไฟล์

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

ฮาร์ดแวร์

ตัวเลือกของบรรณาธิการ

Back to top button