Newsgroup: it.comp.os.linux.iniziare
Titolo: PartED VS Partition Magic

Una delle poche cose che ancora mi trattiene dall'abbandonare il mondo
Windows è il programma Partition Magic; circa un annetto fa avevo cercato
sostituti con una simile immediatezza d'uso ma non avevo trovato nulla che
mi soddisfacesse.
Seguendo un consiglio di un post di alcuni giorni fa ho scoperto Parted, da
quello che leggo sembra proprio quello che cercavo, vorrei però il parere di
chi già lo usa; com'è??
A confronto con Partition Magic da la stessa sicurezza sul trattamento dei
del MBR ??

 dei del MBR ??
Probabilmente ne da` di piu`. ;-)
A parte gli scherzi, c'e` anche qtparted, scritto dal mitico Vanni
Brutto, che e` un'interfaccia del tutto simile a Partition Magic per
parted. L'unica mia riserva sui "ripartizionatori" free e` che da quel
che ho visto nessuno gestisce bene l'NTFS. C'e` ntfsresize che, nel suo
approccio molto "conservativo" (il che non e` affatto un male, vista la
delicatezza dell'operazione), non e` in grado di ridurre una partizione
NTFS al minimo possibile, pero` comunque se la cava molto bene.
Lato Linux, come da mio post di qualche minuto fa, c'e` LVM che risolve
definitivamente il problema. Peccato non poter restringere XFS, pero`.
-- 
  _      ___ ____
 | | /| / (_)_  / >>> aka Luciano Di Lucrezia
 | |/ |/ / / / /_   . Radiance BBS: 
http://www.radiance.ods.org/
 |__/|__/_/ /___/   . Ban Micro$oft from Universities! Support Free Software.
 
Ah, Executor! En Taro Adun! It is good to see you once more upon the field
of battle. (Fenix)

 pero` comunque se la cava molto bene.
Proprio un'impressione su questo ntfsresize cercavo.  Sai com'è, si
preannunciano un po' di ``assimilazioni''. ;-) Ha bisogno di
operazioni preparatorie lato Windows, es. defrag?
-- 
Tip | Per ottenere un file PDF da un file PostScript:
of  | 
the | $ ps2pdf 
input.ps
 [output.pdf]
day | 
0003| 

 operazioni preparatorie lato Windows, es. defrag?
