εντολές διαχείρισης filesystem linux

E-mail Εκτύπωση PDF
Αξιολόγηση Χρήστη: / 0
ΧείριστοΆριστο 

Η εντολή mkfs

H διαμόρφωση ενός filesystem σε Linux γίνεται με τη χρήση της εντολής mkfs (make filesystem). Η εντολή αυτή είναι ένας wrapper που καλεί την αντίστοιχη εντολή διαμόρφωσης, αν φυσικά υπάρχει. Η σύνταξή της είναι

mkfs -t <fstype> [fs-options] filesys

όπου fstype ο τύπος του συστήματος αρχείων με τις δικές του επιλογές fs-options και filesys το όνομα της μονάδας συσκευής block ή το σημείου αρμού της (mount point).

 

Για το ext2 ή ext3 χωρίς να είναι απαραίτητη η εγκατάσταση επιπλέον λογισμικού στο σύστημά μας, μπορούμε να χρησιμοποιήσουμε τη mkfs ή απευθείας μια από τις mkfs.ext2, mkfs.ext3, mke2fs. Πρόκειται στην ουσία για το ίδιο πρόγραμμα, καθώς είναι links στο ίδιο αρχείο.



Η mkfs δέχεται πληθώρα επιλογών, αλλά προς το παρόν οι σημαντικότερες που θα πρέπει να σας απασχολήσουν είναι οι εξής:

Επιλογές

Λειτουργία

						-b blocksize


Ρυθμίζει το μέγεθος του block που θα χρησιμοποιήσει η μονάδα block. Δεκτά μεγέθη είναι τα 1024, 2048, 4096.

						-L label


Ονομάζει το σύστημα αρχείων με την ετικέτα label.

						-j


Το σύστημα αρχείων θα είναι ext3 (ενεργοποιεί το αρχείο journal).

						-n


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



Για παράδειγμα, για να διαμορφώσουμε το διαμέρισμα /dev/hda2 σε σύστημα αρχείων ext3 μεγέθους 1GB εισάγουμε την εξής εντολή (μόνο ως χρήστης root):

# mke2fs -j /dev/hda2mke2fs 1.34-WIP (21-May-2007)Filesystem label=OS type: LinuxBlock size=4096 (log=2)Fragment size=4096 (log=2)4194304 inodes, 8388608 blocks419430 blocks (5.00%) reserved for the super userFirst data block=0256 block groups32768 blocks per group, 32768 fragments per group16384 inodes per groupSuperblock backups stored on blocks:        32768, 98304, 163840, 229376, 294912, 819200, 884736, 1605632, 2654208,        4096000, 7962624Writing inode tables: doneCreating journal (8192 blocks): doneWriting superblocks and filesystem accounting information: doneThis filesystem will be automatically checked every 33 mounts or180 days, whichever comes first.  Use tune2fs -c or -i to override. 

Αυτό είναι και το αποτέλεσμα του προγράμματος που θα πρέπει να περιμένετε.

Εδώ, πρέπει να σημειώσουμε ότι θα πρέπει να είναι ενεργοποιημένη η υποστήριξη του ext3 στον πυρήνα του Linux που τρέχετε (η υποστήριξη ext2 είναι πάντα ενεργοποιημένη στους τυπικούς πυρήνες).


Η εντολή mount

Θα δείξουμε και με ποιον τρόπο μπορούμε να τα προσπελάσουμε από το Linux, ή αν προτιμάτε, πώς να τα συναρμόσουμε στον βασικό κατάλογο root του συστήματός μας.

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

mount [-l]mount [OPTIONS] -amount [OPTIONS] <device | dir >mount [OPTIONS] <device dir> 

Με τον πρώτο τρόπο εκτέλεσης, η mount απλώς επιστρέφει τα υπάρχοντα συστήματα αρχείων που είναι συναρμοσμένα στο σύστημα, και η επιλογή -l δίνει σε αγκύλες τις ετικέτες αυτών (labels), όπως αυτές έχουν δοθεί με κάποιο πρόγραμμα όπως fdisk, cfdisk, κλπ. Παράδειγμα:

# mount/dev/ide/host0/bus0/target0/lun0/part1 on / type ext3 (rw, errors=remount-ro)proc on /proc type proc (rw)/dev/ide/host0/bus0/target0/lun0/part5 on /usr type ext3 (rw)/dev/ide/host0/bus0/target0/lun0/part6 on /home type ext3 (rw) 

