Como recuperar o GRUB
Um dos acontecimentos mais frequentes com os usuários de dual boot é a “perca” do Grub. Um usuário tem dois sistemas operacionais, Windows e Ubuntu, por exemplo. Isso acontece quando você precisa, por exemplo, formatar seu velho e defeituoso Windows, que ao ser reinstalado apaga a MBR, local onde é guardada Informações do disco como ordem de boot, partições etc.
O nosso GRUB fica localizado na MBR, então para recuperá-lo de forma simples e fácil siga as instruções a seguir:
Você vai precisar de um CD-Live (no meu caso utilizei a versão 9.04 do Ubuntu).
Depois de carregado o Live-CD, entre no seu terminal e digite os comandos a seguir:
1. Verificando a partição referente ao seu GNU/LINUX:
$ sudo fdisk -l
(caso esteja utilizando outro SO que não o Ubuntu, faça o login como ROOT)
2. Vamos montar o seu sistema de arquivos na sua partição GNU/Linux no diretório /mnt.
$ sudo mount -t ext3 /dev/sda6 /mnt
Neste caso o meu sistema de arquivos é EXT3 e a minha partição Linux é a sda6, troque esses campos conforme a sua configuração.
3. Instalação do Grub:
$ sudo grub-install –root-directory=/mnt /dev/sda
Pronto!
Recuperando a senha de root pelo Grub
Oi pessoal, boa noite! estou mais uma vez aqui escrevendo para vocês sobre segurança. Segue uma dica bacana de como inserir parâmetros no grub e, então, ter acesso total ao sistema. Veremos como fazer isso como um administrador linux que esqueceu uma das senhas de root do servidor que ele administra.
Usaremos aqui como exemplo o gerenciador de boot GRUB para mudar a senha de root, pois ele fornece meios de alterar as configurações da inicialização e, por padrão, não pede senha para isso. Por isso a necessidade de você, como um bom administrador do sistema inserir uma senha no grub para se proteger.
No momento do boot, ao invés de pressionar ENTER para entrar no Linux, digite a letra “e” para que possamos entrar em edição e dizer como será feita sua inicialização. Após isso digite novamente “e” na seguinte linha:

