ระบบไฟล์มีโครงสร้างอย่างไรใน gnu / linux
สารบัญ:
- ระบบไฟล์มีโครงสร้างอย่างไรใน GNU / Linux
- FHS
- วัตถุประสงค์หลักของ FHS
- เข้าถึงระบบไฟล์ต่าง ๆ
- โครงสร้างระบบไฟล์ใน Linux ตามมาตรฐาน FHS
- สิทธิ์
แน่นอนว่าพวกคุณหลายคนอย่างฉันเรียนรู้ที่จะใช้ คอมพิวเตอร์กับ 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 คือความจริงที่ว่ามันจะไม่ถูกลบเมื่อรีบูตระบบ |
คุณอาจสนใจอ่าน: สิ่งที่คุณต้องรู้เกี่ยวกับ รูท, su และ sudo ใน Linux
สิทธิ์
เพื่อปิดหัวข้อใน Linux รวมถึงในระบบ Unix อื่น ๆ นโยบายการอนุญาต จะถูกเก็บรักษาไว้ ในไฟล์ ในการควบคุมการเข้าถึงพวกเขาสามารถทำอะไรได้บ้างและใครสามารถทำได้ สิทธิ์ถูกระบุด้วยตัวอักษร และสร้างขึ้นในลักษณะนี้
- a: การอนุญาตให้อ่านไฟล์ w: การอนุญาตให้เขียนไฟล์ x: การอนุญาตให้เรียกใช้ไฟล์ s: การอนุญาตให้ทำการเปลี่ยนแปลงกับเจ้าของไฟล์
เช่นเดียวกันการอนุญาตแต่ละครั้งใน Linux สามารถใช้ได้: สำหรับเจ้าของไฟล์กลุ่มที่เจ้าของเป็นเจ้าของหรือผู้ใช้ที่เหลือ ซึ่งช่วยให้กลไกความปลอดภัยนี้ทำงานได้อย่างสมบูรณ์ในกลุ่มงานที่มีความรับผิดชอบแตกต่างกัน (ผู้ใช้หลายคน)
Bioshock ไม่ จำกัด ในเร็ว ๆ นี้เพื่อ gnu / linux
2K ยืนยันว่าใช้งานได้บนพอร์ต Bioshock Infinite สำหรับระบบปฏิบัติการ GNU / LINUX และจะมาถึงในต้นปี 2558
บทช่วยสอน: เรียกใช้การแจกจ่าย gnu / linux จากแท่ง USB
บทแนะนำโดยละเอียดแสดงวิธีเรียกใช้ลีนุกซ์รุ่นต่างๆจาก Pendrive หนึ่งตัวสำหรับใช้งานหรือติดตั้ง
firefox 46.0 ใหม่สำหรับ gnu มีวางจำหน่ายแล้ว
เห็นได้ชัดว่า Mozilla ในอีกไม่กี่ชั่วโมงนี้อาจจะมีการนำเสนออย่างเป็นทางการของเบราว์เซอร์ Firefox 46.0 เวอร์ชันใหม่บนเซิร์ฟเวอร์