Parar / trocar o disco hot plug que é o eSATA

2

Gostaria de saber quais seriam as práticas recomendadas para iniciar / parar / alternar com segurança um disco eSATA.

Primeiro: eu li este post: Removendo com segurança discos eSATA mas o dado e resposta aceita não funciona para mim. No começo eu queria pedir esclarecimentos, mas eu li que isso deve ser evitado, então minha única opção foi abrir outra pergunta.

Estou executando o kUbuntu 13.04. Minha BIOS suporta a AHCI e eu especificamente habilito o hotplug para a porta SATA que está vinculada à minha baía eSATA. Meu dock eSATA tem um botão liga / desliga.

Começar parece fácil o suficiente. Se eu conectar um disco no compartimento e, em seguida, ligá-lo, o disco será montado automaticamente como um disco "fuseblk" (pelo menos para o que eu testei, parece que é como um disco NTFS é relatado)

No entanto, gostaria de saber como posso parar o disco sem parar o computador, possivelmente para montar outro disco, tudo isso evitando perda de dados e danos ao disco físico, e de preferência de forma (semi) automatizada. não precisa abrir minha linha de comando toda vez.

O que eu encontrei até agora:

  • O sdparm não parece ser de uso algum, mesmo achando que deveria ser a ferramenta certa (o disco é / dev / sda), mas sdparm -C stop não faz nada
  • O
  • hdparm, por outro lado, funciona para colocar o disco em suspensão sudo hdparm -Y /dev/sda fará com que o disco pare de girar. No entanto, o disco ainda está montado conforme relatado pela mount -l
  • sudo echo 1 > /sys/block/sda/device/delete vai me dar uma permissão de erro recusado (mesmo que eu usei o sudo)
  • há um ícone de "ejetar" se eu clicar com o botão direito no disco no Dolphin que desmontará o disco, mas o disco não parará de girar (e com certeza não quero remover fisicamente um disco giratório)

Atualmente, desmonto o disco usando o botão "ejetar" e, em seguida, coloco o disco em repouso. No entanto, eu não sei o suficiente do gerenciamento de HDs para ter certeza de que "dormir" é o suficiente. Não existe um comando "stop" ou "power off" real? Quando o sistema operacional está indo para o desligamento, ele simplesmente coloca as unidades em suspensão e é suficiente para permitir o manuseio seguro.

Além disso, ao seguir essas etapas e alternar para outro disco, o disco às vezes aparecerá como / dev / sde em vez de / dev / sda, o que me leva a acreditar que há alguns recursos que não são liberados corretamente. Talvez este seja precisamente o ponto do comando sudo echo 1 > /sys/block/sda/device/delete , mas como não consigo executá-lo, mesmo com um sudo, não é realmente útil.

Existe algum outro comando que eu deva conhecer e adicionar à sequência?

Como para fazer isso automaticamente, eu acho que posso fazer um script shell, mas e se eu tiver um disco multi-partição. Usar umount / dev / sda1 não desmontará outras partições, e eu não acho que é possível desmontar usando apenas / dev / sda é? Funcionaria com / dev / sda *? Atualmente, o único disco com múltiplas partições que tenho à mão é o meu disco de sistema, por isso não posso tentar desmontá-lo e ver o que acontece.

    
por r0k 22.05.2013 / 17:22

1 resposta

4

Você terá que combinar todos os elementos na ordem correta caso esteja vindo da situação de um disco giratório que contém um volume sendo montado.

  1. Desmonte todos os volumes neste disco, por exemplo:

    sudo umount /path/to/mount/point
    

    Verifique se está desmontado usando grep sda /proc/mounts . Repita para outros volumes no disco físico.

  2. Pare a unidade, por exemplo:

    sudo hdparm -Y /dev/sda
    
  3. Diga ao controlador SATA que você deseja desconectá-lo:

    sudo sh -c "echo 1 > /sys/block/sda/device/delete"
    
por gertvdijk 22.05.2013 / 17:30