คำถามติดแท็ก filesystems

ระบบไฟล์เป็นวิธีการจัดระเบียบและจัดเก็บไฟล์คอมพิวเตอร์ด้วยข้อมูลของพวกเขา

1
ไฟล์อุปกรณ์ใน / dev ทำอะไรได้จริง?
(ไม่ซ้ำกับความเข้าใจ / dev และส่วนย่อยและไฟล์ ) ฉันเรียกดูระบบไฟล์ของฉันและเป็นครั้งแรกที่ฉันใช้เวลาสองวินาทีเพื่อวิเคราะห์/devไดเรกทอรีของฉัน ฉันรู้สึกประหลาดใจกับจำนวนไฟล์ในอุปกรณ์และไม่สามารถเข้าใจได้ทั้งหมด: max@linux-vwzy:/dev> ls adsp disk fd0u1760 initctl mem root sg0 tty tty21 tty35 tty49 tty62 vboxdrv vcsa2 audio dri fd0u1840 input mixer rtc sg1 tty0 tty22 tty36 tty5 tty63 vboxnetctl vcsa3 autofs dsp fd0u1920 kmem mixer1 rtc0 sg2 tty1 tty23 tty37 tty50 tty7 vboxusb …

7
จุดเมาท์“ ถูกต้อง” มากที่สุดสำหรับพาร์ติชัน NTFS แบบถาวรคืออะไร
ฉันมีพาร์ติชั่น NTFS (ที่มีการติดตั้ง Windows ที่ฉันใช้บูตคู่) ที่ฉันต้องการติดตั้งอย่างถาวรจากการติดตั้ง Linux ของฉัน ปัญหาคือฉันไม่สามารถหาจุดเมานท์ที่ถูกต้อง / ดีที่สุดสำหรับพาร์ติชัน NTFS ได้ เห็นได้ชัดว่าไม่ควรเมานต์เป็น / home, / usr เป็นต้น (จุดใด ๆ ของจุดเมานต์มาตรฐานสำหรับระบบไฟล์) เนื่องจากไม่ได้เป็นส่วนหนึ่งของระบบ Linux ฉันต้องการให้ติดตั้งอย่างถาวรแม้ว่า; และนี่ทำให้เกิดคำถามขึ้นฉันจะเมานที่ไหน นี่คือความเป็นไปได้ของจุดเมานท์ที่ฉันเคยคิดไว้: / สื่อ / หน้าต่าง อันนี้ค่อนข้างสมเหตุสมผลเพราะมันจะอยู่ติดกับอุปกรณ์ที่ติดตั้งอัตโนมัติ แต่ตามมาตรฐานระบบไฟล์ / สื่อ / เป็นสื่อที่ถอดออกได้ดังนั้นมันจึงไม่ถูกต้องนักที่จะติดตั้งพาร์ทิชันภายในของฉันอย่างถาวร ถัดจากเมาท์แบบถอดได้อัตโนมัติ ฉันเอนไปทางตัวเลือกนี้มากที่สุด แต่เพียงเพราะมันไม่ลงรอยกันน้อยกว่าตัวเลือกอื่น mnt / / หน้าต่าง อันนี้ก็ดูเหมือนว่าตรรกะสวย แต่อีกครั้งมาตรฐาน (และสิ่งอื่น ๆ ที่ฉันได้อ่าน) บ่งชี้ว่าจุดเมานต์ไดเรกทอรีย่อยมักจะหมดกำลังใจที่นี่ …

