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)

IMPORTANT: Les noves versions d'Ubuntu (TODO: A partir de quan?) utilitzant el sistema de particions GPT. Tingueu en compte a l'hora de recuperar dades d'aquests discos ja que utilitzant eines tradicionals com fdisk les particions no es detectaran i us pot semblar que teniu un disc buit sense particions!. Consulteu GPT i parted

Segons el manual:

$ man fdisk
fdisk - Partition table manipulator for Linux

fdisk és l'eina de línia l'ordres que tenim per manipular particions en sistemes Linux. També existeixen altres aplicacions gràfiques com gparted.

NOTA: fdisk només suporta sistemes de particions x86 (sembla que també suporta BSD/SUN i IRIX/SGI???)

El nom ve de fixed disk i el nom és el mateix que la utilitat de Windows i DOS FDISK. Totes dues eines són eines de línia d'ordres i que serveixen per al mateix però el funcionament és força diferent.

Instal·lació. Paquets

Debian/Ubuntu

El paquet que proporciona fdisk a distribucions de la familia Debian és util-linux:

$ whereis fdisk
fdisk: /sbin/fdisk /usr/share/man/man8/fdisk.8.gz
$ dpkg -S /sbin/fdisk
util-linux: /sbin/fdisk

Aquest paquet proporciona infinitat de d'aplicacions bàsiques com. Les podeu conèixer amb:

$ dpkg -L util-linux | grep bin
/bin
/bin/dmesg
/bin/more
/bin/tailf
/sbin
/sbin/mkfs
/sbin/mkswap
/sbin/fsck.minix
/sbin/mkfs.minix
/sbin/mkfs.bfs
/sbin/blockdev
/sbin/raw
/sbin/fsck.cramfs
/sbin/mkfs.cramfs
/sbin/fdisk
/sbin/sfdisk
/sbin/cfdisk
/sbin/blkid
/sbin/findfs
/sbin/ctrlaltdel
/sbin/pivot_root
/sbin/switch_root
/sbin/hwclock
/sbin/isosize
/sbin/getty
/sbin/fsck
/usr/bin
/usr/bin/getopt
/usr/bin/addpart
/usr/bin/ddate
/usr/bin/delpart
/usr/bin/mcookie
/usr/bin/namei
/usr/bin/partx
/usr/bin/whereis
/usr/bin/rename.ul
/usr/bin/setterm
/usr/bin/chkdupexe
/usr/bin/chrt
/usr/bin/ionice
/usr/bin/taskset
/usr/bin/flock
/usr/bin/ipcrm
/usr/bin/ipcs
/usr/bin/ipcmk
/usr/bin/setsid
/usr/bin/setarch
/usr/bin/lscpu
/usr/bin/rev
/usr/bin/line
/usr/bin/pg
/usr/sbin
/usr/sbin/fdformat
/usr/sbin/cytune
/usr/sbin/readprofile
/usr/sbin/ldattach
/usr/sbin/tunelp
/usr/sbin/rtcwake
/usr/sbin/rdev
/usr/bin/i386
/usr/bin/linux64
/usr/bin/linux32
/usr/sbin/ramsize
/usr/sbin/vidmode
/usr/sbin/rootflags

Open Suse

El paquet també és util-linux:

> whereis fdisk
fdisk: /sbin/fdisk /usr/share/man/man8/fdisk.8.gz
> rpm -qf /sbin/fdisk 
util-linux-2.14.1-10.2.1

El podeu instal·lar amb zypper:

$ sudo zypper install util-linux

Consultar els discs i les particions d'un sistema

Fdisk permet gestionar i consultar les particions d'un disk. Podem consultar tots els discs del sistema i particions amb

$ sudo fdisk -l

Disc /dev/sda: 203.9 GB, 203928109056 octets
255 heads, 63 sectors/track, 24792 cylinders
Units = cilindres of 16065 * 512 = 8225280 bytes
Disk identifier: 0x35e635e6 

Dispositiu Arrenc.   Inici         Final    Blocs    Id  Sistema
/dev/sda1   *           1        4178    33559753+   c  W95 FAT32 (LBA)
/dev/sda2            4179        6728    20482875   83  Linux
/dev/sda3            6729       24792   145099080    5  Estesa
/dev/sda5            6729       10552    30716248+  83  Linux
/dev/sda6           10553       24537   112334481   83  Linux
/dev/sda7           24538       24792     2048256   82  Intercanvi Linux / Solaris 

Disc /dev/sdb: 160.0 GB, 160041885696 octets
255 heads, 63 sectors/track, 19457 cylinders
Units = cilindres of 16065 * 512 = 8225280 bytes
Disk identifier: 0x460972ee  

Dispositiu Arrenc.   Inici         Final    Blocs    Id  Sistema
/dev/sdb1               1       19457   156288321   83  Linux 

La sortida té dos parts diferenciades (separades per un espai), una per cada disc dur (/dev/sda i /dev/sdb). Per a cada dispositiu, inicialment trobem un bloc de dades relatives al dispositiu. Per exemple:

Disc /dev/sdb: 160.0 GB, 160041885696 octets
255 heads, 63 sectors/track, 19457 cylinders
Units = cilindres of 16065 * 512 = 8225280 bytes
Disk identifier: 0x460972ee

Aquí podeu veure:

  • Nom del dispositiu: /dev/sdb
  • Mida: la mida del dispositiu en GB (Consulteu Prefijo binario).
  • Mida en bytes: 160041885696
  • Units: Us indica en quines mides es troben indicats els valors Inici i Final de les particions. Per defecte es mostren en cilindres, on cada cilindre té 16065 sectors i cada sector 512Bytes, per tant un cilindre equival a 8225280 bytes ()
  • Identificador de disc: Al MBR del disc, al costat de la taula de particions trobem 2 bytes amb l'identificador del disc

La següent secció són les particions del disc. Per exemple:

Dispositiu Arrenc.   Inici         Final    Blocs    Id  Sistema
/dev/sda1   *           1        4178    33559753+   c  W95 FAT32 (LBA)
/dev/sda2            4179        6728    20482875   83  Linux

