Εκμάθηση: Συστήματα αρχείων βρόχου

Τι είναι το σύστημα αρχείων βρόχου;

Το Gnu / Linux (και η συντριπτική πλειονότητα των συστημάτων unix) διαθέτει έναν μηχανισμό που επιτρέπει την τοποθέτηση ενός αρχείου (προηγουμένως διαμορφωμένο) σαν να ήταν ένας σκληρός δίσκος, συνήθως χωρίς πίνακα διαμερισμάτων Αυτό το άσχημο διάγραμμα (που έγινε από εμένα) εξηγεί πώς λειτουργεί αυτός ο μηχανισμός.

Διάγραμμα ροής που εξηγεί (περίπου) πώς λειτουργούν τα αρχεία βρόχων στο GNU / linux.

** Δεν αντιπροσωπεύει πλήρως την πραγματική λειτουργία.

Χρήσεις αρχείων βρόχου

1- Αρχεία Mount.iso

Τα αρχεία .iso, η τυπική κατ 'εξοχήν σε CD και DVD, δεν είναι τίποτα περισσότερο από ένα αρχείο βρόχου του οποίου το σύστημα αρχείων μπορεί να είναι ISO 9960 (πιο συνηθισμένο σε CD) ή UDF (τα πιο συνηθισμένα σε DVD). Για να το προσαρτήσουμε, θα χρησιμοποιήσουμε την εντολή mount.

mkdir iso # δημιουργία του καταλόγου chmod -R 666 iso # παραχωρεί σε όλους τους χρήστες άδεια ανάγνωσης mount image.iso iso/ # προσάρτηση της εικόνας iso (απαιτείται root)

Ο περιορισμός που έχετε είναι ότι, για προφανείς λόγους, και τα δύο συστήματα αρχείων είναι μόνο για ανάγνωση.

2- σκουός μόνο για ανάγνωση

Ας υποθέσουμε ότι έχουμε έναν φάκελο εικόνων ή / και βίντεο που είναι οργανωμένος ανάλογα με το έτος λήψης του. Προφανώς, είναι απίθανο να θέλουμε να τροποποιήσουμε τα δεδομένα που περιέχονται σε φακέλους από προηγούμενα χρόνια. Εκεί μπαίνει το Squashfs. Το Squashfs είναι ένα σύστημα συμπίεσης αρχείων μόνο για ανάγνωση, οπότε μόλις δημιουργηθεί η εικόνα, δεν θα είμαστε σε θέση να τροποποιήσουμε τα δεδομένα μέσα.

Έτσι, όχι μόνο θα εξοικονομήσουμε τεράστιο χώρο, αλλά και το περίεργο αποτέλεσμα που η ανάγνωση των αρχείων θα είναι ταχύτερη, με την ανάγνωση μικρότερων αρχείων, καθώς σήμερα η αποσυμπίεση ενός αρχείου είναι μια ελάχιστη προσπάθεια για τους περισσότερους επεξεργαστές.

Αφήνοντας τα προοίμια, για να δημιουργήσουμε την εικόνα σκουός πρέπει να χρησιμοποιήσουμε την εντολή mksquashfs, της οποίας η σύνταξη είναι απλή:

mksquashfs directorio 1 [directorio 2 directorio 3...] imagen.sqsfs -comp [algoritmo de compresión] -b [tamaño del bloque ]

Και εδώ είναι ένα πρακτικό παράδειγμα:

mksquashfs fotos-2009 fotos-2010 fotos-2011 fotos-2012 fotos-2013 fotos_2009-2013.sqsfs -comp xz -bs 1M

Λοιπόν, ο επιλεγμένος αλγόριθμος είναι xz δεδομένου ότι είναι αυτός που υψηλότερη αναλογία συμπίεσης προσφορές (από αυτές που είναι διαθέσιμες), ενώ το επιλεγμένο μέγεθος μπλοκ είναι το μέγιστο. τι επιτρέπει καλύτερα αποτελέσματα συμπίεσης (από προεπιλογή είναι 64KiB).

