IMPORTANT: Per accedir als fitxer de subversion: http://acacha.org/svn (sense password). Poc a poc s'aniran migrant els enllaços. Encara però funciona el subversion de la farga però no se sap fins quan... (usuari: prova i la paraula de pas 123456)

Linux Professional Institute Certificate. LPIC-1

Lpic1 large.gif
Certificat LPIC-1
Examen: 101 (torneu a la resta de temes)
Fitxers: LPI104.1_104.2_104.3_ParticionsSistemesFitxersIMuntatge.pdf (LPI104.1_104.2_104.3_ParticionsSistemesFitxersIMuntatge.odp)

LPI104.1_104.2_104.3_ParticionsSistemesFitxersIMuntatge.odp

Objectius: http://www.lpi.org/eng/certification/the_lpic_program/lpic_1/exam_101_detailed_objectives
Dipòsit SVN: https://svn.projectes.lafarga.cat/svn/lpi/Materials/Examen_101/104.1
Usuari: anonymous
Paraula de pas: qualsevol paraula de pas

Objectius del tema

104.1. Crear particions i sistemes de fitxers
Objective.jpg
  • Objectiu: Els candidats han de ser capaços de configurar particions de disc i crear sistemes de fitxers en dispositius com ara els discs durs. Això inclou la gestió de les particions d'intercanvi.
  • Pes: 2
060317 Icon - Theory of Knowledge v01 pdc.jpg

Àrees Clau de Coneixement:

  • Utilitzar diverses instruccions mkfs per a configurar les particions i crear diversos sistemes de fitxers com:
Icon list.jpg

La següent és una llista parcial de fitxers, termes i utilitats utilitzades:

Text-editor.svg

Apunts: LPI 104.1. Crear particions i sistemes de fitxers

Formatació

El procés de formatar un dispositiu d'emmagatzemament és el que prepara el dispositiu per tal d'emmagatzemar dades.

Alguns dispositius d'emmagatzemament, com els discs durs es poden particionar. Particionar és la operació de dividir el dispositiu en seccions (parts) on cada part és independent de la resta (p. ex. cadascuna pot tenir el seu propi sistema de fitxers).

NOTA: Normalment en aquest tema parlarem de formatació de discs durs. Cal tenir en compte però que actualment tenim la possibilitat de formatar altre tipus de dispositius, com memòries flash, unitats de dics regravable (CD-RW,DVD-RW) o fins i tot fitxers creats amb dd

Formatació a nivell físic

Hi han dos tipus de formatats a nivell físic:

  • Formatat a baix nivell: Aquest formatat està més relacionat amb la organització física del dispositiu i és un formatat molt proper al maquinari. Per exemple, en un disc dur, consisteix en traçar amb senyals magnètiques les pistes i els sectors del disc. Consulteu l'apartat " principis de funcionament" de l'article sobre discs durs per tal d'obtenir més detalls. Els dispositius d'emmagatzemament com discs durs o memòries flash ja venen formatats a baix nivell i per tant, rarament com a usuaris haurem de formatar uns dispositiu a baix nivell.
  • Formatat a alt nivell: Aquest formatat és més proper al sistema lògic i al sistema operatiu (programari). S'encarrega de crear un sistema de fitxers buit i instal·lar un gestor d'arrancada. També se l'anomena "formatació ràpida" (quick format). L'ordre que ens permet crear les particions d'un disc és fdisk i altres alternatives gràfiques com cfdisk, gparted o l'eina palimpsest.

Formatació a nivell lògic

El formatat a nivell lògic crea el sistema de fitxers amb el que treballarà el sistema operatiu. Hi han diferents sistemes de fitxers i diferents comandes per crear aquests sistemes de fitxers.

mkfs és un front-end per a crear diferents tipus de sistemes de fitxers.

Particions

Consulteu l'apartat particions de l'objectiu LPI 102.1. Dissenyar la distribució del disc dur.

Manipular la taula de particions. fdisk

Consulteu fdisk.

Nomenclatura de dispositius Linux

IDE

Normalment té dos ports on és poden connectar fins a dos dispositius que comparteixen el cable:

Port IDE primari:

    • Mestre. /dev/hda
    • Esclau./dev/hdb

Port secundari IDE:

    • Mestre/dev/hdc
    • Esclau./dev/hdd

SCSI

En el cas d'SCSI les particions segueixen un ordre marcat pel número de BUS:

  • /dev/sda1
  • /dev/sda2
  • /dev/sda3

Els usb també els detecta com scsi

Més informació sobre noms de dispositius a:

SATA

El funcionament actual dels disc sata és idèntic a SCSI.

