Redimensionant Volums Lògics NTFS (ntfsresize)

Objectiu:

Continuem amb temes relacionats amb iSCSI i Volums Lògics. La problemàtica que se’ns presenta ara és el fet de tenir una unitat del disc en format NTFS exportada amb iSCSI a un servidor Xen que ens agradaria fer més gran. Les aplicacions d’aquesta tècnica poden ser variades, com ara per exemple:

  • Fer lloc al disc per a poder instal·lar-hi un altre sistema operatiu.
  • Redimensionar el disc per falta d’espai per a dades del sistema operatiu.

El nostre cas podria ser perfectament el segon i és en el que ens basarem. Suposarem doncs que el nostre disc està en un volum lògic amb una única partició.

Procediment:

El primer que farà falta saber és si tenim les eines necessàries per a tractar particions NTFS.

IMPORTANT: Abans d’executar cap de les comandes següents s’ha d’estar segur que el disc a redimensionar no està muntat i que no l’està utilitzant ningú via iSCSI. En el nostre cas parem la màquina virtual Windows que utilitzava aquest disc i fem un logout de la sessió iSCSI.

Les eines que instal·larem en la màquina que importa la unitat iSCSI es poden instal·lar amb la següent comanda:

$ apt-get install ntfsprogs

Aquest paquet conté tota una sèrie d’aplicacions que ens poden ajudar a diagnosticar problemes, redimensionar, fer còpies de seguretat…

El procediment per redimensionar una partició ntfs segueix aquests tres passos:

1.- Redimensionar el volum lògic a la quantitat que volem créixer.

$ lvextend -L +XG /dev/Volum/Logic

La X representa la quantitat a créixer. Si tenim una unitat de 5Gb i volem passar a una de 20Gb, X valdrà 15.

2.- Redimensionar la partició /dev/Volum/Logic1

Entrem a gestionar les particions amb fdisk. Aquesta part pot fer posar els pels de punta a més d’un. El que s’ha de fer és esborrar la partició i tornar-la a crear amb el nou espai a incrementar.

IMPORTANT: S’ha de tenir en compte sobre tot on comença la partició i el tipus (NTFS). Aquestes dades s’han de mantenir quan creem la nova.

Un cop executat

$ fdisk /dev/Volum/Logic

farem:

d - Esborrar partició
n - Nova partició
p - Primària
1 - Número de partició
Per defecte <1> - Inici de la partició
Per defecte  - Fi de la partició
t - Tipus de partició
7 - NTFS
a - Fer-la bootable
1 - Número de partició
w - Escriure els canvis

Ja tenim la partició NTFS que ocupa la totalitat del volum lògic. Només falta, ara si, redimensionar amb ntfsresize.

3.- Utilitzar ntfsresize per fer que NTFS s’adoni dels canvis anteriors.

Bàsicament la comanda a utilitzar és:

$ ntfsresize -sXXXXM /dev/disc1

D’aquesta comanda s’ha de comentar diverses coses:

  • S’utilitza disc en comptes de volum lògic ja que aquest pas l’estem realitzant des de la màquina que importa la unitat iSCSI (fent el login de nou) i que la veu com a /dev/disc. D’altra manera ntfsresize és queixa pel fet de treballar sobre volums lògics.
  • XXXXM és la grandària que volem que la nostra unitat NTFS tingui en total. Així, si hem incrementat fins a 20Gb aleshores aquí hi posaríem 20000M.
  • L’1 és el número de la partició a redimensionar i coincideix amb els uns que s’han utilitzat amb fdisk.

La comanda ens demanarà confirmació i finalment ja tindrem una nova unitat de la grandària especificada. Podem arrencar de nou la màquina virtual Windows. Aquesta veurà els canvis i farà una comprovació abans de procedir a arrencar el sistema.

Reduir particions:

ntfsresize també permet reduir particions NTFS sense perdre dades, la pròpia aplicació s’encarrega de moure-les per deixar espai. El procediment és força similar però a la inversa:

1.- Reduir la partició NTFS amb ntfsresize.
2.- Recrear la partició amb fdsik a la nova grandària.
3.- Reduir el volum lògic on s’emmagatzema la partició.

Documentació:

Es recomana llegir la documentació de ntfsresize:

$ man ntfsresize