Τώρα θα πρέπει να μπορούμε να το τοποθετήσουμε με ένα απλό.

mount fotos_2009-2013.sqsfs fotos_2009-2013/

Αφού ελέγξουμε ότι όλα είναι σωστά, μπορούμε να διαγράψουμε τα αρχικά αρχεία ή να αφήσουμε το αρχείο ως αντίγραφο ασφαλείας.

Σε περίπτωση που θέλουμε να τοποθετηθεί κατά την εκκίνηση του λειτουργικού συστήματος, πρέπει να προσθέσουμε μια γραμμή αυτού του στυλ στο / etc / fstab:

/dir/loop.sqsh /dir/mountdir squashfs ro,defaults 0 0

Η εισαγωγή λανθασμένων δεδομένων στο αρχείο / etc / fstab θα προκαλέσει τη διακοπή της εκκίνησης του συστήματος. Για να βεβαιωθούμε ότι όλα λειτουργούν σωστά, μπορούμε να χρησιμοποιήσουμε την εντολή βουνό -α

Τώρα, τι συμβαίνει όταν θέλουμε να προσθέσουμε ή να διαγράψουμε αρχεία ή απλά να εξαγάγουμε αυτά τα στιγμιότυπα; Λοιπόν, έχουμε την εντολή την εντολή unsquashfs.

unsquashfs [opciones] snapshot.sqfs [Directorios o archivos que extraer]

Από προεπιλογή, θα χρησιμοποιήσει το "squashfs-root" ως κατάλογο εξαγωγής. μπορεί να αλλάξει με την επιλογή -d

Εκτός από αυτό το παράδειγμα, τα σκουός χρησιμοποιούνται επίσης σε:

  • livecd
  • Ενσωματωμένα συστήματα
  • Διακομιστές
  • Γενικά, οποιοδήποτε σύστημα μόνο για ανάγνωση

3- «Ανταλλαγή έκτακτης ανάγκης»

Φανταστείτε ότι για οποιονδήποτε λόγο (αδρανοποίηση, μαζικές συλλογές ...) χρειάζεστε ένα επιπλέον ανταλλαγή. Εδώ μπαίνει το αρχείο βρόχου, το πρώτο βήμα είναι να φτιάξετε ένα κενό αρχείο συγκεκριμένου μεγέθους, με συγκεκριμένο μέγεθος μπλοκ, το κάνουμε αυτό με την εντολή ηη:

dd if=/dev/zero of=loop bs=1M count=512

το dd στα λάθος χέρια είναι χειρότερο από έναν μαϊμού με ένα κυνηγετικό όπλο. Σκεφτείτε πριν πατήσετε enter

Σε αυτήν την περίπτωση, το μπλοκ είναι ένα MiB και το μέγεθος αρχείου είναι 512MiB. Δεν χρειάζεται να είναι έτσι.

Δημιουργούμε και ενεργοποιούμε την ανταλλαγή με αυτήν την εντολή

mkswap loop && swapon loop

Λάβετε υπόψη ότι η απόδοση ενός αρχείου βρόχου είναι πάντα κάπως χαμηλότερη από αυτήν ενός πραγματικού φυσικού.

4-κάντε ό, τι θέλετε

Αυτά είναι μερικά από τα πιο χαρακτηριστικά παραδείγματα, μη διστάσετε να πειραματιστείτε με chroots, συστήματα κρυπτογράφησης, ένθετους βρόχους… Οι δυνατότητές σας είναι απεριόριστες. Όμως, να είστε προσεκτικοί με τις εντολές που εκτελείτε, σκεφτείτε προσεκτικά πριν πατήσετε enter.

Σύνδεσμοι ενδιαφέροντος


Αφήστε το σχόλιό σας

Η διεύθυνση email σας δεν θα δημοσιευθεί. Τα υποχρεωτικά πεδία σημειώνονται με *

*