Η mount λοιπόν μόλις μας έδωσε τις εξής πληροφορίες: το σύστημα χρησιμοποιεί devfs, υπάρχει εικονικό σύστημα αρχείων /proc και τρία συστήματα ext3 στα διαμερίσματα 1, 5 και 6. Το πρώτο είναι το πρωτεύον και φιλοξενεί τον βασικό κατάλογο root, ενώ τα 5 και 6 φιλοξενούν τους καταλόγους /usr και /home αντίστοιχα. Οι επιλογές που φαίνονται στις παρενθέσεις θα αναλυθούν παρακάτω.

Η δεύτερη χρήση της mount είναι με την επιλογή -a. Σε αυτήν την περίπτωση η mount συναρμόζει όλα τα συστήματα αρχείων που είναι δηλωμένα στο αρχείο /etc/fstab.

Η τρίτη περίπτωση χρησιμοποιεί πάλι το αρχείο fstab, αλλά συναρμόζει μόνο το ζητούμενο σύστημα αρχείων. Θα πρέπει να δοθεί είτε το όνομα της μονάδας της συσκευής (π.χ. το διαμέρισμα) είτε το όνομα του αρμού (mount point) του συστήματος αρχείων. Για παράδειγμα, χρησιμοποιώντας το προηγούμενο παράδειγμα, οι παρακάτω εντολές είναι ισοδύναμες:

# mount /dev/ide/host0/bus0/target0/lun0/part6

ή

# mount /dev/hda6

ή

# mount /home

Παρόμοιο τρόπο χρησιμοποιούμε για να συναρμόσουμε ένα CD-ROM, υπό τον κατάλογο /cdrom (θεωρώντας πάντα ότι υπάρχει μια καταχώρηση στο αρχείο fstab):

# mount /cdrom

Τέλος, στην περίπτωση που θέλουμε να συναρμόσουμε κάποιο σύστημα αρχείων προσωρινά και δεν υπάρχει καταχώρηση στο αρχείο fstab, πρέπει να δοθεί και το όνομα της μονάδας της συσκευής (device) και το όνομα του αρμού (dir). Για να κρατήσουμε μια ομοιομορφία στα παραδείγματα, έστω ότι θέλουμε να συναρμόσουμε το διαμέρισμα hda7, που φιλοξενεί ένα σύστημα αρχείων τύπου ext3, στον αρμό /tmp:

# mount -t ext3 /dev/hda7 /tmp

ή με τη χρήση του devfs

# mount -t ext3 /dev/ide/host0/bus0/target0/lun0/part7 /tmp

Συνήθως όμως το ίδιο το devfs παρέχει συμβολικούς συνδέσμους των νέων ονομασιών με τις παλιές, οπότε σε κάθε περίπτωση να ισχύει το όνομα /dev/hda7.

Θεωρώντας ότι η συσκευή οδηγού CD-ROM έχει σημείο επαφής το /dev/cdrom, μπορούμε να συναρμόσουμε ένα CD-ROM με σύστημα αρχείων ISO 9660, χωρίς να υπάρχει καταχώρηση στο fstab, ως εξής:

# mount -t iso9660 /dev/cdrom /cdrom

Προχωρώντας σε περισσότερα παραδείγματα, έστω ότι στο σύστημά μας είναι εγκατεστημένα παράλληλα και τα Windows XP με δύο διαμερίσματα, ένα σε NTFS και ένα σε FAT32 (το οποίο στο Linux αναγνωρίζεται ως VFAT). Έστω ότι το NTFS βρίσκεται στο διαμέρισμα hda1 και το FAT32 στο διαμέρισμα hdb5 (πρώτο λογικό διαμέρισμα στον δεύτερο δίσκο IDE, βλ. κεφ. 2). Θέλουμε να συναρμόσουμε αυτά τα διαμερίσματα στους καταλόγους /mnt/windows/ntfs και /mnt/windows/fat αντίστοιχα.

# mount -t ntfs /dev/hda1 /mnt/windows/ntfs# mount -t vfat /dev/hdb5 /mnt/windows/fat 

Αν τώρα θελήσουμε να συναρμόσουμε το NTFS διαμέρισμα μόνο για ανάγνωση, μπορούμε να χρησιμοποιήσουμε την επιλογή -o ro (Read Only):

# mount -t ntfs -o ro /dev/hda1 /mnt/windows/ntfs





Αν τώρα θελήσουμε να συναρμόσουμε το NTFS διαμέρισμα μόνο για ανάγνωση, μπορούμε να χρησιμοποιήσουμε την επιλογή -o ro (Read Only):

