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

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

2
เป็นไปได้อย่างไรที่ 8 บล็อกจะได้รับการจัดสรร แต่ขนาดไฟล์ 0
มีคนถามฉันในเว็บไซต์อื่นเกี่ยวกับคำถามนี้เช่นไฟล์ชื่อ "abc.dat" มีขนาดไฟล์ 0 แต่ 8 บล็อกและนี่คือผลลัพธ์ที่ฉันขอให้เขาให้ฉัน (ข้อความบางส่วนได้รับการแปลจากภาษาจีนเป็นภาษาอังกฤษ): $ cp abc.dat abc2.dat; ls -ls abc2.dat #try to copy, it still 8 blocks but 0 byte 8 -rw-rw-r-- 1 rokeabbey rokeabbey 0 Feb 27 19:39 abc2.dat 8 -rw-rw-r-- 1 rokeabbey rokeabbey 0 ก.ย. 18 19:11 abc.dat #sorry นี่อาจเป็นผลลัพธ์ที่ผิดปกติที่เขาเพิ่ม $ stat abc.dat …

1
วิธีการฟอร์แมตและติดตั้งพาร์ติชันขนาดใหญ่ที่มีขนาดเซกเตอร์ 4k ใน Freebsd ได้อย่างไร
gpart show -l: => 6 146239733 da0 GPT (558G) 6 10 - free - (40K) 16 128 1 (null) (512K) 144 262144 2 efi (1.0G) 262288 1048576 3 rootfs (4.0G) 1310864 2097152 4 swap (8.0G) 3408016 1048576 5 nextroot (4.0G) 4456592 102400 6 var (400M) 4558992 13107200 7 raw (50G) …

2
btrfs เหมาะสมกับระบบไฟล์สำรองหรือไม่?
ตอนนี้ฉันมีโครงสร้างระบบไฟล์สำรองแบบดั้งเดิมที่ยอดเยี่ยมของ ext4 ทุกครั้งที่ทำการสำรองข้อมูลโฟลเดอร์ใหม่backup-DATEจะถูกสร้างขึ้นซึ่งไฟล์ใดเป็น rsync'ed (โดยมีการทำลิงก์โดยใช้--link-destตัวเลือกของ rsync ) ตั้งแต่ฉันได้อ่านเกี่ยวกับ bitrot ฉันต้องการตรวจสอบไฟล์ทั้งหมดอย่างโปร่งใส เห็นได้ชัดว่า ext4 ไม่สามารถทำได้ แต่ btrfs รองรับการตรวจสอบข้อมูล (และแม้กระทั่งโหมด RAID1 ในตัว) สำหรับการเริ่มต้นฉันต้องการใช้btrfsเป็นระบบไฟล์ "dumb" ซึ่งรองรับการตรวจสอบข้อมูลโดยไม่ใช้คุณสมบัติขั้นสูงเช่น RAID, สแน็ปช็อต subvolume, ส่ง / รับ ฯลฯ อย่างไรก็ตามวิกิของพวกเขาไม่ได้สร้างแรงบันดาลใจให้กับความมั่นใจในระบบไฟล์เพื่อการสำรองข้อมูล: "ในขณะที่คนจำนวนมากใช้อย่างน่าเชื่อถือ แต่ก็ยังพบปัญหาอยู่คุณควรเก็บและทดสอบการสำรองข้อมูลของคุณและเตรียมพร้อมที่จะใช้งาน" - เริ่มต้น "btrfs เสถียรหรือไม่ตอบนาน: [.. ] ไม่ว่าคุณจะทำอะไรเราขอแนะนำให้ทำการสำรองข้อมูลที่ดีทดสอบนอกระบบ (และนอกสถานที่)" - คำถามที่พบบ่อย กรณีการใช้งานของฉันคือการสำรองข้อมูลออฟไลน์ ด้วยเหตุนี้ดิสก์จะเห็นการใช้งานน้อยมาก (ในชั่วโมง) และจะถูกเสียบ / ถอดปลั๊ก (eSATA หรือ …