Vegem que hi ha dos particions primàries (/dev/sda1 i /dev/sda2). La primera esta marcada com a partició d'arrancada amb el simbol * (només útil per a DOS). De cada partició ens indiquen el principi i el final en cilindres.

IMPORTANT: Si apareix un símbol més al final de la mida en blocs, ens indica que la partició no coincideix amb els límits dels cilindres. Al particionar indicant múltiples de mides com GB o MB, sovint s'arrodoneix i no s'ocupa tot l'espai que podria ocupar la partició

NOTA: la mida en blocs és la mida en blocs del sistema operatiu Linux, normalment 1024. També es pot obtenir amb sfdisk -s /dev/dispositiu

També us mostra l'identificador del tipus de partició i el sistema de fitxers utilitzat.

Es pot canviar les unitats a sectors amb l'opció -u:

$ sudo fdisk -lu /dev/sda

Disc /dev/sda: 120.0 GB, 120034123776 octets
255 heads, 63 sectors/track, 14593 cylinders, total 234441648 sectors
Units = sectors of 1 * 512 = 512 bytes
Disk identifier: 0xa0000000 

Dispositiu Arrenc.   Inici         Final    Blocs    Id  Sistema
/dev/sda1   *          63   224829674   112414806   83  Linux
/dev/sda2       224829675   234436544     4803435    5  Estesa
/dev/sda5       224829738   234436544     4803403+  82  Intercanvi Linux / Solaris

I aleshores sabeu que el disc té:

  • 255 capçals
  • 63 sectors per pista
  • 14593 cilindres
  • 234441648 sectors

En comptes de fdisk podeu utilitzar sfdisk per tal d'obtenir informació més completa.

$ sudo sfdisk -l /dev/sda

Disc /dev/sda: 14593 cilindres, 255 capçals, 63 sectors/pista
Unitats = cilindres de 8225280 octets, blocs de 1024 octets, contant des de 0

   Disp. Arr.  Inici     Final #cil.    #blocs    Id  Sistema
/dev/sda1   *      0+  13994   13995- 112414806   83  Linux
/dev/sda2      13995   14592     598    4803435    5  Estesa
/dev/sda3          0       -       0          0    0  Buida
/dev/sda4          0       -       0          0    0  Buida
/dev/sda5      13995+  14592     598-   4803403+  82  Intercanvi Linux / Solaris

Podem consultar una disc dur concret amb :

$ sudo fdisk -l /dev/sda

El problema de la mida d'un bloc

Hi ha força confusió amb el concepte bloc i la mida del bloc. El problema es degut a que existeixen 4 tipus de blocs diferents i les seves mides corresponents:

  • Hardware block size (sector size): és la mida d'un sector del disc dur. De fet la majoria de dispositius de maquinari utilitzant una mida de 512 bytes
  • Filesystem block size: També anomenada sovint mida de bloc o mida de cluster (segons la terminologia FAT). Esta relacionada amb el concepte de fragmentació de disc. A ext3 la mida de bloc sol ser de 4096. Es pot consultar amb dumpe2fs.
  • Kernel buffer cache block size: és la mida de bloc del nucli de Linux. És la mida del buffer que utilitza el nucli de Linux per fer caches dels sectors llegits d'un dispositiu. La mida de bloc del sistema de fitxers ha de ser sempre un múltiple d'aquest valor. Aquest valor és a més el que utilitzant la majoria d'aplicacions de l'espai d'usuari, com per exemple l'ordre du o també la mida en blocs de la sortida de fdisk -l. Normalment la mida d'aquest bloc és 2 sectors= 1024
  • Partition table block size: és la mida d'un cilindre. Només s'utilitza a la taula de particions i a la BIOS (recordeu que Linux no utilitza la BIOS)

NOTA: el sistema operatiu utilitza l'ordre/crida de sistema stat per obtenir el st_blksize per tal de calcular la mida d'un fitxer

Mida de bloc

Depén de l'entors. Les següents variables d'entorn determinen les mides de bloc

  • DF_BLOCK_SIZE i DU_BLOCK_SIZE': Mides per defecte de df i du.
  • BLOCK_SIZE: Especifica la mida per defecte per a ls, df i du
  • BLOCKSIZE: si cap de les anteriors ha estat especificada, aleshores indicar la mida de bloc
  • POSIXLY_CORRECT: si cap de les anteriors està indicada, la mida per defecte és 512

IMPORTANT: Lo normal és que cap de les variables d'entorn anteriors estiguin configurades, Aleshores la mida de bloc és 1024 bytes per a comandes com du i df i de 1 byte per a ls

Recursos

Mida dels fitxers. Ordres ls i du

Si no tenim clar les mides que ens mostren les diferents ordres del sistema a Linux es pot fer molt difícil saber la mida real que ocupa un fitxer.

Cal tenir en compte que

du: mostra els ús que fa de disc el fitxer. La mida del fitxer al disc pot ser més gran que la mida de la informació que conté (fragmentació)
ls: mostra la mida en quantitat de dades que podem llegir del fitxer. És dir, és la mida real de la informació que conté el fitxer

Cal tenir en compte que independentment dels continguts i la mida del que ocupa un fitxer, al existir una mida mínima de bloc del sistema de fitxers, els fitxer sovint ocupen més espai de disc del que realment necessiten. A més hi ha força altres factors a tenir en compte com la fragmentació (tan la interna com la externa), els forats (sparse-files), blocs indirectes del sistema de fitxers ext3, etc...

Així, per exemple, la imatge:

$ ls -l /home/sergi/Documents/imatges/CreativeCommons.png
-rw-r--r-- 1 sergi sergi 90648 2009-11-15 10:20 /home/sergi/Documents/imatges/CreativeCommons.png

segons ls ocupa 90648 blocs. En canvi segons du ocupa 96K:

$ du -h /home/sergi/Documents/imatges/CreativeCommons.png
96K	/home/sergi/Documents/imatges/CreativeCommons.png

L'ordre ls té l'opció -s (--size) que mostra la mida del fitxer segons l'espai que ocupa en disc:

$ ls -s  /home/sergi/Documents/imatges/CreativeCommons.png
96 /home/sergi/Documents/imatges/CreativeCommons.png

