Προς το περιεχόμενο

Χρήση ssd για caching μηχανικών δίσκων


capthookb

Προτεινόμενες αναρτήσεις

Πρόσφατα ανακάλυψα πως μπορείς να χρησιμοποιήσεις κάποιον ssd για caching μηχανικών και συνεπώς αργών δίσκων, ώστε να επιταχυνθεί και ο μηχανικός.

Αφορμή ένα φορητό που ήθελε να πάρει ένας φίλος μου με 8gb ssd. Και έλεγα τι τον θέλει τόσο μικρό ssd; 

 

Προσπάθησα να εγκαταστήσω windows και να ενεργοποιήσω το λεγόμενο Intel Smart Response, ώστε να δω διαφορές σε απόκριση και ταχύτητα, αλλά μπούχτησα και τα παρατησα.

Είδα πως σε linux, μπορώ να κάνω κάτι τέτοιο με

 

Έχει σετάρει κανείς κάτι τέτοιο; 

Ουσιαστικά φτιάχνω κάποια συστοιχία raid ή είναι διαφορετική τεχνολογία; 

Αξίζει; Εδώ βρήκα ένα pdf με κάποιες μετρήσεις και φαίνεται σαφώς βελτίωση με χρήση bcache αλλά όχι σε επίπεδα raid 0

http://iopscience.iop.org/1742-6596/513/6/062023/pdf/1742-6596_513_6_062023.pdf

Έχω μητρική Gigabyte με Intel ga-h87-hd3. To chipset παιζει κανένα ρόλο; Ρυθμίσεις περί ssd caching στο bios δεν έχω δει. Στο manual γράφει, πως για να δουλέψει σε windows πρέπει να αλλάξω το sata mode σε raid στο bios.

 

Λέω να δοκιμάσω με bcache για αρχή.

Τώρα έχω το σύστημα στον ssd και το /home το έχω στον μηχανικό δίσκο.

Το βολικό, στο linux, είναι πως μπορείς να φτιάξεις ένα partition στον ssd και να χρησιμοποιείς αυτό για caching. Ενώ σε windows ήθελε νομίζω (γιατί δεν έφτασα μέχρι το τέλος) όλο το δίσκο καβάτζα.

 

Εννοείται θα πάρω backup πριν αρχίσω.

 

Συνδέστε για να σχολιάσετε
Κοινοποίηση σε άλλες σελίδες

Συνδέστε για να σχολιάσετε
Κοινοποίηση σε άλλες σελίδες

Αυτό που θες να υλοποιήσεις με software, έχει ήδη υλοποιηθεί με hardware.
Ναι, δεν απαντάω στην ερώτηση σου αν θες ντε και καλά να το κάνεις έτσι, απλά το έβαλα για να υπάρχει γενικότερα.
 

Συνδέστε για να σχολιάσετε
Κοινοποίηση σε άλλες σελίδες

Ακολούθησα τον οδηγό που υπάρχει στο wiki του archlinux, αλλά έχει κάποια σημεία θολά.

Εγώ ήθελα να χρησιμοποιήσω το /dev/sda2 του SSD μου ως cache για το /dev/sdb3 (ext4-μηχανικός δίσκος) που έχω το home μου.

 

Tο make-bcache για να προχωρήσει ήθελε να σβήσω με wipefs -a τo magic-string του εκάστοτε partition. 

Επίσης δεν ξέρω αν γίνεται να υλοποιηθεί όλη η διαδικασία χωρίς να γίνει format τόσο στο backing partition όσο και στο caching.

Ουσιαστικά φτιάχνεται μια νέα συσκευή η /dev/bcache0, που συνδέει τα /dev/sdb3 και /dev/sda2 και την οποία χρησιμοποιείς για mount πλέον στο fstab (αντί για sdb3 στην περίπτωσή μου).

 

 

Δουλεύει κανονικά και η ταχύτητα είναι βελτιωμένη κατά πολύ. Όταν ανοίγω dolphin, και γενικά file manager, φωτογραφίες, gimp ανοίγουν ακαριαία.

 