3
Unix ติดตามไดเรกทอรีการทำงานของผู้ใช้อย่างไรเมื่อสำรวจระบบไฟล์?
สมมติว่าฉันล็อกอินเข้าสู่เชลล์บนระบบยูนิกซ์และเริ่มเคาะคำสั่ง ~ผมเริ่มเริ่มต้นในบ้านของผู้ใช้ของฉัน ฉันอาจมาจากที่นั่นลงไปยังไดเรกทอรีcdDocuments คำสั่งเพื่อเปลี่ยนไดเรกทอรีการทำงานที่นี่เป็นเรื่องง่ายมากที่จะเข้าใจ: โหนดหลักมีรายการของโหนดลูกที่สามารถเข้าถึงได้และสันนิษฐานว่ามันใช้ตัวแปร (ที่เหมาะสม) ของการค้นหาเพื่อค้นหาการมีอยู่ของโหนดลูกที่มี ตั้งชื่อผู้ใช้ที่ป้อนและไดเรกทอรีการทำงานจะถูก "แก้ไข" เพื่อให้ตรงกับสิ่งนี้ - แก้ไขให้ฉันถ้าฉันผิดที่นั่น มันอาจจะง่ายกว่าที่เชลล์เพียงแค่ "ไร้เดียงสา" พยายามที่จะเข้าถึงไดเรกทอรีตรงตามความต้องการของผู้ใช้และเมื่อระบบไฟล์ส่งคืนข้อผิดพลาดบางประเภทเชลล์จะแสดงการตอบสนองตามลำดับ สิ่งที่ฉันสนใจคือกระบวนการเดียวกันนั้นทำงานอย่างไรเมื่อฉันสำรวจไดเรกทอรีต่างๆเช่นไปที่พาเรนต์หรือพาเรนต์ของผู้ปกครอง ด้วยตำแหน่งของฉัน "blind" ที่ไม่รู้ชื่อน่าจะเป็นDocumentsหนึ่งในหลาย ๆ ไดเรกทอรีในทรีระบบไฟล์ทั้งหมดด้วยชื่อนั้น Unix จะกำหนดได้อย่างไรว่าฉันควรจะวางไว้ที่ไหนต่อไป มันทำการอ้างอิงpwdและตรวจสอบว่า? ถ้าใช่จะpwdติดตามสถานะการนำทางในปัจจุบันอย่างไร
29 filesystems  pwd 

3
มันเป็นส่วนหนึ่งของมาตรฐานใด ๆ (เช่น POSIX) ไฟล์ระบบนั้นควรเป็นตัวพิมพ์เล็กหรือไม่?
บริษัท ของฉันขายแอปพลิเคชันที่มีชื่อแบรนด์เป็นแบบตัวพิมพ์ผสมเช่น "ApplicationName" ตัวติดตั้งของแอปพลิเคชันจะสร้างพา ธ และชื่อไฟล์ทั้งหมดในมาตรฐานนี้ เช่นไดเร็กตอรี่หลักคือ/opt/ApplicationNameไฟล์ init ถูกเรียกใช้ApplicationNameดังนั้นฉันต้องเรียกใช้service ApplicationName statusและอื่น ๆ สำหรับฉันนี่เป็นการประชุมที่มีเหตุผลทั้งหมดและฉันรู้สึกว่าไฟล์และไดเรกทอรีควรเป็นตัวพิมพ์เล็ก (มีแอปพลิเคชั่นอื่น ๆ เช่น MySQL ซึ่งมีไฟล์และ dirs ทั้งหมดถูกเรียกmysqlใช้แม้กระทั่งแอปพลิเคชันเช่น Apache และ Tomcat อักษรตัวพิมพ์ใหญ่). หากฉันยกเป็นรายงานข้อผิดพลาดฉันต้องการที่จะโต้แย้งที่แข็งแกร่งกว่าเพียงแค่ "ฉันคิดว่ามันผิด" ดังนั้นมันจึงเป็นไปตามมาตรฐาน POSIX ที่ไฟล์ระบบแบบนี้ควรเป็นตัวพิมพ์เล็ก?

4
จะยกเลิกการลิงก์ (ลบ) ฮาร์ดลิงก์พิเศษ“.” ที่สร้างขึ้นสำหรับโฟลเดอร์ได้อย่างไร?
บน Linux เมื่อคุณสร้างโฟลเดอร์มันจะสร้างฮาร์ดลิงก์สองลิงก์ไปยังไอโหนดที่เกี่ยวข้องโดยอัตโนมัติ หนึ่งในนั้นคือโฟลเดอร์ที่คุณขอให้สร้างอีกอันเป็น.โฟลเดอร์พิเศษที่โฟลเดอร์นี้ ตัวอย่าง: $ mkdir folder $ ls -li total 0 124596048 drwxr-xr-x 2 fantattitude staff 68 18 oct 16:52 folder $ ls -lai folder total 0 124596048 drwxr-xr-x 2 fantattitude staff 68 18 oct 16:52 . 124593716 drwxr-xr-x 3 fantattitude staff 102 18 oct 16:52 .. อย่างที่คุณเห็นทั้งด้านในfolderและ.ด้านในfolderมีหมายเลขไอโหนดเดียวกัน …