4
การดำเนินการข้อมูลเมตาของระบบไฟล์ใดบ้างที่ถูกเจอร์นัลใน ext4 & xfs
ฉันไม่สามารถหาคำตอบที่เรียบง่ายและตรงไปตรงมาเกี่ยวกับการดำเนินการข้อมูลเมตาของระบบไฟล์ที่ยังคงมีอยู่ในวารสารระบบไฟล์ของ ext4 & xfs โปรดทราบว่าฉันไม่ได้สอบถามเกี่ยวกับสิ่งที่ POSIX ประกาศว่าเป็น "atomic" ฉันกังวลมากขึ้นเกี่ยวกับชุดย่อยของการดำเนินการของระบบไฟล์อะตอมมิกที่มีความทนทานอย่างมีประสิทธิภาพโดยอาศัยการรันด้วยเจอร์นัลที่เปิดใช้งานโดยไม่ต้องงอไปข้างหลังและfsync(2)ตลอดเวลา การดำเนินการฉันค่อนข้างแน่นอน: creat(2) link(2) unlink(2) rename(2) mkdir(2) rmdir(2) การดำเนินการฉันไม่แน่ใจทั้งหมดเกี่ยวกับ: symlink(2) symlink(2)กรณีเป็นส่วนใหญ่หนักใจเนื่องจากมีไม่ดูเหมือนจะเป็นวิธีการใด ๆ ที่จะตรงไปตรงมา fsync(2)หรือfdatasync(2)datablocks พื้นฐานที่จัดเก็บเนื้อหาของ symlink ที่ รู้ว่าวารสารดูแลเรื่องนี้สำหรับฉันจะบรรเทา

