O System afirma que o meu USB está montado quando eu o insiro e não consigo (des) montá-lo. Como faço para corrigir isso?

1

Estou executando o servidor Ubuntu 14.10 (sem cabeça).

Eu tenho um grupo de flashdrives USB que preciso reformatar para uso em vários dispositivos. Eu montei, copiei e copiei com sucesso arquivos para e desmontou três dispositivos. Ao montar o quarto, o sistema acredita que a primeira partição deste disco já foi montada; nunca foi inserido no servidor antes. Não consigo montar ou desmontar a partição. Neste ponto, estou assumindo que isso é minha culpa em algum ponto do caminho, mas não consigo fazer com que as coisas voltem ao normal.

Os dispositivos

As unidades USB devem ser formatadas com duas partições e um cabeçalho vazio de 8MB. A tabela é necessária, pois eles serão usados para equipamentos especializados. Cada dispositivo tem aproximadamente 2 GB de tamanho

USB Partition table (to-be): [-EMPTY 8MB-|-- >1.1GB FAT 16--|--751MB FAT16--]

Os dispositivos USB terão, no mínimo, uma partição pré-formatada de Ext4 ou Fat16.

A situação

Eu inseri um novo dispositivo USB. A tentativa de montar o dispositivo falha:

$ sudo mount sdb1
  mount: can't find sdb1 in /etc/fstab
$ ls /media                   # Mounting a partition defaults to here
  <empty>
$ pmount sdb1
  Error: device /dev/sdb1 is already mounted to /media/sdb1
$ ls /media
  <empty>

df não exibe /dev/sdb1 em todos os

Filesystem     1K-blocks     Used Available Use% Mounted on
/dev/sda2      944392620 35959148 860437980   5% /
none                   4        0         4   0% /sys/fs/cgroup
udev             8183068        4   8183064   1% /dev
tmpfs            1638852     5640   1633212   1% /run
none                5120        0      5120   0% /run/lock
none             8194244        0   8194244   0% /run/shm
none              102400        4    102396   1% /run/user
/dev/sda1         523248     3436    519812   1% /boot/efi

fdisk exibe o dispositivo corretamente

Disk /dev/sdb: 1.9 GiB, 1993342976 bytes, 3893248 sectors
Units: sectors of 1 * 512 = 512 bytes
Sector size (logical/physical): 512 bytes / 512 bytes
I/O size (minimum/optimal): 512 bytes / 512 bytes
Disklabel type: dos
Disk identifier: 0x5651d77f

Device     Boot   Start     End Sectors  Size Id Type
/dev/sdb1          2048 2353151 2351104  1.1G 83 Linux
/dev/sdb2       2353152 3893247 1540096  752M  6 FAT16

GParted exibirá o dispositivo corretamente (tamanho, partição (ões), tabela etc.), mas mostrará que sdb1 está montado. Eu posso excluir a partição, formatar para ext4, no entanto, não posso formatá-lo para Fat16.

Eu posso , no entanto, monte sdb2 via pmount e visualize os arquivos que existem. Desmontar, particionar e apagar é sempre bem sucedido. Se eu inserir dispositivos adicionais (por exemplo, sdc ), posso fazer alterações sem problemas. Se eu trocar este dispositivo para que seja sdc em vez de sdb , ainda posso acessá-lo sem problemas.

Suponho que eu tenha me enganado e não tenha desmontado corretamente sdb1 em um dispositivo anterior que está causando esse problema. Também estou assumindo que mkfs.vfat também está com problemas porque mkfs.ext3,mkfs.ext4 será executado sem erros.

Existe uma maneira de se recuperar desse problema? Minha (única) solução seria reinicializar o sistema? Espero evitar isso porque temos vários serviços de busca de dados e hospedagem de dados em execução.

Solução

Muito obrigado ao steve por sua solução simples. De todas as minhas pesquisas, não aconteceu de me deparar com isso.

Se df , fdisk -l , umount -l , pumount não funcionar, você deverá verificar /etc/mtab a seguir. Este arquivo tinha o seguinte conteúdo:

/dev/sda2 / ext4 rw,errors=remount-ro 0 0
proc /proc proc rw,nodev,noexec,nosuid 0 0
sysfs /sys sysfs rw,nodev,noexec,nosuid 0 0
none /sys/fs/cgroup tmpfs rw,uid=0,gid=0,mode=0755,size=1024 0 0
. . .
systemd /sys/fs/cgroup/systemd cgroup rw,nosuid,noexec,nodev,none,name=systemd 0 0
/dev/sdb1 /media/sdb1 ext4 rw,nodev,nosuid,noexec,errors=remount-ro,user 0 0

Essa última linha foi a fonte do problema. Simplesmente removê-lo consertou tudo.

Por favor, tente usar outros guias / soluções antes de tentar isso. Não tenho conhecimento de nenhum impacto que isso possa ter em seu sistema ou dispositivo se outros serviços estiverem tentando ativamente ler / gravar / bloquear essa partição.

    
por Kamikaze Rusher 28.07.2015 / 22:48

1 resposta

1

Experimente umount -f /media/sdb1 ou umount -l /media/sdb1 .

Se tudo mais falhar, você pode editar manualmente /etc/mtab para remover a entrada de montagem ofensiva.

    
por 28.07.2015 / 22:51