Leer die Linux Command - fdisk

naam

fdisk - Partitie tabel manipulator vir Linux

opsomming

fdisk [-u] [-b sektoriseer ] [ -cilinders ] [-H koppe ] [-S sekte ] toestel

fdisk -l [-u] [ toestel ... ]

fdisk- partisie ...

fdisk-v

beskrywing

Harde skywe kan verdeel word in een of meer logiese skywe wat partisies genoem word. Hierdie afdeling word beskryf in die partisietabel wat in sektor 0 van die skyf gevind word.

In die BSD-wêreld praat mens oor `skyfies 'en 'n` skyfies'.

Linux benodig ten minste een partisie, naamlik vir sy wortellêersisteem. Dit kan ruillêers en / of ruilpartisies gebruik, maar laasgenoemde is meer doeltreffend. So, gewoonlik wil jy 'n tweede Linux partisie wat as swap partisie toegewys is. Op Intel-compatible hardeware, kan die BIOS wat die stelsel stoot dikwels slegs toegang tot die eerste 1024 silinders van die skyf. Om hierdie rede skep mense met groot skywe dikwels 'n derde partisie, net 'n paar MB groot, tipies gemonteer op / boot , om die kernbeeld op te slaan en 'n paar hulplêers wat nodig is tydens die opstarttyd, om seker te maak dat hierdie dinge is toeganklik vir die BIOS. Daar kan redes wees vir sekuriteit, gemak van administrasie en rugsteun, of toetsing, om meer as die minimum aantal partisies te gebruik.

Los drukprobleme op, bespaar tyd met bestuursprogrammatuur vir drukwachtrij.

fdisk (in die eerste vorm van aanroeping) is 'n spyskaartgedrewe program vir die skepping en manipulasie van partisietabelle. Dit verstaan ​​DOS-tipe partisie tafels en BSD of SUN tipe diskette.

Die toestel is gewoonlik een van die volgende:

/ dev / hda / dev / hdb / dev / sda / dev / sdb

(/ dev / hd [ah] vir IDE-skywe, / dev / sd [ap] vir SCSI-skywe, / dev / ed [ad] vir ESDI-skywe, / dev / xd [ab] vir XT-skywe). 'N Toestelnaam verwys na die hele skyf.

Die partisie is 'n toestel naam gevolg deur 'n partisie nommer. Byvoorbeeld, / dev / hda1 is die eerste partisie op die eerste IDE-hardeskyf in die stelsel. Diskette kan tot 15 partisies hê. Sien ook /usr/src/linux/Documentation/devices.txt .

'N BSD / SUN-tipe skyflys kan 8 partisies beskryf, waarvan die derde 'n hele skyf partisie moet wees. Moenie 'n partisie begin wat eintlik sy eerste sektor (soos 'n swappartisie) by silinder 0 gebruik nie, aangesien dit die skyfiebord sal vernietig.

'N Skyfie van IRIX / SGI-tipe kan 16 partisies beskryf, waarvan die elfde 'n hele `volume'-partisie moet wees, terwyl die negende' volumekop 'gemerk moet word. Die volume header sal ook die partisietabel dek, dit begin by bloknul en strek as standaard oor vyf silinders. Die oorblywende spasie in die koptekst mag gebruik word deur header-gidsinskrywings. Geen partisies mag oorvleuel met die volume koptekst. Verander ook nie sy tipe nie en maak 'n lêerstelsel daarop, want jy sal die partisietabel verloor. Gebruik slegs hierdie tipe etiket wanneer u met Linux werk op IRIX / SGI-masjiene of IRIX / SGI-skywe onder Linux.

'N DOS- tipe partisie tabel kan 'n onbeperkte aantal partisies beskryf. In sektor 0 is daar ruimte vir die beskrywing van 4 partisies (genaamd `primêr '). Een van hierdie mag 'n uitgebreide partisie wees; dit is 'n boks wat logiese partisies bevat, met beskrywers wat in 'n gekoppelde lys van sektore voorkom, wat elk die ooreenstemmende logiese partisies voorafgaan. Die vier primêre partisies, teenwoordig of nie, kry nommers 1-4. Logiese partisies begin nommer van 5.

In 'n DOS-tipe partitietabel word die begin-offset en die grootte van elke partisie op twee maniere gestoor: as 'n absolute aantal sektore (gegee in 32 bisse) en as 'n drievoudige / Heads / Sectors triple (gegee in 10 + 8 + 6 stukkies). Die voormalige is OK - met 512-bytesektore sal dit tot 2 TB werk. Laasgenoemde het twee verskillende probleme. Eerstens kan hierdie C / H / S-velde slegs gevul word as die aantal koppe en die aantal sektore per spoor bekend is. Tweedens, selfs as ons weet wat hierdie getalle moet wees, is die 24 bisse wat beskikbaar is nie voldoende nie. DOS gebruik slegs C / H / S, Windows gebruik beide, Linux gebruik nooit C / H / S.

