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

ระบบไฟล์ copy-on-write (COW) ที่พัฒนาโดย Oracle รวมอยู่ในเคอร์เนล Linux

2
ล้างพื้นที่ที่ไม่ได้ใช้ด้วยค่าศูนย์ (btrfs)
วิธีการล้างช่องว่างที่ไม่ได้ใช้ด้วยเลขศูนย์ (ฉันขอเครื่องมือสำหรับระบบไฟล์btrfs ) ฉันกำลังมองหาบางสิ่งที่ฉลาดกว่า cat /dev/zero > /mnt/X/big_zero ; sync; rm /mnt/X/big_zero เช่นเดียวกับFSArchiverกำลังมองหา "พื้นที่ใช้แล้ว" และไม่สนใจที่ไม่ได้ใช้ แต่เป็นเว็บไซต์ที่ตรงกันข้าม จุดประสงค์: ฉันต้องการบีบอัดภาพพาร์ติชันดังนั้นขอแนะนำให้เติมที่ว่างที่ไม่ได้ใช้ด้วยค่าศูนย์ Btw สำหรับ ext3, ext4: เคลียร์พื้นที่ไม่ได้ใช้ด้วยศูนย์ (ext3, ext4) ที่นี่ฉันขอ btrfs ความชัดเจนของ "อัลกอริทึมที่ชาญฉลาด": เมื่อฉันเห็นว่า "อัลกอริทึมที่ชาญฉลาด" นำไปสู่ความสับสนในที่สุดฉันก็ตัดสินใจที่จะเพิ่มบรรทัดเกี่ยวกับเรื่องนี้ ผู้อ่านที่รักโปรดคิดถึงระบบไฟล์เป็นโครงสร้างข้อมูล เพื่อจุดประสงค์ในการทำให้เข้าใจง่ายลองจินตนาการถึงการสร้างแผนที่ต้นไม้แดง - ดำที่สมดุลซึ่งถูกใช้เป็นชุดการเชื่อมโยงคีย์ -> ค่าที่มีค่าเป็นจำนวนเต็ม เป้าหมายคือการล้างค่าลบทั้งหมดด้วยศูนย์ อัลกอริทึม "ไม่ใช่สมาร์ท" จะวนซ้ำและเพิ่มคีย์: คู่ค่าลงในแผนที่ใหม่ (ด้วยการเปลี่ยนค่าลบเป็นศูนย์) อัลกอริทึมสมาร์ทก็จะตรวจสอบสถานที่ที่ค่าลบจะถูกเก็บไว้และล้างพวกเขาในสถานที่

2
แคชการเขียนทำงานอย่างไรกับระบบไฟล์ซึ่งประกอบด้วยดิสก์ที่มีความเร็วแตกต่างกัน
บนระบบ Linux ที่ทันสมัยที่มีดิสก์หลายตัวและซอฟต์แวร์ RAID ซึ่งครอบคลุมทั้งไดรฟ์ช้า (HDD) และไดรฟ์ (SSD) ที่รวดเร็วจะเขียนไปยังระบบไฟล์ที่แคชอย่างไร สำหรับ MD-RAID RAID1 อาร์เรย์สามารถกำหนดค่าด้วยดิสก์--write-mostlyและ--write-behindซึ่งแสดงให้เห็นว่าจะดำเนินการอ่านจากดิสก์ได้เร็วขึ้นและการเขียนไปยังดิสก์ช้าที่สามารถล้าหลัง แต่ที่แคชในระดับ kernel อย่างไร เคอร์เนลแคชดิสก์เขียนก่อนหรือหลังเลเยอร์ md-raid หรือไม่ ในตอนท้ายของการเรียกการเขียน () เป็นข้อมูลที่รับประกันว่าจะถูกเขียนลงในหนึ่งใน--write-behindดิสก์? สำหรับbtrfsRAID1 สถานการณ์เดียวกันจะเล่นอย่างไร ไม่มี--write-behindหน้าที่การใช้งานจึงนับหน้าสกปรกที่ระดับอุปกรณ์หรือระดับระบบไฟล์หรือไม่ การเขียน () จะกลับมาที่จุดใด ค่าที่vm.dirty_*ratioปรับได้มีผลกับการตั้งค่าเหล่านี้อย่างไร