Sistemes de fitxers

inodes

En informàtica i concretament en sistemes Unix-Like un inode és una estructura de dades que emmagatzema informació bàsica (també coneguda com a metadades) d'un fitxer o qualsevol altre objecte d'un sistema de fitxers.

L'inode és un component essencial del sistema de fitxers lògic. Cal tenir clara la diferència entre sistema de fitxers lògic, que és el nivell d'abstracció que ens ofereix el sistema operatiu i que ens permet treballar amb els sistemes de fitxers amb independència de les seves característiques físiques i de maquinari, del sistema de fitxers físic.

El sistema de fitxers lògic és un component més del que es coneix com a màquina virtual del sistema operatiu.

Recursos:

Característiques i dades dels inodes

Quan es crea un sistema de fitxers es generen també unes estructures de dades per mantenir la informació dels fitxers del sistema. A cada fitxer del sistema li correspon un inode i cada inode s'identifica per un número d'inode (conegut com a i-number o ino). El número d'inode d'un fitxer es pot conèixer amb la comanda:

$ ls -i 
6242503 a       6242498 d  6242502 linkdura

La informació que conté un inode esta determinada per l'estàndard POSIX i és:

  • Mida del fitxer
  • Propietari (userid o uid) i grup (groupid o gid)
  • Permisos d'accés al fitxer.
  • Tipus de fitxers (fitxer regular, carpeta, dispositiu, socket, enllaç)
  • Timestamps
  • Un comptador de quants enllaços hi ha a aquest fitxer. Vegeu Hard Links
  • Punters al blocs de disc amb el contingut del fitxer.

IMPORTANT: L'inode no conté el nom del fitxer. El nom del fitxer el conté el directori al qual es troba el fitxer

Podeu consultar aquesta informació amb les comandes ls i stat.

$ ls -l

o

$ stat fitxer

Hi ha un nom limitat d'inodes que indica el nombre màxim de fitxer (aquest nombre es diferent en cada sistema de fitxers). Típicament l'espai d'inodes és un 1% del disc dur. Els inodes es guarden en una estructura de dades taula que permet accedir directament a un inode a partir del seu número de inode. A partir del número d'inode el sistema operatiu pot accedir a la metainformació de l'inode i al contingut de l'inode (a través d'uns punters que emmagatzema l'inode)

No tots els sistemes de fitxers proporcionen inodes (per exemple ReiserFS no ho fa) però proporcionen informació equivalent per a la comanda stat (que utilitza la crida de sistema stat)

Implicacions importants:

  • Els inodes no contenen els noms dels fitxers, només els seus continguts (els noms dels fitxers els contenen les carpetes)
  • Els directoris de Unix són llistes on cada element de la llista conté el nom del fitxer i el seu número d'inode.
  • El kernel de unix ha de buscar primer el directori del fitxer i a partir d'aquí obtenir de la llista el seu inode per tal d'accedir a l'informació del fitxer (si es troba el nom del fitxer a la llista)

La estructura de dades en C (struct) de Linux s'anomena struct inode.

Obtenir informació dels sistemes de fitxers

Podeu consultar el manual de Linux:

$ man fs
FILESYSTEMS(5)             Linux Programmer's Manual            FILESYSTEMS(5)

NAME
       filesystems   -  Linux  file-system  types:  minix,  ext,  ext2,  ext3,
       Reiserfs, XFS, JFS, xia, msdos, umsdos, vfat, proc, nfs, iso9660, hpfs,
       sysv, smb, ncpfs

DESCRIPTION
       When,  as  is  customary, the proc file system is mounted on /proc, you
       can find in the file /proc/filesystems which file systems  your  kernel
       currently  supports.   If  you need a currently unsupported one, insert
       the corresponding module or recompile the kernel.  

       In order to use a file system, you have to mount it; see mount(8).

       Below a short description of a few of the available file systems.

       minix     is the file system used in the Minix  operating  system,  the
                 first to run under Linux.  It has a number of shortcomings: a
                 64MB  partition  size  limit,  short  filenames,   a   single
                 timestamp,  etc.   It  remains  useful  for  floppies and RAM
                 disks.

       ext       is an elaborate extension of the minix file system.   It  has
                been  completely  superseded  by  the  second  version of the
                extended file system (ext2) and has  been  removed  from  the
                kernel (in 2.1.21).


      ext2      is  the  high  performance disk file system used by Linux for
                fixed disks as well as removable media.  The second  extended
                file system was designed as an extension of the extended file
                system (ext).  ext2 offers the best performance (in terms  of
                speed  and  CPU  usage)  of  the file systems supported under
                Linux.

      ext3      is a journaling version of the ext2 file system.  It is  easy
                to switch back and forth between ext2 and ext3.

      Reiserfs  is  a  journaling  file system, designed by Hans Reiser, that
                was integrated into Linux in kernel 2.4.1.

      XFS       is a journaling file  system,  developed  by  SGI,  that  was
                integrated into Linux in kernel 2.4.20.

