twitter
    Seja Livre você Também!! :)

quinta-feira, 20 de outubro de 2011

BCM4312 Debian Squeeze,Wireless Dell Inspiron 1525

Adicione ao repositório > /etc/apt/sources.list:

deb http://ftp.us.debian.org/debian squeeze main contrib non-free

Atualize a lista de pacotes e instale o pacote wireless-tools

# aptitude update
# aptitude install wireless-tools

Para o dispositivos BCM4312, instale o firmware-b43-lpphy-installer:

#aptitude install firmware-b43-lpphy-installer

O módulo do kernel é carregado automaticamente. Se necessário, ele pode ser carregado manualmente, através do comando: (sempre tive que carregar manualmente)

# modprobe b43

ou

# modprobe b43legacy

Verifique se o dispositivo está disponivel:

#iwconfig

Suba a interface:

# ifconfig wlan0 up

Espero ter ajudajo!!

terça-feira, 18 de outubro de 2011

O Sistema de Arquivo sysfs

O kernel 2.6 do Linux apresenta o sistema de arquivo sysfs. O sistema de arquivo sysfs é descrito como a união dos sistemas de arquivo proc, devfs e devpty. O sistema de arquivosysfsenumera os dispositivos e canais conectados ao sistema numa hierarquia de sistema de arquivo que pode ser acessada pelo espaço do usuário. É desenvolvido para lidar com as opções específicas do driver e do dispositivo, que antes estavam localizadas no /proc/, e incluir a adição dinâmica de dispositivos previamente oferecida pelo devfs. Neste ponto inicial da implementação do sysfs, há muitos drivers e utilitários que ainda referenciam as entradas antigas do proc. No entanto, sabe-se que o sysfs é o caminho do futuro.

O sistema de arquivo sysfs é montado em /sys/ e contém diretórios que organizam os dispositivos conectados ao sistema de diversas maneiras diferentes. Os sudiretórios de/sysfs/incluem:

  1. O diretório /devices/

    Este diretório contém o diretório /css0/. Seus sub-diretórios representam todos os sub-canais detectados pelo kernel do Linux. Os diretórios dos sub-canais são nomeados no formato0.0.nnnn onde nnnn é o número do sub-canal em hexadecimal entre 0 e ffff. Os diretórios do sub-canal, por sua vez, contêm arquivos de status e um outro sub-diretório que representa o dispositivo. O diretório do dispositivo é nomeado 0.0.xxxx onde xxxxé o endereço da unidade do dispositivo. O diretório /devices/ também contém informações de status e opções de configuração do dispositivo.

  2. O diretório /bus/

    Este contém os sub-diretórios /ccw/ e /ccwgroup/. Os dispositivos CCW são acessados através de palavras de comando do canal. Os dispositivos do diretório /ccw/ usam somente um sub-canal no sub-sistema do canal do mainframe. Os dispositicos de grupo CCW também são acessados com palavras de comando do canal, mas utilizam mais de um sub-canal por dipositivo. Por exemplo: um dispositivo 3390-3 DASD usa um sub-canal, enquanto uma conexão de rede QDIO para um adaptador OSA usa três sub-canais. Ambos os diretórios /ccw/ e /ccwgroup/ contêm diretórios chamados devices (dispositivos) e drivers:

    O diretório /devices/ contém uma ligação simbólica para os diretórios do dispositivo no diretório /sys/devices/css0/.

    O diretório /drivers/ contém diretórios para cada driver de dispositivo correntemente carregado no sistema. O driver zFCP tem um diretório aqui. O diretório /driver/contém configurações do driver do dispositivo, assim como uma ligação simbólica para os dispositivos que está usando (no diretório /sys/devices/css0/).

  3. O diretório /class/

    Este contém diretórios que agrupam dispositivos similares, como ttys, drives de fita SCSI, dispositivos de rede e outros dispositivos diversos.

  4. O diretório /block/

    Este diretório contém diretórios para cada dispositivo de bloco do sistema. São, na maioria, dispositivos tipo disco, como DASD reais, dispositivos loopback e dispositivos de bloco de raid de software. A diferença notada entre sistemas Linux mais antigos e aqueles que usamsysfsé a necessidade de referenciar os dispositivos pelos seus nomes sysfs. Numa imagem do Kernel 2.4, o driver zFCP era passado como endereços de seus dispositivos. No sistema da imagem do Kernel 2.6, o driver é passado como 0.0.1600.


    Fonte:http://web.mit.edu