# mount -t ntfs -o ro /dev/hda1 /mnt/windows/ntfs

Τέλος, έστω ότι για τον κατάλογο /home, θέλουμε να χρησιμοποιήσουμε NFS από τον εξυπηρετητή moria ο οποίος έχει διεύθυνση IP 192.168.10.34. Για να περιπλέξουμε τα πράγματα, έστω ότι ο moria διανέμει τους καταλόγους home των χρηστών υπό το όνομα /external/users/homedirs. Τότε, μπορούμε εύκολα να συναρμόσουμε τον κατάλογο αυτό στον δικό μας κατάλογο /home:

# mount -t nfs myhost.fqdn:/external/users/homedirs /home

ή

# mount -t nfs 192.168.1.34:/external/users/homedirs /home

Αναφερθήκαμε σε ορισμένες επιλογές της mount χωρίς να τις εξηγήσουμε. Ακολουθεί επεξηγηματικός πίνακας ορισμένων από τις βασικότερες επιλογές που δέχεται η εντολή:

 

Επιλογές

Λειτουργία

						-t vfstype


Ορίζει το είδος του συστήματος αρχείων. Μερικά από τα αποδεκτά είναι: ext2, ext3, vfat, msdos, iso9660, hfs, ntfs, nfs, proc, reiserfs, jfs, ufs, xfs.

						-r


Ισοδύναμη με την -o ro.

						-w


Ισοδύναμη με την -o rw.

						-f


(fake) Προσποιείται τη συναρμογή.

						-o options


Περνάει ειδικές επιλογές στο συγκεκριμένο σύστημα αρχείων. Πολλά έχουν δικές τους επιλογές οι οποίες πρέπει να δηλωθούν εδώ. Κοινές για όλα τα συστήματα αρχείων είναι οι:

ro: Read Only, συναρμόζει το σύστημα μόνο για ανάγνωση.

rw: Read/Write, το σύστημα θα είναι διαθέσιμο και για εγγραφή.

remount: Επανασυναρμόζει το σύστημα αρχείων.

User: Ένας απλός χρήστης μπορεί να καλέσει τη mount για αυτό το σύστημα αρχείων.

Noauto: Δεν γίνεται αυτόματη συναρμογή του συστήματος αρχείων με την εκκίνηση του συστήματος.

Ειδικά για το ext2/ext3 μπορούμε να χρησιμοποιήσουμε τις εξής:

errors: μπορεί να πάρει μία από τις εξής τιμές:

  • errors=continue, συνεχίζει χωρίς πρωτοβουλία.

  • errors=remount-ro, συναρμόζει το σύστημα μόνο για ανάγνωση.

  • errors=panic, τερματίζει απότομα το σύστημα και ορίζει κατάσταση πανικού.

 

 

Η εντολή umount

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

Έχει παρόμοια σύνταξη με τη mount, την οποία μπορούμε πιο εύκολα να αντιληφθούμε με μερικά παραδείγματα:

# umount -a

Εδώ, η εντολή αποσυναρμόζει όλα τα συνδεδεμένα συστήματα αρχείων (στην πραγματικότητα όλα όσα αναφέρονται στο αρχείο /etc/mtab).

# umount /home

Ένώ στο παραπάνω παράδειγμα, αποσυναρμόζει το σύστημα αρχείων /home (ό,τι και αν είναι αυτό, ext3, nfs, κλπ).

# umount -a -t vfat

Αποσυναρμόζει όλα τα συστήματα αρχείων vfat.

 

Το αρχείο fstab

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

 

Το αρχείο εναλλαγής μνήμης (swap)

Αν και αρκετές φορές συναντάται ως swap filesystem, κάτι τέτοιο είναι λάθος, καθώς δεν πρόκειται για σύστημα αρχείων. Δε συναρμόζεται κάπου και δε φιλοξενεί αρχεία ή άλλες παρόμοιες δομές. Η σύγχυση οφείλεται στο ότι δηλώνεται στο αρχείο fstab και καταλαμβάνει συνήθως ένα διαμέρισμα, ενώ υπάρχουν ειδικά εργαλεία που το αρχικοποιούν όπως ακριβώς συμβαίνει και με ένα σύστημα αρχείων. Με τη χρήση προτεραιοτήτων, καθίσταται δυνατή η χρήση περισσοτέρων από μία μονάδων εναλλαγής μνήμης.

Υπάρχουν οι εξείς απλές εντολές που αφορούν την δημιουργία και ενεργοποίηση ενός αρχείου εναλλαγής μνήμης: mkswap, swapon και swapoff. Συντάσσονται ως εξής:

