it-swarm-eu.dev

Jak mohu bezpečně odebrat disk SATA z běžícího systému?

Někdy potřebuji připojit disk do diskového prostoru. Jindy mám velmi podivné nastavení připojení SSD pomocí kabelu SATA-eSATA na mém notebooku, zatímco tahám energii ze stolního počítače.

Jak mohu bezpečně vyjmout disk SATA ze systému? Toto Phoronix vlákno fóra má několik návrhů:

justsumdood napsal:

(Noymous) droid napsal:
Co tedy uděláte na straně softwaru před odpojením? Je to jednoduché „umount/dev/sd“ [písmeno jednotky]? po odpojení zařízení „vypnout“ (nebo spát) jednotku:

hdparm -Y /dev/sdX

(kde X představuje zařízení, které chcete vypnout. například:/dev/sdb)

toto vypne pohon a umožní jeho odstranění bez rizika přepětí.

Znamená to, že mezipaměti disku jsou poté řádně propláchnuty a vypnuty?

Další návrh ze stejného vlákna:

chithanh napsal:
Veškerý hardware SATA a eSATA lze fyzicky připojit za provozu (tj. Pokud vložíte/zatáhnete zástrčku, nepoškodí se).

Jak to zvládne čipová sada a ovladač? To je další otázka. Některé kombinace ovladač/čipová sada nezpracovávají správně připojení za horka a vyžadují příkaz warmplug, jako je následující:

echo 0 - 0 > /sys/class/scsi_Host/hostX/scan

Nahraďte X příslušným číslem pro váš SATA/eSATA port.

Pochybuji, že je správný způsob, jak toho dosáhnout, ale nemohu najít ani nějaký důkaz proti tomu.

Jaký je správný způsob odebrání připojeného disku ze systému? Předpokládejme, že jsem již odpojil každý oddíl na disku a spustil sync. Pokud je to možné, ukažte na nějakou oficiální dokumentaci. Ve stromu dokumentace systému Linux jsem nenašel nic, ani Linux ATA wiki .

67
Lekensteyn
  1. Odpojte všechny soubory na disku. (umount ...)
  2. Deaktivujte všechny skupiny LVM. (vgchange -an)
  3. Ujistěte se, že nic nepoužívá disk k ničemu.
  4. Jakmile to uděláte, mělo by být bezpečné jej odpojit.

Pokud chcete být zvlášť opatrní, nejprve proveďte echo 1 > /sys/block/(whatever)/device/delete. Tím zrušíte registraci zařízení z jádra, takže víte nic nepoužíváte, když jej odpojíte. Když to udělám s jednotkou v krytu eSATA, slyším, jak se hlavy jednotky zaparkují, takže jádro zřejmě říká disku, aby se připravil na vypnutí.

Pokud používáte řadič AHCI, měl by se vypořádat s odpojenými zařízeními. Pokud používáte jiný druh řadiče SATA, může být ovladač zmaten hotpluggingem.

Podle mých zkušeností funguje SATA hotplugging (s AHCI) v Linuxu docela dobře. Odpojil jsem optickou jednotku, připojil pevný disk, prohledal jsem chyby, vytvořil souborový systém a zkopíroval data, odpojil a odpojil, připojil odlišnou jednotku DVD a vypálil disk, to vše se strojem a běží.

84
Wyzard

co takhle eject /dev/sdX? V mém nastavení to příkazy umounts, synchronizuje a vypíná jednotku.

5
bitvitez

Tyto dvě sekce jsou pro různé věci.

První je pro odpojení. Druhý je pro připojování.

Pro odpojení operační systém synchronizuje data během odpojení. Pokud je tedy disk odpojen (za předpokladu, že ve skutečnosti máte plnou hardwarovou podporu), můžete disk vypnout a odpojit bez rizika ztráty nebo poškození dat.

Pro připojení by mělo být zařízení automaticky rozpoznáno. Pokud ne, můžete tento příkaz spustit a spustit kontrolu sběrnice. Jakmile je zařízení rozpoznáno, můžete jej připojit.

A dovolte mi to upozornit tím, že řeknu, že jsem něco takového udělal s USB disky.

5
bahamat

Mám pár skriptů, které staví na odpověď Wyzarda . První, scsi-drop, je bezpečné odpojení jednoho disku:

#!/bin/sh

if test -h "$1"
then
    disk=$(chase "$1")
else
    disk="$1"
fi

if test -b "$disk"
then
    echo 1 >/sys/block/$(basename "$disk")/device/delete
else
    echo "$0: not a block device: $1" >&2
    exit 1
fi

Jeho hlavní výhoda je, že můžete předat symbolický odkaz, jako například v /dev/disk/by-id/ a vyřeší to na skutečné zařízení. Vyžaduje instalaci chase; můžete být schopni dosáhnout stejného výsledku pomocí readlink -e.

Druhý skript, scsi-rescan, se používá po připojení nového zařízení za provozu:

#!/bin/bash

exec tee /sys/class/scsi_Host/host*/scan <<<'- - -' >/dev/null

Díky tomu všechny adaptéry znovu vyhledají zařízení. To byl jediný způsob, jak se mi podařilo získat novou kapacitu a tabulku oddílů, aby bylo možné číst.

2
Toby Speight

Jednotky SATA ve skutečnosti automaticky zaparkují hlavy, když dojde ke ztrátě energie. Vytahování jednotky, zatímco se stále točí, by nemělo vést k problémům. Spřádací disky jsou však náchylné k útokům, pokud dojde k nárazu. Slyšíte to, když máte slabý výkon nebo sluneční erupce.

Většina škod je obvykle způsobena neuzavřenou mezipamětí a nepoužitými zápisy do vyrovnávacích pamětí atd. ... Proto je nutné jednotku před jejím vyjmutím odpojit. Příkaz SCSI je jen dobrým měřítkem a funguje na stejném konci.

0
spongebob