O Diretório /proc

O diretório /proc contém um conjunto de arquivos ``virtuais''. Estes arquivos não existem em disco efetivamente e são criados na memória pelo kernel. Alguns dos mais importantes arquivos e diretórios são descritos abaixo:

/proc/n
é um diretório com informações sobre o processo número n. Cada programa em execução (processo) tem um subdiretório correspondente em /proc.

/proc/cpuinfo
Informações a respeito do processador como tipo, modelo e performance.

/proc/devices
Lista de controladores de dispositívo (device drivers) configurados no kernel em execução.

/proc/dma
Informa quais canais de acesso direto à memória (Direct Memory Access) estão sendo utilizados atualmente.

/proc/filesystems
Sistemas de arquivos configurados no kernel.

/proc/interrupts
Informa quais interrupções de hardware estão em uso.

/proc/ioports
Informa quais portas de entrada e saída estão em uso no momento.

/proc/meminfo
Informa sobre o atual uso de memória, real e virtual.

/proc/net
Informa o status dos protocolos de redes.

/proc/stat
Várias informações estatísticas sobre o sistema.

/proc/version
Informa a versão do kernel.

segunda-feira, 17 de outubro de 2011

Apache, MySql, PHP5, PhpMyadmin

E ae galera beleza?

Pois bem, como testar os sites em PHP, localmente? Não basta dar um duplo clique nos arquivos .php, como se faz com os .htm ou .html. É necessário ter um servidor web configurado para isso. Isso quem desenvolve PHP já sabe, então vamos mostrar como rodar PHP no Debian. É necessário baixar 4 pacotes essenciais:

APACHE, Servidor HTTP (rodando localmente)

apt-get install apache2

PHP, sem o PHP instalado, se você colocar um arquivo .php no site, ao acessá-lo pelo navegador ele será exibido como texto (com o código-fonte), ou o mais comum, o navegador pedirá para salvá-lo, como ao fazer o download de um arquivo qualquer.

apt-get install php5

MySql, É um gegenciador de Banco de Dados, com ele é possível armazenar e centralizar os dados, sem se preocupar com a estrutura dos arquivos onde os dados ficarão armazenados, nem em como esses arquivos são indexados.

apt-get install mysql-server

PhpMyadmin, é um programa de computador desenvolvido em PHP para administração do MySQL pela Internet. A partir deste sistema é possível criar e remover bases de dados, criar, remover e alterar tabelas, inserir, remover e editar campos, executar códigos SQL e manipular campos chaves.

apt-get install phpmyadmin

Após a instalação dos pacotes, abra um editor de texto e digite:

< ?
echo "teste php" ;
? >



Salve como teste.php no diretório /var/www/ - onde ficarão suas páginas em PHP.

Abra seu navegador e coloque o endereço localhost e veja se está funcionando..

Espero ter ajudado...

sexta-feira, 25 de março de 2011

Shell

Uma das maneiras mais usuais de interagir com um sistema LINUX especialmente em servidores é usado a "linha de comando" "prompt do shell", indicando que o sistema está pronto para receber instruções. Quando o final do prompt for "$" ex: felipe@MadMax:~$ ; indica que é um usuário comum, quando terminado em "#" ex: root@MadMax:/home/felipe# ; trata-se de um usuário "root".

O Shell Bash

Faz a intermediação entre o usuário e os recursos do computador, o shell padrão na maioria das distribuições Linux é o bash (Bourne Again Shell).

--------
alias
--------
ex:
alias ls='ls --colors=auto'

O comando acima faz com que toda vez que você digitar ls será mostrada a listagem colorida =o..óóóóó...

---
Set
---
-Mostra uma lista completa das vriaveis do shell
-Define o valor de uma variável

------------------
Criar uma Variavel
------------------
Ex:
set FELIPE="Teste variavel"
export FELIPE