Podem mostra la mida en K (kylobytes=1024 bytes):

$ ls -sh  /home/sergi/Documents/imatges/CreativeCommons.png
96K /home/sergi/Documents/imatges/CreativeCommons.png

L'ordre du mostra la mida en blocs de disc. Si indiquem que la mida d'un bloc és 1 (1 byte) tenim:

$ du -h --block-size=1 /home/sergi/Documents/imatges/CreativeCommons.png
98304	/home/sergi/Documents/imatges/CreativeCommons.png

Que equival a:

96*1024=98304

És a dir la mida de bloc de du és 1024, que és la mida de bloc de la cache del nucli de Linux (equival a dos sectors de disc).

Cal tenir en compte que l'ordre du també pot mostra la mida real (també anomenada mida aparent):

 $ du --apparent-size  /home/sergi/Documents/imatges/CreativeCommons.png
89	/home/sergi/Documents/imatges/CreativeCommons.png

Però:

89*1024=91136 que és diferent de 90648!

NOTA: la mida aparent sol ser més petita, però també pot ser més gran i no hi ha una formula per calcular la diferència ja que depen de factors com la defragmentació, el sistema de fitxers, etc...

De fet l'opció -b, és equivalent a:

--apparent-size --block-size=1

és a dir mostrar la "mida real" i en bytes:

$ du -b  /home/sergi/Documents/imatges/CreativeCommons.png
90648	/home/sergi/Documents/imatges/CreativeCommons.png

que com podeu veure és la mida que mostrava ls.

Per calcular el perquè de la diferència entra la mida que ocupa el fitxer a disc i la seva mida real, necessitem conèixer quina és la mida de bloc del sistema de fitxers. Com que el fitxer està en un sistema de fitxers ext3, podem consultar la mida de bloc amb:

$ sudo dumpe2fs /dev/sda1 | grep -i "block size"
dumpe2fs 1.41.9 (22-Aug-2009)
Block size:               4096

És a dir la mida de bloc del sistema de fitxers ext3 és 4K (és la mida habitual).

90648 bytes / 4096 bytes/bloc= 22,13....

És a dir no tenim prou amb 22 blocs, en necessitem 23.

23*4096= 94208

Recursos

sparse-files

$ dd if=/dev/zero of=sparse-file bs=1 count=0 seek=5M
0+0 registres llegits
0+0 registres escrits
0 octets (0 B) copiats, 4,2953e-05 s, 0,0 kB/s
$ ls -l sparse-file 
-rw-r--r-- 1 sergi sergi 5242880 2009-11-21 18:51 sparse-file
$ du -h sparse-file 
0	sparse-file

Recursos:

L'ordre stat:

$  stat /home/sergi/Documents/imatges/CreativeCommons.png 
  File: «/home/sergi/Documents/imatges/CreativeCommons.png»
  Size: 90648     	Blocks: 192        IO Block: 4096   fitxer ordinari
Device: 801h/2049d	Inode: 4334933     Links: 1
Access: (0644/-rw-r--r--)  Uid: ( 1000/   sergi)   Gid: ( 1000/   sergi)
Access: 2009-11-18 15:43:07.000000000 +0100
Modify: 2009-11-15 10:20:36.000000000 +0100
Change: 2009-11-15 10:20:36.000000000 +0100

En aquest cas block és un sector de disc (512 bytes--> 192*512=98304).

NOTA: A més cal tenir en compte que hi ha fitxers molts especials com els sparse-files

Vegeu també:

Geometria d'un disc

L'ordre fdisk us permet conèixer la geometria del disc. Vegem un exemple en una màquina de 2 discs:

$ sudo fdisk -l 

Disc /dev/sda: 203.9 GB, 203928109056 octets
255 heads, 63 sectors/track, 24792 cylinders
Units = cilindres of 16065 * 512 = 8225280 bytes
Disk identifier: 0x0001b3e6 

Dispositiu Arrenc.   Inici         Final    Blocs    Id  Sistema
/dev/sda1   *           1       24419   196145586   83  Linux
/dev/sda2           24420       24792     2996122+   5  Estesa
/dev/sda5           24420       24792     2996091   82  Intercanvi Linux / Solaris  

Disc /dev/sdb: 250.1 GB, 250059350016 octets
255 heads, 63 sectors/track, 30401 cylinders
Units = cilindres of 16065 * 512 = 8225280 bytes
Disk identifier: 0x2fe02fdf 

Dispositiu Arrenc.   Inici         Final    Blocs    Id  Sistema
/dev/sdb1   *           1        4080    32772568+   c  W95 FAT32 (LBA)
/dev/sdb2            4081       25810   174546225    f  W95 Estesa (LBA)
/dev/sdb3           25811       29890    32772600   83  Linux
/dev/sdb4           29891       30401     4104607+  82  Intercanvi Linux / Solaris
/dev/sdb5            4081       25810   174546193+  83  Linux

Com podeu veure la majoria de discs durs tenen una quantitat fixa de 255 capçals i el que diferencia dos discs durs és la seva mida en cilindres (o sectors). De fet si observeu fdisk no us dona la mida en bytes de cada partició sinó que us la dona en nombre de cilindres:

/dev/sdb1   *           1        4080    32772568+   c  W95 FAT32 (LBA)
/dev/sdb2            4081       25810   174546225    f  W95 Estesa (LBA)
/dev/sdb3           25811       29890    32772600   83  Linux
/dev/sdb4           29891       30401     4104607+  82  Intercanvi Linux / Solaris
/dev/sdb5           4081       25810   174546193+  83  Linux

Cada partició comença i acaba en un cilindre. Per calcular la mida d'una partició heu de saber la mida d'un cilindre. De fet us la proporciona fdisk:

Units = cilindres of 16065 * 512 = 8225280 bytes. És a dir cada cilindre són uns 8.22528MB o uns 7.84423MiB 

Cal tenir en compte que 16065 és el número de sectors per cilindre (número de sectors per pista x nombre de capçals).

Si voleu fdisk us pot mostrar les mides en sectors en compte de cilindres, utilitzant l'opció -u

