fsvieira
(usa Red Hat)
Enviado em 01/09/2008 - 12:06h
Bom dia,
Bom este eh meu primeiro programa em shell script então estou tendo alguns problemas (devo estar cabaçando)
Fiz um código para fazer algumas configurações no Red Hat Enterprise 4
Mas estou tendo problema em um método que eu criei chamado arquitetura, onde tem um case dentro dele, só que o método já eh chamado por um outro case, não sei se eu posso usar dessa forma
Segue o código abaixo, provávelmente vcs vaum encontrar muitos erros, ou maneiras mais inteligentes de fazer oq eu estou tentando no código.
Obs: O código estava identado, mas quando coloquei no site perdeu a identação, e tem uma parte do código que está comentado mas eh pq não tive tempo de teminar pq parei nesse erro do case
Desde de já agradeço a atenção de todos
Abço
#!/bin/bash
clear
#
#Objetivo: Configuracao automatizada dos servidores linux 32 / 64 bits
#
#
echo "====================================================================="
echo "### Dia corrente ###";date ;
Principal(){
echo "====================================================================="
echo "======= Configuracao automatizada dos servidores Linux 32/64 ======="
echo "====================================================================="
echo "Opcoes:"
echo
echo "1. Habilitar servico telnet/server"
echo "2. Habilitar servico ftp/server"
echo "3. Especificar arquitetura do processador (32/64) / Instalar Pacotes"
echo "4. Especificar nome do servidor"
echo "5. Selecionar servicos para inicializacao no boot do sistema "
echo "6. Configurar IP's de rede"
echo "7. Instalar / Configurar Heartbeat"
echo "8. Sair do programa"
echo
echo -n "Qual a opcao desejada ? "
read opcao
case $opcao in
1) Telnet;;
2) FTP;;
3) Arquitetura;;
4) Nome;;
5) ntsysv;;
6) Network;;
7) Heartbeat;;
8) clear;exit;;
*) "Opcao desconhecida !!"; echo; Principal;;
esac
}
Telnet() {
clear
echo "Habilitando servico TELENT/SERVER"
sed "s/yes/no/g" /etc/xinetd.d/telnet > /etc/xinetd.d/telnet.alt
mv /etc/xinetd.d/telnet.alt /etc/xinetd.d/telnet
echo pts/0 >> /etc/securetty
echo pts/1 >> /etc/securetty
echo pts/2 >> /etc/securetty
echo pts/3 >> /etc/securetty
echo pts/4 >> /etc/securetty
/etc/init.d/xinetd restart
Principal
}
FTP() {
clear
echo "Habilitando servico FTP/SERVER"
sed "s/#ascii_upload_enable=YES/ascii_upload_enable=YES/g" /etc/vsftpd/vsftpd.conf > /etc/vsftpd/vsftpd.conf.alt
mv /etc/vsftpd/vsftpd.conf.alt /etc/vsftpd/vsftpd.conf
sed "s/#ascii_download_enable=YES/ascii_download_enable=YES/g" /etc/vsftpd/vsftpd.conf > /etc/vsftpd/vsftpd.conf.alt
mv /etc/vsftpd/vsftpd.conf.alt /etc/vsftpd/vsftpd.conf
sed "s/#ftpd_banner/ftpd_banner/g" /etc/vsftpd/vsftpd.conf > /etc/vsftpd/vsftpd.conf.alt
mv /etc/vsftpd/vsftpd.conf.alt /etc/vsftpd/vsftpd.conf
sed "s/root//g" /etc/vsftpd.ftpusers > /etc/vsftpd.ftpusers.alt
mv -f /etc/vsftpd.ftpusers.alt /etc/vsftpd.ftpusers
sed "s/root//g" /etc/vsftpd.user_list > /etc/vsftpd.user_list.alt
mv -f /etc/vsftpd.user_list.alt /etc/vsftpd.user_list
rm -f /etc/vsftpd.user_list.alt
rm -f /etc/vsftpd.ftpusers.alt
/etc/init.d/vsftpd restart
Principal
}
Arquitetura() {
echo
echo "1. Processador 32 Bits"
echo "2. Processador 64 Bits"
echo "3. Voltar ao menu principal"
echo
echo -n "Qual a opcao desejada ? "
read opcao
case $opcao in
1) 32;;
2) 64;;
3) Principal;;
*) "Opcao desconhecida !!";Arquitetura;;
esac
32() {
echo "Dentro do 32"
/tmp/RHEL/RH4/32_bits/pacotes32.sh
Arquitetura
}
64() {
/tmp/RHEL/RH4/64_bits/pacotes64.sh
Arquitetura
}
Arquitetura
}
#Nome() {
# clear
# echo "1. Espcificar o nome do Servidor"
# echo "2. Voltar ao menu principal"
# case $nome in
# 1) Troca;;
# 2) "Menu Principal"; echo; Principal;;
# *) "Opcao desconhecida !!"; echo; Nome;;
# esac
#
# Troca() {
# echo "Digite o nome do servidor"
# read nome
# var = uname -n
# sed "s/$var/$nome/g" /etc/sysconfig/network > /etc/sysconfig/network.alt
# mv /etc/sysconfig/network.alt /etc/sysconfig/network
# sed "s/$var/$nome/g" /etc/hosts > /etc/hosts.alt
# mv /etc/hosts.alt /etc/hosts
# }
# Principal
#}
#
#Network() {
# clear
# echo "1. Alterar IP NIC"
# echo "2. Alterar Gateway"
# echo "3. Ativar NIC"
# echo "4. Desativar NIC"
# echo "5. Re-iniciar servico de rede"
# echo "6. Voltar ao menu principal"
# case $op in
# 1) Add;;
# 2) Gtw;
# 3) Ativar;;
# 4) Desativar;;
# 5) Restart;;
# 6) "Menu Principal"; echo; Principal;;
# *) "Opcao desconhecida !!"; echo; Network;;
# esac
#
# Add() {
#
# }
# Gtw() {
# }
# Ativar() {
# echo "Entre com o numero da NIC Ex: 0 | 1 | 2"
# read nic
# ifconfig eth$nic up
# }
# Desativar() {
# echo "Entre com o numero da NIC Ex: 0 | 1 | 2"
# read nic
# ifconfig eth$nic down
# }
# Restart() {
# echo "Re-iniciar servico de rede"
# service network restart
# }
#}
#
#Heartbeat() {
#
#
#}
Principal