----------
Unset
----------
Remove uma variáel na sessão
ex:
unset FELIPE

"variavel criada no exemplo acima.."

-------------------
O que faz o EXPORT?
-------------------
Depois de criar uma variavel do Shell é preciso exportala, usando o comando"export"
Quando uma variável é exportada para o ambiente ela fica disponivel para todos os processos filhos do Shell (todos os programas e aplicações que você executar no bash).

-----------
Comando ls
-----------
Lista os arquivos no diretório corrente

ls -a mostra todos arquivos, incluindo ocultos
ls -t mostra arquivos ordenados pela última data de modificação
ls -l mostra uma lista detalhada dos arquivos

----------
Argumentos
----------
ls -l *.txt
Com esse comando é listado apenas arquivos no formato .txt

------------------
Mais de um comando
------------------
O BASH também permite que você entre com uma sequencia de comandos na mesma linha, separando os com ";"

--------------
Histórico Bash
--------------
.bash_history
Isso fica no diretório home de cada usuário

----------
Comando cd
----------
Navegar pela árvore de diretórios

Com cd / -> entra no diretório raiz do SO.

-----------
Comando pwd
-----------
Mostra o diretório corrente, onde estou.

felipe@MadMax:~$ pwd
/home/felipe

------------------
Caminhos absolutos
------------------
Sempre começa com "/"

/dev
/usr
/usr/local/bin

------------------
Caminhos Relativos
------------------
Se estou em

felipe@MadMax:~$ pwd
/home/felipe

e executo o comando "ls .." estou dizendo para listar arquivos do diretório /home

----------
Símbolo ~
----------

Relativo para o diretorio home do usuario

cat ~felipe/ssh
Irá mostrar o arquivo ssh salvo no diretório "home/felipe"

terça-feira, 22 de março de 2011

Usando o comando DD

Uns meses atrás, estudando para a LPI me deparei com o comando dd e resolvi compartilhar como faço o uso do mesmo.

O comando dd e um clássico dos ambientes Unix-Like, com ele você pode fazer uma copia exata de um arquivo, ou seja uma copia bit a bit. Sintaxe básica:

$ dd
if=origem of=destino

Exemplo:


$ dd if=/home/felipe/Downloads/netbeans-6.9.1-ml-linux.sh of=/home/felipe/netbeans.sh
543986+0 registros de entrada
543986+0 registros de saída
278520832 bytes (279 MB) copiados, 11,7956 s, 23,6 MB/s

O que foi feito??

Foi feita uma cópia do arquivo "netbeans-6.9.1-ml-linux.sh" localizada em "/home/felipe/Downloads/" onde o arquivo copiado foi para /home/felipe, com o nome de netbeans.sh

Cópia do HD para um arquivo
# dd if=/dev/sda of=~/backup_hd.img

