Fissare il device ad ogni Hard disk

14 risposte [Ultimo contenuto]
Ritratto di Jacobbe73
Jacobbe73
(Geek)
Offline
Geek
Iscritto: 19/04/2013
Messaggi: 65

Ciao a tutti,
scrivo questo post per saper come risolvere un problema che sto riscontrando sul mio pc (che uso da server casalingo) con Debian 7 (installato diversi anni fa).
Questa la mia configurazione hardware:
La mainboard ha due porte sata alle quali ho collegato su "sata 1" un solid state (per il sistema operativo) e sul "sata 2" un hdd rotativo da 3 tera.
Sulla porta PCI ho installato un controllare sata a 4 porte al quale ho collegato due hard disk rotativi in Raid 1.

Questo PC è sempre acceso ma funziona come server FTP quindi ci accedo ogni tanto da remoto.
In passato, per non tenere in movimento sempre i tre hard disk rotativi, avevo impostato nel file hdparm.conf le seguenti impostazioni:

/dev/sda1 {
mult_sect_io = 16
write_cache = off
spindown_time = 60
}

/dev/sdb1 {
mult_sect_io = 16
write_cache = off
spindown_time = 60
}

/dev/sdc {
mult_sect_io = 16
write_cache = off
spindown_time = 60
}

/dev/sdd {
mult_sect_io = 16
write_cache = off
spindown_time = 60
}

dove /dev/sda1 è il solid state su quale è installato il sistema operativo, /dev/sb1 è il disco rotativo da 3 terabyte, /dev/sdc è il primo disco rotativo del raid e /dev/sdd è il secondo disco rotativo del raid.

Fin qui tutto bene, solo che mi sono accorto che riavviando il pc non sempre l'assegnazione dei device corrisponde a quella da me appena descritta quindi le impostazioni scritte nel file hdparm.conf non funzionano e i dischi mi rimangono accesi.
Come posso ovviare al problema? ho notato che, in gestione dischi, per ogni supporto esiste un identificativo chiamato WWN (Nome World Wide) che è univoco, sarebbe possibile impostare questo parametro nel file hdparm.conf?
Grazie in anticipo per qualsiasi suggerimento in merito!
Saluti
Jacobbe73

Ritratto di mcortese
mcortese
(Moderatore)
Offline
Moderatore
Iscritto: 27/02/2009
Messaggi: 2894

Prova a usare /dev/disk/by-id/wwn-XXXX invece di /dev/sdX.

Ritratto di Jacobbe73
Jacobbe73
(Geek)
Offline
Geek
Iscritto: 19/04/2013
Messaggi: 65

@Mcortese,
innanzi tutto grazie per la tua gentile e celere risposta, ho fatto subito la prova che mi hai suggerito e questa la situazione:
dei tre hdd rotativi sono andati in stand-by i due del Raid ma non quello da 3 Tera montato sulla porta "sata 2" della mia mainboard.
questo il file hdparm.conf modificato come da tuo suggerimento:

#RAID 1 disco 1:
/dev/disk/by-id/wwn-0x50014ee25f157aa5 {
mult_sect_io = 16
write_cache = off
spindown_time = 60
}

#RAID 1 disco 2:
/dev/disk/by-id/wwn-0x50014ee25ee7d1dc {
mult_sect_io = 16
write_cache = off
spindown_time = 60
}

#Solid State Disk:
/dev/disk/by-id/wwn-0x5001b44815517cb9 {
mult_sect_io = 16
write_cache = off
spindown_time = 60
}

#Wester Digital 3 Terabyte:
/dev/disk/by-id/wwn-0x50014ee0ae322402 {
mult_sect_io = 16
write_cache = off
spindown_time = 60
}

Inoltre ho verificato il nome WWN di ciascun device e sono tutti corretti.

Ritratto di mcortese
mcortese
(Moderatore)
Offline
Moderatore
Iscritto: 27/02/2009
Messaggi: 2894

Prova prima di riga di comando:

