Newsgroup: it.comp.os.linux.iniziare
Titolo: restringimento harddisk

Ieri ad un certo punto l'harddisk (il secondo, non quello di sistema)
mi ha fatto una cosa strana. (Credo dovuta ad un errore hardware visto
che ho sentito un piccolo rumorino)
L'hd stava funzionando, ma ad un certo punto ha freezato il sistema.
Al reboot il bios non lo vedeva più e rimaneva la spia dei dischi
accesa. Ovviamente non lo vedeva più il sistema operativo. Le altre
periferiche nello stesso bus funzionavano correttamente.
Ho pensato al peggio, testine sfasciate in quanto quando l'ho tolto,
girandolo sotto sopra ho sentito un rumore come se la testina non fosse
fissata (parking non funzionante).
Ho montanto il disco su un case usb esterno e sembra funzionare, ma mi
da un comportamento strano.
L'hd da 160Gb contiene una unica partizione ntfs.
/proc/partitions mi mostra la partizione (sdb1) con la sua corretta
dimensione.
Non è sfasciata in quanto dd if=/dev/sdb1 of=pippo non ha dato i/o
error (ho provato solo con 11Gb) e dando "file pippo" mi da
pippo: x86 boot sector, code offset 0x52, OEM-ID "NTFS    ",
sectors/cluster 8, reserved sectors 0, Media descriptor 0xf8, heads
255, hidden sectors 63, dos < 4.0 BootSector (0x80)
Il mount però:
Questa mattina ho voluto provare il dd sull'intero disco (dd
if=/dev/sdb1 of=/dev/null)
Però è successo una cosa che non mi aspettavo... a 32Gb si è fermato
correttamente, non per I/O error.
il mount però mostra qualcosa tipo
ntfs_end_buffer_async_read(): Buffer I/O error, logical block 0x950a5e1
in seguito ho scoperto che questo significa che c'è qualche problema
sulle dimensioni inconsistenti, ovvero, mi sembra di ricordare che
l'ntfs fa la copia più o meno della tabella di allocazione file al
centro del disco (un po' come fa l'ext2&c. col superblock) e quando
viene montato deve accedere anche a quella parte del disco.
Con mio stupore, guardando meglio il /proc/partitions e fdisk -l
ottengo
   8    16   33027624 sdb
   8    17  156280288 sdb1
# fdisk  /dev/sdb
The number of cylinders for this disk is set to 4111.
Command (m for help): p
Disk /dev/sdb: 33.8 GB, 33820286976 bytes
255 heads, 63 sectors/track, 4111 cylinders
Units = cylinders of 16065 * 512 = 8225280 bytes
   Device Boot      Start         End      Blocks   Id  System
/dev/sdb1   *           1       19456   156280288+   7  HPFS/NTFS
Command (m for help): x
Expert command (m for help): p
Disk /dev/sdb: 255 heads, 63 sectors, 4111 cylinders
Nr AF  Hd Sec  Cyl  Hd Sec  Cyl     Start      Size ID
 1 80   1   1    0 254  63 1023         63  312560577 07
 2 00   0   0    0   0   0    0          0          0 00
 3 00   0   0    0   0   0    0          0          0 00
 4 00   0   0    0   0   0    0          0          0 00
Expert command (m for help):
Cioè sembra come se la geometria del 'disco' sia passata da c.a. 19456
cilindri a 4111, per un totale di 32Gb mentre la partizione, non
essendo stata modificata la partition table, è rimasta da 156Gb, se
vista in standar mode. con 'fdisk -u' vedo invece
# fdisk -u /dev/sdb
The number of cylinders for this disk is set to 4111.
Command (m for help): p
Disk /dev/sdb: 33.8 GB, 33820286976 bytes
255 heads, 63 sectors/track, 4111 cylinders, total 66055248 sectors
Units = sectors of 1 * 512 = 512 bytes
   Device Boot      Start         End      Blocks   Id  System
/dev/sdb1   *          63   312560639   156280288+   7  HPFS/NTFS
Che è successo secondo voi? Posso recuperare il contenuto del disco?
Matteo.
P.S.: non ho riprovato, e non ne ho occasione ora, a rimetterlo dentro
il computer per vedere se e come il bios lo vede.

 Ho montanto il disco su un case usb esterno e sembra funzionare, ma mi
Il case usb e' recente?
Perche' sembra che ti si fermi al classico limite dei 32GB.
-- 
           |Save our planet!
    Ciao   |Save wildlife!
   roberto |For your E-MAIL use ONLY recycled Bytes  !!
           |roberto poggi   
rpo...@softhome.net

 Perche' sembra che ti si fermi al classico limite dei 32GB.
Di un annetto c.a., mi sembra, non ricordo, insieme ci ho comprato un
disco da 120Gb e lo vedeva, e fino a ieri ce ne era uno da 40Gb (ma non
ho provato... stasera provo).
Tu pensi che il problema possa essere del case?
Se pensi di si stasera lo rimetto nel pc e vediamo.
Però perchè 4111? di solito si ferma a numeri tondi.
Potrebbe essere che il disco ha subito qualche problema elettrico che
ha resettato qualche chip?
Perchè il fatto che il bios non me lo vedeva (almeno fino a prima di
metterlo nel case usb) mi viene da pensare che gli passa una geometria
sballata.
Il fatto è che il bios non ci pensa due volte a skippare il disco;
tanto veloce quanto come se non ci fosse.
Che strumenti ci sono che possono dare una occhiata ai dischi a
BASSISSIMO livello?
Matteo

