ติดตั้ง bcache ได้อย่างไร?


11

ฉันพยายามตั้งค่า bcache ใน Ubuntu 14.04 ด้วยการติดตั้งใหม่และ/homeพาร์ทิชันที่ว่างเปล่า( /dev/sdb2) เป็นอุปกรณ์สำรอง ฉันมีระบบที่ทำงานบน SSD ของฉันและฉันต้องการใช้ของ พาร์ทิชันแคชของฉัน/dev/sda2 /homeฉันสามารถจัดการปัญหาอูบุนตูของฉันออกจากฟอรัมได้เสมอ แต่ฉันพยายามเข้าใจพื้นฐานที่นี่และต้องการความช่วยเหลือ:

  1. ฉันต้องลงชื่อเข้าใช้บัญชีใดเมื่อฉันตั้งค่า bcache ตั้งแต่แรก เห็นได้ชัดว่าผู้ใช้ที่สร้างขึ้นระหว่างการติดตั้ง/dev/sdb2จะต้องออกจากระบบเพื่อถอนการติดตั้ง/homeดังนั้นฉันจึงตั้งค่าบัญชีผู้ใช้ชั่วคราวบนพาร์ติชันแยกต่างหากเพื่อดำเนินการ ดูเหมือนว่าจะเงอะงะเกินไปแล้ว
  2. make-bcache -Bและ-Cทั้งสองบอกฉันว่ามี superblock ที่ไม่ใช่ bcache ในอุปกรณ์ดังนั้นฉันจึงทำsudo wipefs -aทั้งสองอุปกรณ์ พาร์ติชันนั้นปรากฏเป็นฟอร์แมตโดยไม่มี UUID ใน GParted เป็นเรื่องปกติหรือไม่
  3. ถ้าเป็นเช่นนั้นจะเกิดอะไรขึ้นกับ fstab และ/homeboot ฉันต้องใช้ Ucid ของ bcache ใน fstab หรือไม่? ฉันทำ แต่ระบบไม่พบ/homeพาร์ติชันเมื่อบูตครั้งถัดไป

  4. ทั้งecho /dev/sdb2 > /sys/fs/bcache/registerและecho /dev/sda2 > /sys/fs/bcache/registerส่งคืนข้อความ 'การอนุญาตที่ถูกปฏิเสธ'; อย่างที่ฉันเข้าใจ/sysไม่สามารถเขียนถึง

    ดังนั้น echo /dev/sdb2 | sudo tee /sys/fs/bcache/registerดูเหมือนว่าจะได้ทำงาน

บางคนสามารถยืนยันว่านี่เป็นวิธีที่เหมาะสมในการทำใน Ubuntu หรือไม่?

