Script para montar/desmontar cdrom e disquete
Publicado por Sandro Marcell 05/03/2007
[ Hits: 7.209 ]
Homepage: http://sanmarcell.wordpress.com
Está é uma versão melhorada do script Monta_X, que postei aqui no VOL. Ele monta cdrom ou disquete mostrando uma barra de progresso e abre o gerenciador de arquivos escolhido, mostrando o conteúdo do dispositivo.
Ah! É necessário o Xdialog. Espero que gostem!
#!/bin/bash
# MoDes - Montador/Desmontador de dispositivos
# Script escrito por: SANDRO MARCELL P. BARBOSA
# E-mail: sandro_marcell@yahoo.com.br
# Slackware GNU/Linux 10.1
PERCENTO=0
CDROM=/dev/cdrom
DISQUETE=/dev/fd0
PONTO_MONTAGEM_CD=/mnt/cdrom
PONTO_MONTAGEM_DT=/mnt/floppy
GERENCIADOR_DE_ARQUIVOS=konqueror # substitua pelo seu gerenciador favorito!
Verificando_CD-ROM () {
if fgrep -q $PONTO_MONTAGEM_CD /etc/mtab; then
Xdialog --title "MoDes" --msgbox "O CD-ROM já está montado!" 6 40
exit 1
fi
}
Verificando_Disquete () {
if fgrep -q $PONTO_MONTAGEM_DT /etc/mtab; then
Xdialog --title "MoDes" --msgbox "O disquete já está montado!" 6 40
exit 1
fi
}
Checando_Montagem_CD-ROM () {
if ! fgrep -q $PONTO_MONTAGEM_CD /etc/mtab; then
AVISO
exit 1
fi
}
Checando_Montagem_Disquete () {
if ! fgrep -q $PONTO_MONTAGEM_DT /etc/mtab; then
AVISO
exit 1
fi
}
AVISO () { Xdialog --title "MoDes" --backtitle "Ocorreu o seguinte problema:" --no-cancel --textbox "/tmp/.erro" 0 0 ; rm -rf /tmp/.erro ; }
Rodando () { ps $1 | fgrep -q $1 > /dev/null; }
OPÇÃO=$(Xdialog --stdout --title "MoDes" --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 CD-ROM
Verificando_CD-ROM
mount $CDROM 2> /tmp/.erro&
MONTAGEM=$!
(
while Rodando $MONTAGEM
do
PERCENTO=$[ $PERCENTO+1 ]
echo "$PERCENTO"
sleep 0.5
done
echo "100"
) | Xdialog --title "MoDes" --gauge "Montando CD-ROM... Aguarde!" 6 40 0
Checando_Montagem_CD-ROM
Xdialog --title "MoDes" --msgbox "CD-ROM montado!" 6 40
$GERENCIADOR_DE_ARQUIVOS $PONTO_MONTAGEM_CD&
;;
2)
# Montar Disquete
Verificando_Disquete
mount $DISQUETE 2> /tmp/.erro&
MONTAGEM=$!
(
while Rodando $MONTAGEM
do
PERCENTO=$[ $PERCENTO+1 ]
echo "$PERCENTO"
sleep 0.5
done
echo "100"
) | Xdialog --title "MoDes" --gauge "Montando disquete... Aguarde!" 6 40 0
Checando_Montagem_Disquete
Xdialog --title "MoDes" --msgbox "Disquete montado!" 6 40
$GERENCIADOR_DE_ARQUIVOS $PONTO_MONTAGEM_DT&
;;
3)
# Desmontar_CD-ROM
Xdialog --title "MoDes" --no-buttons --infobox "Desmontando CD-ROM... Aguarde!" 6 50
if umount $CDROM 2> /tmp/.erro; then
eject || Xdialog --title "MoDes" --no-buttons --infobox "O comando eject falhou!" 6 40
Xdialog --title "MoDes" --msgbox "CD-ROM desmontado!" 6 40
else
AVISO
fi
;;
4)
# Desmontar Disquete
Xdialog --title "MoDes" --no-buttons --infobox "Desmontando disquete... Aguarde!" 6 50
if umount $DISQUETE 2> /tmp/.erro; then
Xdialog --title "MoDes" --msgbox "Disquete desmontado!" 6 40
else
AVISO
fi
;;
5)
# Sair
exit ;;
esac
Script para atualização de hora
Descom.sh - Descompactador de arquivos
Script para controle do servidor ProFTP no Slackware
KDE Plasma - porque pode ser a melhor opção de interface gráfica
Gentoo: detectando impressoras de rede e como fixar uma impressora por IP
Como o GNOME conseguiu o feito de ser preterido por outras interfaces gráficas
Por que sua empresa precisa de uma PKI (e como automatizar EMISSÕES de certificados via Web API)
Instalando NoMachine no Gentoo com Systemd (acesso Remoto em LAN)
Instalar Linux em notebook Sony Vaio VPCEG13EB (13)
Vou destruir sua infância:) (7)
Interface gráfica com problema (0)