ext2 i ext3

ext2:

Ext2-inode.gif

Ext2 és un sistema de fitxers amb una cache en memòria i s'escriu al disc de forma asíncrona. El problema que té és que una apagada no controlada (reinici del sistema incorrecta, caiguda de tensió, etc.) pot provocar la pèrdua d'informació. El kernel marca el sistema de fitxers com dirty si hi ha dades pendents de gravar o com a clean si no hi ha dades pendents.

Per aquesta raó s'executa un fsck cada cop que s'inicia la màquina. Hi ha dos casos de dirty:

  • La cache tenia dades pendents de escriure
  • La cache estava escrivint

En el primer cas simplement es perden les dades. En el segon cas es pot arreglar amb fsck

Un sistema de fitxers ext2 (i per extensió ext3) té 3 zones:

  • Superbloc: És un sol bloc que conté informació de la resta de zones de disc
  • Inodes: vegeu inode
  • Blocs de dades. Format normalment per blocs de 4k (es pot modificar al formatar el disc)

Al crear un fitxer (per exemple amb la comanda touch) el sistema escull un inode lliure i es guarda totes les metadades del fitxer menys el seu contingut i el seu nom a l'inode. L'inode conté una llista de blocs que no tenen per que ser consecutius on es guarden les dades del fitxer.

Per accedir a la informació d'un fitxer concret, per exemple:

  • /home/sergi/prova

es segueixen les següents passes. S'accedeix al directori arrel que té un número fix d'inode (2). Com que és un directori conté una llista dels inodes dels fitxers (recordeu que les carpetes i de fet tot en Linux és un fitxer) que conté. S'obté l'inode de /home i així successivament fins a obtenir el inode del fitxer prova.

A diferència de FAT no hi ha límit en la mida del fitxer per limitacions en la taula FAT. Quan s'acaben els blocs d'un inode, l'últim bloc conté un punter a un altre bloc amb els continguts o altres punter a blocs de dades (vegeu la gràfica de la dreta).

Understandlk 1801.jpg

Al crear un nou sistema de fitxers ext2, el disc s'organitza segons la imatge de la dreta en grups de blocs. El kernel del SO intenta que tots els fitxers tinguin els seus blocs a un mateix grup de blocs.

Cada bloc de grup conté:

  • Una còpia del superbloc del sistema de fitxers
  • Una còpia de del grups de descriptors de grup de blocs
  • Un mapa de bits indicant quins blocs estan lliure
  • Una mapa de bits indicant quins inodes estan lliures
  • Un taula d'inodes (permet accedir als inodes segons el seu número d'inode)
  • Blocs de dades

Cop podeu veure el superbloc té diferents còpies en tot el sistema de fitxers. El kernel només utilitza el superbloc del primer grup de blocs però la resta es poden utilitzar per restaurar un sistema inconsistent. Vegeu l'apartat Còpia de seguretat i restauració de sistemes de fitxers per conèixer els detalls d'aquesta operació.

Com podem saber quants grups de blocs hi ha i com s'organitza el disc? Això depèn de la mida del sistema de fitxers i d'altres paràmetres. Els podem consultar amb la comanda tune2fs i fsck

La mida típica del bloc és de 4Kbytes (és el valor màxim en CPUs de 32 bits).

Recursos:

ext3:

És el sistema més utilitzat actualment en Linux (tot i que no és el més ràpid). En gran part perquè es possible passar un sistema ext2 a ext3 sense perdre les dades i perquè no consumeix tanta CPU com altres sistemes.

Ext3 és equivalent a un sistema ext2 amb les següents millores:

  • Journaling: ext3 implementa un mecanisme anomenat journalist. Ext3 és compatible amb ext2 però soluciona el problema de les inconsistències de ext2 ja que si un es capaç de saber quan una situació de dirty a disk es d'un tipus o d'un altre poden evitar tenir que chequejar el disk sempre. És un sistema semblant al fallback de les bases de dades.
  • Creixement del sistema de fitxers online
  • L'estructura de dades és Htree (versió especialitzada dels arbres B)

Tant ext2 com ext3 utilitzant les eines de e2fsprogs

Recursos:

Journaling