ฉันดูเหมือนจะมีการจัดการเพื่อสร้างลงทะเบียนและแนบไดรฟ์สำรอง แต่ตามที่tail /sys/block/bcache0/bcache/stats_total/*ฉันมีเพียงข้อมูลที่ข้าม การตั้งค่าทั้งหมดของฉันค่อนข้างยุ่งเหยิงในขณะนี้ดังนั้นการชี้แจงใด ๆ จะได้รับการชื่นชมอย่างมาก


คุณทดสอบแล้วหรือยัง ปรากฏว่าคุณรู้จัก "วิธีการ" สิ่งที่คุณต้องรู้
Braiam

ฉันทดสอบตามข้างต้นและฉันได้รับความนิยมแคชคิดถึงและข้าม ปัญหาคืออุปกรณ์สำรองข้อมูลของฉันที่ควรจะเป็นพาร์ติชันในบ้านของฉันไม่ได้ติดตั้งเป็นบ้านเมื่อเริ่มต้น แต่เป็นไดรฟ์แยกต่างหาก ดังนั้น / home ของฉันคือโฟลเดอร์เปิด / ในขณะนี้และฉันทดสอบ bcache โดยการคัดลอกไฟล์ไปยังอุปกรณ์สำรองข้อมูลและเข้าถึงพวกเขา ฉันกำลังยุ่งกับ fstab ซึ่งอาจเป็นข้อผิดพลาดและฉันไม่มี UUID ที่ถูกต้องสำหรับพาร์ติชัน / home ของฉันตอนนี้ถ้ามันเหมาะสมแล้ว .. สิ่งที่ฉันต้องการก็คือการพิสูจน์แบบคนโง่โดยเฉพาะสำหรับ Ubuntu
Laszlo Almasi

ตกลงฉันทำผิดพลาด fstab และ / home มี UUID ผิด ดูเหมือนว่าจะทำงานตอนนี้ ฉันจะยังคงสนใจว่าควรตั้งค่า bcache อย่างไร: จากบัญชีผู้ใช้ชั่วคราวซีดีสด USB หรืออื่น ๆ
Laszlo Almasi

คำตอบ:


7

ด้วย Ubuntu 15.10 คำตอบของ alex ไม่ถูกต้องอีกต่อไป initramfsภาพถูกขังอยู่ในการติดตั้งและจะไม่ถูกอีกครั้งโดยอัตโนมัติสร้างขึ้นเมื่อระบบมีการติดตั้ง ดังนั้นจะมีการbcacheติดตั้ง แต่จะไม่สามารถบูตได้ ฉันได้เขียนคำอธิบายอย่างละเอียดมากขึ้นเกี่ยวกับกระบวนการต่อไปนี้ที่อื่น ; อย่างไรก็ตามนี่คือพื้นฐาน:

1. การแบ่งพาร์ติชัน

บูตเข้าสู่อูบุนตูไลฟ์ซีดีและสร้างพาร์ทิชันโครงการดังต่อไปนี้ด้วยหรือfdisk gpartedสมมติว่า/dev/sdaSSD ของคุณและ/dev/sdbHDD ของคุณ:

/dev/sda1 - 1024 MB, EXT4, used for /boot (grub/grub2 doesn't support bcache)
/dev/sda2 - any format, for cache
/dev/sdb1 - EFI partition (if your machine needs it)
/dev/sdb2 - swap
/dev/sdb3 - any format, backing partition

2. สร้างอุปกรณ์ bcache

เปิดเทอร์มินัลเช็ดระบบไฟล์บนอุปกรณ์สำรองและแคช:

sudo wipefs -a /dev/sda2
sudo wifefs -a /dev/sdb3

ติดตั้งbcache-toolsและสร้างbcacheอุปกรณ์:

sudo apt-get update
sudo apt-get install bcache-tools
sudo make-bcache -B /dev/sdb3 -C /dev/sda2
sudo mkfs.ext4 /dev/bcache0

3. ติดตั้ง Ubuntu

ติดตั้งระบบปฏิบัติการโดยใช้ partitioner แบบกำหนดเองดังนี้:

/dev/bcache0 - format EXT4, use as /
/dev/sda1    - format EXT4, use as /boot
/dev/sdb1    - EFI partition (if your machine needs it)
/dev/sdb2    - swap

อย่ารีบูตหลังจากติดตั้งเสร็จสมบูรณ์!

4. ติดตั้ง bcache ในการติดตั้งใหม่

ใช้ a chrootเราติดตั้งbcache-toolsในการติดตั้งใหม่ ตั้งค่าสภาพแวดล้อมและเปิดใช้งานการแก้ไข DNS

sudo mount /dev/bcache0 /mnt
sudo mount /dev/sda1 /mnt/boot
sudo mount --bind /dev /mnt/dev
sudo mount --bind /proc /mnt/proc
sudo mount --bind /sys /mnt/sys
sudo cp /etc/resolv.conf /mnt/etc/resolv.conf

ป้อนลงในchrootและทำการติดตั้ง

sudo chroot /mnt
sudo apt-get update
sudo apt-get install bcache-tools

ในระหว่างการติดตั้งคุณควรสังเกตว่าinitramfsมีการสร้างขึ้นใหม่และติดตั้งไปยังพาร์ติชัน( chroot-ed)/boot

5. ล้างข้อมูล

dismount ระบบไฟล์อย่างสมบูรณ์และรีบูต

exit
sudo umount /mnt/sys
sudo umount /mnt/proc
sudo umount /mnt/dev
sudo umount /mnt/boot
sudo umount /mnt
sudo reboot

2

หลังจากการทดลองใช้และข้อผิดพลาดฉันมาถึงวิธีการแก้ปัญหาต่อไปนี้สำหรับการติดตั้งใหม่ทั้งหมด:

  • แบ่งพาร์ติชัน HDD ตามที่คุณต้องการ (สมมติว่า/dev/sdb2เป็นพื้นที่ที่คุณต้องการ/home)
  • # apt-get install bcache-tools
  • # make-bcache -B /dev/sdb2 -C /dev/sda2 (สิ่งนี้สร้าง/dev/bcache0ขึ้น แต่ตัวติดตั้ง UI ยังไม่สามารถใช้งานได้)
  • # mkfs.ext4 /dev/bcache0 (สิ่งนี้ทำให้โปรแกรมติดตั้งมองเห็น "partition / dev / bcache0" ภายใต้ "device / dev / bcache0" และช่วยให้คุณใช้มันเป็น "/ home" ระหว่างการติดตั้ง)
  • เรียกใช้โปรแกรมติดตั้งตามปกติให้แน่ใจว่าได้เลือกตัวเลือกพาร์ติชันดิสก์ขั้นสูง
  • โปรแกรมติดตั้งจะสร้างinitrdอิมเมจโดยมีbcacheโมดูลเคอร์เนลรวมอยู่และโหลดเนื่องจากเราได้ติดตั้งไว้bcache-toolsก่อนหน้านี้ดังนั้นหลังจากรีบูตเครื่องมันก็ใช้งานได้
  • หลังจากบูทระบบที่ติดตั้งแล้วให้ติดตั้งbcache-toolsอีกครั้งเพื่อให้การอัปเดตเพิ่มเติมไม่ทำให้กระบวนการบู๊ตเสียหายโดยไม่ต้องใช้โมดูลเคอร์เนล bcache ที่จำเป็นจากอิมเมจเริ่มต้น

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

0

ฉันพยายามและล้มเหลวหลายครั้งจนพบคำแนะนำเหล่านี้: http://www.wdong.org/wordpress/blog/2014/05/28/installing-ubuntu-14-04-to-bcache/

พวกมันฟังดูค่อนข้างขน แต่นี่อาจเป็นวิธีเดียวที่จะทำให้ bcache ดำเนินไปได้อย่างน้อยก็จนกว่า bcache จะกลายเป็นส่วนหนึ่งของตัวติดตั้ง Ubuntu

การละเลยคำแนะนำที่แปลกประหลาดเพียงอย่างเดียวคือขั้นตอนสุดท้าย

หลังจากที่คุณทำทุกอย่างแล้วให้ค้นหา UUID ของแคชที่ตั้งไว้ใน / sys / fs / bcache และทำสิ่งนี้:

echo <UUID> > /sys/block/bcache0/bcache/attach

หากคุณต้องการเปิดใช้งานโหมด writeback (ซึ่งฉันขอแนะนำอย่างยิ่ง):

echo writeback > /sys/block/bcache0/bcache/cache_mode

การระบุไฟล์ต่าง ๆ ใน/sys/block/bcache0/bcache/จะบอกคุณทั้งหมดเกี่ยวกับวิธีการทำงานของแคช ฉันตั้งค่าระบบโดยใช้คำแนะนำเหล่านี้ในวันที่ 26 กรกฎาคมปีนี้และทุกอย่างทำงานได้อย่างสมบูรณ์แบบตั้งแต่ cat /sys/block/bcache0/bcache/stats_total/cache_hit_ratioแสดงให้เห็นถึงความพึงพอใจอย่างสูงร้อยละ 88 และเป็นอัตวิสัยเครื่องรู้สึกเหมือนติดตั้ง SSD ทั้งหมด

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