Purtroppo si`, perche` e` veramente molto paranoico sulla corruzione dei
dati. Addirittura forza un check al riavvio successivo, ma mai una volta
che questo check avesse dato degli errori. In compenso, ntfsundelete e`,
a parer mio, un *ottimo* tool, che ha peraltro salvato il fondoschiena a
un bel po' di studenti in difficolta`.
(manco a farlo apposta, sernificator strikes back) (-:
-- 
  _      ___ ____
 | | /| / (_)_  / >>> aka Luciano Di Lucrezia
 | |/ |/ / / / /_   . Radiance BBS: 
http://www.radiance.ods.org/
 |__/|__/_/ /___/   . Ban Micro$oft from Universities! Support Free Software.
 
In una settimana non si diventa pittore, al più si impara ad usare il rullo e
si fa l'imbianchino. (A. Selli)

 (-:
Buongiorno!
-- 
Registered user at 
http://counter.li.org
 # 170453
Jabber JID: 
sil...@jabber.linux.it
GnuPG Key fingerprint = 10E0 2B05 0B0A 3525 8760  788B 59B6 C74A 250E 65B6

 (manco a farlo apposta, sernificator strikes back) (-:
Eh, passi, ma almeno hai abbandonato quella (orrenda) formattazione
con giustificazione a sinistra/destra che faceva sembrare i tuoi
messaggi fatti col Lego. ;->
-- 
Tip | Quando il parametro di un comando compare fra parentesi quadre,
of  | significa che è opzionale.  Per esempio, nel comando seguente non è
the | strettamente necessario specificare il nome del file di output:
day | 
0004| $ ps2pdf 
input.ps
 [output.pdf]

 messaggi fatti col Lego. ;->
Si`, l'ho abbandonato perche` mi sono reso conto che i miei post sono
piu` POSIX-compliant in questo modo. (-:
-- 
  _      ___ ____
 | | /| / (_)_  / >>> aka Luciano Di Lucrezia
 | |/ |/ / / / /_   . Radiance BBS: 
http://www.radiance.ods.org/
 |__/|__/_/ /___/   . Ban Micro$oft from Universities! Support Free Software.
 
The system we learn says we're equal under law,
but the streets are reality, and the weak and poor will fall.
Let's tip the power balance and tear down their crown:
educate the masses, we'll burn the White House down! (Queensryche)

 educate the masses
Eh, brutto posto per dire queste cose, qui si propone ancora
l'equivalenza "utente normale" == "utente stupido"!
-- 
Tip | [DEBIAN] Replicare una installazione:
of  | # dpkg --get-selections > list.txt # Esporta la lista dei pacchetti
the | # dpkg --set-selections < list.txt # Importa sulla nuova Debian
day | # apt-get dselect-upgrade          # Installa pacchetti nella lista
0024| (Il primo "#" rappresenta il prompt di root)

 l'equivalenza "utente normale" == "utente stupido"!
Gia`, e oserei dire che lo dicono "i soliti linuxari spocchiosi". Credo
sia questione di maturita` -- a un certo punto ti rompi un po' le
scatole delle guerre di religione, e personalmente, quando mi prendono
in giro perche` mi vedono usare Windows, faccio spallucce, ben sapendo
che i dati su cui lavoro se ne stanno ben al sicuro su un server Linux
da qualche parte, lontano dagli occhi, vicino alla ssh quando ho bisogno
di greppare qui e la`. (-:
E quanto a "educate the masses", penso che siano le 3 parole piu`
sovversive che io riesca a concepire. (-:
-- 
  _      ___ ____
 | | /| / (_)_  / >>> aka Luciano Di Lucrezia
 | |/ |/ / / / /_   . Radiance BBS: 
http://www.radiance.ods.org/
 |__/|__/_/ /___/   . Ban Micro$oft from Universities! Support Free Software.
 
Non e` possibile che in un posto tecnologicamente avanzato come questo uno
debba usare la carta igienica per cancellare la lavagna. E evitiamo facili
battute su cio` che sta scritto alla lavagna! (F. Tisato)

 detto ha fatto prove?
Come ho appena detto il giochetto di interfacciarmi a libparted mi
permette di fare cose del tipo:
if ntfs()
  call_ntfs_resize();
  ridimensiona_il_device();
(in realtà la cosa è più complessa, visto che ho uno strato di
astrazione... diciamo che la "if" testa se quel filesystem è
manipolato da un tool esterno, e in tal caso ho un'API universale per
tutti i tool che uso che mi permette di rendere il wrapper di
libparted più modulare).
In questo modo ho cercato di creare un wrapper di libparted potenziato
(e infatti nel giro di pochi minuti ora posso aggiungere la creazione
e/o resize di nuovi filesystem).
Il ridimensionamento del device lo faccio chiamando l'API di libparted
"set_geometry".
Ad ogni modo posso assicurarvi che tutti i report che sto ricevendo
per posta elettronica includono solo storie andate a buon fine,
l'autore di ntfsresize stesso mi ha scritto per raccontarmi che ha
usato qtparted tramite knoppix su di un PC che aveva solo XP
installato su una NTFS :)
L'unico bachetto che ho ricevuto recentemente in email consiste in uno
strano errore che viene riportato durante il resize di una NTFS:
"sparo fuori" un messaggio del tipo: -impossibile ridimensionare,
errore sconosciuto-. Ecco, in realtà è semplicemente che la partizione
è montata... l'inghippo è nato dal fatto che non testavo se le
partizioni erano montate, visto che l'API di libparted si arrangiava,
ma ora che uso ntfsresize devo prima fare un test... cmq danni non ne
succedono, visto che ntfsresize si blocca, io testo il return code,
vedo che qualcosa è andato male... e blocco lo step sucessivo (ossia
la chiamata a set_geometry), l'unica pecca è quel messaggio di errore
fuorviante!
Vedrò di sistemare la cosa in una prossima release...
...ad ogni modo è graditissimo il beta testing, se riscontrate errori
di sorta mandatemi pure un report!
byeZ!

 in giro perche` mi vedono usare Windows, 
Ah ah ah!  Usa Uindous!  Usa Uindous! ;-PPP
Magari mi dici via mail cosa ci fai con Windows, pur con tutta la
fantasia non ho proprio idea di cosa ti possa servire...
-- 
Tip | Scarica interi mesi di articoli da Google con SuckGoog,
of  | 
http://fly.to/demokrito
. Poi aggregali in una mailbox per leggerli con
the | mutt entrando nella directory dove sono salvati e lanciando i comandi:
day | $ for i in *; do echo "From dummy Sat Jul 06 19:10:00 1974" >>mbox; \
0025|   cat $i >>mbox; done; mutt -f mbox

 di sorta mandatemi pure un report!
Sicuro. :-)
-- 
Tip | Per avere la versione più recente degli HOWTO, crea una directory
of  | ~/howto e sincronizzala con il comando:
the | 
day | $ rsync -avz www.pluto.linux.it::HOWTO-it ~/howto/
0028| 

 installazione di Knoppix.
Certo, anzi, ti dirò di più! :)
QTParted non è stato incluso per sbaglio su knoppix, in pratica è
previsto per una futura release un'installer di knoppix completamente
nuovo... grafico! Un po' come quello presente in molte altri
distribuzioni.
Per il partizionamento disco, a quanto pare, fdisk verrà affiancato a
QTParted! :) :)
Ora sinceramente non so darti informazioni precise, queste sono le
poche informazioni che ho raccolto via email con il tipo che ha
incluso QTParted su Knoppix... e quello che ho "intercettato" leggendo
vari post sui forum di knoppix stesso! :)
Ad ogni modo la pacchettizzazione di QTParted su Knoppix non è ancora
perfetta (ho cercato di aiutare il tipo che l'ha inclusa in Knoppix,
ma evidentemente non ci siamo capiti bene), per essere sinceri soffre
di un problema di dipendenze con una libreria che è usata da libparted
(per capirci io non ho messo dipendenze sul mio deb, visto che è più
logico fissare un "suggestion" sul deb di libparted, visto che io a
mia volta dipendo da questo... almeno io la penso così!) per la
gestione del ReiserFS, questo significa che non potrai fare
resize/creare partizioni Reiser.
Spero che risolveranno la cosa a breve termine, perché sinceramente è
pure il mio filesystem preferito :(
p.s. non ho ancora aggiunto la creazione di partizioni xfs, diversi
utenti mi hanno chiesto se posso implementarla... sinceramente è una
cosa banale da fare, ma dato che non so nulla di questo filesystem (è
valido? Viene usato da molti? Da che kernel è supportato? Devo
informarmi appena ho tempo! :)) sto rimandando la cosa. Ora come ora
sto lavorando ad una completa riscrittura del wrapper di libparted,
l'idea è quella di implementare un meccanismo di commit/undo come il
vero partition magic, il problema è che libparted di suo non prevede
nulla del genere, e quindi devo scrivermi un ulteriore strato di
"astrazione"... non è una cosa banale! Sto scambiando diverse email
con l'autore di Parted (il buon Clausen, che detto tra noi è davvero
gentile e continua a sopportarmi :)), dubito che a breve vedrete
quindi nuove release di QTParted, quella che è online ora funziona
molto bene, e la prossima major release la vorrei con la funzione di
commit/undo.

 major release la vorrei con la funzione di commit/undo.
Ti faccio i miei migliori auguri, per niente disinteressati, perché ti
assicuro che si sente davvero la mancanza di un tool del genere
libero!  Spero che tu lo stia modularizzando abbastanza da permettere
aggiunge e modifiche di parti senza digerirsi l'intero sorgente
(traduzione: spero che chi vorrà metter mano si troverà la strada
spianata e ti manderà un sacco di patch ;-)).
Massimiliano
-- 
Tip | [DEBIAN] Un programma ha bisogno del file "nomefile" ma non lo trova.
of  | Come trovare il pacchetto che lo contiene?
the | $ dpkg -S nomefile               # Cerca nei pacchetti installati
day | $ apt-file search nomefile       # Cerca in tutti i pacchetti
0009| 
http://packages.debian.org
       # Scrivendo nomefile nel secondo form

 spianata e ti manderà un sacco di patch ;-)).
Il codice è abbastanza pulito. Tanto per capirci ho cercato di
separare completamente la GUI dal wrapper costruito attorno a
libparted e ai tool esterni, ed è proprio questo il pezzo che intendo
riscrivere meglio. La parte della GUI grafica è invece scritto molto
bene e il codice è ben commentato.
Il wrapper di libparted non è ottimale perché molto codice l'ho
copiato da parted, ed era già di partenza pieno di pezze qua e la
(tanto è vero che molto spesso ho trovato delle if insulse... e Andrew
mi ha confermato che erano scheletri nell'armadio e guarda caso la
release dopo di parted aveva quel pezzetto di codice pulito). Inoltre
per carenze mie non ho usato il C++ standard per il wrapper libparted,
ma le QT. La mia idea è invece in un futuro di usare le STL sul
wrapper libparted+tools esterni, e usare le QT solo per la GUI. Questo
perché mi piacerebbe (ma solo una volta terminato QTParted) scrivere
una GUI testuale... e chiaramente non posso usare le QT :)
Ad ogni modo l'API del mio wrapper è una delle cose che ho studiato
meglio, in modo che quando sarò pronto dovrò solo riscrivere il
wrapper, e mantenere le stesse chiamate.

 wrapper, e mantenere le stesse chiamate.
Vedi che merita proprio un'interfaccia Scheme? ;-)
Massimiliano che oggi si sente un po' più advocate del solito
