Forçar a desmontagem de um dispositivo, como?

8

Montei um dispositivo de bloco (disco rígido interno) para dizer ~/HDe estou tentando,

~# umount ~/HD

Responde,

umount: device is busy.

Agora eu mato todos os processos manualmente examinando

~# fuser -m ~/HD

Também asseguro que realmente nenhum processo esteja acessando o ~/HDcaminho

~# lsof | grep HD

Ainda umount ~/HDdiz que device is busymesmo com -fopção.

PS: Não quero usar a -lopção de umount, já que o dispositivo montado é realmente um dispositivo mapeador criptografado, que por sua vez não será desmontado, a menos que o dispositivo mapeador esteja claramente desmontado.

Então, basicamente, minha pergunta é como forçar realmenteumount a desmontar um dispositivo OU Como um dispositivo ainda pode ser marcado como ocupado enquanto nenhum processo está acessando (ou pelo menos fusere lsofnão o denuncia) e o que posso fazer sobre isso?

Estou no Ubuntu 9.10 x64.

Vikrant Chaudhary
fonte
Veja também: superuser.com/questions/73028
Ilari Kajaste

Respostas:

3

Você verá esse comportamento se tiver montado algo mais em um subdiretório ~ / hd. Nesse caso, nem o fusor nem o lsof mostrarão nada. Se você não montou nada em ~ / hd ('mount' responderá a essa pergunta), não tenho certeza do que verificar.

larsks
fonte
Estou selecionando sua resposta como a melhor, mesmo que essa não seja minha condição, mas pode ajudar outras pessoas. Além disso, não consegue encontrar uma resposta melhor. ;)
Vikrant Chaudhary
5

Verifique se o diretório de trabalho atual (execute 'pwd') não está em ~ / hd. Se você estiver atualmente nesse diretório, o umount se recusará a desmontar.

IvanGoneKrazy
fonte
3

O comando lsof informará quais processos mantêm um arquivo aberto.

kmarsh
fonte
2

para localizar processos / usuários ativos, execute:

fusor -u / caminho / para / montagem

em seguida, execute o seguinte para removê-los:

fusor -k / caminho / para / montagem

finalmente desmonte o dispositivo infrator.

Lars Tackmann
fonte
Perigoso. Use com -Mtambém.
Tom Hale
1

Larsks escreveu: "Você verá esse comportamento se tiver montado algo mais em um subdiretório ~ / hd. Nesse caso, nem o fusor nem o lsof mostrarão nada".

O uso de lsof com grep mostrará o uso do subdiretório - por exemplo, "lsof | grep HD".

Eu tive o mesmo problema que o pôster original e encontrei a causa usando o comando acima.

Pete
fonte
0

Você já tentou usar a sincronização ?

O comando sync libera os caches do sistema de arquivos forçando os blocos alterados a serem gravados no disco.

Jr. Hames
fonte
Não há necessidade de sincronizar - a quantidade liberará o cache conforme necessário.
22610 Kevin Panko
0

Se você realmente deseja desmontá-lo, use umount -f

do homem umount :

-f     Force unmount (in case of an unreachable NFS system).  (Requires kernel 2.1.116 or later.)
trapos
fonte
Não funciona, mas a culpa não é sua. A culpa é de Linus. :-(
peterh - Reinstala Monica
0

Não pude desmontar porque um usuário tinha uma sessão SMB aberta. Vale a pena conferir.

FreeSoftwareServers
fonte
11
Parece mais um comentário do que uma resposta a uma pergunta de 5 anos.
Ramhound
eu não tinha o representante, nem terei votos negativos, mas a idade é importante quando uma postagem tem ~ 21k visualizações? É aqui que o google me leva hoje e lsof | O grep / mnt / disk resolveu meu problema
FreeSoftwareServers
11
Sim; importa porque comentários não são respostas. Você pode editar sua resposta facilmente e torná-la uma resposta, mas atualmente como está escrita parece mais um comentário. Uma resposta descreve uma solução em detalhes e responde especificamente à pergunta que foi feita. Você não tem a reputação de postar um comentário como resposta, não é como você publica um comentário.
Ramhound
Claro que eu queria fazer um comentário, mas não consegui, mas você menciona o fato de que ele tem 5 anos como se fosse importante. Vou atualizá-lo então ... e adicionar a parte ls grep
FreeSoftwareServers
11
Todo o conteúdo é importante. Sua resposta trouxe esta pergunta para a 1ª página. Se você deseja comentar em pormenor o conteúdo útil post para perguntas que você sabe a resposta para ou fazer perguntas específicas detalhadas
Ramhound