Script para montar/desmontar cdrom e disquete
Publicado por Sandro Marcell 05/03/2007
[ Hits: 7.182 ]
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
Apagar arquivos recursivamente de um diretório pela extensão
Hora certa - Observatório Nacional
Logs do daemontools - tradução de timestamp
Cirurgia para acelerar o openSUSE em HD externo via USB
Void Server como Domain Control
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
Como fazer a conversão binária e aplicar as restrições no Linux
Como quebrar a senha de um servidor Linux Debian
Como bloquear pendrive em uma rede Linux
Um autoinstall.yaml para Ubuntu com foco em quem vai fazer máquina virtual
Instalar GRUB sem archinstall no Arch Linux em UEFI Problemático









