DISKPART
Sissejuhatus
Diskpart on käsurea programm, mis on mõeldud kõvaketastega seotud objektidega (kettad, partitsioonid, volüümid) toimetamiseks. Käsklusi on võimalik edastada käsurea kaudu või skriptideks kirjutatud kujul. Viimane teeb diskpart programmi eriti väärtuslikuks, sest see võimaldab automatiseerida kõvaketastega tehtavaid operatsioone ja saab kasutada erinevate depolyment tehnikate juures.
Sisu
Loomine
Create partition extended
Süntaks:
create partition extended [size=N] [offset=N] [noerr]
Näide:
create partition extended size=200
Kommentaar: Luuakse extended partitsioon, mille suuruseks on 200MB. Extended partitsioon on primaarne partitsioon, kuhu saab luua teiseseid partitsioone.
Create partition logical
Süntaks:
create partition logical [size=N] [offset=N] [noerr]
Näide:
create partition logical size=200
Kommentaar: Luuakse logical partitsioon, mille suurus on 200 MB. Kuna logical partitsioonid luuakse extended partitsiooni "sisse", siis logical partitsiooni suurus peab olema väiksem, kui extended partitsioon.
Create partition primary
Süntaks:
create partition primary [size=N] [offset=N] [ID={Byte | GUID}] [align=N] [noerr]
Näide:
create partition primary size=200
Kommentaar: Luuakse aktiivseks tehtud kõvakettale primaarne partitsioon, mille suuruseks on 200MB. Kui suurust ei määrata, siis võetakse kasutusse kõik vaba kettapind, mis järgneb esimesele vabale sektorile. Ühel kõvakettal saab olla maksimaalselt 4 primaarset partitsiooni, kui on vaja teha rohkem partitsioone, siis tuleb kasutada extended partistiooni. Erinevad operatsiooni süsteemid peavad olema primaarsetel partitsioonidel. Primaarsel partitsioonil on esimeseks sektoriks bootsektor.
Create volume simple
Süntaks:
create volume simple [size=N] [disk=N] [noerr]
Näide:
create volume simple size=200 disk=0
Kommentaar: Luuakse volume kevakettale 0, mille suurus on 200MB. Kui suurust ei ole määratud, siis hõivatakse kogu vaba kettapind. Kui disk ei ole määratud, siis luuakse volume aktiivsele kõvakettale. Volume saab teha ainult dynamic kevakestatele.
Create volume stripe
Süntaks:
create volume stripe [size=N] disk=N,N[,N,...] [noerr]
Näide:
create volume stripe size=200 disk=0,1
Kommentaar: Luuakse volume, mille suuruseks on 200 MB, mis asub ketastel 0 ja 1. Kui ei ole määratud volume suurus, siis aluseks suuruse määramisel võetakse kasutusele võetavate kõvaketastel leiduv väiksem vaba pind.
Kustutamine
Delete disk
Süntaks:
delete disk [noerr] [override]
Näide:
delete disk override
Kommentaar: Kustutab kõvaketta nimekirjast. Kui kasutada võtit override, siis kustutab kõik simpele volume'id kõvakettalt. Kui kõvakettal on peegeldatud partitsioon, siis kustutatakse see osa, mis asu kõvakettal.
Delete partition
Süntaks:
delete partition [noerr] [override]
Näide:
delete partition override
Kommentaar: Kustutatakse aktiivseks tehtud partitsioon. Kui on tegu basic kõvakettaga, siis ei ole võimalik antud operatsiooni teostada, kui tegu on süsteemi partitsiooniga, boot partitsiooniga, kui partitsioonil asub paging fail. Kui kustutada partitsioon dynamic kõvakettal, siis kustutatakse ka seal peal olnud volume'id ning andmed kustutatakse.
Delete volume
Süntaks:
delete volume [noerr]
Näide:
delete volume
Kommentaar: Kustutatakse aktiivne volume. Kustutamis operatsiooni ei ole võimalik teostada järgnevatel tingimustel: kui tegu on süsteemi partitsiooniga, boot partitsiooniga, kui partitsioonil asub paging fail.
Muud tihedamalt kasutust leidvad käsud
List Disk Partition Volume
Syntaks:
list disk
list partition
list volume
Näited:
list disk Disk ### Status Size Free Dyn Gpt -------- ---------- ------- ------- --- --- Disk 0 Online 37 GB 0 B
list partition Partition ### Type Size Offset ------------- ---------------- ------- ------- Partition 1 Primary 33 GB 32 KB Partition 2 OEM 4570 MB 33 GB
list volume Volume ### Ltr Label Fs Type Size Status Info ---------- --- ----------- ----- ---------- ------- --------- -------- Volume 0 D DVD-ROM 0 B Volume 1 E DVD-ROM 0 B Volume 2 G DVD-ROM 0 B Volume 3 C IBM_PRELOAD NTFS Partition 33 GB Healthy System
Kommentaar: Käskudega list disk, list partition, list volume, on võimalik näha millised diskid, partitsioonid ja volume'id on arvutis ning nende kohta käivat infot.
Select Disk Partition Volume
Syntaks:
select disk=[N]
select partition=[N]
select volume=[N]
Kommentaar: Käsuga select disk muudetakse aktiivseks see kõvaketas, mille number sisestatakse. Käsuga select partition muudetakse aktiivseks see partitsioon, mille number sisestatakse. Käsuga select volume muudetakse aktiivseks see partitsioon, mille number sisestatakse.
Assign
Syntaks:
assign [{letter=D | mount=Path}] [noerr]
Näide:
assign letter=F
Kommentaar: Omistatakse anktiivsele volume'le täht. Ka on võimalik määrata aktiivsele volume'le ühendumis punkti failisüsteemis.
Detail Disk Partition Volume
Syntaks:
detail disk
detail partition
detail volume
Näide:
detail disk FUJITSU MHT2040AT Disk ID: CCCDCCCD Type : IDE Bus : 0 Target : 0 LUN ID : 0
Volume ### Ltr Label Fs Type Size Status Info ---------- --- ----------- ----- ---------- ------- --------- -------- Volume 3 C IBM_PRELOAD NTFS Partition 33 GB Healthy System
detail partition Partition 1 Type : 07 Hidden: No Active: Yes
Volume ### Ltr Label Fs Type Size Status Info ---------- --- ----------- ----- ---------- ------- --------- -------- * Volume 3 C IBM_PRELOAD NTFS Partition 33 GB Healthy System
detail volume Disk ### Status Size Free Dyn Gpt -------- ---------- ------- ------- --- --- * Disk 0 Online 37 GB 0 B
Kommentaar: Kuvatakse detailset infot kõvaketta, partitsiooni ja volume kohta.
Extend
Syntaks:
extend [size=N] [disk=N] [noerr]
Näide:
extend size=2000 diks=0
Suurendatakse aktiivset volume 2000MB'ni. Kui tegu on basic kõvakettaga, siis vaba kettapind peab asetsema sama kõvaketta peal. Kui tegu on dynamic kõvakettaga, siis vaba kettapind võib asuda ka mõne teise kõvaketta peal. Volume suurendamise korral andmeid ei kustutata või lisatakse vaba ruumi.
Remove
Syntaks:
remove [{letter=D | mount=Path | all}] [dismount] [noerr]
Näide:
remove letter=D dismount
Kommentaar: Eemaldatakse volume'lt ketta tähis D ja ühendatakselahti. Kui ei ole määratud konkreetset tähte või ühenduspunti, siis teostatakse operatsioon aktiivse volume'l.
Reaalse elu näide
Soov on automatiseerida WDS'i jaoks ketta partitsioneerimine. Kõvaketas on vaja jagada kaheks ning süsteemse partitsiooni suurus peab olema 50GB ja nimetus on "system" ning omistatakse ketta tähiseks "C". Teine partitsioon hõlmab järelejäänud ketast ja nimetus on "data" ning omistatakse ketta tähiseks "D".
Script:
select disk 0 clean create partition primary size=50000 select partition 1 format fs=ntfs label="System" quick assign letter=C active create partition primary select partition 2 format fs=ntfs label="DATA" quick assign letter=D exit
Kokkuvõte
Kõiki on operatsioone on võimalik teostada ka läbi graafiliseliidese. Kui on tahtmise kasutada diskpart'i scriptimise juures või on operatsioonisüsteemiga midagi juhtunud, siis oleks kasulik ka teada, mis leidub ka karu kõhus.