InitX
Publicado por Joao Garcia 21/08/2004
[ Hits: 5.168 ]
Script para configurar os serviços que
serão inicializados no boot do
Slackware, serve para o slack 9.1 e
pro 10 (testado nos 2). Interface em
dialog. Simples e funcional.
#!/bin/sh
# Configurador de boot para Slackware 9.1 InitX
# Joao Garcia Ferreira Campos
# jgfcampos@yahoo.co.uk
# ultima alteracao 06, Marco de 2004
DIALOG=${DIALOG=dialog}
tempfile=`tempfile 2>/dev/null` || tempfile=/tmp/test$$
trap "rm -f $tempfile" 0 1 2 5 15
######## Funcoes
## Funcoes de chmod
#
execut()
{
$DIALOG --backtitle "InitX" --clear \
--title "Deixa de executar no boot" \
--yesno "Este servico e executavel, deseja torna-lo nao-executavel?" 20 40
case $? in
0)
chmod -x $FILE ; $DIALOG --backtitle "InitX_pre_alpha" --clear \
--title "Feito!" \
--msgbox "Servico removido do boot do sistema com susseco. \
" 20 40 ; configrcd ;;
1)
configrcd;;
255)
echo "Saida por ESC.";;
esac
return
}
#
#
noexecut()
{
$DIALOG --backtitle "InitX" --clear \
--title "Passa a executar no boot" \
--yesno "Este servico nao e executavel, deseja torna-lo executavel?" 20 40
case $? in
0)
chmod +x $FILE ; $DIALOG --backtitle "InitX" --clear \
--title "Feito!" \
--msgbox "Servico adicionado ao boot do sistema com susseco. \
" 20 40 ; configrcd ;;
1)
configrcd;;
255)
echo "Saida por ESC.";;
esac
return
}
#
chmodf()
{
if [ -x $FILE ] ; then
execut
elif [ -e $FILE ] ; then
noexecut
else
echo "nao encontrado"
fi
return
}
## Fim das funcoes de chmod+
## Funcao de Ver config do rc.d
verconfigrcd()
{
ls -lah /etc/rc.d/ | grep -v x | fmt -s > /var/tmp/init.tmp
sed s/-rw-r--r--/servico/g /var/tmp/init.tmp /var/tmp/initx.tmp > /var/tmp/initx.tmp
$DIALOG --backtitle "InitX" --clear \
--title "Servicos *NAO* inicializados no boot:" \
--msgbox "`tail +2 /var/tmp/initx.tmp`" 30 70
rm -rf /var/tmp/init*
ls -lah /etc/rc.d/ | fmt -s > /var/tmp/init.tmp
sed s/-rw-r--r--/servico/g /var/tmp/init.tmp /var/tmp/initx.tmp > /var/tmp/initx.tmp
grep -v servico /var/tmp/initx.tmp > /var/tmp/initx2.tmp
sed s/-rwxr-xr-x/servico/g /var/tmp/initx2.tmp /var/tmp/initx3.tmp > /var/tmp/initx3.tmp
$DIALOG --backtitle "InitX" --clear \
--title "Servicos inicializados no boot:" \
--msgbox "`tail +7 /var/tmp/initx3.tmp`" 30 70
rm -rf /var/tmp/init*
principal
return
}
## Fim da funcao Ver config do rc.d
############################################################################
############################################################################
## Funcao de Config do rc.d
configrcd()
{
FILE=`$DIALOG --backtitle "InitX" --clear \
--stdout --title "Digite o nome do servico" \
--fselect /etc/rc.d/rc. 14 48`
case $? in
0)
chmodf;;
1)
principal;;
255)
echo "Saida por ESC";;
esac
return
}
## Fim da funcao de Config do rc.d
############################################################################
############################################################################
## Funcao para tomada de decisao do menu principal
menu()
{
if [ $choice = 1 ] ; then
configrcd
elif [ $choice = 2 ] ; then
verconfigrcd
else
echo "Nao foi posivel executar modulo de menu"
fi
return
}
## Fin da funcao de decisao do menu principal
############################################################################
############################################################################
############################################################################
########## Programa
## Corpo do programa
principal()
{
$DIALOG --backtitle "InitX" --clear \
--title "InitX" \
--menu "Ola, este e o InitX, um sistema de \n\
configuracao de servicos inicialisados no boot do Slackware 9.1. \n\
Ele deve se comportar bem, mas se o seu computador \n\
derreter,explodir ou nao funcionar nunca mais eu \n\
nao vou ter responsabilidade nenhuma. \n\
:^)\n\n\
Escolha uma das opcoes:" 20 45 2 \
"1" "Configurar o rc.d" \
"2" "Ver configuracoes do rc.d" 2> $tempfile
retval=$?
choice=`cat $tempfile`
case $retval in
0)
menu ;;
1)
echo "Cancelado.";;
255)
echo "Saida por ESC.";;
esac
return
}
## Fim do corpo do programa
######
############################################################################
############################################################################
## EXECUCAO!
principal
Controle de banda com tc do pacote iproute2
Zinxi - exibir informações do hardware
Script para escrever uma palavra em ASCI
Manipular um arquivo txt como se fosse uma planilha de calculo
Nenhum comentário foi encontrado.
Criptografando sua Home com Gocryptfs para tristeza do meliante
A Involução do Linux e as Lambanças Desnecessárias desde o seu Lançamento
O Journal no Linux para a guarda e consulta de logs do sistema
A evolução do Linux e as mudanças que se fazem necessárias desde o seu lançamento
Discos que não instalam o sistema por erro MBR/GPT no Linux
Hospedagem de Mangás com Kavita e Docker para Acesso Remoto via Tailscale
Aplicar tema e ícones do Ubuntu Cinnamon no Arch Linux sem AUR
Enquete: qual bloco de código C++ é mais legível? (3)
Instalação do driver Epson L3150 [RESOLVIDO] (5)