2
ระบบไฟล์ที่ไม่มีวันหยุด (ยอมรับการสูญหายของข้อมูล)
มีหัวข้อที่มีอยู่หลายฉบับที่หมุนรอบปัญหานี้ แต่สิ่งที่ฉันค้นหาแตกต่างกันเล็กน้อย ฉันมีการ์ด SD บน Linux ในตัวและทนต่อการสูญเสียพลังงาน ฉันอาจจะสามารถปรับเปลี่ยนฮาร์ดแวร์ในบางจุดปิดอย่างถูกต้องและอื่น ๆ ฯลฯ แต่ตอนนี้ฉันแค่อยากจะหาระบบไฟล์ที่รอดพ้นจากการสูญเสียพลังงานโดยไม่ต้องยุ่งยาก การสูญเสียข้อมูลเป็นที่ยอมรับ ฉันไม่ต้องการเสียมากกว่าไฟล์ที่ฉันกำลังเขียนอยู่ แต่ฉันก็ยังอยากจะเสียมากกว่าการเผชิญหน้ากับ 'ไม่สามารถเมานได้', 'รอ 10 นาทีนี้ fsck' หรือ 'ไม่สามารถสร้างใหม่ ไฟล์เนื่องจาก inode นี้มีข้อผิดพลาดบางอย่างเกิดขึ้น ' โปรแกรมต้องดำเนินต่อไป! ฉันใช้ความพยายามอย่างมากในการทำให้มั่นใจในสิ่งนี้ ฉันใช้ส่วนประกอบระดับอุตสาหกรรมฉันได้รับการตรวจสอบฮาร์ดแวร์, ซอฟต์แวร์เฝ้าดู, ภายใน, ภายนอก, เริ่มต้นโปรแกรมใหม่, daemons ทำการตรวจสอบหน่วยความจำอย่างต่อเนื่อง, ตัวอธิบายไฟล์และอะไรก็ตามฉันได้รับการเฝ้าดูสุนัขเฝ้าบ้านของฉัน ... แต่ฉันไม่สามารถรับประกันได้ว่าการ์ด SD สามารถติดตั้งและใช้งานได้หรือไม่ ทางออกที่ดีที่สุดของฉันตอนนี้คือการใช้ JFS บนการ์ด SD รวมถึง fsck และ fsck.jfs ในการติดตั้งของฉัน (การเพิ่ม 600kb …

6
ฉันจะค้นหาออฟเซ็ตของระบบไฟล์ ext4 ได้อย่างไร
ฉันมีฮาร์ดไดรฟ์ที่ล้มเหลวซึ่งไม่สามารถเขียนหรืออ่านส่วนแรกของดิสก์ได้ มันแค่ให้ข้อผิดพลาด I / O และนั่นคือทั้งหมดที่มี มีพื้นที่อื่น ๆ บนดิสก์ที่ดูเหมือน (ส่วนใหญ่) ปรับ ฉันกำลังพยายามเมาต์พาร์ติชัน (ext4) และดูว่าฉันสามารถเข้าถึงไฟล์บางไฟล์ที่ฉันต้องการกู้คืนหรือไม่ เนื่องจากmountคำสั่งรองรับoffsetตัวเลือกฉันควรจะสามารถเมาท์ระบบไฟล์ได้แม้ว่าตารางพาร์ติชั่นจะไม่สามารถอ่านและเขียนไม่ได้ ปัญหาคือวิธีการหาค่าชดเชย ดูเหมือนว่าไม่มีเครื่องมือ ext4 ใด ๆ ที่มีคุณสมบัติพิเศษนี้

1
ค้นหาฮาร์ดลิงก์ทั้งหมดของไฟล์โดยไม่ต้องข้ามระบบไฟล์
ฉันเห็นในหน้านี้ว่า inodes มีตัวนับลิงก์เพื่อทราบจำนวนไฟล์ (อ่าน: "รายการไดเรกทอรี") ชี้ไปที่ inode นี้ มีวิธีที่จะทราบว่าไดเรกทอรีใดมีรายการดังกล่าวโดยไม่ต้องข้ามทั้งระบบไฟล์? ข้อมูลนี้ถูกเก็บไว้ที่ไหน? struct inode { kdev_t i_dev; unsigned long i_ino; umode_t i_mode; nlink_t i_nlink; uid_t i_uid; gid_t i_gid; … };

1
การพิจารณาหมายเลข LVM Extent สำหรับไฟล์ที่กำหนด
ขณะนี้ฉันกำลังฝึกการบ้านที่ไม่เกี่ยวข้องกับการทำงาน ฉันมีระบบไฟล์ ext4 นั่งอยู่บนโลจิคัลวอลุ่ม ฉันกำลังทดสอบกลยุทธ์การปรับแต่งประสิทธิภาพที่แตกต่างกันและแนวคิดนี้เกิดขึ้นกับฉัน เนื่องจาก pvmove สามารถย้ายส่วนบุคคลและช่วงของขอบเขตได้มีวิธีการแมปสิ่งที่ extents ทางกายภาพเก็บไฟล์เฉพาะ (ในทางทฤษฎีมันสามารถสำรองไฟล์สำหรับฐานข้อมูลหรือแชร์ไฟล์ขนาดใหญ่ที่เข้าถึงได้ทั่วไป) และย้ายไปยังส่วนใดส่วนหนึ่ง อุปกรณ์จัดเก็บข้อมูล (ตัวอย่างเช่นฉันมี HDD ปกติและไดรฟ์ SSD ในกลุ่มวอลุ่ม LVM เดียวกัน) ฉันคิดว่าการใช้ "filefrag" แต่มันเกิดขึ้นกับฉันที่ฉันไม่ได้ 100% ว่าตัวเลขขอบเขตจะต้องถูกใช้ตามลำดับ (เพื่อทราบจำนวนของส่วนใน ext4 ที่เห็นว่าไฟล์ไม่จำเป็นต้องให้ ฉันเข้าใจว่าไฟล์ / ไฟล์มีจำนวนเท่าไร ความคิดใด ๆ

4
ระบบไฟล์ใดที่ให้การป้องกันที่ดีที่สุดสำหรับการรักษาความปลอดภัยข้อมูลจากความเสียหายเนื่องจากการสูญเสียพลังงาน?
ฉันใช้ระบบฝังตัวขนาดเล็กuClibcและbusyboxอิงกับอุปกรณ์ x86 ฉันใช้ initramfs แต่ฉันยังติดตั้งext3ไดเรกทอรีที่กำหนดเองบนอุปกรณ์แฟลชขนาดกะทัดรัดในโหมด IDE ที่ฉันใช้เพื่อเก็บข้อมูลบันทึกการวัดแบบถาวรที่สร้างขึ้นโดยแอปพลิเคชัน c ++ ที่เขียนขึ้นเอง ฉันเลือกext3ระบบไฟล์ตามที่แนะนำเพื่อความปลอดภัยต่อการสูญเสียพลังงานเมื่อใช้ CF ไดรฟ์ในโหมด IDE ในหนังสือสองเล่มที่ฉันอ่าน (การสร้างระบบ Linux ในตัวโดย Karim Yaghmour และEmbedded Linux Primerโดย Christopher Hallinan) นี่เป็นสิ่งสำคัญอย่างยิ่งและข้อมูลก็สำคัญ อย่างไรก็ตามเนื่องจากความคิดเห็นบางส่วนในคำถามก่อนหน้าของฉันสับสนกับวิธีการคืนค่าไฟล์ ext3 เสียหายหากไฟฟ้าดับเกิดขึ้นในระหว่างการเขียนไฟล์มันจะปรากฏว่าในความเป็นจริงระบบไฟล์นี้ไม่ได้รับประกันความปลอดภัยต่อข้อมูลเสียหายเนื่องจากพลังงาน การสูญเสีย ดังนั้นฉันต้องการทราบว่า เป็นext3ตัวเลือกที่ดีที่สุดสำหรับการตั้งค่านี้หรือไม่ การสูญเสียพลังงานในระหว่างการดำเนินการเขียนดิสก์จะทำให้เฉพาะส่วนของข้อมูลที่ฉันผนวกเข้ากับไฟล์เป็นระยะหรือทำให้ไฟล์ทั้งหมดเสียหายหรือไม่? ข้อมูลที่ไม่ได้ถูกเขียน ณ จุดที่สูญเสียพลังงานปลอดภัยอย่างสมบูรณ์หรือไม่? โดยเฉพาะมีความเสี่ยงที่initramfs.cpioไฟล์ของฉันจะเสียหายด้วยหรือไม่? มีวิธีใดบ้างที่ฉันสามารถใช้ในรหัสแอปพลิเคชันของฉันเพื่อปกป้องข้อมูล (เช่นการสร้างพาร์ติชันพิเศษและเขียนข้อมูลของฉันไปยังมิเรอร์รูปภาพเพื่อให้มีสำเนาเสมอ 2) - ความเร็วไม่ใช่เรื่องจริงสำหรับแอปพลิเคชันของฉัน เป็นที่ยอมรับ ฉันได้เห็นและอ่านคำตอบสำหรับคำถามที่เกี่ยวข้องนี้แล้ว: การทำเจอร์นัลระบบไฟล์รับประกันความเสียหายหลังเกิดไฟฟ้าขัดข้องหรือไม่? แต่มันไม่ครอบคลุมสิ่งที่ทำให้ฉันสับสน ฉันรู้ว่าฉันกำลังถามคำถามมากมาย แต่ดูเหมือนว่าแม้จะอ่านเนื้อหามากมายฉันมีความล้มเหลวขั้นพื้นฐานในการทำความเข้าใจความเสี่ยงต่อข้อมูลของฉันในกรณีที่ไฟฟ้าดับ

4
ข้อดีของโครงสร้างระบบไฟล์ Unix คืออะไร
ถ้าฉันติดตั้งแอปพลิเคชั่นใน Linux เช่น Debian / Gnu Linux ไฟล์ของแอปพลิเคชันจะถูกคัดลอกไปยังไดเรกทอรีต่าง ๆ ในระบบไฟล์ สคริปต์บางตัวจะเข้าสู่/ usr / share .. / usr / localไฟล์อื่น ๆ ลงใน/ var .. / log .. etc /และอื่น ๆ สำหรับฉันมันก็โอเคเพราะฉันได้เรียนรู้บางอย่างเกี่ยวกับระบบไฟล์และไดเรกทอรีส่วนใหญ่อยู่ที่นั่นเพื่อเก็บไฟล์เพื่อวัตถุประสงค์เฉพาะ มันเข้ากันได้ดีกับปรัชญาของ Unix "ทำสิ่งหนึ่งสิ่งใดและทำได้ดี" แต่คำถามของฉันคือข้อดีของโครงสร้างไดเรคทอรีนั้นคืออะไร? หรือเป็นเพียงมรดกของยุคยูนิกซ์เก่า ๆ (เช่นเมื่อเปรียบเทียบกับการใช้งาน windows เดียวซึ่งไฟล์ทั้งหมดสำหรับแอปพลิเคชันอยู่ใน "โฟลเดอร์" หนึ่งโฟลเดอร์เท่านั้น)

1
dd: กำลังเขียน '/ dev / null': ไม่มีพื้นที่เหลือบนอุปกรณ์
ฉันกำลังอ่านไฟล์ 550MB เป็น / dev / null และฉันได้รับ dd: writing '/dev/null': No space left on device ฉันรู้สึกประหลาดใจ. ฉันคิดว่า / dev / null เป็นหลุมดำที่คุณสามารถส่งได้มากเท่าที่คุณต้องการ (เพราะมันเป็น fs เสมือนจริง) ใช่ดิสก์ของฉันเกือบเต็มเมื่อฉันได้รับข้อผิดพลาดนี้ ฉันจะทำอะไรได้นอกจากการลบเนื้อหาออกจากดิสก์ ls -l /dev/null -rw-r--r-- 1 root root 0 July 7 21:58 /dev/null แทน crw-rw-rw- 1 root root 1, 3 July 7 02:58 …

3
ขนาดบล็อกไฟล์ - ความแตกต่างระหว่าง stat และ ls
ฉันสังเกตเห็นว่าเมื่อฉันทำ: ls -ls file มันให้นับบล็อกพูด 8 บล็อก เมื่อฉันทำ: stat file ฉันสังเกตเห็นว่าการนับบล็อกเป็น 16 สองเท่าของจำนวนที่ได้รับ ขนาดบล็อกในระบบไฟล์ของฉันคือ 4096 ฉันได้เรียนรู้ว่าหน่วยโดยพลการสำหรับบล็อกที่ใช้โดย ls คือ 1024 มันถูกต้องหรือไม่ที่จะบอกว่าสถิตินั้นใช้หน่วยโดยพลการขนาด 512 ไบต์เมื่อรายงานบล็อก? ถ้าเป็นเช่นนั้นมีเหตุผลที่ไม่สอดคล้องกันหรือไม่? ฉันใช้ Ubuntu 11.10 กับระบบไฟล์ ext4

5
เมานต์ ramfs ในฐานะผู้ใช้
รายการ fstab ของฉัน: none /home/jreinhart/ramdisk ramfs defaults,user 0 0 ไดเรกทอรีก่อนการติดตั้ง: drwxrwxr-x 2 jreinhart jreinhart 4096 Oct 17 11:31 ramdisk ไดเรกทอรีหลังจากmount ramdisk: drwxr-xr-x 2 root jreinhart 4096 Oct 17 11:31 ramdisk ดังนั้นคุณสามารถเห็นปัญหา เมื่อฉันเมานเจ้าของจะเปลี่ยนเป็นรูทและสิทธิ์ของกลุ่มจะไปที่r-xดังนั้นฉันไม่สามารถใช้ ramdisk นี้ได้ สิ่งที่ช่วยให้? suฉันพยายามที่จะทำเช่นนี้ได้โดยไม่ต้อง

1
เป็นตารางไฟล์ในระบบไฟล์หรือในหน่วยความจำหรือไม่?
ในบริบทของตารางควบคุมระบบปฏิบัติการคำว่า "ตารางไฟล์" อ้างถึงโครงสร้างข้อมูลที่เป็นส่วนหนึ่งของระบบไฟล์หรือที่อยู่ในหน่วยความจำหลัก (และในกรณีที่ฉันถือว่ามันจะมีการอ้างอิงไฟล์ที่เปิดเท่านั้น) ? หนังสือเรียนของฉัน1บอกว่า ตารางจัดเตรียมข้อมูลเกี่ยวกับการมีอยู่ของไฟล์ตำแหน่งของพวกเขาในหน่วยความจำรองสถานะปัจจุบันและคุณลักษณะอื่น ๆ ข้อมูลนี้อาจได้รับการดูแลรักษาและใช้งานโดยระบบจัดการไฟล์เป็นจำนวนมากซึ่งในกรณีนี้ระบบปฏิบัติการมีความรู้เกี่ยวกับไฟล์เพียงเล็กน้อยหรือไม่มีเลย นอกจากนี้ระบบจัดการไฟล์คืออะไร? นั่นหมายความว่าระบบไฟล์หรือไม่ 1 Stallings, ระบบปฏิบัติการ , 7 th ed., p. 127

2
การเลือกระบบไฟล์สำหรับการจู่โจม 16TB
ฉันเพิ่งจะรวมเครื่องกับดิสก์ 8TB สองตัว ฉันจะใช้ Raid 6 (ความจุที่สามารถใช้งานได้ 12TB) ที่ด้านบนของพวกเขา แต่ฉันไม่แน่ใจว่าฉันควรจะสร้าง LVM ให้เป็นบน RAID หรือระบบไฟล์ใดที่จะใช้ ระบบไฟล์ใดบ้างที่สามารถปรับขนาดได้เมื่อใช้ภายใน LVM
9 filesystems  lvm  raid 

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