hdparm -y /dev/disk/by-id/wwn-0x50014ee0ae322402
dovrebbe "spegnere" il disco immediatamente.
hdparm -S 60 /dev/disk/by-id/wwn-0x50014ee0ae322402
dovrebbe impostare il timeout a 5 minuti.

Se queste opzioni funzionano quando date dal vivo e non quando inserite in hdparm.conf, deve esserci qualche problema di sintassi nel file. Ricontrolla che non ci siano caratteri strani...

Ritratto di Claudio
Claudio
(Guru)
Offline
Guru
Iscritto: 05/09/2007
Messaggi: 1057

Jacobbe73 ha scritto:

..solo che mi sono accorto che riavviando il pc non sempre l'assegnazione dei device corrisponde a quella da me appena descritta ...


Ammetto di non capirne molto quindi magari prenderò una cantonata pazzesca dicendo quello che sto per dire ma tant'è...
Non è che puoi far fare l'assegnazione univoca degli hdd in fstab?

Notebook Hp Pavilvion dv6 i5 amd64, 4 GB Ram, scheda grafica nVidia Corporation GT216 [GeForce GT 320M] (rev a2)
Notebook Acer Asprire 5755G amd64, 8 GB Ram, scheda grafica nVidia GeForce GT 540M
Debian testing kde

Ritratto di Jacobbe73
Jacobbe73
(Geek)
Offline
Geek
Iscritto: 19/04/2013
Messaggi: 65

Ciao Mcortese,
grazie per la tua risposta, ho seguito i tuoi suggerimenti ma purtroppo ancora c'è qualcosa che sfugge ed esattamente:
con il comando "hdparm -y" metto subito in stand-by il disco in questione, mentre dopo averlo "risvegliato" con il comando "hdparm -S 60" mi viene segnalato dal prompt che andrà in stand-by dopo 5 minuti ma invece se lo interrogo "hdparm -C" (ovviamente dopo i 5 minuti) lo stato del disco risulta esser sempre "idle".
Ho inoltre verificato nuovamente la sintassi ed il nome univoco del device ed è corretto.
Allego qui di seguito immagine della gestione dischi:

mi viene un dubbio però:
non è che la stringa all'interno del file hdparm.conf relativa al disco allo stato solido non potendo andare in stand-by (perché su di esso alloggia il sistema operativo) in qualche modo non permette al disco citato successivamente (quello da 3 Tera che mi sta causando il problema) di andare in stand-by?

Ritratto di Jacobbe73
Jacobbe73
(Geek)
Offline
Geek
Iscritto: 19/04/2013
Messaggi: 65

@ Claudio,
innanzi tutto grazie per la risposta ed il tuo consiglio!
Come posso fare l'assegnazione univoca degli hdd in fstab?
ammetto di essere neofita...

Ritratto di mcortese
mcortese
(Moderatore)
Offline
Moderatore
Iscritto: 27/02/2009
Messaggi: 2894

A meno di errori di sintassi, le varie voci del file hdparm.conf non si influenzano a vicenda. Il file è letto all'avvio ed è usato per lanciare una serie di comandi hdparm, dopodiché ha finito la sua missione. Quindi questo pezzo:

#Wester Digital 3 Terabyte:
/dev/disk/by-id/wwn-0x50014ee0ae322402 {
mult_sect_io = 16
write_cache = off
spindown_time = 60
}
in realtà non fa altro che lanciare
hdparm /dev/disk/by-id/wwn-0x50014ee0ae322402 -m 16 -W -S 30

Dagli esperimenti che hai fatto usando direttamente hdparm sembrerebbe che il comando sia accettato, quindi imposti effettivamente il timeout a 5 minuti, altrimenti restituirebbe subito un errore... solo che poi il disco in standby non ci va. Qui non c'entrano niente sintassi e file: c'è qualcosa che tiene sveglio il disco.

