J'ai parfois besoin de brancher un disque dans une baie de disque. D'autres fois, j'ai la configuration très étrange de connecter un SSD à l'aide d'un câble SATA-eSATA sur mon ordinateur portable tout en alimentant un ordinateur de bureau.
Comment puis-je retirer en toute sécurité le disque SATA du système? Ce fil de discussion sur le forum de Phoronix contient quelques suggestions:
justsumdood a écrit:
Un droïde (noymous) a écrit:
Que faites-vous alors du côté logiciel avant de débrancher? Est-ce un simple "umount / dev / sd" [lettre de lecteur]? après le démontage de l'appareil, pour "éteindre" (ou mettre en veille) l'unité:hdparm -Y /dev/sdX
(où X représente le périphérique que vous souhaitez éteindre. Par exemple: / dev / sdb)
cela mettra le variateur hors tension, ce qui permettra son retrait sans risque de surtension.
Cela signifie-t-il que les caches de disque sont correctement vidés et mis hors tension par la suite?
Une autre suggestion du même fil:
chithanh a écrit:
Tout le matériel SATA et eSATA est physiquement capable d'être branché à chaud (c'est-à-dire non endommagé si vous insérez / débranchez la prise).La manière dont le chipset et le pilote gèrent cette question est une autre question. Certaines combinaisons pilote / chipset ne gèrent pas correctement le branchement à chaud et nécessitent une commande warmplug telle que la suivante:
echo 0 - 0 > /sys/class/scsi_host/hostX/scan
Remplacez X par le numéro correspondant à votre port SATA / eSATA.
Je doute que ce soit la bonne façon de le faire, mais je ne peux pas non plus trouver de preuve.
Alors, quelle est la bonne façon de supprimer un disque connecté d'un système? Supposons que j'ai déjà démonté chaque partition du disque et que je me suis lancé sync
. Veuillez indiquer si possible une documentation officielle, je n’ai rien trouvé dans l’arborescence de la documentation Linux, ni dans le wiki Linux ATA .
1
pour ledelete
faire disparaître et j'entendais le disque en train de tourner. Cehdparm -Y
n’était pas suffisant, car les/dev/
entrées existeraient toujours. Merci!echo 1 > /sys/block/(whatever)/device/delete
commande car le lecteur va stationner les têtes, arrêter complètement le disque et désactiver l'alimentation sur le bus. Si une tête non garée touche une plaque en rotation, le lecteur peut être définitivement détruit.echo 1 > /sys/block/(whatever)/device/delete
ne fonctionnera passudo
, l’erreur "Autorisation refusée" sera émise. Vous devrez devenir une vraie racine, utilisez donc plain old à lasu
place.sudo tee
pour émuler une redirection en tant que root:echo 1 | sudo tee /sys/block/(whatever)/device/delete
Ces deux sections sont pour des choses différentes.
Le premier est pour débrancher . La seconde est pour brancher .
Pour le débranchement, le système d'exploitation synchronise les données pendant l'opération de démontage. Ainsi, si le disque est démonté (en supposant que vous bénéficiez d'un support matériel complet), vous pouvez l'éteindre puis le débrancher sans risque de perte de données ou de corruption.
Pour brancher, l'appareil doit être automatiquement reconnu. Sinon, vous pouvez exécuter cette commande pour déclencher une analyse du bus. Une fois le périphérique reconnu, vous pouvez le monter.
Et permettez-moi de préciser que je n’ai jamais fait ce genre de chose avec des clés USB.
la source
hdparm -Y
s'occupera de ça. C'est essentiellement ce que le système fait chaque fois que vous suspendez ou arrêtez.qu'en est-il
eject /dev/sdX
? Sur ma configuration, cette commande permet de monter, de synchroniser et d’éteindre le lecteur.la source
ioctl()
opération utilisée par l'eject
outil. Les lecteurs de disque dur Esata ne le prennent pas en charge, mais les périphériques optiques, les disquettes et probablement les lecteurs flash, oui.J'ai une paire de scripts qui s'appuie sur la réponse de Wyzard . La première
scsi-drop
consiste à détacher en toute sécurité un seul disque:Son principal avantage est que vous pouvez lui transmettre un lien symbolique, tel que trouvé dans,
/dev/disk/by-id/
et cela résoudra ce problème sur le périphérique réel. Cela nécessitechase
d'être installé; vous pourrez peut-être obtenir le même résultat en utilisantreadlink -e
.Le second script,
scsi-rescan
est utilisé après avoir branché à chaud un nouveau périphérique:Cela fait que tous les adaptateurs recherchent à nouveau des périphériques. C’est la seule façon pour moi d’obtenir la lecture de la nouvelle table de capacité et de capacité.
la source
En fait, les disques SATA garent automatiquement les têtes en cas de coupure de courant. Tirer le disque en cours de rotation ne devrait pas entraîner de problèmes. Cependant, les disques en rotation sont sujets aux bosses s’ils sont heurtés. Vous pouvez entendre cela lorsque vous avez une puissance instable ou des éruptions solaires.
La plupart des dommages sont généralement causés par un cache non vidé et des écritures non validées dans des mémoires tampons, etc. C'est pourquoi vous DEVEZ démonter un lecteur avant de le retirer. La commande SCSI est juste une bonne mesure et va dans le même sens.
la source