6
ระบบไฟล์เทียบกับพาร์ทิชันเทียบกับไดเรกทอรี
ฉันยังใหม่กับ Linux ดังนั้นโปรดให้อภัยฉันหากคุณสับสนในคำถามนี้ จากสิ่งที่ฉันเข้าใจระบบไฟล์จะระบุวิธีที่พาร์ทิชันจัดเก็บ / จัดการไฟล์ด้วยมาตรฐานเช่น ext2, ext3, reiserfs, xfs เป็นต้นบางครั้งฉันก็เห็นคนดูเหมือนจะอ้างถึงแต่ละ " directory" เป็น /boot filesystem /usr/bin filesystem /root filesystem /bin filesystem ทำไมเราถึงอ้างถึงสิ่งเหล่านี้เป็นfilesystems? ถ้าแต่ละของพวกเขาเป็นพาร์ทิชัน, สับสนว่าผมเพราะเท่าที่ผมรู้/usrและ/usr/binมีแนวโน้มที่จะอยู่ในพาร์ทิชันเดียวกัน แต่ผมเห็นคนหมายถึงทั้งและ/usr filesystem/usr/bin filesystem หากfilesystemที่นี่เทียบเท่ากับ Window directoryก็ไม่ชัดเจนสำหรับฉันเพราะเห็นได้ชัดว่าระบบไฟล์เป็นอะไรมากกว่าแค่ไดเรกทอรี นอกจากนี้เท่าที่ฉันรู้ Linux ไม่มีdirectoryแนวคิด; ทั้งหมดเป็นไฟล์

1
เมื่อใดที่ไดเรกทอรีหยุดอ่านเป็นไฟล์ได้
ฉันมีหนังสือ The Unix Programming Environment รุ่นที่ 1 ในบทที่ 2 ผู้เขียนระบุว่าไดเรกทอรีสามารถอ่านได้เป็นไฟล์และพูดถึงข้อเท็จจริงบางอย่างเกี่ยวกับรูปแบบของไฟล์เหล่านี้ พวกเขาให้ตัวอย่างการใช้งานบางอย่างเช่นcat .(ในแบบฝึกหัด 2-2) อย่างน้อยในดาร์วินไดเรกทอรีจะไม่สามารถอ่านเป็นไฟล์ได้อีกต่อไป อย่างน้อยไฟล์เหล่านั้นดูเหมือนจะเป็นศูนย์ความยาวเมื่ออ่าน การเปลี่ยนแปลงนี้เกิดขึ้นเมื่อใดและมีเอกสารอย่างเป็นทางการเกี่ยวกับเรื่องนี้หรือไม่?

3
วิธีที่ง่ายที่สุดในการปรับขนาดพาร์ติชัน ext4 จากบรรทัดคำสั่งคืออะไร
อะไรคือวิธีที่ง่ายที่สุดในการปรับขนาดพาร์ติชัน ext4 (หรือพาร์ติชันประเภทใดก็ได้ขึ้นอยู่กับวิธีการ) จากบรรทัดคำสั่ง (อาจมีคำสั่งน้อยที่สุด แต่ยังเข้าใจได้ง่ายที่สุด) การใช้เครื่องมืออย่าง Gparted นั้นเห็นได้ชัดใน GUI แต่สิ่งที่เกี่ยวกับในบรรทัดคำสั่ง? ฉันเดาว่า GUI ที่อิงกับข้อความสามารถนับรวมคำตอบได้เนื่องจากมันยังอยู่ในเทคนิคในบรรทัดคำสั่ง มันแค่ต้องเป็นเรื่องง่าย โดยพาร์ติชันฉันหมายถึงพาร์ติชันง่าย ๆ บนดิสก์เดียวของคอมพิวเตอร์ส่วนบุคคล (เช่นบนแล็ปท็อป) /dev/sda4ตัวอย่างเช่นผมต้องการปรับขนาด ไม่มี RAIDs ไม่มีดิสก์ไดรฟ์มากกว่าหนึ่งตัวไม่มีอะไรซับซ้อนที่นี่ เพียงพาร์ติชันง่าย ๆ บนดิสก์เดียว (/ dev / sdaX บน / dev / sda)