$ sudo fdisk -lu 
...
Disc /dev/sdb: 250.1 GB, 250059350016 octets
255 heads, 63 sectors/track, 30401 cylinders, total 488397168 sectors
Units = sectors of 1 * 512 = 512 bytes
Disk identifier: 0x2fe02fdf  

Dispositiu Arrenc.   Inici         Final    Blocs    Id  Sistema
/dev/sdb1   *          63    65545199    32772568+   c  W95 FAT32 (LBA)
/dev/sdb2        65545200   414637649   174546225    f  W95 Estesa (LBA)
/dev/sdb3       414637650   480182849    32772600   83  Linux
/dev/sdb4       480182850   488392064     4104607+  82  Intercanvi Linux / Solaris
/dev/sdb5        65545263   414637649   174546193+  83  Linux

Cal que observeu que la primera pista (sectors de 0 a 63) està reservada per a dades del disc, concretament conté el MBR al primer sector (512 bytes) i la resta de bytes de la primera pista corresponent al que s'anomena la zona de compatibilitat de DOS.

La mida habitual d'un sector és 512bytes. Podeu calcular la mida del vostre disc dur multiplicant la mida d'un sector pel nombre de sectors:

488397168*512= 250059350016 --> 250059350016 / 1000 (KB) /1000 (MB) / 1000 (GB) = 250.1 GB

Cal tenir en compte però que normalment treballem amb múltiples de 1024 i per aquesta raó la mida total real que detectaran eines com df serà inferior. A partir del 2000, els fabricats de disc van començar a comptar les G com a 1000x1000x1000 en comptes de 1024x1024x1024. Això fa que hi hagi els següents factors aprox. de conversió entre la mida dels disc que et compres i el que tens realment [1]:

El kylobytes reals (Sistema Internacional o SI) són uns 98% dels kibibyte
Els megabytes reals (Sistema Internacional o SI) són uns 96% dels mebibyte
Els gigabytes reals (Sistema Internacional o SI) són uns 93% dels mebibyte

Per aquesta raó un disc de 203.9GB acaba convertint-se en un disc d'uns 189G (un 93%). Tal com podeu veure a la següent captura de pantalla de gparted:

GpartedPartitionSI.png

NOTA: df té la opció -H o --si per mostrar les mides en SI

Establir la geometria d'un disc

Consulteu el següent apartat.

Fer proves amb fdisk sense modificar cap disc

Obtenint una còpia d'una partició amb dd

$ dd if=/dev/sdb2 of=~/partition.img bs=4096 conv=notrunc,noerror

NOTA: Val la pena que guardeu la imatge a un disc o partició que no sigui la partició del qual esteu fent una còpia. A més heu de tenir espai per guardar la partició. Atenció: l'espai necessari no és l'espai de dades ocupades de la partició sinó que és la mida de la partició sencera

Creant una imatge de disc des de zero

Pels impacients les ordres són:

$ mkdir -p ~/ProvesDiscs/images/
$ dd if=/dev/zero of=~/ProvesDiscs/images/1GB.img bs=1024k count=1000
$ sudo losetup /dev/loop0 ~/ProvesDiscs/images/1GB.img
$ sudo fdisk /dev/loop0
                  // Creeu dos particions la primera de 60 cilindres i la segona de la resta d'espai. Cal calcular els offsets
$ sudo losetup -o 32256 /dev/loop1 /dev/loop0
$ sudo losetup -o 49351680 /dev/loop2 /dev/loop0
$ sudo mkfs.ext3 /dev/loop1
$ sudo mkfs.ext3 /dev/loop2
$ cd 
$ mkdir loop0p1
$ mkdir loop0p2
$ sudo mount /dev/loop1 loop0p1
$ sudo mount /dev/loop2 loop0p2

Explicació detallada

Podeu utilitzar dd per tal de crear un fitxer que sigui una imatge d'un disc dur buit:

$ mkdir -p ~/ProvesDiscs/images/

I ara creeu un disc, de per exemple 1GB:

$ dd if=/dev/zero of=~/ProvesDiscs/images/1GB.img bs=1024k count=1000
1000+0 registres llegits
1000+0 registres escrits
1048576000 octets (1,0 GB) copiats, 37,3634 s, 28,1 MB/s

Com podeu veure, el fitxer està ple de zeros però ocupa 1GB:

$ ls -lah ~/ProvesDiscs/images/1GB.img
-rw-r--r-- 1 sergi sergi 1000M 2009-11-08 20:44 /home/sergi/ProvesDiscs/images/1GB.img
$ od ~/ProvesDiscs/images/1GB.img
0000000 000000 000000 000000 000000 000000 000000 000000 000000
*

Premeu Ctrl+c.

Mireu que passa si intentem particionar amb fdisk el fitxer imatge:

$ fdisk ~/ProvesDiscs/images/1GB.img
El dispositiu no conté ni taula de particions DOS vàlida, ni cap etiqueta de disc Sun, SGI o OSF
Building a new DOS disklabel with disk identifier 0xf0ec759f.
Changes will remain in memory only, until you decide to write them.
After that, of course, the previous content won't be recoverable. 

Heu de definir els cilindres.
Podeu fer això des del menú de funcions addicionals.
Avís: el senyalador 0x0000 invàlid de la taula de particions 4 es corregirà amb w(escriu)  

Ordre (m per a obtenir ajuda): q

NOTA: Observeu que no us cal permisos de sudo per particionar amb fdisk un fitxer imatges que és vostre!

Sortiu amb q.

Com que no es tracta d'un dispositiu de blocs, tenim algunes inconsistències al treballar amb fdisk. Podem utilitzar un dispositiu de loop per tal d'accedir al fitxer com si es tractes d'un dispositiu de blocs. Primer consulteu quin és el primer dispositiu de loop lliure:

$ sudo losetup -f
/dev/loop1

NOTA: Normalment hi ha 8 dispositius de loop del /dev/loop0 a /dev/loop7. Cal consultar quin és el primer que està lliure per si de cas ja teniu dispositius en ús

En el nostre cas el primer dispositiu lliure és /dev/loop1. Associem el fitxer al dispositiu

