Saya ingin tahu apakah ada orang yang telah mencoba menginstal dan menjalankan kernel yang dibangun dengan flashcache atau bcache untuk caching SSD?
Bagaimana Anda bisa melakukannya?
Saya ingin tahu apakah ada orang yang telah mencoba menginstal dan menjalankan kernel yang dibangun dengan flashcache atau bcache untuk caching SSD?
Bagaimana Anda bisa melakukannya?
Jawaban:
Yah, kami mendapat jawaban bcache tetapi tidak ada jawaban flashcache. Saya memilih flashcache karena saya sudah memiliki instalasi yang sudah ada, jadi bcache keluar dari pertanyaan. Bagi saya, sepertinya lebih mudah diatur juga. Saya memilih metode DKMS sehingga saya tidak akan terjebak membangun kembali modul / alat setiap kali saya mendapat upgrade kernel.
Langkah-langkah ini diuraikan dalam README-DKMS di Github.
Membangun Modul
Hal pertama yang Anda lakukan adalah memasang prasyarat bangunan:
sudo apt-get install dkms build-essential linux-headers-$(uname -r) git
Kemudian ambil sumbernya:
git clone git://github.com/facebook/flashcache; cd flashcache
Bangun dan pasang modul:
make -f Makefile.dkms
Membuat perangkat flashcache
(Dalam contoh ini saya menggunakan cache writeback - default - tetapi flashcache dapat melakukan writearound dan writethrough juga)
Caching perangkat non-root (tidak dipasang di /)
sudo flashcache_create -p back fcache /dev/sdbX /dev/sdaX
Di mana fcache adalah perangkat yang dibuat (/ dev / mapper / fcache), / dev / sdaX adalah partisi SSD (atau seluruh disk) dan / dev / sdbX adalah partisi HDD.
Caching perangkat root Anda
Ada beberapa langkah lagi jika Anda melakukan cache perangkat root Anda. Anda memerlukan Ubuntu LiveCD / USB untuk bagian ini.
cd /path/to/flashcache/source
make -f Makefile.dkms boot_conf
Edit / boot / grub/grub.cnf dan / etc / fstab untuk mem-boot dari / dev / mapper / fcache (Saya tidak percaya langkah ini benar-benar diperlukan, tetapi dikatakan demikian). Pastikan untuk menuliskan UUID perangkat root asli Anda.
Reboot dengan LiveCD / LiveUSB.
Pasang perangkat root Anda: mount /dev/sda4 /mnt
(/ dev / sda4 adalah partisi root Linux saya)
cd /mnt/path/to/flashcache/source
sudo apt-get install dkms build-essential linux-headers-$(uname -r)
make; sudo make install
Tidak perlu melakukan seluruh pengaturan DKMS di lingkungan langsung
Lepas perangkat root sudo umount /mnt
sudo flashcache_create -p back fcache /dev/sdbX /dev/disk/by-uuid/[UUID]
Di mana fcache adalah perangkat yang dibuat (harus sama dengan yang Anda letakkan di / etc / fstab dan /boot/grub/grub.cnf, dalam kasus saya itu fcache), / dev / sdbX adalah partisi SSD (atau seluruh disk ) dan [UUID] adalah UUID dari partisi root Anda.
Nyalakan kembali!
Peringatan saat menggunakan perangkat root
Satu gangguan kecil ketika flashcache digunakan untuk perangkat root adalah bahwa grub-probe gagal mendeteksi perangkat root dan dapat mengacaukan menu boot Anda sehingga Anda memiliki dua keinginan Ubuntu. Tapi, seharusnya tidak masalah yang Anda gunakan di semua kenyataan karena make -f Makefile.dkms boot_conf
langkah di atas menginstal beberapa skrip di initrd Anda yang akan mendeteksi dan menggunakan perangkat flashcache.
linux /boot/vmlinuz-3.19.0-51-lowlatency root=UUID=0a540b91-5990-4df0-bc99-5d6e2cd3fed6 ro recovery nomodeset
to linux /boot/vmlinuz-3.19.0-51-lowlatency root=/dev/mapper/fcache ro recovery nomodeset
(yaitu, mengubah root = parameter)
Ada alat konversi untuk mengaktifkan bcache pada perangkat yang ada (pengungkapan: Saya menulisnya). Ini juga cara untuk menginstal baru, karena installer distro saat ini tidak tahu cara membuat perangkat bcache (dalam hal ini: mulai dengan menginstal ke HDD).
Lihat mengonversi sistem file root Anda menjadi bcache di blocks
README untuk instruksi.
bcache membutuhkan Linux 3.10 atau yang lebih baru, yang berada di cakep, dan dapat diinstal secara manual dari
http://kernel.ubuntu.com/~kernel-ppa/mainline/?C=M;O=D (mencari rilis tag terbaru , saat ini v3.11.5-saucy
, dan instal debs yang cocok dengan arsitektur Anda).
bcache-tools
dan blocks
dapat diinstal dari ppa penyimpanan saya .
/
, /home
, /usr/
, ...) sedangkan sistem berjalan (seperti maintboot rusak). Sebagai alternatif, Anda dapat menggunakan USB Stick hidup, instal di blocks
sana dan gunakan itu untuk mengubah disk Anda. Namun berhati-hatilah bahwa alat ini hanya berfungsi pada tabel partisi MBR dan GPT primer dan membutuhkan ruang tambahan 1MiB sebelum setiap partisi.
Peringatan sebelumnya: bcache tidak dapat digunakan untuk instalasi Ubuntu yang ada. Jika Anda memerlukan caching SSD untuk sistem operasi Anda, Anda harus menunggu untuk masa depan atau versi khusus dari penginstal Ubuntu yang dapat mengatur cache SSD Anda. Lihat jawaban ini oleh Oli di sini: Apakah bcache memerlukan instalasi baru?
Untuk semua orang yang menginginkan drive bcache untuk data non-OS:
Hal pertama yang harus dilakukan adalah memutakhirkan kernel Anda jika Anda menggunakan 13,04 atau lebih tua menggunakan kernel utama PPA. Petunjuk untuk menggunakan ini dapat ditemukan di sini:
https://wiki.ubuntu.com/Kernel/MainlineBuilds
Pastikan Anda memilih kernel 3.9 atau lebih tinggi saat booting atau itu tidak bekerja dan drive Anda akan hilang.
Instal bcache-tools, saat ini Anda harus menginstal dari repositori git:
git clone http://evilpiepirate.org/git/bcache-tools.git
Jika Anda berhasil mengemas bcache-tools
debian, beri tahu kami dan pertanyaan ini akan diperbarui untuk Anda. ( bcache-tools
Ketergantungan build adalah uuid-dev
dan libblkid-dev
. Mereka harus diinstal, untuk membangun bcache-tools
.)
Setelah Anda memiliki semua alat di tempat, Anda siap untuk mencoba dan ikuti panduan di sini:
http://atlas.evilpiepirate.org/git/linux-bcache.git/tree/Documentation/bcache.txt
Panduan ini menunjukkan cara memformat drive (SSD DAN hard drive) dan kemudian memasangnya bersama-sama untuk membuat blok perangkat baru menggunakan bcache. Posting komentar jika Anda menemukan instruksi membingungkan dan saya akan memperbarui jawaban ini dengan penyederhanaan.
Saya pikir saya akan datang ke sini dan berkomentar tentang apa yang terjadi pada saya ketika saya menginstal kernel baru. Saya menggunakan flashcache hanya untuk partisi / home / folder saya. Saya menginstal kernel baru, boot ke dalamnya dan berhenti saat bootup dan mengatakan tidak dapat menemukan / dev / mapper / home_cached, ada 3 pilihan yang Anda miliki ketika Anda menerima pesan ini dan saya memilih opsi untuk login sebagai root dan berupaya memperbaikinya. Saya pertama kali mencoba memuat modul flashcache dan dikatakan tidak bisa menemukannya. Jadi saya pikir saya harus mengkompilasi dan menginstalnya untuk kernel baru ini yang baru saja saya instal. saya masih memiliki folder / flashcache / terletak di dalam / root / jadi saya cd'd ke dalamnya dan berlari
make -f Makefile.dkms boot_conf
lalu aku berlari
make install
kemudian saya memuat modul flashcache dengan
modprobe flashcache
maka saya hanya perlu memuat perangkat flashcache yang ada
flashcache_load /dev/sdb1
maka cukup pasang partisi rumah saya dengan
mount /home
kemudian keluar dari login sebagai root dengan keluar pada baris perintah dan itu harus melanjutkan boot seperti biasa. semua selesai!