Alterando o funcionamento do umount

Shell scripts, Kommander, GUIs...

Moderador: Moderadores

Avatar do usuário
BIGBRUNO
BIG ADMINISTRADOR!
Mensagens: 4731
Registrado em: 24 Jun 2004, 04:20
Localização: DF/Brasil
Contato:

Alterando o funcionamento do umount

Mensagem por BIGBRUNO » 14 Dez 2012, 03:44

O problema /angry

Algo que considero um problema no dolphin é para desmontar pendrives, câmeras ou qualquer tipo de partição, por qualquer motivo informa que o dispositivo está ocupado e não pode ser removido.


A solução /yeah

Não encontrei em nenhum lugar uma forma de configurar para forçar a remoção caso o dispositivo esteja ocupado, então fiz a alteração direto no /bin/mount.

Movi o arquivo /bin/umount para /bin/umount.distrib e fiz um script para ficar em /bin/umount que repassa o comando para o /bin/umount.distrib adicionando a opção -l que força caso o dispositivo esteja ocupado.


Como instalar /hehe

Esse script deve funcionar em qualquer distribuição, porém preparei um pacote que automatiza sua instalação apenas em distribuições que utilizam .deb (BigLinux, Kaiana, Debian, Ubuntu, Mint...).

O pacote que faz a alteração pode ser baixado em: http://biglinux.c3sl.ufpr.br/packages/p ... x1_all.deb

Também pode ser instalado pelo repositório do BigLinux com o nome: big-umount-tweaks


Opções de configuração /pensa

Forçar sempre - Se não existir o arquivo /etc/bigumount.conf toda vez que um dispositivo for ser desmontado utilizará a opção -l, ou seja sempre irá forçar caso esteja em uso.
Esse é o padrão e para restaura-lo utilize como root o comando: rm -f /etc/bigumount.conf

Forçar apenas mídias removíveis - Pare desmontar partições de hds internos não irá forçar, porém câmeras, pendrives e outros dispositivos externos irão utilizar a opção de forçar.
Para ativar essa configuração utilize como root o comando: echo removable > /etc/bigumount.conf

Nunca forçar - Funciona na forma padrão e não força nenhuma remoção, para isso também pode se remover o pacote big-umount-tweaks.
Para ativar essa configuração utilize como root o comando: echo no > /etc/bigumount.conf

O script /bin/umount /yeah3

Código: Selecionar todos

#!/bin/sh

##########
# If /etc/bigmount.conf not found - Force umount for all devices
# Se o arquivo /etc/bigmount nao existir - Forca a remocao de todos os dispositivos
##########
if [ "$(cat /etc/bigumount.conf)" = "" ];
then
    /bin/umount.distrib -l $*
    exit
fi


##########
# If /etc/bigumount.conf = removable - Force umount for removable devices
# Se o arquivo /etc/bigmount.conf possuir o conteudo removable - Forca a remocao somente dos dispositivos removiveis
##########
if [ "$(cat /etc/bigumount.conf)" = "removable" ];
then
    if [ "$(cat /sys/block/$(cat /proc/mounts | grep $* | sed 's| .*||g;s|.*/||g;s|[0-9].*||g')/removable)" = "1" ];
    then
	/bin/umount.distrib -l $*
    else
	/bin/umount.distrib $*
    fi
    exit
fi

##########
# If /etc/bigumount.conf = no - No force umount, use default options
# Se o arquivo /etc/bigumount.conf possuir o conteudo no - Nao forca a remocao de dispositivos, utiliza o funcionamento padrao
##########
if [ "$(cat /etc/bigumount.conf)" = "no" ];
then
    /bin/umount.distrib $*
fi

Trancado

Voltar para “Scripts e Automações”

Quem está online

Usuários navegando neste fórum: Nenhum usuário registrado e 2 visitantes