$ sudo losetup /dev/loop1 ~/ProvesDiscs/images/1GB.img

Ara ja podem utilitzar fdisk:

$ sudo fdisk /dev/loop1

NOTA: vegeu que ara no es mostra l'error de que cal definir els cilindres!

Creeu un parell de particions:

Ordre (m per a obtenir ajuda): n
Acció de l'ordre
e   estesa
   p   partició primària (1-4)
p
Nombre de partició (1-4): 1
Primera cilindre (1-127, valor per defecte 1): 
S'està utilitzant el valor per defecte 1
Last cilindre, +cilindres or +size{K,M,G} (1-12, valor per defecte 12): 60

Ordre (m per a obtenir ajuda): n
Acció de l'ordre
e   estesa
   p   partició primària (1-4)
p
Nombre de partició (1-4): 2
Primera cilindre (61-127, valor per defecte 61): 61
Last cilindre, +cilindres or +size{K,M,G} (61-127, valor per defecte 127): 127

Ordre (m per a obtenir ajuda): p  

Disc /dev/loop1: 104 MB, 104857600 octets
255 heads, 63 sectors/track, 12 cylinders
Units = cilindres of 16065 * 512 = 8225280 bytes
Disk identifier: 0x29836676 

  Dispositiu Arrenc.   Inici         Final    Blocs    Id  Sistema
/dev/loop1p1               1           60       481918+  83  Linux
/dev/loop1p2              61          127       538177+   83  Linux 

Ordre (m per a obtenir ajuda): w
S'ha modificat la taula de particions.  

S'està cridant ioctl() per rellegir la taula de particions.

WARNING: Re-reading the partition table failed with error 22: Invalid argument.
The kernel still uses the old table. The new table will be used at
the next reboot or after you run partprobe(8) or kpartx(8)
S'estan sincronitzant els discs. 

El problema però, és que els dispositius loop no suporten particions. No trobarem els dispositius:

/dev/loop1p1
/dev/loop1p2

Al nostre sistema de fitxers. Podem tornar a utilitzar dispositius loopback per accedir a les particions amb l'opció offset. Primer necessitem saber en quins sectors comencen i acaben les particions

$ sudo fdisk -ul /dev/loop1

Disc /dev/loop1: 104 MB, 104857600 octets
255 heads, 63 sectors/track, 12 cylinders, total 204800 sectors
Units = sectors of 1 * 512 = 512 bytes
Disk identifier: 0x8f82f447

 Dispositiu Arrenc.   Inici         Final    Blocs    Id  Sistema
/dev/loop1p1              63      963899      481918+  83  Linux
/dev/loop1p2          963900     2040254      538177+  83  Linux

Els números que ens interessen són els sectors on s'inicien les particions:

  • 63: inici de la partició /dev/loop1p1. La mida està en sectors
  • 963900: inici de la partició /dev/loop1p2. La mida està en sectors.

El offset es calcula en bytes, per tant cal multiplicar el número de bytes oper sector pel nombre de sectors. Els offsets de les particions són:

  • Partició /dev/loop1p1: 63x512=32256
  • Partició /dev/loop1p2: 963900x512=493516800

Podem accedir a les particions tornant a utilitzar losetup amb l'opció offset:

$ sudo losetup -o 32256 /dev/loop2 /dev/loop1
$ sudo losetup -o 49351680 /dev/loop3 /dev/loop1

Abans de muntar les particions cal crear un sistema de fitxers:

$ sudo mkfs.ext3 /dev/loop2
mke2fs 1.41.9 (22-Aug-2009)
Etiqueta del sistema de fitxers=
Tipus de sistema operatiu: Linux
Mida del bloc=1024 (log=0)
Mida del fragment=1024 (log=0)
25688 nodes-i, 102368 blocs
5118 blocs (5.00%) reservats per al superusuari
Bloc de dades inicial=1
Màxim de blocs del sistema de fitxers=67371008
13 grups de blocs
8192 blocs per grup, 8192 fragments per grup
1976 nodes-i per grup
Còpies de seguretat del superbloc desades en els blocs:  
	8193, 24577, 40961, 57345, 73729

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

This filesystem will be automatically checked every 27 mounts or
180 days, whichever comes first.  Use tune2fs -c or -i to override.
$ sudo mkfs.ext3 /dev/loop3
mke2fs 1.41.9 (22-Aug-2009)
Etiqueta del sistema de fitxers=
Tipus de sistema operatiu: Linux
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
Còpies de seguretat del superbloc desades en els blocs: 
	32768, 98304, 163840, 229376

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

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

Ara ja hi podeu accedir amb:

$ cd 
$ mkdir loop1p1
$ mkdir loop1p2
$ sudo mount /dev/loop2 loop1p1
$ sudo mount /dev/loo32 loop1p2

Definir la geometria d'un disc

Fdisk intenta detectar la geometria del disc de forma automàtica. En alguns casos no ho aconseguirà i ho haureu d'indicar a mà. També pot ser útils quan utilitzem fdisk en un fitxer imatge o en qualsevol dispositiu que no sigui un dispositiu de blocs. Per exemple:

$ fdisk ~/ProvesDiscs/images/1GB.img
El dispositiu no conté ni taula de particions DOS vàlida, ni cap etiqueta de disc Sun, SGI o OSF
Building a new DOS disklabel with disk identifier 0xf0ec759f.
Changes will remain in memory only, until you decide to write them.
After that, of course, the previous content won't be recoverable. 

Heu de definir els cilindres.
Podeu fer això des del menú de funcions addicionals.
Avís: el senyalador 0x0000 invàlid de la taula de particions 4 es corregirà amb w(escriu)  

Ordre (m per a obtenir ajuda): x

Com podeu veure, al tractar-se d'una imatge de disc plena de zeros no hi ha taula de particions. Abans de poder crear-la cal definir la geometria del disc. El missatge indica que cal definir els cilindres però realment hem de definir els sectors, els cilindres, els sectors i els headers (capçals). Això ho podem fer des del mode expert (x):

Canviem el nombre de sectors per pista amb s (sectors)

