Howto slackware "Slackware for the real nerd's"
Autor: insanity
MSN/Google talk: www.greenpeace.org.br (http://www.greenpeace.org.br)
Abortarei coisas basicas sobre o sistema GNU/Linux Slackware, que é uma das principais distribuições linux existente,
por não fazer nada "sozinha" muitos falam que é uma distribuição para hacker...
Não abordarei interfaces graficas nesse texto...
<< Introdução >>:
Uma vez dominando bem o slackware você pode pegar qualquer *nix que você não vai ter nenhuma dificuldade,
Com a filosofia KISS ( keep it simple stupit - Mantenha isto simples estúpido \o/) o Slackware tenta se manter
bem proximo do Unix, e não fazendo nada para você automaticamente você vai ser forçado a aprender a fazer
quase tudo na "unha" =;)
O tutorial está bem BÁSICO..
Só para deixar claro, não estou dizendo que o slackware é a melhor distribuição...
<< Índice >>:
1- Comando basicos do slackware
2- Instalando pacotes no slackware
3- Inciando direto na interface grafica
4- Compilando com o GCC
5- Montando CDROOM e disquete
6- Dicas de Securança
7- Desligando o computador
8- Montando partições
9- Hackeando via LILO
10- Estrutura de diretorios
11- Dicas para o slackware
12 - Recomentações
13- Conclusão
----------------------------------------------------------------------------------------------------------------------
<< Comandos basico >>
Os comandos abaixo servem para configurar seu slackware:
xorgconfig -> configura a placa de video, teclado, mouse e monitor
xwmconfig -> Para alterar de interface gráfica.
startx -> inicia a interface grafica
pppsetup -> Configuração do modem e regras de discagem.
netconfig -> Configuração da placa de rede.
liloconf -> Utilitário de configuração do lilo
timeconfig -> Altera o fuso-horário do micro.
fontconfig -> Altera o tamanho e tipo de fonte do modo texto.
setup.cdrom -> Detecta e instala o drive de CD-ROM.
mouseconfig -> Configura o mouse.
alsaconf -> Se sua placa de som não for detectada automaticamente
-----------------------------------------------------------------------------------------------------------------------
<< Instalando pacotes no Slackware >>
Para instalar e remover pacotes digite o comando "pkgtool" (sem aspas) como root ( administrador)
O slackware tem seu proprio pacotes .tgz, que são encontrados com mais facilidade no site da distribuição:
ftp.slackware.com
Apos terem baixado um pacote para instalar digite:
# installpkg insanity.tgz
Para remover:
# removepkg insanity.tgz
Atualizar o pacote para uma versão mais recente:
# upgradepkg insanity.tgz
Para converter de rpm para tgz:
# rpm2tgz insanity.rpm
Obs: O nome do pacote insanity é só um exemplo =;)
-----------------------------------------------------------------------------------------------------------------------
<< Para iniciar o slackware direto na interface gráfica >>
É bem simples, basta editar o arquivo com o seguinte comando:
mcedit /etc/inittab
Observe a seguinte linha:
# Default runlevel. (Do not set to 0 or 6)
id:3:initdefault:
No lugar do 3 coloque 4, e aperte F2 para salvar, reinicie a maquina
------------------------------------------------------------------------------------------------------------------------
<< Compilando com o GCC >>
O gcc/g++ é o compilador C/C++ da GNU. Pode ser baixado no site da gnu, individualmente,
ou como parte do pacote do EGCS (que inclue um conjunto de programas acessórios).
Para obter mais informações abra o konqueror e digite man:/gcc ou g++
Protótipo e parâmetros do gcc/g++
Aqui vão os protótipo/parâmetros q vc vai passar para o compilador GNU
Protótipo do gcc/g++:
g++ [opções] [parâmetros] arquivos.
-v-----------------------------------------------------------------------------Mostra detalhes da compilação.
-wall -------------------------------------------------------------------------Mostra todos os warnings.
-onome ------------------------------------------------------------------------Define o nome do arquivo de saída (opcional).
-w ----------------------------------------------------------------------------Elimina mensagens de warning.
-I/path -----------------------------------------------------------------------Acrescenta path include.
-l/path/lib -------------------------------------------------------------------Inclue biblioteca (lib).
-ggdb -------------------------------------------------------------------------Informações extras para o gdb.
-O ----------------------------------------------------------------------------Optimiza o código (-O1,-O2,-O3).
-c-----------------------------------------------------------------------------Somente compila (gera o arquivo *.o).
-S ----------------------------------------------------------------------------Somente compila o arquivo, não linka.
-lcomplex ---------------------------------------------------------------------Inclue biblioteca dos complexos.
-lm Inclue --------------------------------------------------------------------biblioteca matemática.
-E ----------------------------------------------------------------------------Cria somente o arquivo pré-processado.
-C ----------------------------------------------------------------------------Não inclue comentários no executável.
-g ----------------------------------------------------------------------------Gera informações para o debuger (código lento).
Arquivos gerados pelo gcc/g++
-qdigraph ----------------------------------------------------------------------Adiciona teclas dígrafas.
-qcompact---------------------------------------------------------------------- Deixa o código mais compacto.
-xlinguagem-------------------------------------------------------------------- Expecfica a linguagem (C, C++,assembler).
-p -----------------------------------------------------------------------------Informações para o profiler proff.
-pg ----------------------------------------------------------------------------Informações para o gro_.
-m686 --------------------------------------------------------------------------Especifica que a máquina alvo é um 686.
-static ------------------------------------------------------------------------Especifica que a linkagem deve ser estática.
-p -----------------------------------------------------------------------------Especifica inclusão de instruções para o profiler.
-pg ----------------------------------------------------------------------------Especifica inclusão de instruções para o profiler da gnu (gprof ).
A medida q os arquivos sao compilados e linkados, são gerados alguns arquivos adicionais.
Lista-se a seguir os arquivos de entrada (*.h, *.cpp), e os arquivos de saída gerados pelo g++.
*.h ----------------------------------------------------------------------------Arquivos header.
*.i---------------------------------------------------------------------------- Arquivos de pré-processamento para programas em C.
*.ii ---------------------------------------------------------------------------Arquivos de pré-processamento para programas em C++.
.c,.cc,.C,.c++,.cpp, -----------------------------------------------------------Arquivos de fonte.
.o -----------------------------------------------------------------------------Arquivo objeto.
.s -----------------------------------------------------------------------------Arquivo assembler.
.a -----------------------------------------------------------------------------Arquivo de biblioteca estática.
.sa ----------------------------------------------------------------------------Blocos de bibliotecas estáticas linkados ao programa.
.so.n --------------------------------------------------------------------------Arquivo de biblioteca dinâmica.
a.out-------------------------------------------------------------------------- Arquivo de saída (executável).
Exemplo de uso do gcc/g++
Exemplo básico:
1. Edita o programa hello.cpp com o emacs.
Abra um terminal e execute emacs darkers.cpp.
#include
using namespace std;
main()
{
cout < < "darkers!" < < endl;
}
/*No emacs use ctrl+x ctrl+s para salvar o arquivo
e ctrl+x ctrl+q para sair do emacs*/
2. Cria o arquivo de pré-processamento [opcional]
g++ -E darkers.cpp
3. Compila o módulo hello (gera o hello.o)
g++ -c darkers.cpp
4. Linka o programa e gera o executável
g++ -o darkers darkers.o
5. Executa o programa
./darkers
6. Observe que os passos 2,3 e 4 podem ser executados usando:
g++ -v -o darkers darkers.cpp
O -v Mostra um conjunto de informações a respeito dos passos da compilação.
Neste exemplo o nome do programa executável é darkers e foi especificado com a opção -o darkers.
Se você não especificar um nome, o programa executável se chamará a.out.
Só pra lembrar:
Linker: O linker transforma um ou mais arquivos *.obj (*.o) em um arquivo executável.
Os arquivos que serão unidos são definidos em um arquivo de projeto ou em um arquivo makefile.
Depois de linkado um programa tem um arquivo executável *.exe no Windows, a.out no Linux.
Os erros de ligação são detectados pelo linker.
Veja mais em baixo as extensões dos arquivos gerados nas diferentes plataformas.
Situações:
---------------------------------------------------Windows---------------------------------------linux
Antes de compilar----------------------------------nome.h/nome.cpp-------------------------------nome.h/nome.cpp
Depois de compilar---------------------------------nome.obj--------------------------------------nome.o
Depois de linkar-----------------------------------nome.exe--------------------------------------nome
------------------------------------------------------------------------------------------------------------------------
<< Montando CDROOM e Disquete: >>
O Slackware por padrão, só o ROOT pode montar o CDROM e o Disquete, para mudar isso basta editar o arquivo fstab
mcedit /etc/fstab
A linha do CDROM e Disquete é esse por padrão:
/dev/cdrom /mnt/cdrom iso9660 noauto,owner,ro 0 0
/dev/fd0 /mnt/floppy auto noauto,owner 0 0
Deixa assim:
/dev/cdrom /mnt/cdrom iso9660 user,noauto,owner,ro 0 0
/dev/fd0 /mnt/floppy auto user,noauto,owner 0 0
Agora é só colocar o CD ou disquete e montar:
mount /dev/cdrom /mnt/cdrom
mount /dev/fd0 /mnt/floppy
-----------------------------------------------------------------------------------------------------------------------
<< Dicas de segurança: >>
1- Crie um usuário para você, não fique como ROOT:
2- Desabilite serviços desnecessários:
Digite "pkgtool" entre em "Setup" depois "services" e desabilite os serviços desnecessarios...
3- coloque senha no lilo:
Comandos: mcedit /etc/lilo.conf
Acrescente a linha: password="SENHA AQUI" (como aspas mesmo =;)
4- Sempre use o KERNEL mais atualizado possivel
5- Estude iptables
----------------------------------------------------------------------------------------------------------------------
<< Desligando e reiniciando o computador: >>
shutdown -h now -> desliga o computador
halt -> deliga o computador
reboot -> reinicia
shtdown -r now -> reinicia
init 0 -> desliga
init 6 -> reinicia
Muitos comandos para uma mesmo tarefa =;)
-----------------------------------------------------------------------------------------------------------------------
<< Montando partiçoes Windows: >>
mount -t vfat /dev/hda1 /mnt/windows -> Sistema de arquivo FAT
mount -t ntfs /dev/hda1 /mnt/windows -> Sistema de arquivo NTFS
------------------------------------------------------------------------------------------------------------------------
<< Hackeando via LILO >>
Ao inicializar a máquina e aparecer o prompt do LILO (LILO:), digite:
linux init=/bin/bash -> aperte ENTER e espere carregar
Logo depois digite:
mount -o remount -rw / -> Para ter permissão de escrita
passwd -> Para definir a nova senha do ROOT
Obs.: Você tambem pode deixar o ROOT sem senha basta editar o arquivo
mcedit /etc/passwd
------------------------------------------------------------------------------------------------------------------------
<< Estrutura de diretorio >>
/ -> Diretorio raiz
/bin -> Arquivos executaveis de comando essenciais
/boot -> Arquivos de inicialização do sisstema
/dev -> Arquivos de dispositivos do sistema
/etc ->Arquivos de configurações
/home -> Lugar onde ficam as pastas locais dos usuarios
/lib -> Arquivos de bibliotecas essenciais ao sistema utilizadas pelos programas em /bin
/mnt -> Ponto de montagem
/proc -> Informações do KERNEL, dos processos e interrupções da maquina
/root -> Pasta do administrador do sistema
/sbin -> Arquivos relacionados diretamente ao sistema
/temp -> Arquivos temporarios
/usr -> Arquivos que pertencentes aos usuarios
/var -> Pasta onde são guardadas informações variáveis sobre o sistema
------------------------------------------------------------------------------------------------------------------------
Dicas para o slackware :
Como gravar um arquivo .bin com o "cdrdao"?
cdrdao write --overburn --driver generic-mmc --device 0,0,0 arquivo.cue
Administração de Usuários.
Adicionar usuários no sistema:
Digite: adduser nick_do_usuario
Mudar a senha do usuário no sistema:
Digite: passwd nick_do_usuário
Apagar usuário no sistema:
Digite: userdel nick_do_usuário
Descompactando arquivos .tar.bz2.
Para descompactar Arquivos .tar.bz2, basta utilizar a opção j. A linha de comando fica assim:
$ tar -xvfj arquivo.tar.bz2
Como usar o comando find?
Podemos usar este comando de varias formas, desde uma procura simples ate uma procura com pedido de exclusão de arquivos
e outros tipos. Vamos dar exemplos assim e outros simples, mas já dá para você procurar aqueles arquivos que você não
sabe onde esta.
Primeiro exemplo:
Procura arquivos em todos os subdiretórios com a extensão .sh
find . -name "*.sh"
Procura arquivos em toda a arvore com extensão .sh
find / -name .sh
Segundo exemplo:
Procura arquivos em todos os subdiretórios com extensão .sh e os apaga.
find . -name "*.sh" -exec rm -f {} ;
Terceiro exemplo:
Procura arquivos em todos os subdiretórios com extensão .sh e os apaga, pedindo confirmação um por vez.
find . -name "*.sh" -ok rm -f {} ;
Como gravar um ISO usando o "cdrecord"?
cdrecord -v -eject fs=64m dev=0,0,0 nome.iso
Como carregar módulos do kernel?
Para carregar um módulo de um determinado dispositivo, digite:
# insmod nome_módulo
Para listar os módulos que estão carregados, digite:
# lsmod
Se não estiver mais usando o módulo, digite:
# rmmod nome_módulo
Configurando a rodinha do mouse.
Editar o /etc/X11/XF86Config e colocar (na seção "InputDevice"):
Section "InputDevice" Identifier "Mouse0" Driver "mouse" Option "Protocol" "IMPS/2" Option "Device" "/dev/mouse" Option "ZAxisMapping" "4 5" Option "Buttons" "5" EndSection
No caso do seu mouse ser serial, substitua o Protocol de IMPS/2 para IntelliMouse.
Mouse para canhotos.
A grande maioria das pessoas são destras, mas o X não se esquece dos canhotos. De maneira simples,
pode-se alterar a configuração do mouse, invertendo os botões. Simplesmente digite:
xmodmap -e "pointer = 3 2 1"
Se gostou das configurações assim, pode colocar no seu .Xmodmap uma linha com:
pointer = 3 2 1
O .xinitrc do Slackware já lê por default o .Xmodmap, em algumas outras distros,
pode ser necessário incluir o seguinte comando ao .xinitrc:
xmodmap .Xmodmap
Limitando a banda no wget.
Faça download com a linha:
wget --limit-rate=5k --continue http://www.darkers.com/insanity.zip (http://www.darkers.com/insanity.zip)
Estou fazendo download do arquivo insanity.zip com a velocidade de limitado a 5kbytes.
Como listar as portas abertas TCP?
# netstat -na|grep LISTEN
Para converter pacotes .RPM em .TGZ.
Utilize o software Alien. Digite o comando:
# alien -t insanity.rpm
Com o comando acima, ele transformará o insanity.rpm para testando.tgz.
Para você tirar um screenshot use o comando:
import -w root insanity.jpg
Abra o konqueror e digite, por exemplo:
# man:/bash
Você verá o manual do bash no konqueror
Se você esqueceu o nome do comando todo, lembra só a primeira ou segunda letra, aperte TAB duas vezes, exemplo:
st ->Aberte TAB duas vezes (lembrei o comando era startx).
Obs. Algumas dicas foram retiradas do site slackware-brasil...
<< Recomendações >>
Estude IPtables
Estudade "C", pode ter certeza que você vai precisar desse linguagem =;)
Tente aprender alguns comandos
E o principal, tente conhecer o maximo sobre o KERNEL.
<< Conclusão >>
Está aí o basico para você começar a usar o slackware...
hmm legal
tava precisando de algo do tipo
http://www.guiadohardware.net/livros/kurumin/ (http://www.guiadohardware.net/livros/kurumin/)
acho que o kurumin segue mais a kiss
Quote from: "anti-mateira"http://www.guiadohardware.net/livros/kurumin/ (http://www.guiadohardware.net/livros/kurumin/)
acho que o kurumin segue mais a kiss
kurumin qua qua qua :X
se for pra usar kurumin, usa windows de uma vez :/
huauha zuera, é que eu amo slack ;~~
bem legal e bem completo
eu espero que esse topico leva algums membres a experimentar o linux
rog
Sobre o "Hackeando via LILO", talvez seja necessário editar o arquivo /etc/shadow.

Mas no demais está ótimo!
HadeS
Otimo cara... Estava mesmo presisando.
VLW
Ótimo post,
uso o slackware e o gentoo, na minha opinião as melhores distros que existem.
lembrando que o comando
pppsetup
não funciona mais no slack 10.2, nesse você usa o
pppoe-setup para configurar uma conexão.
e mais uma coisinha pra completar o post.
depois de ter editado o inittab e ter colocado o runlevel para 4
será necessário a edição do arquivo /etc/rc.d/rc.4
para ecolher qual gerenciador de login você vai querer que inicie.
são três opções. deixe apenas uma descomentada.
um abraço! partiu...
no slackware não tem o rc.4 não cara...
só mudar o inittab mesmo
;p
Fala Nibbles
no slackware tem sim o rc.4
está localixado em
/etc/rc.d/rc.4
da uma olhada aí

um abraço! partiu....
Cara, Parabéns.
Tô brincando com o Slackware agora e tá sendo bem divertido.
Parabéns pelo post aí
Abraços