4
ฉันจะทำให้ btrfs แสร้งทำเป็น ext4 ได้อย่างไร
Dropbox เพิ่งประกาศว่าลูกค้า Linux จะสนับสนุน ext4 ในอนาคตเท่านั้น ขณะนี้ฉันใช้ Dropbox บนพาร์ติชั่น btrfs (ไม่มีปัญหาใด ๆ ) เห็นได้ชัดว่าการสนับสนุน xattr เป็นสิ่งจำเป็น ทั้ง ext4 และ btrfs รองรับสิ่งนี้และแน่นอนฉันไม่ทราบถึงคุณสมบัติของ ext4 ที่ btrfs ไม่สนับสนุนด้วย ฉันไม่ทราบว่า Dropbox ตั้งใจจะตรวจจับระบบไฟล์ แต่มีวิธีใดบ้างที่ฉันจะทำให้ btrfs แสร้งทำเป็น ext4

3
inodes, การเปรียบเทียบการใช้พื้นที่สำหรับไฟล์ขนาดเล็กจำนวนมาก (xfs, btrfs, ext4)
ฉันมีพาร์ติชัน ext4 (LVM บน VM) ที่มีไฟล์ขนาดเล็กจำนวนมากซึ่งฉันต้องขยายทุก 3-4 เดือน เกี่ยวกับปริมาณพื้นที่ที่ใช้โดย inodes หนึ่งในระบบไฟล์ xfs, btrfs หรือ ext4 ใช้พื้นที่น้อยลงหรือไม่ กล่าวอีกนัยหนึ่งการสลับไปใช้ btrfs หรือ xfs จะทำให้พาร์ติชันเต็มไปด้วย inodes ที่ช้ากว่าและด้วย ext4
9 ext4  btrfs  xfs 

2
จะลบไดเรกทอรีที่มี subvolumes หลาย btrfs ได้อย่างไร
ระบบไฟล์รูทของฉันอยู่ในพาร์ติชัน btrfs /chrootไดเรกทอรีของฉันมีไดรฟ์ย่อย btrfs อยู่จำนวนหนึ่งซึ่งทำให้ฉันไม่สามารถลบออกrm -rf /chrootได้ ในความพยายามที่จะลบไดรฟ์ย่อยทั้งหมดฉันพยายามแสดงรายการเฉพาะไดรฟ์ย่อยด้านล่าง/chrootโดยใช้-o, ซึ่งหน้าคนบอกว่า "พิมพ์เฉพาะไดรฟ์ย่อยด้านล่างเส้นทางที่ระบุ" # btrfs subvolume list -o /chroot ID 593 gen 6616 top level 5 path chroot/base-devel/root ID 594 gen 6618 top level 5 path chroot/multilib-devel/root ID 595 gen 6620 top level 5 path chroot/base/root ID 597 gen 6624 top level 5 …
9 rm  btrfs 

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

2
การย้อนกลับ bvfs subvolume ด้วย subvolumes เด็ก
มีวิธีการที่เป็นที่นิยมในการย้อนกลับไปยังสแน็ปช็อตย่อยที่มี subvolumes ย่อยหรือไม่ ตัวอย่างเช่นนี่คือเลย์เอาต์ btrfs ของฉัน: ID 257 gen 59802 top level 5 path __active ID 258 gen 59784 top level 5 path __snapshot ID 259 gen 59802 top level 257 path home ID 260 gen 36538 top level 257 path opt ID 261 gen 59802 top level 257 path …
9 btrfs  snapshot 