Τώρα προσπαθώ να βρω τρόπο να αντιστρέψω τη διαδικασία και στο ίντερνετ δεν υπάρχει κάπου κάποιος οδηγός, απ'όσο έψαξα. Δηλαδή θέλω να καταργήσω το bcache0 και να κανω mount το partition κανονικά σαν ext4.

Κατάφερα να κάνω unregister και detach τα 2 partition αλλά όταν πάω να κάνω mount το sdb3 μου εμφανίζει:

mount: unknown filesystem type 'bcache'

Νομίζω για αυτό φτάιει το wipefs -a που έκανα στην αρχή της διαδικασίας. Υπάρχει τρόπος να περάσω πάλι το magic string του ext4;

 

Η παράμετρος -S του mkfs.ext4 αυτό το πράγμα κάνει; 

  -S     Write superblock and group descriptors only.  This is useful if all of the superblock and backup superblocks are corrupted, and a last-ditch recovery method is desired.  It causes mke2fs to reinitialize the superblock
              and  group descriptors, while not touching the inode table and the block and inode bitmaps.  The e2fsck program should be run immediately after this option is used, and there is no guarantee that any data will be sal‐
              vageable.  It is critical to specify the correct filesystem blocksize when using this option, or there is no chance of recovery.

mke2fs και mkfs.ext4 είναι η ίδια εντολή; 

Δοκίμασα με mke2fs -S /dev/sdb3 αλλά μετά όταν έτρεξα το fsck αναγνώριζε το partition (που ουσιαστικά ήταν ext4) ως ext2 και έβγαζε πολλά προβλήματα σε inodes κτλ. Ίσως έπρεπε να το τρέξω ως mke2fs -S -t ext4 /dev/sdb3 ;

Συνδέστε για να σχολιάσετε
Κοινοποίηση σε άλλες σελίδες

Δυστυχώς δεν είναι η ίδια. Ενώ τα mkfs.ext2, mkfs.ext3, mkfs.ext4 και mkfs.ext4dev είναι symlinks στο mke2fs, το mke2fs χρησιμοποιεί το argv για να βρεί με ποιο όνομα καλέστηκε και να διαλέξει το αντίστοιχο fs type. (http://git.kernel.org/cgit/fs/ext2/e2fsprogs.git/tree/misc/mke2fs.c#n1544)

Αν καλεστεί κατευθείαν σαν mke2fs (και χωρίς να επιλεχθεί χειροκίνητα το fs type μέσω -t) τότε διαβάζει το /etc/mke2fs.conf

για να το βοηθήσει να διαλέξει default fs type.

 

Στην δικιά σου περίπτωση επιλέχθηκε ext2. Δοκιμάσε ξανά σαν ext4 ή ρώτησε σε καμιά mailing list / irc του project αν δεν θες να ρισκάρεις περισσότερο με τα αρχεία σου.

Συνδέστε για να σχολιάσετε
Κοινοποίηση σε άλλες σελίδες

Ευχαριστώ freestyler.

Αυτό κατάλαβα κι εγώ. Πως του έγραψα magic string για ext2.

Ωστόσο ξαναδοκίμασα αργότερα με mkfs.ext4 αλλά δεν έβγαλα άκρη. Μόλις βρω λίγο χρόνο θα το ψάξω καλύτερα.

Φυσικά έχω backup, οπότε δεν τρέχει τίποτα.

Συνδέστε για να σχολιάσετε
Κοινοποίηση σε άλλες σελίδες

Δημιουργήστε ένα λογαριασμό ή συνδεθείτε για να σχολιάσετε

Πρέπει να είστε μέλος για να αφήσετε σχόλιο

Δημιουργία λογαριασμού

Εγγραφείτε με νέο λογαριασμό στην κοινότητα μας. Είναι πανεύκολο!

Δημιουργία νέου λογαριασμού

Σύνδεση

Έχετε ήδη λογαριασμό; Συνδεθείτε εδώ.

Συνδεθείτε τώρα
  • Δημιουργία νέου...