Ordre d'expert (m per a obtenir ajuda): s
Nombre de sectors (1-63, valor per defecte 63): 63
Avís: s'està establint el desplaçament del sector per a la compatibilitat amb DOS

Canviem el nombre de capçals amb l'opció h (headers)

Ordre d'expert (m per a obtenir ajuda): h
Nombre de capçals (1-256, valor per defecte 255): 255

I finalment indiquem el nombre de cilindres amb c (cylinders). El disc que em creat amb dd era de 1GB. En un apartat anterior ja hem calculat que amb 63 sectors per pista i 255 capçals, amb la mida estàndard de 512bytes per sector tenim que cada cilindre ocupa:

8225280 bytes

Per tant 1GB/8225280 és un màxim de 1024 cilindres. Mireu que passa si agafem més de 1024 cilindres:

Ordre d'expert (m per a obtenir ajuda): c
Nombre de cilindres (1-1048576): 1048576
El nombre de cilindres per a aquest disc està establert en 1048576.
Això no és incorrecte, però és més gran que 1024 i podríeu
tenir problemes amb certes configuracions de:
1) Programari que s'executa durant d'arrencada (p.ex., versions
   antigues del LILO)
2) En arrencar i particionar des d'un altre SO
   (p.ex., DOS FDISK, OS/2 FDISK)

Us dona una avís sobre els possibles problemes de tenir un disc de més de 1024 cilindres. En sistemes moderns normalment això ja no és un problema. Sortim del mode expert amb r (return)

Ordre d'expert (m per a obtenir ajuda): r 

Ara ja podem crear una nova partició

Ordre (m per a obtenir ajuda): n
Acció de l'ordre
e   estesa
  p   partició primària (1-4)
p
Nombre de partició (1-4): 1
Primera cilindre (1-1048576,, valor per defecte 1): 
S'està utilitzant el valor per defecte 1
Last cilindre, +cilindres or +size{K,M,G} (1-267349, valor per defecte 267349): 10000

Ordre (m per a obtenir ajuda): p
 
Disc /home/sergi/ProvesDiscs/images/1GB.img: 0 MB, 0 octets
255 heads, 63 sectors/track, 1048576 cylinders
Units = cilindres of 16065 * 512 = 8225280 bytes
Disk identifier: 0x52253795

                             Dispositiu Arrenc.   Inici         Final    Blocs    Id  Sistema
/home/sergi/ProvesDiscs/images/1GB.img1               1      100000   803249968+  83  Linux

Ordre (m per a obtenir ajuda): w
S'ha modificat la taula de particions.

S'estan sincronitzant els discs.

Ara si executeu:

$ fdisk -l ~/ProvesDiscs/images/1GB.img 
Heu de definir els cilindres.
Podeu fer això des del menú de funcions addicionals.

Disc /home/sergi/ProvesDiscs/images/1GB.img: 0 MB, 0 octets
255 heads, 63 sectors/track, 0 cylinders
Units = cilindres of 16065 * 512 = 8225280 bytes
Disk identifier: 0x52253795  

                             Dispositiu Arrenc.   Inici         Final    Blocs    Id  Sistema
/home/sergi/ProvesDiscs/images/1GB.img1               1      100000   803249968+  83  Linux
La partició 1 té diferents finals físics/lògics:
     físic=(1023, 254, 63) lògic=(99999, 254, 63)

Fixeu-vos com fdisk detecta que em establert valors per a la partició que estan fora del possibles valors màxims a nivell físic.

Si tornem a repetir les operacions anteriors, però aquest com establint 1024 cilindres (mida màxim de 1GB). no us donarà pas aquest problema.

NOTA: Haureu de definir el nombre de cilindres cada cop que torneu a executar fdisk

o executeu fdisk amb:
$ fdisk -C 1024 /home/sergi/ProvesDiscs/images/1GB.img

Muntar una partició d'una imatge de disc