Fa' esperimenti con un timeout sensibilmente più basso, ad esempio 3 (pari a 15 secondi) e vedi se il disco si spegne dopo 15 secondi per poi risvegliarsi entro i successivi 5 minuti. Se scopri che c'è qualcosa che accede al disco con una periodicità inferiore ai 5 minuti, forse non ha senso metterlo a dormire...

Ritratto di Jacobbe73
Jacobbe73
(Geek)
Offline
Geek
Iscritto: 19/04/2013
Messaggi: 65

Ciao Mcortese,
allora ho fatto diversi test però purtroppo senza trovarne la soluzione:
se apro una finestra terminale di root ed eseguo il comando hdparm -y /dev/sdd1
ottengo come risposta:
/dev/sdd1:
issuing standby command

quindi vado ad interrogare lo stato del mio disco e risulta in stand-by (drive state is: standby)

Se però lo risveglio e sempre da terminale invio il comando hdparm -S 3 /dev/disk/by-id/wwn-0x50014ee0ae322402 ottengo la seguente risposta:
/dev/disk/by-id/wwn-0x50014ee0ae322402:
setting standby to 3 (15 seconds)

ma alla successiva interrogazione (passati ovviamente i 15 secondi) ottengo sempre (drive state is: active/idle)

Inoltre, se forzo lo stato di stand-by di questo disco (hdparm -y /dev/sdd1) e verifico lo stato anche dopo diverse ore, questo rimane in stand-by.

Mi rendo conto che sto citando una situazione alquanto anomala, ma non riesco proprio a capire cosa possa impedire al comando temporizzato di mettere in stand-by il disco.
Saluti e grazie per il cortese supporto!
Jacobbe73

Ritratto di mcortese
mcortese
(Moderatore)
Offline
Moderatore
Iscritto: 27/02/2009
Messaggi: 2894

Non riesco a capire se hai ancora problemi nell'indirizzare il disco tramite il suo WWN, che era il tema originario di questa discussione e riassunto nel titolo, o se invece stai adesso sollevando un'altra questione, cioè che il disco, sia indirizzato tramite WWN sia tramite nome canonico sdX, sembri obbedire al comando -y ma non a -S.

Per il secondo problema, può darsi che il dispositivo semplicemente menta. Dopo che l'hai messo in standby lo senti ancora ruotare o si è effettivamente fermato? Se accedi ai dati esce dallo standby?

Ritratto di Jacobbe73
Jacobbe73
(Geek)
Offline
Geek
Iscritto: 19/04/2013
Messaggi: 65

mcortese ha scritto:

Non riesco a capire se hai ancora problemi nell'indirizzare il disco tramite il suo WWN, che era il tema originario di questa discussione e riassunto nel titolo, o se invece stai adesso sollevando un'altra questione, cioè che il disco, sia indirizzato tramite WWN sia tramite nome canonico sdX, sembri obbedire al comando -y ma non a -S.

Per il secondo problema, può darsi che il dispositivo semplicemente menta. Dopo che l'hai messo in standby lo senti ancora ruotare o si è effettivamente fermato? Se accedi ai dati esce dallo standby?

Ciao Mcortese,
si effettivamente grazie ai tuoi consigli ho risolto il problema di cui titolo del mio thread Applause
Diciamo che lo scopo di fissare i vari device ad ogni avvio era ovviamente finalizzato alla possibilità di mettere in stand-by i dischi di questa macchina e purtroppo solo su uno (quello da tre tera) non riesco a risolvere e quindi a chiudere la questione.
Non ho ancora fatto la prova di verificare se effettivamente l'hard disk in questione, dopo il comando "-S" vada effettivamente in stand-by (quindi ascoltando il rumore in totale silenzio) però com'è possibile che il sistema operativo menti a riguardo?
Quando lo metto in stand-by manualmente tramite "-y" e lo interrogo mi da lo stato di stand-by. Poi per risvegliarlo vado a sfogliare le sue cartelle ed alla successiva interrogazione "-y" mi da come status "idle" quindi è sveglio.