El journaling és un mecanisme pel qual un sistema informàtic pot implementar transaccions. També es conegut com a registre per diari. La base del journaling es mantenir un registre (log) o s'emmagatzema la informació necessària per a restablir les dades afectades per una transacció. El journal es pot utilitzar per restablir el sistema es cas d'un error del sistema

El seu ús més comú és en base de dades però actualment també s'utilitza en els sistemes de fitxers per tal d'evitar la corrupció de les estructures de dades dels sistemes d'arxius.

L'objectiu del journal es evitar tenir que executar un fsck cada cop que la màquina es penja o no s'apaga correctament.

Cal indicar però que el journaling no evita el 100% dels casos de corrupció de dades i es necessari executar de tant en tant un fsck.

Recursos:

superblock

El superblock conté dades vitals per al correcte funcionament del sistema de fitxers. Si es perd el superblock aleshores perdrem tot els sistema de fitxers.

Entre d'altres dades al superblock podeu trobar:

  • El tipus de sistema de fitxers
  • La mida del sistema de fitxers
  • L'estatus (clena, dirty)
  • Informació sobre la resta de les estructures de metadades del sistema de fitxers.

Els sistemes ext mantenen còpies de seguretat repartides pel disc dur. Les podeu consultar amb:

# dumpe2fs /dev/sda1 | grep -i superblock
Primary superblock at 0, Group descriptors at 1-1
Backup superblock at 32768, Group descriptors at 32769-32769
Backup superblock at 98304, Group descriptors at 98305-98305
Backup superblock at 163840, Group descriptors at 163841-163841
Backup superblock at 229376, Group descriptors at 229377-229377
Backup superblock at 294912, Group descriptors at 294913-294913 

Es pot intentar recuperar un sistema a partir d'una còpia del superblock amb fsck:

La mida de bloc en sistemes de fitxers Linux acostuma a ser 4k (4096bytes). Amb aquesta mida trobareu sempre una còpia del superbloc al bloc:

32768

Es poden consultar la resta de còpies de seguretat del superblock amb:

$ mke2fs -n /dev/sda3

Es pot utilitzar fsck de la següent manera:

$ sudo e2fsck -f -b 8193 /dev/sda3

on 8193 és un bloc on hi ha una còpia de seguretat del superbloc.

Recursos:

ext4

NOTA: No entra a l'examen LPI

És un sistema que també té journaling i és compatible amb ext3. el 25 de desembre de 2008 es va publicar el kernel Linux 2.6.28, la primera versió estable de ext4.

Les principals millores són:

  • Suport de sistemes de fitxers dins a 1024 PiB.
  • Millor ús de la CPU
  • Suport per a extent
  • Millores en les operacions de lectura i escriptura

Recursos:

xfs

NOTA: Si esteu cercant el servidor de fonts X (xfs) consulteu LPI_106.1_Instal·lació_i_configuració_de_X11#Servidor_de_fonts

XFS és un sistema d'arxius d'alt rendiment de 64 bits amb journaling. Va ser creat per SGI (antic Silicon Graphics Inc.), per a la seva pròpia implementació de Unix, anomenada IRIX.

Al maig de l'any 2000, el SFI va alliberar XFS sota una llicència lliure.

XFS va ser incorporat a Linux a partir de la versió 2.4.25.

Algunes de les característiques de XFS són:

  • Extended attributes
  • ACL
  • quotes
  • B+ trees
  • Sistema de fitxers de 64 bits (suporta particions i fitxers extremament grans). La mida teòrica màxima de la partició és 9 exabyte. Però quan s'executa en un sistema de 32 bits, el seu limit és de 16 terabyte.

Consulteu:

LPI_104.2._Mantenir_la_integritat_dels_sistemes_de_fitxers#Creaci.C3.B3_d.27un_sistema_de_fitxers_XFS

Recursos:

reiserfs v3

ReiserFS és un sistema d'arxius de propòsit general, dissenyat i implementat per un equip de l'empresa Namesys. El projecte està liderat per Hans Reiser (d'aquí l'origen del nom).

ReiserFS és suportat pel nucli Linux a partir de la versió 2.4.1 de Linux.

Actualment s'està treballant en la versió 4 de reiser.

Consulteu també:

LPI_104.2._Mantenir_la_integritat_dels_sistemes_de_fitxers#Creaci.C3.B3_d.27un_sistema_de_fitxers_reiserfs

vfat

Crear sistemes de fitxers amb mkfs

Segons el manual:

$ man mkfs

Aquesta ordre ens permet crear un sistema de fitxers Linux. La sintaxi de l'ordre és:

