Script para montar/desmontar cdrom e disquete
Publicado por Sandro Marcell 05/03/2007
[ Hits: 7.171 ]
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
Instalar splashtop em um pendrive
Instalação de pacotes em uma lista
Aprenda a falar os números de 0 a 99 em Inglês
Modo Simples de Baixar e Usar o bash-completion
Monitorando o Preço do Bitcoin ou sua Cripto Favorita em Tempo Real com um Widget Flutuante
[Resolvido] dlopen(): error loading libfuse.so.2 AppImages require FUSE to run.
Criação de diretórios e aplicação de restrições de acesso no Linux
Instalando partes faltantes do Plasma 6
Script instalaçao gateway RAK831 (2)
Instalar Dual Boot, Linux+Windows. (4)