1
Linux ทำอะไรที่แตกต่างกันซึ่งทำให้ฉันสามารถลบ / แทนที่ไฟล์ที่ Windows จะบ่นว่าไฟล์นั้นถูกใช้งานอยู่ในปัจจุบัน?
ตัวอย่างที่ฉันมีคือ Minecraft เมื่อรัน Bukkit บน Linux ฉันสามารถลบหรืออัปเดตไฟล์. jar ในโฟลเดอร์ / plugins และเพียงแค่เรียกใช้คำสั่ง 'reload' ใน Windows ฉันต้องใช้กระบวนการเซิร์ฟเวอร์ทั้งหมดเพราะจะบ่นว่าขณะนี้ไฟล์. jar กำลังใช้งานอยู่เมื่อฉันพยายามลบหรือแทนที่ มันยอดเยี่ยมสำหรับฉัน แต่ทำไมมันเกิดขึ้น Linux ทำอะไรที่นี่แตกต่างกันอย่างไร

5
แปลง symlink แบบสัมบูรณ์เป็น symlink แบบสัมพัทธ์ด้วยคำสั่ง Linux อย่างง่าย
ฉันมีความสมบูรณ์ย่อยระบบแฟ้มภายในเส้นทาง/home/user/systemที่มีโครงสร้างลินุกซ์มาตรฐานกับไดเรกทอรี/bin, /home, /root, /usr, /var, /etc... ระบบไฟล์ย่อยนี้มีลิงก์สัญลักษณ์ทั้งแบบสัมพันธ์หรือแบบสัมบูรณ์ symlinks /home/user/systemญาติเป็นเพียงที่ดีที่พวกเขาอยู่ในที่อยู่ภายใต้ระบบแฟ้มย่อย แต่ symlink แบบสัมบูรณ์เป็นปัญหาเนื่องจากมันชี้ไปที่เป้าหมายนอกระบบย่อย ดังตัวอย่างเราถือว่า symlink สัมบูรณ์ดังต่อไปนี้ (เห็นในระบบย่อย): /usr/file1 -> /usr/lib/file1 ในระบบไฟล์โดยรวมเรามีลิงค์ที่/home/user/system/usr/file1ตอนนี้ชี้ไปที่ไฟล์/usr/lib/file1นอกระบบย่อยแทนที่จะเป็นไฟล์/home/user/system/usr/lib/file1 ภายในระบบย่อย ฉันต้องการมีสคริปต์ง่ายๆโดยเฉพาะอย่างยิ่งบรรทัดคำสั่งเดียว (rsync, chroot, find, ... ) ที่แปลง symlink สัมบูรณ์ทุกรายการให้เป็นแบบสัมพัทธ์ ในตัวอย่างที่กำหนดลิงก์นั้นจะกลายเป็นลิงค์ /usr/file1 -> ../usr/lib/file1

4
จะสร้างไฟล์ชั่วคราวใน RAM ได้อย่างไร?
|tee scriptnameYYMMDD.txtฉันมีสคริปต์ที่จะท่อส่งออกไปยัง หลังจากแต่ละรอบของ for for loop ที่สร้างเอาต์พุตขึ้นมาฉันจะย้อนกลับเนื้อหาไฟล์ด้วยtac scriptnameYYYYMMDD.txt > /var/www/html/logs/scriptname.txtเพื่อให้สามารถเห็นเอาต์พุตบันทึกในหน้าต่างเบราว์เซอร์ที่มีบรรทัดใหม่ล่าสุดอยู่ด้านบน ฉันจะมีสคริปต์หลายตัวที่ทำสิ่งนี้ควบคู่กัน ฉันพยายามลดกิจกรรมของดิสก์ให้น้อยที่สุดดังนั้นผลลัพธ์จาก|tee scriptnameYYYYMMDD.txtRAMdisk จะดีที่สุด mktempสร้างไฟล์ใน/tmpโฟลเดอร์ แต่ไม่ปรากฏว่าเป็นดิสก์

1
ทำไมถึงแนะนำให้ ext4 มากถึง 16 TB?
ในบทความ wiki ของ ext4ฉันได้เห็นว่าสามารถใช้ ext4 ได้สูงสุด 1 EiB แต่แนะนำให้ใช้มากถึง 16 TiB ทำไมเป็นเช่นนั้น ทำไม XFS แนะนำให้ใช้กับระบบไฟล์ขนาดใหญ่? (ELICS: อธิบายฉันเหมือนฉันเป็นนักเรียน CS แต่ไม่มีความรู้มากในระบบไฟล์)
28 filesystems  ext4  xfs 