Teniu 3 opcions:

  • Utilitzar l'ordre mount conjuntament amb l'opció offset (prèviament la imatge ha d'haver estat particionada com a dispositiu de bloc. Vegeu losetup)
  • Utilitzar losetup amb l'opció offset
  • Utilitzar kpartx
Opció offset

Permet accedir a un dispositiu a partir d'una posició concreta anomenada offset. La posició d'offset s'especifica amb bytes i s'ha de calcular a partir del sector d'inici de la partició a la que volem accedir. Normalment els sectors tenen com a mida 512bytes.

La primera partició sempre és troba després de la primera pista. Normalment hi ha 64 sectors per pista i per tant els primers 64 sectors (del 0 al 63) estan ocupats pel MBR i secció de compatibilitat de DOS.

La primera partició sempre es troba al sector 63, és a dir el seu offset en bytes és: nº sectors x nº de bytes per sector --> 63x512= 32256

La resta de particions es pot calcular l'offset mitjançant fdisk:

$ fdisk  -u -l /home/sergi/ProvesDiscs/images/500MB.img 

Disc /home/sergi/ProvesDiscs/images/500MB.img: 0 MB, 0 octets
255 heads, 63 sectors/track, 0 cylinders, total 0 sectors
Units = sectors of 1 * 512 = 512 bytes
Disk identifier: 0x4169c257 
 
                               Dispositiu Arrenc.   Inici         Final    Blocs    Id  Sistema
/home/sergi/ProvesDiscs/images/500MB.img1              63      642599      321268+  83  Linux
/home/sergi/ProvesDiscs/images/500MB.img2          642600     1012094      184747+  83  Linux

La segona partició està accessible amb l'offset 642600512:

642600x512= 642600512
Muntar la partició amb mount

Consulteu Muntar la partició d'una imatge de disc amb mount

Muntar la partició amb losetup

Consulteu:

Fdisk#Creant_una_imatge_de_disc_des_de_zero

I

losetup
Muntar la partició amb kpartx

Consulteu kpartx

Ordre file i imatges

L'ordre file també us mostrarà informació sobre les imatges:

$ file /home/sergi/ProvesDiscs/images/1GB.img 
/home/sergi/ProvesDiscs/images/1GB.img: x86 boot sector; partition 1: ID=0x83, starthead 1, startsector 63, 9960237 sectors; partition 2: ID=0x83, starthead 
0, startsector 9960300, 6490260 sectors, code offset 0x0

Opcions del menú de fdisk

Menú normal

Ordre (m per a obtenir ajuda): m
Acció de l'ordre
   a   estableix un senyalador d'arrencada
   b   edita l'etiqueta de disc bsd
   c   estableix el senyalador de compatibilitat amb DOS
   d   suprimeix una partició
   l   llista els tipus de particions conegudes
   m   imprimeix aquest menú
   n   afegeix una nova partició
   o   crea una nova taula de particions DOS buida
   p   imprimeix la taula de particions
   q   surt sense desar els canvis
   s   crea una etiqueta de disc Sun nova
   t   canvia l'identificador del sistema d'una partició
   u   canvia les unitats de visualització/entrada
   v   verifica la taula de particions
   w   escriu la taula al disc i surt
   x   funcions addicionals (només experts)

Menú experts:

Ordre (m per a obtenir ajuda): x

Ordre d'expert (m per a obtenir ajuda): m
Acció de l'ordre
   b   desplaça les dades d'una partició a l'inici
   c   canvia el nombre de cilindres
   d   imprimeix les dades crues a la taula de particions
   e   llista les particions esteses
   f   arregla l'ordre de les particions
   g   crea una taula de particions IRIX (SGI)
   h   canvia el nombre de capçals
   i   change the disk identifier
   m   imprimeix aquest menú
   p   imprimeix la taula de particions
   q   surt sense desar els canvis
   r   torna al menú principal
   s   canvia el nombre de sectors per pista
   v   verifica la taula de particions
   w   escriu la taula al disc i surt

Recursos:

Particions que reconeix fdisk

Ordre (m per a obtenir ajuda): l 

0  Buida           24  NEC DOS         81  Minix / antic L bf  Solaris        
1  FAT12           39  Plan 9          82  Intercanvi Linu c1  DRDOS/sec (FAT-
2  XENIX arrel     3c  Recuperació Pa 83  Linux           c4  DRDOS/sec (FAT-
3  XENIX usr       40  Venix 80286     84  Unitat C: ocult c6  DRDOS/sec (FAT-
4  FAT16 <32M      41  PPC arrencada P 85  Linux estesa    c7  Syrinx         
5  Estesa          42  SFS             86  Joc de volums N da  Dades sense S.F
6  FAT16           4d  QNX4.x          87  Joc de volums N db  CP/M / CTOS / .
7  HPFS/NTFS       4e  QNX4.x segona p 88  Linux text      de  Utilitat Dell  
8  AIX             4f  QNX4.x tercera  8e  Linux LVM       df  BootIt         
9  AIX arrencable  50  OnTrack DM      93  Amoeba          e1  Accés DOS     
a  Gestor d'arrenc 51  OnTrack DM6 Aux 94  Amoeba BBT      e3  DOS R/O        
b  W95 FAT32       52  CP/M            9f  BSD/OS          e4  SpeedStor      
c  W95 FAT32 (LBA) 53  OnTrack DM6 Aux a0  Hivernació d'I eb  Sis. Fitx. BeOS
e  W95 FAT16 (LBA) 54  OnTrackDM6      a5  FreeBSD         ee  GPT            
f  W95 Estesa (LBA 55  EZ-Drive        a6  OpenBSD         ef  EFI (FAT-12/16/
10  OPUS            56  Golden Bow      a7  NeXTSTEP        f0  Arrencada Linux
11  FAT12 oculta    5c  Priam Edisk     a8  UFS de Darwin   f1  SpeedStor      
12  Diagnòstics Co 61  SpeedStor       a9  NetBSD          f4  SpeedStor      
14  FAT16 <32M ocul 63  GNU HURD o SysV ab  Arrencada de Da f2  Secundària DOS
16  FAT16 oculta    64  Novell Netware  af  HFS / HFS+      fb  VMware VMFS    
17  HPFS/NTFS ocult 65  Novell Netware  b7  S.f. BSDI       fc  VMware VMKCORE 
18  SmartSleep d'AS 70  DiskSecure Mult b8  Intercanvi de B fd  Autodetecció R
1b  W95 FAT32 ocult 75  PC/IX           bb  Boot Wizard ocu fe  LANstep        
1c  W95 FAT32 (LBA) 80  Minix antic     be  Arrencada Solar ff  BBT            
1e  W95 FAT16 (LBA)

Modificar la taula de particions

NOTA: Les comandes següents poden fer malbé el vostre sistema de fitxers. Feu proves en un entorn de proves.

Podem utilitzar fdisk per generar les particions del disc amb:

$ sudo fdisk /dev/sda

Opcions de fdisk:

  • d: delete
  • t: type
  • n: new
  • a: active
  • l: list. És equivalent a $ fdisk -l /dev/sdax

Consulteu un exemple a:

Exemples

Establir el senyalador d'arrancada

En anglès boot flag. S'estableix amb:

Ordre (m per a obtenir ajuda): a
Nombre de partició (1-4): 1 

Ordre (m per a obtenir ajuda): p  

Disc /home/sergi/ProvesDiscs/images/1GB.img: 0 MB, 0 octets
255 heads, 63 sectors/track, 1024 cylinders
Units = cilindres of 16065 * 512 = 8225280 bytes
Disk identifier: 0x406d3e03

                             Dispositiu Arrenc.   Inici         Final    Blocs    Id  Sistema
/home/sergi/ProvesDiscs/images/1GB.img1   *           1        1100     8835718+  83  Linux
La partició 1 té diferents finals físics/lògics:
     físic=(1023, 254, 63) lògic=(1099, 254, 63)

NOTA: Els sistemes Linux no utilitzen per a res la marca d'arrancada. De totes maneres se sol marcar la partició que té l'arrel com d'arrancada. La partició Windows on estigui el sistema necessita que és marqui com d'arrancada per tal que funcioni correctament el gestor d'arrancada de Windows NTLDR. Així doncs ens sistemes duals, es marcarà com a partició d'arrancada només la partició del sistema Windows

Un exemple de sistema amb arrancada dual Linux/Windows:

Dispositiu Arrenc.   Inici         Final    Blocs    Id  Sistema
/dev/sdb1   *           1        4080    32772568+   c  W95 FAT32 (LBA)
/dev/sdb2            4081       25810   174546225    f  W95 Estesa (LBA)
/dev/sdb3           25811       29890    32772600   83  Linux
/dev/sdb4           29891       30401     4104607+  82  Intercanvi Linux / Solaris
/dev/sdb5            4081       25810   174546193+  83  Linux

Identificador del sistema d'una partició

Ordre (m per a obtenir ajuda): t
S'ha seleccionat la partició 1
Codi hex. (escriviu L per veure la llista de codis): L

 0  Buida           24  NEC DOS         81  Minix / antic L bf  Solaris        
 1  FAT12           39  Plan 9          82  Intercanvi Linu c1  DRDOS/sec (FAT-
 2  XENIX arrel     3c  Recuperació Pa 83  Linux           c4  DRDOS/sec (FAT-
 3  XENIX usr       40  Venix 80286     84  Unitat C: ocult c6  DRDOS/sec (FAT-
 4  FAT16 <32M      41  PPC arrencada P 85  Linux estesa    c7  Syrinx         
 5  Estesa          42  SFS             86  Joc de volums N da  Dades sense S.F
 6  FAT16           4d  QNX4.x          87  Joc de volums N db  CP/M / CTOS / .
 7  HPFS/NTFS       4e  QNX4.x segona p 88  Linux text      de  Utilitat Dell  
 8  AIX             4f  QNX4.x tercera  8e  Linux LVM       df  BootIt         
 9  AIX arrencable  50  OnTrack DM      93  Amoeba          e1  Accés DOS     
 a  Gestor d'arrenc 51  OnTrack DM6 Aux 94  Amoeba BBT      e3  DOS R/O        
 b  W95 FAT32       52  CP/M            9f  BSD/OS          e4  SpeedStor      
 c  W95 FAT32 (LBA) 53  OnTrack DM6 Aux a0  Hivernació d'I eb  Sis. Fitx. BeOS
 e  W95 FAT16 (LBA) 54  OnTrackDM6      a5  FreeBSD         ee  GPT            
 f  W95 Estesa (LBA 55  EZ-Drive        a6  OpenBSD         ef  EFI (FAT-12/16/
10  OPUS            56  Golden Bow      a7  NeXTSTEP        f0  Arrencada Linux
11  FAT12 oculta    5c  Priam Edisk     a8  UFS de Darwin   f1  SpeedStor      
12  Diagnòstics Co 61  SpeedStor       a9  NetBSD          f4  SpeedStor      
14  FAT16 <32M ocul 63  GNU HURD o SysV ab  Arrencada de Da f2  Secundària DOS
16  FAT16 oculta    64  Novell Netware  af  HFS / HFS+      fb  VMware VMFS    
17  HPFS/NTFS ocult 65  Novell Netware  b7  S.f. BSDI       fc  VMware VMKCORE 
18  SmartSleep d'AS 70  DiskSecure Mult b8  Intercanvi de B fd  Autodetecció R
1b  W95 FAT32 ocult 75  PC/IX           bb  Boot Wizard ocu fe  LANstep        
1c  W95 FAT32 (LBA) 80  Minix antic     be  Arrencada Solar ff  BBT            
1e  W95 FAT16 (LBA)
Codi hex. (escriviu L per veure la llista de codis): 8
S'ha canviat el tipus del sistema de la partició 1 per 8 (AIX)

Ordre (m per a obtenir ajuda): p 

Disc /home/sergi/ProvesDiscs/images/1GB.img: 0 MB, 0 octets
255 heads, 63 sectors/track, 1024 cylinders
Units = cilindres of 16065 * 512 = 8225280 bytes
Disk identifier: 0x406d3e03

                             Dispositiu Arrenc.   Inici         Final    Blocs    Id  Sistema
/home/sergi/ProvesDiscs/images/1GB.img1               1        1024     8225248+   8  A

Com podeu veure, les últimes columnes de fdisk, mostren el codi del tipus partició x86. Aquest codi és un codi hexadecimal de 2 digits.

Els codis més habituals:

  • Particions amb sistemes de fitxers Linux (ext2 o ext3, xfs. resiser...): Codi Linux (83)
  • Intercanvi (swap): Codi 82_ intercanvi Linux
  • Particions esteses: Codi 5
  • FAT ': c o f depenent si és una partició primària o estesa
  • NTFS: codi 7

Identificador de disc

També conegut com a DOS disklabel. Compte que canviar aquest identificador pot fer perdre totes les dades d'un disc

Es pot modificar amb:

Ordre (m per a obtenir ajuda): x

Ordre d'expert (m per a obtenir ajuda): i
New disk identifier (current 0x406d3e03): 0x416d3e02
Disk identifier: 0x416d3e02


Mostrar la taula de particions en hexadecimal

Podeu mostrar la taula de particions al mode expert (x)

Ordre d'expert (m per a obtenir ajuda): d
Dispositiu: /home/sergi/ProvesDiscs/images/1GB.img
0x000: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
0x010: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
0x020: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
0x030: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
0x040: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
0x050: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
0x060: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
0x070: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
0x080: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
0x090: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
0x0A0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
0x0B0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
0x0C0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
0x0D0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
0x0E0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
0x0F0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
0x100: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
0x110: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
0x120: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
0x130: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
0x140: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
0x150: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
0x160: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
0x170: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
0x180: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
0x190: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 
0x1A0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
0x1B0: 00 00 00 00 00 00 00 00 02 3E 6D 41 00 00 00 01
0x1C0: 01 00 83 FE FF FF 3F 00 00 00 C1 03 FB 00 00 00
0x1D0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
0x1E0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
0x1F0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 55 AA

Automatitzar fdisk

Es pot fer amb heredoc

$ fdisk $hd &>/dev/null <<EOFP3
n
p
1
1

t
7
a
1
w
EOFP3

Vegeu també:

cfdisk

Consulteu cfdisk.

sfdisk

Consulteu sfdisk.

Vegeu també

Enllaços externs