mkswap [options] <device | file>swapon -aswapon [-v] [-p priority]  specialfile ...swapoff -aswapoff specialfile ... 

Η mkswap αρχικοποιεί ένα αρχείο ή διαμέρισμα δίσκου για χρήση ως αρχείο εναλλαγής μνήμης. Από τις επιλογές που δέχεται, η πιο χρήσιμη για τους περισσότερους χρήστες είναι η -c, που ελέγχει το διαμέρισμα δίσκου για κατεστραμμένα blocks πριν το αρχικοποιήσει.

Η swapon και swapoff ενεργοποιούν και απενεργοποιούν αντίστοιχα ένα αρχείο ή μονάδα εναλλαγής μνήμης.

 

Το αρχείο εναλλαγής μνήμης (swap)

Αν και αρκετές φορές συναντάται ως swap filesystem, κάτι τέτοιο είναι λάθος, καθώς δεν πρόκειται για σύστημα αρχείων. Δε συναρμόζεται κάπου και δε φιλοξενεί αρχεία ή άλλες παρόμοιες δομές. Η σύγχυση οφείλεται στο ότι δηλώνεται στο αρχείο fstab και καταλαμβάνει συνήθως ένα διαμέρισμα, ενώ υπάρχουν ειδικά εργαλεία που το αρχικοποιούν όπως ακριβώς συμβαίνει και με ένα σύστημα αρχείων. Με τη χρήση προτεραιοτήτων, καθίσταται δυνατή η χρήση περισσοτέρων από μία μονάδων εναλλαγής μνήμης.

Υπάρχουν οι εξείς απλές εντολές που αφορούν την δημιουργία και ενεργοποίηση ενός αρχείου εναλλαγής μνήμης: mkswap, swapon και swapoff. Συντάσσονται ως εξής:

mkswap [options] <device | file>swapon -aswapon [-v] [-p priority]  specialfile ...swapoff -aswapoff specialfile ... 

Η mkswap αρχικοποιεί ένα αρχείο ή διαμέρισμα δίσκου για χρήση ως αρχείο εναλλαγής μνήμης. Από τις επιλογές που δέχεται, η πιο χρήσιμη για τους περισσότερους χρήστες είναι η -c, που ελέγχει το διαμέρισμα δίσκου για κατεστραμμένα blocks πριν το αρχικοποιήσει.

Η swapon και swapoff ενεργοποιούν και απενεργοποιούν αντίστοιχα ένα αρχείο ή μονάδα εναλλαγής μνήμης.




Μοιραστείτε αυτό το άρθρο
Reddit! Del.icio.us! Mixx! Free and Open Source Software News Google! Live! Facebook! StumbleUpon! Yahoo! Dig Me Joomla Free PHP

Σχόλια
Προσθήκη νέου Αναζήτηση RSS
Γράψτε σχόλιο
Όνομα:
Email:
 
Τίτλος:
 
Please input the anti-spam code that you can read in the image.
 

Seach By Google

Translate this website :

Επιλογές


Warning: Parameter 1 to modMainMenuHelper::buildXML() expected to be a reference, value given in /home/flakgr/public_html/libraries/joomla/cache/handler/callback.php on line 99

Programming


Warning: Parameter 1 to modMainMenuHelper::buildXML() expected to be a reference, value given in /home/flakgr/public_html/libraries/joomla/cache/handler/callback.php on line 99

Fedora


Warning: Parameter 1 to modMainMenuHelper::buildXML() expected to be a reference, value given in /home/flakgr/public_html/libraries/joomla/cache/handler/callback.php on line 99

CentOS


Warning: Parameter 1 to modMainMenuHelper::buildXML() expected to be a reference, value given in /home/flakgr/public_html/libraries/joomla/cache/handler/callback.php on line 99

Linux


Warning: Parameter 1 to modMainMenuHelper::buildXML() expected to be a reference, value given in /home/flakgr/public_html/libraries/joomla/cache/handler/callback.php on line 99

Ubuntu


Warning: Parameter 1 to modMainMenuHelper::buildXML() expected to be a reference, value given in /home/flakgr/public_html/libraries/joomla/cache/handler/callback.php on line 99

Debian


Warning: Parameter 1 to modMainMenuHelper::buildXML() expected to be a reference, value given in /home/flakgr/public_html/libraries/joomla/cache/handler/callback.php on line 99


Τελευταία Σχόλια