E agora a imagem no modo de edição:
Deixe a linha assim:
Obs.: substitua os “x” de acordo com o seu caso.
Após isso aperte ENTER e depois “b” na linha para dar boot e ter um shell como root para poder alterar a senha. Depois do shell como root disponível, o próximo passo é montar a partição que contém o diretório raiz:
# mount -o remount /
Agora é só mudar a senha:
# passwd
Ele exibirá:
Digite a nova senha UNIX:
Redigite a nova senha UNIX:
Agora é só reiniciar a máquina e pronto.
Uma outra maneira de recuperar a senha pode ser :
1 – Reinicie a máquina;
2 – No Grub aperte letra “e”;
3 – Adicione após o comando o parâmetro “silent init=/bin/bash”, vai ficar algo do tipo:
Kernel /boot/kernel-2.6.9-34. RO root=label=/ root=label=/ silent init=/bin/bash
4 – Aperte enter;
5 – Aperte “b” (aperte a letra b “to boot do kernel” com esse parâmetro);
6 – Isso iniciará e carregará o Linux. Aí vai aparecer o shell:
Bash##
7 – Digite (para montar o sistema de arquivos raiz em modo escrita):
# mount -o remount rw /
8 – Agora:
# passwd
9 – Digite a nova senha do root e confirme;
10 – Na ordem, digite mais uma vez:
# sync
# shutdown -t now
Até mais pessoal.
script shell
Pessoal,
Recebi de um conhecido o script abaixo que ajuda a gerenciar usuários, grupos e afins. Muito interessante o script e funcional segue abaixo.
#!/bin/bash
# Autor: Messias Manoel da Silva Junior #Script: Gerenciamento de Sistema #Data: 15/05/2007 # # Para ser adicionado depois. # echo "O total de usuàrios:"; awk -F : '$3 > 1000 {print $1}' /etc/passwd | wc -l # conta quantos usuários estão no sistema. # ----- Variáveis ---- addusuario=$(which useradd) delusuario=$(which userdel) blqusuario=$(which passwd) addgrupo=$(which addgroup) remgrupo=$(which groupdel) addusergrp=$(which gpasswd) # ---- Tela de Boas vinda kdialog \ --title " ------------ Seja Bem Vindo ------------ " \ --msgbox "Este script te ajudará nas tarefas de administração do sistema." while [ 1 = 1 ]; do # ----- Exibi o menu na tela. resultado=$( kdialog --title "- Admin de Usuários" \ --menu " O que você gostaria de fazer? " \ 1 "Adicionar usuário" \ 2 "Remover usuário" \ 3 "Bloquear usuário" \ 4 "Desbloquear usuário" \ 5 "Adicionar grupo" \ 6 "Remover grupo" \ 7 "Adicionar usuário ao grupo" \ 8 "Verificar usuários existentes" \ 9 "Verificar grupos existentes" \ 0 "Sair" ) # --- Se for presionado CANCELAR ou ESC, sai do script [ $? -ne 0 ] && break case $resultado in 1) nome=`kdialog --inputbox "Digite o nome do usuário"` # --- Verifica se o sudo está ativo souroot=`whoami` if [ "$souroot" != "root" ];then kdesudo "$addusuario -d /home/$nome -s /bin/bash $nome" clear kdialog --msgbox "Usuário Adicionado com Sucesso" fi ;; 2) kdialog --msgbox "Listando a relação de usuários para você:" awk -F : '$3 > 1000 {print "Login: "$1}' /etc/passwd > /tmp/usuarios.txt kdialog --title "Lista de Usuários" \ --textbox /tmp/usuarios.txt 290 80 nomedel=`kdialog --inputbox "Digite o nome do usuário que deseja remover:"` souroot=`whoami` if [ "$souroot" != "root" ];then kdesudo "$delusuario -r $nomedel" fi if [ $? = 0 ]; then kdialog --msgbox "Comando invalido." else kdialog --msgbox "Usuário "$nomedel" removido com sucesso." fi ;; 3) kdialog --msgbox "Listando a relação de usuários para você:" awk -F : '$3 > 1000 {print "Login: "$1}' /etc/passwd > /tmp/usuarios.txt kdialog --title "Lista de Usuários" \ --textbox /tmp/usuarios.txt 290 80 nomebloq=`kdialog --inputbox "Digite o nome do usuário que deseaja bloquear:"` souroot=`whoami` if [ "$souroot" != "root" ];then kdesudo "$blqusuario -l $nomebloq" fi if [ $? = 0 ]; then kdialog --msgbox "Comando invalido." else kdialog --msgbox "Usuário "$nomebloq" bloqueado com sucesso" fi ;; 4) kdialog --msgbox "Listando a relação de usuários para você:" awk -F : '$3 > 1000 {print "Login: "$1}' /etc/passwd > /tmp/usuarios.txt kdialog --title "Relação dos Usuários no Sistema" \ --textbox /tmp/usuarios.txt 290 80 nomedesbloq=`kdialog --inputbox "Digite o nome do usuário que deseaja desbloquear:"` souroot=`whoami` if [ "$souroot" != "root" ];then kdesudo "$blqusuario -u $nomedesbloq" fi if [ $? = 0 ]; then kdialog --msgbox "Comando invalido." else kdialog --msgbox "Usuário "$nomedesbloq" desbloqueado com sucesso." \ fi ;; 5) kdialog --msgbox "Listando a relação de grupos para você:" awk -F : '$3 > 1000 {print"Grupo: " $1 }' /etc/group > /tmp/grupos.txt kdialog --title "Relação dos Grupos no Sistema" \ --textbox /tmp/grupos.txt 290 80 nomegrupo=`kdialog --inputbox "Digite o nome do grupo que deseaja criar: "` souroot=`whoami` if [ "$souroot" != "root" ];then kdesudo $addgrupo $nomegrupo fi if [ $? = 0 ]; then kdialog --msgbox "Comando invalido." else kdialog --msgbox "Grupo "$noegrupo" adicionado com sucesso" fi ;; 6) awk -F : '$3 > 1000 {print"Grupo: " $1 }' /etc/group > /tmp/grupos.txt kdialog --title "Relação dos Grupos no Sistema" \ --textbox /tmp/grupos.txt 290 80 grupo=$`kdialog --msgbox "Digite o nome do grupo que deseja remover: "` souroot=`whoami` if [ "$souroot" != "root" ];then kdesudo "$remgrupo $GROUP" fi if [ $? = 0 ]; then kdialog --msgbox "Comando invalido." else kdialog --msgbox "Grupo "$regrupo" removid coom sucesso" fi ;; 7) # ---- Lista de usuários -------------- awk -F : '$3 > 1000 {print "Login: "$1}' /etc/passwd > /tmp/usuarios.txt # -------------------------------------- # ---- Lista de grupos -------------- awk -F : '$3 > 1000 {print" Grupo: "$1 }' /etc/group > /tmp/grupos.txt # ------------------------------------ # ---- Cocatenando os dois arquivos --------- paste -d" " /tmp/usuarios.txt /tmp/grupos.txt > /tmp/cocat.txt # ------------------------------------------- kdialog --title "Lista de usuários e grupos para você:" \ --textbox /tmp/cocat.txt 290 80 usergrupo=`kdialog --inputbox "Digite o nome do usuário existente que deseja adicionar no grupo:"` grupouser=`kdialog --inputbox "Digite o nome do grupo existente que o usuário deve ser adicionado:"` souroot=`whoami` if [ "$souroot" != "root" ];then kdesudo "$addusergrp -a $usergrupo $grupouser" fi if [ $? = 0 ]; then kdialog --msgbox "Usuário "$usergrupo" adicionado no grupo "$grupouser" com sucesso" else kdialog --msgbox "Comando invalido." fi ;;awk -F : '$3 > 1000 {print "Login: "$1}' /etc/passwd > /tmp/usuarios.txt kdialog --title "Relação dos Usuários no Sistema" \ --textbox /tmp/usuarios.txt 290 80 ;; 9) awk -F : '$3 > 1000 {print"Grupo: " $1 }' /etc/group > /tmp/grupos.txt kdialog --title "Relação dos Grupos no Sistema" \ --textbox /tmp/grupos.txt 290 80 ;; 0) break ;; *) kdialog -- msgbox "Cancelado" ;; esac done
Como usar rpm e dpkg
Listar os pacotes instalados:
# rpm -qa# dpkg --list
Lista das informações sobre o pacote instalados:
# rpm -qi nomedopacote# dpkg --status nomedopacote
Lista os arquivos do pacote instalado:
# rpm -ql nomedopacote# dpkg --listfiles nomedopacote
Lista a informação sobre um pacote local sem estar instalado:
# rpm -qpi arquivo.rpm# dpkg --info arquivo.deb
Lista os arquivos de um pacote sem estar instalado:
# rpm -qpl arquivo.rpm# dpkg --contents arquivo.deb
Configurando Roteamento no Linux
Configurar roteamento estático em servidores são tarefas bem comuns e muito simples de serem realizadas, porém poucas pessoas configuram o roteamento e a rede nos arquivos corretos de cada distribuição Linux.
No caso de um servidor com Red Hat Linux, assim como a configuração das interfaces de rede, os arquivos de configuração são colocados em /etc/sysconfig/network-scripts seguindo a seguinte nomenclatura: route-[interface]
Vamos a um exemplo prático onde configuramos a rede 172.16.0.0/16 através do roteador 192.168.0.65:
Primeiramente edite o arquivo de rotas referente a sua interface local (supondo que a eth0 tem o IP 192.168.0.1):
# vi /etc/sysconfig/network-scripts/route-eth0
E adicione o seguinte conteúdo:
172.16.0.0/16 via 192.168.0.65
Salve seu arquivo e reinicie a rede com:
# service network restart
E pronto! A rota está configurada. Para verificar sua tabela de roteamento você pode utilizar:
# netstat -rn
Caso você utilize Debian, siga as intruções abaixo.