4
วิธีการโคลนระบบไฟล์ btrfs ลงในสื่อต่าง ๆ ที่เก็บรักษาข้อมูลการแชร์ของสแน็ปช็อต
ฉันตัดสินใจลองใช้ความสามารถของการโจมตี btrfs ฉันตั้งค่า btrfs ด้วย sudo mkfs.btrfs -m raid10 -d raid10 /dev/sda9 /dev/sdb9 /dev/sdc9 /dev/sdd9 ตอนนี้ฉันต้องการโคลนพาร์ทิชัน btrfs ที่มีอยู่ของฉัน (ซึ่งอยู่ด้านบนของ linux-raid) ไม่สามารถใช้งานง่าย ๆcp -aได้เนื่องจากมีการสำรองข้อมูลตามสแน็ปช็อตมากกว่า 40 รายการ (ซึ่งฉันต้องการเก็บไว้) และฉันจะเติมที่เก็บข้อมูลทั้งหมดจนเต็มฉันสามารถสำรองได้หลายครั้ง จนถึงตอนนี้ฉันเห็นสองตัวเลือก: partclone.btrfs -s /path/to/original/fs -o /dev/sda9 -b และฉันคิดว่าฉันก็ต้อง btrfs balance start /dev/sda9 และ สิ่งที่ต้องทำ: คัดลอกส่วนเพิ่มที่มีcp -aขนาดพอดีกับที่เก็บข้อมูลจากนั้นใช้bedupเพื่อยกเลิกการทำซ้ำไฟล์และวนซ้ำ วิธีที่ต้องการ (เช่นแนวปฏิบัติที่ดีที่สุด) คืออะไร? ฉันจะชอบคนแรกมาก ควรใช้เวลาน้อยลง หรืออาจจะมี "gotcha" …
9 backup  btrfs 

2
มีสคริปต์การคัดลอกซ้ำที่ใช้ btrfs CoW เป็น deduplication หรือไม่?
กำลังมองหาเครื่องมือการขจัดข้อมูลซ้ำซ้อนบน Linux มีมากมายให้ดูเช่นหน้าวิกินี้ สคริปต์ทั้งหมดจะทำการตรวจจับเพียงอย่างเดียวพิมพ์ชื่อไฟล์ซ้ำหรือลบไฟล์ที่ซ้ำกันออกโดยเชื่อมโยงไปยังสำเนาเดียว ด้วยการเพิ่มขึ้นของ btrfs จะมีตัวเลือกอื่น: การสร้างสำเนา (คัดลอกเมื่อเขียน) ของไฟล์ (เช่นcp reflink=always) ฉันไม่พบเครื่องมือใด ๆ ที่ทำสิ่งนี้มีใครรู้บ้างเกี่ยวกับเครื่องมือที่ทำสิ่งนี้

1
เมื่อใช้ btrfs ทำไมค่า“ Size”,“ Used” และ“ Avail” จาก df ไม่ตรงกัน?
ฉันมีพาร์ทิชัน btrfs เมื่อฉันวิ่งdf -hมันจะแสดง: Filesystem Size Used Avail Use% Mounted on /dev/sda2 113G 101G 8.3G 93% /home จากนั้นทำไม เป็นเพราะพื้นที่ที่สงวนไว้สำหรับรูทเป็น wth ext2 / 3/4 หรือไม่? หรือมันเป็นอย่างอื่น? หากก่อนหน้านี้ฉันจะเปลี่ยนและเรียกคืน 4GB เหล่านั้นได้อย่างไร ตามbtrfs wikiฉันรู้ว่าข้อมูลเมตาถูกเก็บไว้สองครั้งซึ่งขยายขนาดของข้อมูล "ใช้แล้ว": user@machine:~$ df -h / Filesystem Size Used Avail Use% Mounted on /dev/sda1 894G 311G 583G 35% / ^^^^ user@machine:~$ …
9 btrfs  df 
โดยการใช้ไซต์ของเรา หมายความว่าคุณได้อ่านและทำความเข้าใจนโยบายคุกกี้และนโยบายความเป็นส่วนตัวของเราแล้ว
Licensed under cc by-sa 3.0 with attribution required.