Script em Xdialog para montar / desmontar dispositivos
Publicado por Sandro Marcell 29/12/2006
[ Hits: 7.199 ]
Homepage: http://sanmarcell.wordpress.com
Escrevi este simples script com o intuito de facilitar a montagem/desmontagem do CD-ROM e disquete no meu Slackware. Ele monta o dispositivo escolhido, mostrando uma barra de progresso e depois abre o gerenciador de arquivos e mostra todo o conteúdo do dispositivo.
ATENÇÃO: Os caminhos/dispositivos descritos no script são referentes a distribuição Slackware, se você usa uma distribuição diferente, faça as modificações necessárias. Verifique também as permissões de acesso aos dispositivos.
#!/bin/bash
# Script escrito por: SANDRO MARCELL PADILHA BARBOSA
# E-mail: sandro_marcell@yahoo.com.br
# Slackware GNU/Linux 10.1
# É necessário o Xdialog-2.1.2
# SEU_GERENCIADOR_DE_ARQUIVOS = substitir pelo seu gerenciador favorito! Ex.: rox /mnt/floppy& ou nautilus /mnt/cdrom&
Principal ()
{
OPÇÃO=$(Xdialog --stdout --title "Monta_X" --no-tags --menu "O QUE VOCÊ DESEJA FAZER?" 0 0 0 \
1 "Montar CD-ROM" \
2 "Montar Disquete" \
3 "Desmontar CD-ROM" \
4 "Desmontar Disquete" \
5 "Sair")
case $OPÇÃO in
1) Montar_CDROM ;;
2) Montar_Disquete ;;
3) Desmontar_CDROM ;;
4) Desmontar_Disquete ;;
5) exit ; clear ;;
esac
}
CDROM=/mnt/cdrom
DISQUETE=/mnt/floppy
Verificando_CDROM ()
{
cdr=$(grep -l $CDROM /etc/mtab)
if [ $? = '0' ]; then
Xdialog --title "Monta_X" --msgbox "O CD-ROM já está montado!" 6 40
exit 1
fi
}
Verificando_Disquete ()
{
dqt=$( grep -l $DISQUETE /etc/mtab )
if [ $? = '0' ]; then
Xdialog --title "Monta_X" --msgbox "O disquete já está montado!" 6 40
exit 1
fi
}
Rodando() { ps $1 | grep $1 >/dev/null; }
PERCENTO=0
Montar_CDROM ()
{
Verificando_CDROM
mount /dev/cdrom&
MONTAGEM=$!
(
while Rodando $MONTAGEM
do
PERCENTO=$[ $PERCENTO+1 ]
echo "$PERCENTO"
sleep 0.5
done
echo "100"
) | Xdialog --title "Monta_X" --gauge "Montando CD-ROM! Aguarde..." 6 40 0
Xdialog --title "Monta_X" --msgbox "CD-ROM montado!" 6 40
SEU_GERENCIADOR_DE_ARQUIVOS /mnt/cdrom&
exit
}
Montar_Disquete ()
{
Verificando_Disquete
mount /dev/fd0&
MONTAGEM=$!
(
while Rodando $MONTAGEM
do
PERCENTO=$[ $PERCENTO+1 ]
echo "$PERCENTO"
sleep 0.5
done
echo "100"
) | Xdialog --title "Monta_X" --gauge "Montando disquete! Aguarde..." 6 40 0
Xdialog --title "Monta_X" --msgbox "Disquete montado!" 6 40
SEU_GERENCIADOR_DE_ARQUIVOS /mnt/floppy&
exit
}
Desmontar_CDROM ()
{
Xdialog --title "Monta_X" --no-buttons --infobox "Desmontando CD-ROM! Aguarde..." 6 50
umount /dev/cdrom
if [ $? = "0" ]; then
eject
Xdialog --title "Monta_X" --msgbox "CD-ROM desmontado!" 6 40
else
Xdialog --title "Monta_X" --msgbox "Dispositivo ocupado ou não montado!" 6 40
Principal
fi
}
Desmontar_Disquete ()
{
Xdialog --title "Monta_X" --no-buttons --infobox "Desmontando disquete! Aguarde..." 6 50
umount /dev/fd0
if [ $? = "0" ]; then
Xdialog --title "Monta_X" --msgbox "Disquete desmontado!" 6 40
else
Xdialog --title "Monta_X" --msgbox "Dispositivo ocupado ou não montado!" 6 40
Principal
fi
}
Principal
exit
Sincronizando seu hosts.deny com blacklist online
Adicionando Chaves de Repositórios Facilmente
Beckup .tar.gz com Data e Hora
Como atualizar sua versão estável do Debian
Cirurgia para acelerar o openSUSE em HD externo via USB
Void Server como Domain Control
Quer auto-organizar janelas (tiling) no seu Linux? Veja como no Plasma 6 e no Gnome
Copiando caminho atual do terminal direto para o clipboard do teclado
Script de montagem de chroot automatica
archlinux resolução abaixou após atualização (15)
Conselho distribuiçao brasileira (2)
Não consigo instalar distro antiga no virtualbox nem direto no hd (33)