5
Linux แยกความแตกต่างระหว่างไฟล์จริงและไม่อยู่ (เช่น: อุปกรณ์) อย่างไร
นี่เป็นคำถามระดับต่ำและฉันเข้าใจว่าอาจไม่ใช่สถานที่ที่ดีที่สุดสำหรับการถาม แต่ดูเหมือนจะเหมาะสมกว่าเว็บไซต์ SE อื่น ๆ ดังนั้นที่นี่จะไป ฉันรู้ว่าบนระบบไฟล์ Linux บางไฟล์มีอยู่จริงตัวอย่างเช่น: /usr/bin/bashเป็นไฟล์ที่มีอยู่จริง อย่างไรก็ตาม (เท่าที่ผมเข้าใจมัน) บางคนก็ไม่ได้มีอยู่จริงเช่นนี้และมีมากขึ้นเสมือนไฟล์เช่น: /dev/sda, /proc/cpuinfoฯลฯ คำถามของฉัน (พวกเขาเป็นสอง แต่เกี่ยวข้องอย่างใกล้ชิดเกินไปที่จะเป็นคำถามที่แยกต่างหาก): เคอร์เนลของ Linux ทำงานอย่างไรว่าไฟล์เหล่านี้เป็นของจริง (และอ่านจากดิสก์) หรือไม่เมื่อมีการใช้คำสั่ง read (หรือเช่นนั้น)? หากไฟล์ไม่จริง: เป็นตัวอย่างที่อ่านจาก/dev/randomจะกลับข้อมูลแบบสุ่มและอ่านจากจะกลับมา/dev/null EOFมันทำงานอย่างไรข้อมูลที่จะอ่านจากไฟล์เสมือนนี้ (และดังนั้นสิ่งที่จะทำเมื่อ / ถ้าข้อมูลที่เขียนไปยังไฟล์เสมือนด้วย) - มีแผนที่บางชนิดที่มีพอยน์เตอร์เพื่อแยกคำสั่งอ่าน / เขียนที่เหมาะสมสำหรับแต่ละไฟล์ หรือแม้แต่สำหรับไดเรกทอรีเสมือนเอง ดังนั้นรายการสำหรับก็สามารถกลับ/dev/nullEOF

4
XFS กับ Ext4 กับอื่น ๆ - ระบบไฟล์ใดที่มีเสถียรภาพและเชื่อถือได้สำหรับการใช้งานระยะยาวเช่นกรณี 24/7 ตลอดเวลา [ปิด]
ระบบไฟล์ XFS และ Ext4 แบบใดที่เสถียรและเชื่อถือได้สำหรับการรันในระยะยาวด้วยการเขียนและอ่านดิสก์จำนวนมาก? ระบบจะใช้ในสถานที่ที่ให้บริการตลอด 24/7 และทุก ๆ วินาทีจะมีการอ่านและเขียนในดิสก์ ระบบจะต้องมีช่วงเวลาการทำงาน 99.95% สำหรับระยะเวลา 1 ปี ระบบจะต้องหยุดทำงานสูงสุดในปีเป็นเวลาสูงสุด 20 ชั่วโมง ไฟล์ระบบใดเป็นตัวเลือกที่ดีที่สุดสำหรับความท้าทายดังกล่าว (ฉันต้องการใช้ Solaris หรือ FreeBSD แต่สำหรับโครงการของฉันฉันต้องใช้ Ubuntu หรือ ArchLinux หรือ Fedora หรือ CentOS) แต่สับสนกับระบบไฟล์ที่จะเลือก

5
การทำเจอร์นัลระบบไฟล์รับประกันความเสียหายหลังไฟดับหรือไม่?
ฉันถามคำถามนี้ในนามของผู้ใช้รายอื่นที่แจ้งปัญหานี้ในห้องแชทของ Ubuntu การทำเจอร์นัลระบบไฟล์รับประกันว่าจะไม่มีความเสียหายเกิดขึ้นหากไฟฟ้าขัดข้องเกิดขึ้น? หากคำตอบนี้ขึ้นอยู่กับระบบไฟล์โปรดระบุว่าคำตอบใดที่ป้องกันความเสียหายและคำตอบใดไม่ได้

โดยการใช้ไซต์ของเรา หมายความว่าคุณได้อ่านและทำความเข้าใจนโยบายคุกกี้และนโยบายความเป็นส่วนตัวของเราแล้ว
Licensed under cc by-sa 3.0 with attribution required.