$ mkfs [ -V ] [ -c ] [ -t fstype ] [ fs-options ] filesys [ blocks ]

On:

  • filesys: És el nom del dispositiu. Normalment una partició (/dev/sda1, /dev/sda2, /dev/sdc3...)
  • fstype: Permet indicat els tipus de sistema de fitxers a crear. Podeu consultar els sistemes de fitxers suportats amb $ man fs
  • fs-options: opcions específiques de cada sistema de fitxers
  • -V: és l'opció verbose. Mostra més informació durant la execució de l'ordre. també es pot utilitzar -v.
  • -c: comprova el dispositiu abans de crear el sistema de fitxers.

L'ordre mkfs com fdisk és proporcionada pel paquet util-linux:

$ dpkg -S /sbin/mkfs
util-linux: /sbin/mkfs

Realment, mkfs és un front-end que apunta cap a les ordres que creen sistemes de fitxers específics (mkfs.fstype). Alguns dels utilitzats més sovint són:

$ mkfs.ext2               // crear sistemes de fitxers ext2
$ mkfs.ext3               // crear sistemes de fitxers ext3
$ mkfs.ext4              // crear sistemes de fitxers ext4
...

Podeu consultar quins teniu instal·lats al vostre sistema amb:

$ whereis mkfs
mkfs: /sbin/mkfs.minix /sbin/mkfs.msdos /sbin/mkfs /sbin/mkfs.bfs /sbin/mkfs.ext4dev /sbin/mkfs.cramfs /sbin/mkfs.ext2 /sbin/mkfs.ext3  
/sbin/mkfs.ext4 /sbin/mkfs.vfat /usr/share/man/man8/mkfs.8.gz

$ type mkfs
mkfs is /sbin/mkfs

Quan indiquem el tipus de sistema de fitxers amb l'opció -t fstype, mkfs busca el constructor de fitxers per aquell tipus de sistema de fitxers a les carpetes habituals com:

/sbin
/sbin/fs
/sbin/fs.d
/etc/fs
/etc 
...

La llista es defineix al compilar l'ordre, però com a mínia buscarà a /sbin i /sbin/fs.

Els constructors dels sistemes de fitxers tipus ext són proporcionats pel paquet e2fsprogs:

$ dpkg -S /sbin/mkfs.ext2
e2fsprogs: /sbin/mkfs.ext2
$ dpkg -S /sbin/mkfs.ext3
e2fsprogs: /sbin/mkfs.ext3
$ dpkg -S /sbin/mkfs.ext4
e2fsprogs: /sbin/mkfs.ext4

Cal tenir en compte que totes les aplicacions de creació de sistemes de fitxers ext apunten a ext2.

e2fsprogs

Consulteu e2fsprogs.

Crear sistemes de fitxer ext

Podem utilitzar les ordres mkfs del paquet e2fsprogs:

$ dpkg -L e2fsprogs | grep mkfs
/sbin/mkfs.ext2
/sbin/mkfs.ext3
/sbin/mkfs.ext4
/sbin/mkfs.ext4dev

Permet crear un sistema de fitxers ext2. Les comandes mkfs.ext3 i mkfs.ext2 són equivalents (si consulteu els seus manuals veureu que totes utilitzen mkfs.ext2).

També és equivalents l'ordre:

mke2fs

Consulteu el manual:

$ man mkfs.ext2

Veureu que realment tots els mkfs acaben cridant a /sbin/mkfs.ext2

Per exemple, per crear un sistema de fitxers ext2:

IMPORTANT: No executeu les següents comandes al vostre ordinador. Poden esborrar la informació de les vostres particions]

$ sudo mkfs.ext2 dispositiu

On dispositiu és el dispositiu on està la partició a la que li volem posar un sistema de fitxers. Consulteu la nomenclatura de dispositius Linux. Per exemple:

$ sudo mkfs.ext2 /dev/sda1

Dóna format la primera partició del vostre disc.

Per exemple, per crear un sistema de fitxers ext3:

$ sudo mkfs.ext3 /dev/sda1
mke2fs 1.40.2 (12-Jul-2007)
Filesystem label=
OS type: Linux
Block size=4096 (log=2)
Fragment size=4096 (log=2)
180864 inodes, 361454 blocks
18072 blocks (5.00%) reserved for the super user
First data block=0
Maximum filesystem blocks=373293056
12 block groups
32768 blocks per group, 32768 fragments per group
15072 inodes per group
Superblock backups stored on blocks: 
        32768, 98304, 163840, 229376, 294912 

Writing inode tables: done                            
Creating journal (8192 blocks): done
Writing superblocks and filesystem accounting information: done

