Script em Xdialog para montar / desmontar dispositivos

Publicado por Sandro Marcell 29/12/2006

[ Hits: 7.009 ]

Homepage: http://sanmarcell.wordpress.com

Download montar




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.

  



Esconder código-fonte

#!/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


Scripts recomendados

Script para controle de banda usando FreeRADIUS, PPPoE e HTB

Somatório de valores do comando ps

Autenticando no Velox Empresarial

Adição automática dos repositórios do Google Chrome, Google Talk Plugin, Google Earth, Dro no Ubuntu

Shell Script para instalação do software FTOOL


  

Comentários
[1] Comentário enviado por SMarcell em 13/01/2007 - 03:51h

Beleza moçada do VOL! No fórum da comunidade slacklife eu postei uma versão melhorada deste script, segue o link. Valeu!

>> http://www.slackbr.org/forum/viewtopic.php?t=4316

Falou!!!


Contribuir com comentário




Patrocínio

Site hospedado pelo provedor RedeHost.
Linux banner

Destaques

Artigos

Dicas

Tópicos

Top 10 do mês

Scripts