Será feita uma copia exata do hd dentro do diretório do root(#) com o nome “backup_hd.img”. Se quiser restaurar o “backp_hd.img” no /dev/sda2(lembre o sda2 deve ter pelo menos o mesmo tamanho do arquivo “backup.hd” se não os resultados poderão ser desastrosos.

# dd if=backup_hd.img of=/dev/sda2
Cópia do HD para o HD
# dd if=/dev/sda9 of=/dev/sda11
Será feita copia do /dev/sda9 para o /dev/sda11.

Fazendo uma copia do hd para um arquivo compactado
# dd if=/dev/sda1 | gzip > backup_hd.img.gz

e para descompactar:

# gzip -d -c backup_hd.img.gz | dd of=/dev/sda2

O comando acima está descompactando o arquivo beckup_hd.img.gz no HD em /dev/sda2
Criar uma ISO

#dd if=diretorio.tar.gz of=iso_do_diretorio.iso
Para visualizar progresso de cópia de arquivos, vá em outro terminal e execute:
$ watch df -h

Para converter todos as letras maiúsculas de um documento para letras minúsculas
$ dd if=ficheiro1 of=ficheiro2 conv=lcase

Se quisermos converter todas as letras do ficheiro2 para maiúsculas:
$ dd if=ficheiro2 of=ficheiro3 conv=ucase

Para zerar(formatar) o seu HD
# dd if=/dev/zero of=/dev/hda

Gerar senhas de forma (pseudo) aleatória

$ dd if=/dev/random bs=2 count=6 | base64 -
"r2KWFW83e9nTniVR"
6+0 registros de entrada
6+0 registros de saída
12 bytes (12 B) copiados, 0,000100641 s, 119 kB/s

sexta-feira, 18 de março de 2011

Compilando Kernel 3.0.4 no Debian Squeeze com processador de 2 núcleos

Acesse o diretório /usr/src:
$ cd /usr/src

Baixe o kernel 3.0.4
# wget -c http://www.kernel.org/pub/linux/kernel/v3.0/linux-3.0.4.tar.bz2

Descompacte
# tar xvjf linux-3.0.4.tar.bz2

Entre no diretório
# cd linux-3.0.4

Aquisição de um arquivo .config

Um arquivo .config contém configurações pré-estabelecidas para a compilação do Kernel.
Se você quiser manter o .config utilizado atualmente pelo seu sistema, execute o comando abaixo.

# cp /boot/config-2[pressione TAB] /usr/src/linux-3.0.4/.config


Configuração e seleção dos módulos a serem compilados.

"Se quiser alterar alguma coisa, acrescentar módulos, remover..ae é da sua escolha, eu não mexo" (pura vagabundice minha)haha, apenas salvo!!

# make menuconfig

Criando uma imagem do kernel compactada com o bzip2

# make -j 3 bzImage

Criando os módulos que você configurou no "make menuconfig"

# make -j 3 modules

Instalando os módulos

# make -j 3 modules_install

Vamos Criar o “initrd” para o Kernel instalado. O “initrd” significa “Initial RAM disk”, ele contém uma pequena imagem do sistema que será carregada no boot.

# mkinitramfs 3.0.4 -o /boot/initrd.img-3.0.4

Este comando copiará o bzImage para o diretório /boot, renomeando para vmlinuz-3.0.4


# cp arch/i386/boot/bzImage /boot/vmlinuz-3.0.4

Atualização do grub


# update-grub ou edite o grub manualmente =) # vim /boot/grub/grub.cfg


E é isso ae!!, espero ter ajudado...

Filtros de texto

------------
#Comando cat
------------
cat
Imprime o conteudo de arquivos

cat > teste.txt
"Conteudo do texto"
Ctrl + C
finaliza o processo de edição de texto
Cria o arquivo texte.txt

cat texto1.txt > texto.txt
Conteudo do arquivo texto.txt é substituido pelo texto1.txt

cat texto1.txt >> texto.txt
Adiciona o conteudo o texto1.txt no final do arquivo texto.txt

------------
#Comando cut
------------
Cortar uma coluna vertical e lê o conteudo de um ou mais arquivo e tem como saída uma coluna vertical

Ex:Coluna A; Coluna B; Coluna C; Coluna D;
1;2;3;4;
10;20;30;40;
100;200;300;400;
1000;2000;3000;400;
10000;20000;30000;40000;

cut -d ´;´ -f2 tabela.txt
Com essa tabela acima e esse comando cut -d onde o delimitador de uma coluna para outra é ";" e -f2 Coluna desejada, neste caso a coluna 2.O resultado seria Coluna B ;2;20;200;2000;20000;

cut -b:número Imprime uma lista vertical com o byte número (da esquerda para direita)

cut -c:número Imprime uma lista vertical com o caractere número (da esquerda para direita)

cut -d:Já foi falado acima =D

cut -f:Também já foi falada =P

cut -d : -f1 /etc/passwd

cut -b 1 /etc/passwd
Primeiro byte do arquivo /etc/passwd

cat /etc/host | cut -f2
Vai ler o conteudo do arquivo /etc/host ,vai jogar para o comando cut que vai selecionar apenas a segunda coluna e vai imprimir o resultado

---------------
#Comando expand
---------------
Troca o Tab dentro dos textos para o número de espaços correspondents

--------------
É util para tornar um texto que faz uso das tabulações mais atrativos para determinados dispositivos, como o vídeo, impressora, arquivos etc..

Continuando com expand

expand -t 4:especifica o número de espaços que o tab contém,neste caso 4, o padrão é 8

expand -i:converte Tabs em espaços somente no início das linhas, deconciderando Tabs no meio ou fim do arquivo.

------------
#Comando fmt
------------
Formata um texto com uma largura específica.
O padrão do fmt é de 75 caracteres.

fmt -w 56 teste.txt: Configura a largura desejada para o texto, neste caso 56 caracteres por linha do arquivo teste.txt

-------------
#Comando head
-------------
Mostra as primeiras 10 linhas do inicio do texto

head -n 2 teste.txt: vai mostrar as duas primeiras linhas do arquivo teste.txt

-------------
#Comando join
-------------
Serve para unir as linhas de ambos arquivosque tenham um índice comum

Exemplo:
Suplonha que o arquivo1 contenha o seguinte conteudo:
GZH-1234
HYD-2389
GIS-2348
E o arquivo2 tenha:
Fiat Uno Mille Smart
Audi A3
Monza

join -j1 arquivo1 arquivo2

A saída será:

1 GZH-1234 Fiat Uno Mille Smart
2 HYD-2389 Audi A3
3 GIS-2348 Monza

-----------
#Comando nl
-----------
É utilizado para numerar as linhas de um arquivo.O comando considera condições especiais para cabeçalho e rodapé do arquivo.

Simbolos para diferenciação
\:\:\: Iniciar o cabeçalho do texto
\:\: Iniciar o corpo do texto
\: Iniciar rodapé do texto

nl -h subopção:Formatar cabeçalho, o padrão é não numerar o cabeçalho

nl -b subopção:Formatar o corpo do texto, o padrão é numerar somente as linhas não vazias

nl -f subopção:Formatar o rodapé do texto, o padrão é não numerar o rodapé

Subopções:

-A :Numerar todas as linhas
-t :Numerar somente as preenchidas
-n :Não numerar as linhas

Exemplo
arquivo.txt

\:\:\:
Relatório de Notas e Frequência dos alunos de CC
------------------------------------------------------------------------------
Nome Nota Freq Resutado
------------------------------------------------------------------------------
\:\:
Felipe dos Santos 8,0 100% Aprovado
Ronaldo Jesus 9,0 90% Aprovado
Josefina Pedrosa 4,5 29% Reprovado
\:
------------------------------------------------------------------------------
nl arquivo.txt

Saída

Relatório de Notas e Frequência dos alunos de CC
------------------------------------------------------------------------------
Nome Nota Freq Resutado
------------------------------------------------------------------------------

1 Felipe dos Santos 8,0 100% Aprovado
2 Ronaldo Jesus 9,0 90% Aprovado
3 Josefina Pedrosa 4,5 29% Reprovado
------------------------------------------------------------------------------
-----------
#Comando od
-----------
Serve para vizualizar conteudo de um arquivi hexadecimal, octal, ASCII e nome dos caracteres

od -t "tipo" :especifica o tipo de saída que o comando od deve gerar

TIPOS:
-a Nome do caractere
-c :ASCII
-o :Octal
-x :Hexadecimal

exemplo
od -t o arquivo.txt
O resultado será que a saída do texto exibirá em octal.

Teste Octal

felipe@MadMax:~$ od -t o Teste.txt
0000000 16434662524 14323620145 01233060564
0000014

--------------
#Comando paste
--------------
É utilizado para concatenar as linhas de diversos arquivos em colunas verticais

paste -d's' :separa as colunas com o símbolo s dentro das aspas simples
paste -s : concatena todo conteúdo de um arquivo com uma linha pra cada arquivo

-----------
#Comando pr
-----------
Formata um arquivo texto para saída paginada com cabeçalho, margens e largura definidos

Pra que isso??
Formatar textos crus para impressão

pr -d :Especifica o espaçamento entre as linhas, neste caso duplo

pr -l 145 :Especifica o número de caracteres de largura da página, padrão é 66, neste caso coloquei 145 =D

pr -o 12 :Especifica o número de espaços da margem esquerda

pr -l 75 -o 5 arquivo.txt
largura 75 saltando 5 da mergem esquerda

--------------
#Comando split
--------------
Usado para dividir arquivos grandes em n-arquivos menores. Os nomes dos arquivos de saída seguem o padrão arquivosaidaaa arquivosaidaab arquivosaidaac, assim por diante

split -n :onde o n é o número de linhas que irão dividir o arquivo de entrada

split -6 teste.txt arquivosaida

Onde -6 é o número de divisão que ocorrerá no arquivo..
A saída vai ser:
arquivosaidaaa
arquivosaidaab
arquivosaidaac
arquivosaidaad
arquivosaidaae
arquivosaidaaf

------------
#Comanto tac
------------
O contrário do cat, mostra o conteudo do arquivo de trás para frente

-------------
#Comando tail
-------------
O oposto do comando head, ele mostra as 10 ultimas linhas de um arquivo

tail -n 17 arquivo.txt :Onde n é o número de linhas finais que irá mostrar

tail -f arquivo.txt :Mostra as últimas linhas finais de um arquivo continuamente enquanto outro processo grava mais linhas. Muito útil para visualizarmos arquivos de LOG.

tail -n 36 /var/log/messages
Vai listar as ultimas 36 linhas do arquivo messages

tail -f /var/log/messages
Vai mostrar o final do arquivo de forma continua e as linhas que são acrescentadas online pelo SO.

-----------
#Comando tr
-----------
Busca uma determinada ocorrência em um texto e trocar por outra ocorrência,ele não modifica o conteudo de um arquivo, para modificalo devemos direcionar o arquivo modificado para um outro lugar ou nome diferente.

tr -d :apaga as ocorrências da variável de busca
tr -s :suprime as ocorrências repetidas da variável de busca

Exemplo:

cat arquivo1 | tr a-z A-Z
Neste exemplo o comando troca todas as letras de a à z para maiúsculas.

cat arquivo1 | tr -d a
Apagará a letra a

cat arquivo1 | tr -s 1
O comando suprime as ocorrências repetidas do número 1

-----------
#Comando wc
-----------
O comando wc conta as linhas, palavras e caracteres de um ou mais arquivos

wc -c :conta os caracteres do arquivo
wc -l :conta o número de linhas do arquivo
wc -L :conta o número de caracteres da maior linha do arquivo
wc -w :conta as palavras de um ou mais arquivos

--------------
#Comando xargs
--------------
Executa o comando e passa como argumento o que foi recebido como entrada padrão. O xargs vai executar inúmeras vezes comando de acordo com o número de linhas recebidas

Não entendi essa porra!!!!!! =S

xargs -p :pergunta ao usuário se o comando deve ser executado antes de fazelo
xargs -r :não executa o comando quando receber linhas vazias
xargs -t :mostre o comando na tela antes de executalo

Exmplo que também não entendi =S
cat texto.txt | xargs echo

A única coisa que fez foi exibir o conteudo do arquivo sem pular linhas, deve ser os argumentos de saída, sei lá??

-----------------
#Símbolos Coringa
-----------------
* "Vale qualquer coisa" ex: Certi* . Pode ser Certificado, Certificação...també pode ser usado para instalar pacotes por exemplo: dpkg -i *deb, vai instalar todos pacotes .deb alocados em um determinado diretório

? "Subistituir um caractere somente de um nome, ex:
?ertificado, onde poderia ser qualquer coisa que terminasse com "ertificado" , Certificado, 1ertificado, certificado....

Hierarquia do Sistemas de Arquivos

Guardar de forma organizada dados e arquivos, por isso foi criado os sistemas de arquivos.

Os arquivos ficam divididos em diretórios e subdiretórios diferentes por uma questão de afinidade e organização.


-------
##Inode
-------
A identificação dos objetos de um sistema de arquivo no Línux é conhecida como inode, ele carrega as informações de onde o objeto está localizado no disco, informações de segurança, data e hora de criação e últimas modificações...

Quando criamos um sistema de arquivos no linux, cada dispositivo tem um número infinito de inodes que será diretamente proporcional ao número de arquivos que este dispositivo poderá acomodar

----------
Diretórios
----------

O sistema GNU/Linux possui a seguinte estrutura básica de diretórios organizados segundo o FHS (Filesystem Hierarchy Standard):

/bin
Contém arquivos programas do sistema que são usados com freqüência pelos usuários.

/boot
Contém arquivos necessários para a inicialização do sistema.

/cdrom
Ponto de montagem da unidade de CD-ROM.

/dev
Contém arquivos usados para acessar dispositivos (periféricos) existentes no computador.

/etc
Arquivos de configuração de seu computador local.

/floppy
Ponto de montagem de unidade de disquetes

/home
Diretórios contendo os arquivos dos usuários.

/lib
Bibliotecas compartilhadas pelos programas do sistema e módulos do kernel.

/lost+found
Local para a gravação de arquivos/diretórios recuperados pelo utilitário fsck.ext2. Cada partição possui seu próprio diretório lost+found.

/mnt
Ponto de montagem temporário.

/proc
Sistema de arquivos do kernel. Este diretório não existe em seu disco rígido, ele é colocado lá pelo kernel e usado por diversos programas que fazem sua leitura, verificam configurações do sistema ou modificar o funcionamento de dispositivos do sistema através da alteração em seus arquivos.

/root
Diretório do usuário root.

/sbin
Diretório de programas usados pelo superusuário (root) para administração e controle do funcionamento do sistema.

/tmp
Diretório para armazenamento de arquivos temporários criados por programas.

/usr
Contém maior parte de seus programas. Normalmente acessível somente como leitura.

/var
Contém maior parte dos arquivos que são gravados com freqüência pelos programas do sistema, e-mails, spool de impressora, cache, etc.

terça-feira, 1 de março de 2011

Identificar e editar configurações de hardware

O mais importante de um sistema operacional é sua integração com o hardware da máquina, o BIOS identifica e realiza testes simples em itens fundamentais de hardware, como disco, processador e memória.

Duas maneiras básicas de identificar recursos de hardware dentro de um sistema Linux, utilizando comandos ou lendo arquivos dentro de sistemas de arquivos especiais.

COMANDOS:

lspci: Mostra componentes conectados ao barramento PCI
lsusb: Mostra dispositivos USB conectados em sua máquina
lsmod: Lista os módulos carregados no sistema

Podemos ver mais detalhes de um dispositivo da seguinte maneira

# lspci -s 09:00.0 -v
09:00.0 Ethernet controller: Marvell Technology Group Ltd. 88E8040 PCI-E Fast Ethernet Controller (rev 12)
Subsystem: Dell Device 022f
Flags: bus master, fast devsel, latency 0, IRQ 27
Memory at fe8fc000 (64-bit, non-prefetchable) [size=16K]
I/O ports at de00 [size=256]
Capabilities: [48] Power Management version 3
Capabilities: [5c] MSI: Enable+ Count=1/1 Maskable- 64bit+
Capabilities: [c0] Express Legacy Endpoint, MSI 00
Capabilities: [100] Advanced Error Reporting
Capabilities: [130] Device Serial Number d6-65-f9-ff-ff-c9-1e-00
Kernel driver in use: sky2

# lspci -s endereço do despositivo -v temos a listagem

O lsusb funciona da mesma forma, mas ao invés do -s usamos -d para enformar o ID do dispositivo escolhido

# lsusb -v -d 05a9:2640

Os comando vistos acima, serve para "facilitar" a leitura das informações de hardwar. Todas essas informações se localizam nos diretórios /proc e /sys.

O diretório /proc contém arquivos com informações dos processos ativos e de recursos de hardware, pro exemplo:

/proc/cpuinfo: Mostra informações sobre o processador encontrado pelo sistema
/proc/dma: Mostra informações sobre canais de acesso direto à memória
/proc/ioports: Mostra informações sobre endereços de memória usados pelos dispositivos.
...

Os arquivos em /sys é parecido com /proc , mas o /sys tem função de guardar informações de dispositivos..


**Informações também retiradas do livro Certificação LPI-1- Luciano António Siqueira, recomendo à todos que buscam a certificação LPI

LPI 101 102

Depois de muito tempo sem postar nada aqui no blog, vou voltar a escrever coisas aqui, atualmente estou estudando para a LPI 101 102 e a cada tópico que eu estudar vou começar a postar o assunto e dar uma breve explicação do assunto..