*

  1. Υπεύθυνος για τα δεδομένα: Miguel Ángel Gatón
  2. Σκοπός των δεδομένων: Έλεγχος SPAM, διαχείριση σχολίων.
  3. Νομιμοποίηση: Η συγκατάθεσή σας
  4. Κοινοποίηση των δεδομένων: Τα δεδομένα δεν θα κοινοποιούνται σε τρίτους, εκτός από νομική υποχρέωση.
  5. Αποθήκευση δεδομένων: Βάση δεδομένων που φιλοξενείται από τα δίκτυα Occentus (ΕΕ)
  6. Δικαιώματα: Ανά πάσα στιγμή μπορείτε να περιορίσετε, να ανακτήσετε και να διαγράψετε τις πληροφορίες σας.

  1.   Ιλλκίκι dijo

    Καλή θέση che !! Έχω κάποια γιγαντιαία αντίγραφα ασφαλείας εκεί έξω και δεν μου συνέβη ποτέ να τα συμπιέσω. Θα το χρησιμοποιήσω και παρεμπιπτόντως θα κρυπτογραφήσω το εξωτερικό μου για να το γεμίσω και τότε θυμήθηκα ότι επρόκειτο να το κρυπτογραφήσω 🙁

  2.   sieg84 dijo

    Ενδιαφέρον για να δοκιμάσετε το πράγμα σκουός

  3.   Μανουέλ Ρ dijo

    Καλό φροντιστήριο, είχα διαβάσει πώς να δημιουργήσω αρχεία img με dd και να τα προσαρτήσω, αλλά δεν ήξερα τη χρήση του Squashfs και τη συμπίεσή του. Αν και δεν επιτρέπει την τροποποίηση του περιεχομένου του, η χρήση του μπορεί να είναι χρήσιμη σε καταστάσεις όπως αυτές που σχολιάζετε. Ευχαριστώ που μοιραστήκατε, χαιρετισμούς.

  4.   διαδήλωση dijo

    Πολύ καλό να το γνωρίζετε, ευχαριστώ για τη συμβουλή.

  5.   Joaquin dijo

    Μαθαίνεις πάντα κάτι νέο. Εξοχος!

  6.   όχι από το Μπρούκλιν dijo

    Είναι αστείο, ήξερα σκουός και σε τι χρησιμεύουν, αλλά δεν μου είχε συμβεί ποτέ να συμπιέσω τις εικόνες μου. Ευχαριστώ για την συμβουλή.

  7.   HO2Gi dijo

    Εντυπωσιακό, για να το δοκιμάσετε για να δείτε τι συμβαίνει. Πολύ καλή συμβουλή

  8.   Robert dijo

    εξαιρετικό δάσκαλο !!! =)… Πολύ καλή συμβουλή !!!

  9.   Φώριες dijo

    Γεια σας roader. Πολύ ενδιαφέρον άρθρο, ευχαριστώ που μοιραστήκατε.

  10.   Εσούου dijo

    Στο Gentoo πρέπει να ενεργοποιήσετε την υποστήριξη SquashFS στον πυρήνα πριν τη μεταγλώττιση, θα το δοκιμάσω για να δω πώς λειτουργεί. Ευχαριστώ.

    1.    Εσούου dijo

      δοκιμάστηκε στο Gentoo μεταγλώττιση του πυρήνα για αυτό και εξαιρετικό
      Απλώς διορθώστε ένα μικρό τυπογραφικό λάθος, roader.

      Στο παράδειγμα:

      mksquashfs photos-2009 photos-2010 photos-2011 photos-2012 photos-2013 photos_2009-2013.sqsfs -comp xz -bs 1M

      ανταλλαγή του s στο "-bs" (το οποίο καθορίζει το μέγεθος του μπλοκ), θα πρέπει να έχει την εξής μορφή:

      mksquashfs photos-2009 photos-2010 photos-2011 photos-2012 photos-2013 photos_2009-2013.sqsfs -comp xz -b 1M