Era il Thursday 08 June 2006 12:22 e cosi` parlo` Matteo Rossini ...
[cut-all]
L'hai lavato e si e` infeltrito ? 
:-)

 BASSISSIMO livello?
Nessuno, a quel livello.
Il problema e' nella combinazione controller-disco: se il controller
non ti riconosce il disco, i programmi possono farci ben poco.
Se visibile, ogni produttore ha i suoi tools di controllo.
Puoi sempre (se non l'hai gia' fatto) entrare nel bios e fargli
riconoscere di nuovo le periferiche.


 :-)
La seconda probabilmente... con tutto quel calore... :-D
Magari dovrei aggiungere una ventola. Ho trovato un cavo di
alimentazione staccato ma non ho ancora visto a cosa era collegato.
Matteo


# fdisk /dev/sdb
The number of cylinders for this disk is set to 4111.
Command (m for help): p
Disk /dev/sdb: 33.8 GB, 33820286976 bytes
255 heads, 63 sectors/track, 4111 cylinders
Units = cylinders of 16065 * 512 = 8225280 bytes
   Device Boot      Start         End      Blocks   Id  System
/dev/sdb1   *           1       19456   156280288+   7  HPFS/NTFS
Command (m for help): d
Selected partition 1
Command (m for help): p
Disk /dev/sdb: 33.8 GB, 33820286976 bytes
255 heads, 63 sectors/track, 4111 cylinders
Units = cylinders of 16065 * 512 = 8225280 bytes
   Device Boot      Start         End      Blocks   Id  System
Command (m for help): n
Command action
   e   extended
   p   primary partition (1-4)
p
Partition number (1-4): 1
First cylinder (1-4111, default 1):
Using default value 1
Last cylinder or +size or +sizeM or +sizeK (1-4111, default 4111):
Using default value 4111
Command (m for help): p
Disk /dev/sdb: 33.8 GB, 33820286976 bytes
255 heads, 63 sectors/track, 4111 cylinders
Units = cylinders of 16065 * 512 = 8225280 bytes
   Device Boot      Start         End      Blocks   Id  System
/dev/sdb1               1        4111    33021576   83  Linux
Command (m for help): q
Non ho ancora deciso se fidarmi (l'ho fatto diverse volte) a fare
questo:
# dd if=/dev/sdb of=/root/mbr count=1
# dd if=/dev/zero of=/dev/sdb count=1
# fdisk /dev/sdb
scriverà qualcosa tipo "invalid partition table [...] will be correct
with 'w' command"
con w reinizializzo la tabella delle partizioni.
quello che mi interessa è vedere se prenderebbe 4000 o 19000.
Prima però voglio almeno recuperare il contenuto di quei 32Gb (e su
questo sono fiducioso che esiste qualche tool per linux per recuperare
partizioni ntfs... è già successo in passato di riuscire a recuperare
l'ntfs e un vecchio drvspace solo con linux quando con windows avevo
perso la speranza)
Matteo

 perso la speranza)
Io farei due prove.
La prima, lascerei andare fino in fondo il
dd if=/dev/sdb1 of=/dev/null
Se arriva in fondo, si puo' provare a riscrivere la tavola delle
partizioni.
La seconda prova consiste nel provare un testdisk su quello, o
su una immagine di quel disco.
Al limite, ntfsresize potrebbe risistemare la struttura.
MA IO LO FAREI SOLO SU UNA COPIA.


> Perche' sembra che ti si fermi al classico limite dei 32GB.
Io lascerei perdere l'usb.
Tienilo su uno dei canali pata a disposizione e fai le prove da li.
Anzitutto deve riconoscerlo il bios. Se non lo fa (e prima lo faceva,
deduco) prova a metterlo come master sul primario. E usa gli stessi
connettori del disco di sistema. In questo modo verifichi se ` un problema
di cavi, di canale pata o di disco fumato.

Buone notizie.
Ho rimesso il disco nel pc buttandolo come sencondary slave; non ho un 
master connesso per ora... ho solo sbagliato la posizione del ponticello. 
Domani lo sistemerò meglio.
Il bios me lo vede da 32Gb (... almeno lo vede ...), linux è riuscito a 
vedere tutti i 160Gb. Ho cominciato a farmi la copia delle cose più 
importanti.
Windows credo che continua a vederlo da 32Gb. Non posso andare su "Gestione 
dischi" perchè non riesce a connettersi al servizio rpc (so dov'è il 
problema perchè l'ha fatto un'altra volta in passato, ma non ho tempo da 
perderci ora). Credo 32Gb perchè continua a vedere l'unità D: come non 
formattata.
Matteo 


E certo che lo vedeva da 32Gb, il bios
il motivo per cui all'inizio ha dato il problema non lo so, ma il fatto che 
successivamente lo vedesse a 32Gb è perchè per metterlo master ho messo il 
jumperino nel punto sbagliato, appunto dove dice "usa disco come 32Gb"
Ora funziona tutto.
Almeno ho colto l'occasione per scambiare i bus (prima avevo il 
masterizzatore solo soletto nel secondary e i due dischi nel primary. ora li 
ho spalmati sui due bus.
Matteo