Indien moontlik, sal fdisk die skyf meetkunde outomaties verkry. Dit is nie noodwendig die fisiese skyfmetrie nie (inderdaad, moderne skywe het nie regtig iets soos 'n fisiese meetkunde nie, beslis nie iets wat in die simplistiese Cilinders / Heads / Sectors-vorm beskryf kan word nie), maar is die skyfmeting wat MS-DOS gebruik vir die partisie tafel.

Gewoonlik gaan alles goed, en daar is geen probleme as Linux die enigste stelsel op die skyf is nie. As die skyf egter met ander bedryfstelsels gedeel moet word, is dit dikwels 'n goeie idee om 'n fdisk uit 'n ander bedryfstelsel te laat maak ten minste een partisie. Wanneer Linux stewels kyk, kyk dit na die partisietafel en probeer om af te lei wat (valse) meetkunde benodig word vir goeie samewerking met ander stelsels.

Wanneer 'n partitietabel uitgedruk word, word 'n konsekwentheidstoets op die partitietabel-inskrywings uitgevoer. Hierdie tjek bevestig dat die fisiese en logiese begin- en eindpunte identies is en dat die partisie begin en eindig op 'n silindergrens (behalwe vir die eerste partisie).

Sommige weergawes van MS-DOS skep 'n eerste partisie wat nie op 'n silindergrens begin nie, maar op sektor 2 van die eerste silinder. Partisies wat in silinder 1 begin, kan nie op 'n silindergrens begin nie, maar dit sal onwaarskynlik moeilik wees as jy nie OS / 2 op jou masjien het nie.

'N Sync () en 'n BLKRRPART ioctl () (herlaai partisietabel vanaf skyf) word uitgevoer voordat dit verlaat word wanneer die partisietabel opgedateer is. Lank gelede was dit nodig om weer na die gebruik van fdisk te herlaai. Ek dink nie dit is meer die geval nie - inderdaad, om te vinnig te herlaai, kan die verlies van nog nie-geskrewe data tot gevolg hê. Let daarop dat beide die kern en die skyfhardeware data kan buffer.

Dos 6.x Waarskuwing

Die DOS 6.x FORMAT opdrag soek na inligting in die eerste sektor van die data area van die partisie en behandel hierdie inligting as betroubaarder as die inligting in die partisietabel. DOS FORMAT verwag dat DOS FDISK die eerste 512 grepe van die data area van 'n partisie sal skoonmaak wanneer 'n grootteverandering plaasvind. DOS FORMAT sal na hierdie ekstra inligting kyk, selfs as die / U-vlag gegee word. Ons beskou dit as 'n fout in DOS FORMAT en DOS FDISK.

Die bottom line is dat as jy cfdisk of fdisk gebruik om die grootte van 'n DOS-partisie-tabelinskrywing te verander, moet jy ook die eerste 512 grepe van die partisie gebruik voordat jy DOS FORMAT gebruik om die partisie te formateer. As jy byvoorbeeld 'n CD-skyf gebruik om 'n DOS-partisietabel-invoer vir / dev / hda1 te maak, dan (as jy fdisk of cfdisk het en Linux herlaai sodat die partisietabelinligting geldig is), gebruik jy die opdrag "dd if = / dev / zero van = / dev / hda1 bs = 512 telling = 1 "om die eerste 512 grepe van die partisie te nul.

Wees uiters versigtig as u die dd- opdrag gebruik, aangesien 'n klein tik die data op u skyf nutteloos kan maak.

Vir die beste resultate moet u altyd 'n OS-spesifieke partisietabelprogram gebruik. Byvoorbeeld, jy moet DOS partisies maak met die DOS FDISK program en Linux partisies met die Linux fdisk of Linux cfdisk program.

opsies

-b sektoreer

Spesifiseer die sektor grootte van die skyf. Geldige waardes is 512, 1024 of 2048. (Onlangse pitte weet die sektor grootte. Gebruik dit slegs op ou pitte of om die kern se idees te ignoreer.)

-cilinders

Spesifiseer die aantal silinders van die skyf. Ek het geen idee hoekom iemand dit wil doen nie.

-H koppe

Spesifiseer die aantal koppe van die skyf. (Nie die fisiese getal, natuurlik nie, maar die nommer wat vir partisietabelle gebruik word.) Redelike waardes is 255 en 16.

-Sekte

Spesifiseer die aantal sektore per spoor van die skyf. (Nie die fisiese getal, natuurlik nie, maar die nommer wat vir partisietabelle gebruik word.) 'N Redelike waarde is 63.

-l

Lys die partisietabelle vir die gespesifiseerde toestelle en verlaat dan. As geen toestelle gegee word nie, word die in / proc / partisies genoem (indien dit bestaan) gebruik.

-U

Gee groottes in sektore in plaas van silinders wanneer u partitietabelle opskryf.

s partisie

Die grootte van die partisie (in blokke) word op die standaard uitset gedruk.

v

Druk weergawe nommer van fdisk program en uitgang.