This filesystem will be automatically checked every 21 mounts or
180 days, whichever comes first.  Use tune2fs -c or -i to override.

Podeu fer proves de creació de sistemes de fitxers utilitzant dd per crear una imatge i utilitzant fdisk per particionar aquesta imatge. Consulteu:

Fdisk#Fer_proves_amb_fdisk_sense_modificar_cap_disc

Crear un sistema de fitxer ext3 és equivalent a crear un sistema de fitxers ext2 amb journaling (opció -j):

 $ mkfs.ext2 -j /dev/sda1

Les opcions per defecte que s'utilitzen amb l'ordre mkfs les podeu consultar al fitxer de configuració:

$ cat /etc/mke2fs.conf | more
[defaults]
	base_features = sparse_super,filetype,resize_inode,dir_index,ext_attr 
	blocksize = 4096
	inode_size = 256
	inode_ratio = 16384

[fs_types]
	ext3 = {
		features = has_journal
	}
	ext4 = {
		features = has_journal,extent,huge_file,flex_bg,uninit_bg,dir_nlink,extra_isize
		inode_size = 256
	}
	ext4dev = {
		features = has_journal,extent,huge_file,flex_bg,uninit_bg,dir_nlink,extra_isize
		inode_size = 256
		options = test_fs=1
	}
	small = {
		blocksize = 1024
		inode_size = 128
		inode_ratio = 4096
       ....

Modificar la mida del bloc

La mida per defecte és 4096. Es pot especificar la mida del bloc amb l'opció -b:

IMPORTANT: No executeu la següent ordre en un sistema que no sigui de proves

$ sudo mkfs.ext3 -b 4096 /dev/sda1

Consulteu:

Sistemes_de_fitxers#Com_calcular_blocs.2C_c.C3.B2pies_de_superblocs.2C_n.C2.BA_de_grups_de_bloc.2C_etc.

Per tal d'obtenir més detalls.

Comprovar badblocks abans de crear el sistema de fitxers

Es pot fer amb l'opció -c:

IMPORTANT: No executeu la següent ordre en un sistema que no sigui de proves

$ sudo mkfs.ext3 -c /dev/sda1

Establir una etiqueta al sistema de fitxers

$ sudo mkfs.ext3 -L etiqueta_prova /dev/loop0
mke2fs 1.41.9 (22-Aug-2009)
Etiqueta del sistema de fitxers=etiqueta_prova
Tipus de sistema operatiu: Linux
Mida del bloc=4096 (log=2)
Mida del fragment=4096 (log=2)
389376 nodes-i, 1556645 blocs
77832 blocs (5.00%) reservats per al superusuari
Bloc de dades inicial=0
Màxim de blocs del sistema de fitxers=1598029824
48 grups de blocs
32768 blocs per grup, 32768 fragments per grup
8112 nodes-i per grup
Còpies de seguretat del superbloc desades en els blocs:  
	32768, 98304, 163840, 229376, 294912, 819200, 884736 

Escriptura de les taules de nodes-i:fet                            
Creació del registre de transaccions (32768 blocs): fet
Escriptura de la informació dels súperblocs i de comptabilitat del sistema de fitxers:fet  

This filesystem will be automatically checked every 35 mounts or
180 days, whichever comes first.  Use tune2fs -c or -i to override.

Podeu comprovar l'etiqueta a l'opció Informació' si premeu el botó dret a sobre la partició amb gparted.

L'etiqueta serveix per a muntar el dispositiu al fitxer /etc/fstab i utilitzar la etiqueta en comptes de el nom del dispositiu. Per exemple, una entrada del fitxer /etc/fstab:

LABEL=etiqueta /mnt ext3 noatime 1 1

Consulteu com canviar l'etiqueta amb e2label i tune2fs.

Sortida de l'ordre mkfs

Vegem un exemple i comentem el resultat de l'ordre:

$ sudo mkfs.ext4 /dev/loop3
mke2fs 1.41.9 (22-Aug-2009)
Etiqueta del sistema de fitxers=

Per defecte no s'assigna cap etiqueta al sistema de fitxers. La següent línia mostra el tipus de sistema operatiu:

Tipus de sistema operatiu: Linux

El següent és informació sobre el sistema de fitxers, mida de bloc, mida de fragment, nombre d'inodes del sistema...

Mida del bloc=4096 (log=2)
Mida del fragment=4096 (log=2)
61056 nodes-i, 243951 blocs
12197 blocs (5.00%) reservats per al superusuari
Bloc de dades inicial=0
Màxim de blocs del sistema de fitxers=251658240
8 grups de blocs
32768 blocs per grup, 32768 fragments per grup
7632 nodes-i per grup

També us mostrarà on estan els superblocs:

Còpies de seguretat del superbloc desades en els blocs: 

32768, 98304, 163840, 229376

Escriurà la taula d'inodes:

Escriptura de les taules de nodes-i:fet                            

I si es tracta d'un sistema amb journaling, com ext3 o ext4 us mostrarà el següent missatge:

Creació del registre de transaccions (4096 blocs): fet
Escriptura de la informació dels súperblocs i de comptabilitat del sistema de fitxers:fet

Finalment fixeu-vos que us indica cada quan es tornarà a controlar la consistència del sistema amb fsck:

This filesystem will be automatically checked every 29 mounts or
180 days, whichever comes first.  Use tune2fs -c or -i to override.

I us indiquen que amb l'ordre tune2fs podeu modificar aquest valors.

Crear un sistema de fitxers sense reserva de fitxers per al superusuari

IMPORTANT: Una dada que molts usuaris desconeixen és el fet que el sistema operatiu Linux reserva per defecte un 5% de l'espai als processos que s'executen com a superusuari. Aquesta és una mesura de seguretat que permet que el sistema continuï funcionant en cas que el sistema és quedi sense espai

L'úni inconvenient és que es perd força espai (un 5% per defecte) i possiblement ni cal reservar tan espai per al superusuari ni en alguns casos necessitarem aquest espai (p.ex. discs de copia de seguretat)

Vegeu un exemple amb un disc de 1GB teòric:

$ df -h
S. fitxers            Mida En ús Lliure %Ús Muntat a
/dev/mapper/nas-root  106G  1,5G   99G   2% /
none                  2,0G  268K  2,0G   1% /dev
...
/dev/sde1             917G  200M  871G   1% /backup4

El desmuntem per tornar-lo a formatar:

$ sudo umount /dev/sde1

Ara el formatem indicant que no volem reservar cap espai (opció -m 0)

$ sudo mkfs.ext4 -m 0 /dev/sde1 
mke2fs 1.41.11 (14-Mar-2010)
Etiqueta del sistema de fitxers=
Tipus de sistema operatiu: Linux
Mida del bloc=4096 (log=2)
Mida del fragment=4096 (log=2)
Stride=0 blocks, Stripe width=0 blocks
61054976 nodes-i, 244188000 blocs
0 blocs (0.00%) reservats per al superusuari
Bloc de dades inicial=0
Màxim de blocs del sistema de fitxers=4294967296
7453 grups de blocs
32768 blocs per grup, 32768 fragments per grup
8192 nodes-i per grup
Còpies de seguretat del superbloc desades en els blocs:  
	32768, 98304, 163840, 229376, 294912, 819200, 884736, 1605632, 2654208, 
	4096000, 7962624, 11239424, 20480000, 23887872, 71663616, 78675968, 
	102400000, 214990848

Escriptura de les taules de nodes-i:fet                            
Creació del registre de transaccions (32768 blocs): fet
Escriptura de la informació dels súperblocs i de comptabilitat del sistema de fitxers:fet

This filesystem will be automatically checked every 37 mounts or
180 days, whichever comes first.  Use tune2fs -c or -i to override.

Ara el tornem a muntar:

$ sudo mount -a

I observeu que heu guanyat 46G!

sergi@nas:~$ df -h
S. fitxers            Mida En ús Lliure %Ús Muntat a
/dev/mapper/nas-root  106G  1,5G   99G   2% /
none                  2,0G  268K  2,0G   1% /dev
none                  2,0G     0  2,0G   0% /dev/shm
none                  2,0G   64K  2,0G   1% /var/run
none                  2,0G     0  2,0G   0% /var/lock
none                  2,0G     0  2,0G   0% /lib/init/rw
/dev/sda1             228M   33M  184M  15% /boot
/dev/sdb1             917G  200M  871G   1% /backup1
/dev/sdc1             917G  200M  871G   1% /backup2
/dev/sdd1             917G  200M  871G   1% /backup3
/dev/sde1             917G  200M  917G   1% /backup4

Sistema de fitxers d'intercanvi (swap)

Consulteu:

LPI_102.1_Dissenyar_la_distribució_del_disc_dur#Espai_d.27intercanvi_.28swap.29

Crear un sistema de fitxers d'intercanvi. mkswap

L'ordre mkswap permet crear un espai d'intercanvi Linux. Vegem un exemple

$ sudo mkswap /dev/sda4
S'està configurant l'espai d'intercanvi versió 1, mida = 4203110 kB
sense etiqueta, UUID=52b2e30a-1451-424f-a66e-beb514e844bf

El UUID és el que es posa al fitxer /etc/fstab:

$ cat /etc/fstab
# /etc/fstab: static file system information.
#
# <file system> <mount point>   <type>  <options>       <dump>  <pass>
proc            /proc           proc    defaults        0       0
# /dev/sda3
UUID=3c51b532-eeb6-4845-915f-cc3aea3c5c1d /               ext3    defaults,errors=remount-ro 0       1
# /dev/sda1
UUID=50B8-ADD2  /media/sda1     vfat    defaults,utf8,umask=007,gid=46 0       1
# /dev/sda5
UUID=085A-A394  /media/sda5     vfat    defaults,utf8,umask=007,gid=46 0       1
# /dev/sda4
UUID=52b2e30a-1451-424f-a66e-beb514e844bf       none            swap    sw              0       0
/dev/scd0       /media/cdrom0   udf,iso9660 user,noauto,exec 0       0
#/dev/sda6
UUID=05b7912f-81a1-4016-a70c-a292d4eaf09d /linux2         ext3    defaults,errors=remount-ro 0       1

També es pot crear la swap en un fitxer imatge:

$ sudo dd if=/dev/zero of=/swap.img bs=1024k count=512
$ sudo mkswap /swap.img

Es pot activar la swap amb l'ordre swapon:

$ sudo swapon /swap.img

NOTA: Si es munta per línia d'ordres el canvi no es permament, és a dir, no s'aplica al tornar a iniciar l'ordinador

I el fitxer es munta igual que una partició a fstab:

/swap.img               none                    swap sw    defaults        0 0
Restaurar particions swap
echo " * Restore Linux swap paritions:";
swaps=`fdisk -l | grep swap | cut -d' ' -f1 &>/dev/null`;
IFS='
';
for x in $swaps
 do
  echo  "       * Restoring partition: $x";
  mkswap $x &>/dev/null
 done

El problema és que la nova swap no té el mateix UUID! Caldria utilitzar l'opció

-U uuid

de mkswap. I per obtenir el UUID:

$ /sbin/blkid | grep swap | cut -d':' -f1

On:

$ dpkg -S /sbin/blkid
util-linux: /sbin/blkid

swapon

Consulteu swapon

Altres ordres e2fsprogs

badblocks(8)

Consulteu LPI_104.2._Mantenir_la_integritat_dels_sistemes_de_fitxers#Buscant_blocs_incorrectes_.28bad_blocs.29

logsave

NOTA: No entra a LPI

e2image

NOTA: No entra a LPI

$ sudo e2image /dev/loop0 copia.img

e2undo

NOTA: No entra a LPI

TODO

chattr

Amb aquesta ordre podeu modificar els atributs dels fitxers en un sistema de fitxers ext.

Els atributs disponibles són:

  • i: immutable. El fitxer no es pot modificar/eliminar de cap forma
  • a: append only
  • c: compressed
  • d: no dump
  • e: extent format (e). Aquesta acostuma a ser el paràmetre per defecte que tenen tots els fitxers.
  • j: data journalling
  • s: secure deletion
  • t: no tail-merging (t)
  • u: undeletable
  • A: no atime updates (A)
  • D: synchronous directory updates (D)
  • S: synchronous updates (S)
  • T: top of directory hierarchy (T).

NOTA: No entra a LPI

Modifica els atributs d'un sistema de fitxers.

Vegeu també:

lsattr

NOTA: No entra a LPI

Mostra els atributs d'un sistema de fitxers:

e2freefrag

NOTA: No entra a LPI

$ sudo e2freefrag /dev/loop0
Device: /dev/loop0
Blocksize: 4096 bytes
Total blocks: 256000
Free blocks: 247550 (96.7%)

Min. free extent: 8 KB 
Max. free extent: 129064 KB
Avg. free extent: 90016 KB 

HISTOGRAM OF FREE EXTENT SIZES:
Extent Size Range :  Free extents   Free Blocks  Percent
    8K...   16K-  :             1             2    0.00%
    4M...    8M-  :             1          2047    0.83%
   16M...   32M-  :             1          8191    3.31%
   64M...  128M-  :             8        237310   95.86%
$ lsattr LPI104.1_104.2_104.3_ParticionsSistemesFitxersIMuntatge.odp 
------------------- LPI104.1_104.2_104.3_ParticionsSistemesFitxersIMuntatge.odp

Ordres

fdisk

Consulteu fdisk.

mkfs

Consulteu mkfs.

mkswap

Consulteu mkswap

Vegeu també

Enllaços externs