Páginas

quarta-feira, 1 de agosto de 2012

Partições Linux



as partições do linux se encontram no diretório /dev , segue algumas identificações de discos e partições em sistemas Linux:


• /dev/fd0 − Primeira unidade de disquetes
• /dev/fd1 − Segunda unidade de disquetes
• /dev/hda − Primeiro disco rígido na primeira controladora IDE do micro (primary master)
• /dev/hda1 − Primeira partição do primeiro disco rígido IDE.
• /dev/hdb − Segundo disco rígido na primeira controladora IDE do micro (primary slave)
• /dev/hdb1 − Primeira partição do segundo disco rígido IDE
• /dev/sda − Primeiro disco rígido na primeira controladora SCSI
• /dev/sda1 − Primeira partição do primeiro disco rígido SCSI
• /dev/sdb − Segundo disco rígido na primeira controladora SCSI
• /dev/sdb1 − Primeira partição do segundo disco rígido SCSI
• /dev/sr0 − Primeiro CD−ROM SCSI
• /dev/sr1 − Segundo CD−ROM SCSI
• /dev/xda − Primeiro disco rígido XT
• /dev/xdb − Segundo disco rígido XT

As letras de identificação de discos rígidos podem ir além de hdb, em meu micro, por exemplo, a unidade de
CD−ROM está localizada em /dev/hdg (Primeiro disco − quarta controladora IDE)
É importante entender como os discos e partições são identificados no sistema, pois será necessário usar os parâmetros corretos para monta−los.

segunda-feira, 30 de julho de 2012

Sistemas de arquivos suportados pelo Linux


A lista de sistemas de arquivos suportados pelo Linux é muito grande mas, neste artigo, discutirei somente os mais comuns.
Atualmente, uma importante característica dos atuais sistemas de arquivos é o "journaling". Sistemas de arquivos que possuem essa característica são preferidos em detrimento aos que não possuem.
Journaling é um recurso que permite recuperar um sistema após um desastre no disco (ex.: quando um disco está sujo) em uma velocidade muito maior que nos sistemas de arquivos sem journaling.
Segue abaixo uma breve descrição sobre os sistemas de arquivos mais comuns disponíveis para o Linux:
Ext2
O sistema de arquivos ext2 é conhecido como "Second Extended FileSystem". Foi desenvolvido para ser mais "eficiente" que o sistema de arquivos "Minix", seu antecessor.
O Minix era muito utilizado nas primeiras versões do Linux, e foi utilizado por muitos anos.
O sistema de arquivos ext2 não possui journaling e foi substituído pelo ext3.
Ext3
O sistema de arquivos ext3 é uma versão do ext2 com suporte a journaling. Portanto, o ext3 tem as mesmas características do ext2, mas com suporte journaling.
Essa característica foi uma evolução e tornou o ext3 um sistema de arquivos muito estável e robusto.
Como no ext3 só foi adicionado o suporte a journaling, podemos converter um sistema de arquivos ext2 para ext3, adicionado suporte a journaling, e também podemos converter um sistema de arquivos ext3 para ext2, removendo o suporte a journaling.
ReiserFS
O sistema de arquivos ReiserFS foi criado recentemente. Mas atualmente quase todas as distribuições Linux o suportam.
Sua performance é muito boa, principalmente para um número muito grande de arquivos pequenos.
ReiserFS também possui suporte a journaling.
XFS
O sistema de arquivos XFS também possui suporte a journaling. Foi desenvolvido originalmente pela Silicon Graphics e posteriormente disponibilizado o código fonte. O XFS é considerado um dos melhores sistemas de arquivos para banco de dados, pois é muito rápido na gravação.
XFS utiliza muitos recursos de cache com memória RAM, e para utilizar XFS é recomendado utilizar sistemas que possuem redundância de energia.
SWAP
SWAP é um espaço reservado para troca de dados com a memória RAM.
Em alguns lugares ele não é mencionado como um Sistema de Arquivos, mas resolvi descrever aqui pois faz parte deste artigo.
VFAT
O sistema de arquivos VFAT é também conhecido como FAT32 (M$ Windows).
O sistema de arquivos VFAT não possui suporte a journaling. É utilizado normalmente para transferir dados entre sistemas M$ Windows e o Linux instalados no mesmo disco, pois pode ser lido e escrito por ambos os sistemas operacionais.
O sistema de arquivos VFAT está longe de ser um sistema de arquivos utilizado para Sistemas Linux, exceto para compartilhamento/compatibilidade entre o M$ Windows e Linux.
Se você utilizar VFAT no Linux, esteja certo de perder alguns atributos, tais como: permissão de execução, links simbólicos, entre outras coisas.
Ambos os sistemas de arquivos ext3 e ReiserFS são maduros o bastante para serem utilizados como padrão no Linux. Esses dois são os mais utilizados pelas distribuições Linux.

sexta-feira, 27 de julho de 2012

Instalação do centos.

O CentOS utiliza o Anaconda, que é o mesmo instalador gráfico usado no Fedora. Para usar o instalador gráfico é necessário ter 512 MB de memória, mas é possível instalar o sistema em máquinas antigas usando o instalador em modo texto, que pode ser acessado usando a opção "linux text" na tela de boot:



Assim como em outras distribuições, você pode incluir opções para o Kernel na linha de boot, de forma a solucionar problemas de compatibilidade, como a "acpi-off", "noapic", "all-generic-ide", "irqpoll" e "outras", como em:

linux noapic irqpoll
O instalador começa se oferecendo para realizar um teste da mídia de instalação e em seguida pergunta sobre a linguagem do sistema (o português do Brasil está disponível desde as primeiras versões do sistema) e o layout do teclado.

Durante a instalação, você pode ver o log de mensagens geradas pelo instalador pressionando Ctrl+Alt+F3 e ter acesso a um terminal que pode ser usado para solucionar problemas pressionando Ctrl+Alt+F2.

Em seguida temos o particionamento dos HDs, que começa com a clássica pergunta sobre utilizar o layout padrão, ou criar um layout personalizado:


O CentOS utiliza o LVM por padrão, criando um único volume lógico, englobando todo o espaço disponível do HD e criando partições dentro dele. É usada também uma partição /boot separada, que fica fora do volume LVM, já que o grub não é capaz de inicializar o sistema se o diretório /boot estiver dentro de um volume lógico:



O LVM (Logical Volume Manager) é um recurso incluído no Kernel Linux a partir da versão 2.4 que cria uma camada de abstração entre o sistema operacional e os HDs (ou outras unidades de armazenamento utilizadas). Ele adiciona alguns complicadores adicionais na configuração, mas, em compensação oferece um conjunto de vantagens bastante interessantes.

Imagine que no LVM o sistema não vê HDs e partições, mas sim um ou mais volumes lógicos. Cada volume se comporta como se fosse uma partição, que é formatada e montada da forma usual (um volume pode ser usado inclusive como partição swap). Estes volumes são agrupados em um grupo de volumes lógicos (logical volume group) que se comporta de forma similar a um HD.

O pulo do gato é que o grupo de volumes lógicos pode combinar o espaço de vários HDs e ser modificado conforme necessário, incorporando mais HDs. Os volumes lógicos dentro dele também podem ser redimensionados livremente conforme for necessário.

Se você precisa de mais espaço dentro do volume referente à pasta home, por exemplo, você poderia reduzir o tamanho de um dos outros volumes do sistema (que estivesse com espaço vago) e aumentar o tamanho do volume referente ao home, tudo isso com o servidor operante.

Outra possibilidade é ir adicionando novos HDs ao servidor conforme precisar de mais espaço. Ao instalar um novo HD, você começaria criando um volume físico, englobando todo o espaço do HD. Uma vez que o volume físico é criado, você pode expandir o grupo de volumes lógicos, de forma que ele incorpore o espaço referente ao novo HD. A partir daí, você pode expandir os volumes lógicos, usando o espaço livre.

Caso seja utilizada uma controladora SCSI ou SAS com suporte a hot-swaping, é possível até mesmo adicionar, remover ou substituir HDs, fazendo as alterações necessárias nos volumes lógicos, tudo sem interrupções.

É importante enfatizar que o LVM é apenas uma mudança na forma como o sistema acessa os discos, ele não é um substituto para o RAID. No LVM você pode agrupar vários HDs em um único grupo de volumes lógicos, mas se um dos HDs apresentar defeito, o servidor ficará inoperante e você perderá os dados armazenados no disco afetado, diferente do RAID, onde você pode sacrificar parte do espaço para ter uma camada de redundância.

O grupo de volumes lógicos criado pelo instalador é visto pelo sistema como "/dev/VolGroup00" e os volumes lógicos dentro dele são vistos como "/dev/VolGroup00/LogVol00", "/dev/VolGroup00/LogVol01", etc. Estes nomes usados por default não são muito descritivos, mas é possível alterá-los usando o próprio particionador. Naturalmente, é possível também deixar de usar o LVM, voltando ao sistema normal de particionamento. Nesse caso você só precisa deletar os volumes e o grupo de volumes lógicos e criar a partições desejadas usando o espaço disponível.

Para o particionamento do HD, valem as regras que vimos no meu tutorial anterior sobre instalação de servidores Linux, ou seja, usar volumes separados para os diretórios "/tmp", "/var" e "/home", de acordo com a aplicação do servidor.

Em seguida temos a tela de configuração do gerenciador de boot. Diferente de um desktop, onde muitas vezes precisamos configurar o gerenciador para inicializar vários sistemas operacionais, em um servidor utilizamos sempre um único sistema, o que simplifica as coisas. Você pode rodar outros sistemas operacionais simultaneamente usando VMware Server ou o Xen, utilizando máquinas virtuais.



A opção "Utilizar uma senha no gerenciador de inicialização" define uma senha de boot, que é solicitada pelo grub no início do boot. Esta senha é raramente usada em servidores, pois impede que o servidor seja reiniciado sem que alguém esteja presente no local para digitar a senha no boot seguinte. Ela também não é eficiente como uma proteção contra acesso local do servidor, pois é facilmente burlável.

Em seguida temos a configuração da rede. Tanto ao configurar um servidor para a Internet quanto ao configurar um servidor de rede local, é muito provável que você configure também um domínio. Na Internet a função do domínio é obvia, já que é através dele que os visitantes acessarão os sites hospedados, mas um domínio pode ser útil também em uma rede local, facilitando o acesso às máquinas e viabilizando o uso de diversos serviços adicionais. Mesmo o Active Directory (utilizado em redes Microsoft) é fortemente baseado no uso de domínios.

Gerenciar nomes de domínio é tarefa para o Bind. Por enquanto, você pode se limitar a configurar o "fully qualified domain name" do servidor, ou seja, seu nome completo, incluindo o nome da máquina e o domínio que será utilizado, como em "centos.gdhn.com.br":



Depois de ajustar o fuso-horário e definir as senhas do sistema, chegamos à seleção dos pacotes que serão instalados. Todas as categorias disponíveis são opcionais, de forma que se você simplesmente desmarcar todas, fará uma instalação minimalista do sistema, em modo texto.

As categorias importantes no nosso caso são a "Server" (a seleção padrão de pacotes, incluindo o Samba, Apache, FTP, etc.) e, opcionalmente, a "Server-GUI", que instala o ambiente gráfico e as ferramentas gráficas de administração. É interessante ativar também o "Packages from CentOS Extras", que torna disponível um conjunto de pacotes adicionais, disponibilizados pela equipe do CentOS.



Marcando a opção "Personalizar agora" você tem acesso ao menu de seleção de pacotes. Se você marcou a categoria "Server-GUI" ou uma das categorias desktop, você notará que os pacotes referentes ao X, além do Gnome ou KDE e um conjunto de aplicativos gráficos estarão marcados.

Assim como o Fedora, o CentOS inclui um conjunto de aplicativos gráficos para configuração do sistema que podem ser úteis em muitas situações, de forma que muitos administradores preferem manter o ambiente gráfico instalado, mesmo em servidores que serão apenas acessados remotamente. Você pode perfeitamente manter os pacotes relacionados ao ambiente gráfico instalados, mas manter o ambiente gráfico inativo enquanto não o estiver usando (de forma a não consumir recursos do servidor).

Nas primeiras instalações, recomendo que desmarque os pacotes dentro da categoria "Servidores" e instale cada serviço manualmente, assim você pode estudar melhor o processo de configuração de cada um:



Diferentemente do Red Hat Enterprise, que possui versões distintas para servidores (Red Hat Enterprise Linux), servidores de missão crítica (Red Hat Enterprise Linux Advanced Platform) e para estações de trabalho (Red Hat Enterprise Linux Desktop), cada uma contendo uma coleção de pacotes específicos para as tarefas a que são destinadas, o CentOS é uma distribuição unificada, que simplesmente inclui todos os pacotes disponíveis nos repositórios.

Isso significa que, além de ser usado como servidor, que é o que estudaremos aqui, o CentOS também pode ser usado como sistema desktop, já que inclui o Gnome, KDE e um conjunto bastante completo de aplicativos que podem ser marcados durante a instalação.

Depois de concluída a cópia dos arquivos, é aberto um agente de configuração (que no RHEL é chamado de Red Hat Setup Agent), que conclui a configuração do sistema. Duas opções importantes são a configuração do firewall e do SELinux.

O configurador do firewall é na verdade um wizard, que permite que você selecione as portas referentes aos serviços que ficarão ativos no servidor (as portas selecionadas são abertas e todas as demais fechadas) e, a partir das respostas, gera as regras correspondentes para o IPtables, que é o firewall propriamente dito. Além das portas dos serviços padrão, você pode adicionar manualmente qualquer porta que precisar manter aberta. No exemplo estou abrindo a porta 901, usada pelo swat:



Você pode ajustar a configuração do firewall após a instalação através do utilitário "system-config-securitylevel" (disponível no Sistema > Administração > Nível de Segurança e Firewall). Existe também uma versão em modo texto do aplicativo, o "system-config-securitylevel-tui", que pode ser acessada via terminal (e inclusive remotamente, via SSH).

É possível também desativar a configuração do firewall e configurar as regras do IPtables manualmente, como veremos a seguir. Escrever um script de firewall é mais simples do que pode parecer à primeira vista.

Enquanto estiver estudando, recomendo que faça justamente isso; desativando o firewall na configuração e configurando o IPtables manualmente. Isso evita que você se depare com problemas inesperados introduzidos por portas fechadas no firewall. Depois que você entender a configuração manual do IPtables, pode voltar a configurar o firewall através do wizard caso prefira.

Continuando, temos o SELinux (Secure Linux), um sistema que visa reforçar a segurança do sistema, aplicando um conjunto de diretivas rígidas de segurança. O grande problema é que o SELinux interfere no funcionamento de um grande volume de serviços e de softwares adicionais, o que torna necessário criar exceções para cada caso.

Isso faz com que o modo "Enforcing" (Forçando) do SELinux seja aconselhável apenas em situações onde a segurança realmente seja um fator crítico e onde o administrador possua profundos conhecimentos do sistema, de forma a diagnosticar problemas causados pelas políticas de segurança e criar as exceções necessárias. Um meio termo é o nível "Permissive" (permissivo), onde o SELinux é aplicado apenas a alguns serviços específicos (o Apache e o Bind, por exemplo) e age apenas em relação a eles.

Mesmo sem o SELinux, o CentOS é uma distribuição bastante segura. Enquanto você estiver estudando sobre o sistema e utilizando-o em servidores de rede local, é interessante desativar o sistema. Com isso, você evita situações onde determinados serviços não estão funcionando (apesar da configuração estar correta) por causa das restrições do SELinux.



Para desativá-lo depois da instalação, edite o arquivo "/etc/selinux/config" e substitua a linha "SELINUX=enforcing" ou "SELINUX=permissive" por:

SELINUX=disabled

É necessário reiniciar o micro para que a alteração entre em vigor. O reboot demora alguns minutos, pois o sistema precisa realizar um conjunto de modificações nos arquivos.







O Linux.




Linux é um termo popularmente utilizado para se referir a sistemas operativos (português europeu) ou sistemas operacionais (português brasileiro) que utilizem o núcleo Linux. O núcleo Linux foi desenvolvido pelo programador finlandês Linus Torvalds, inspirado no sistema Minix. O seu código fonte está disponível sob a licença GPL para que qualquer pessoa o possa utilizar, estudar, modificar e distribuir livremente de acordo com os termos da licença.
Inicialmente desenvolvido e utilizado por grupos de entusiastas em computadores pessoais, os sistemas operativos ou sistemas operacionais com núcleo Linux passaram a ter a colaboração de grandes empresas como IBM, Sun Microsystems, Hewlett-Packard (HP), Red Hat, Novell, Oracle, Google, Mandriva e Canonical.Apoiado por pacotes igualmente estáveis e cada vez mais versáteis de softwares livres para escritório (LibreOffice, por exemplo) ou de uso geral (projeto GNU) e por programas para micro e pequenas empresas que na maioria dos casos em nada ficam a dever aos seus concorrentes proprietários, e interfaces gráficas cada vez mais amigáveis como o KDE e o GNOME, o núcleo linux, conhecido por sua estabilidade e robustez, tem gradualmente caído no domínio popular, encontrando-se cada vez mais presente nos computadores de uso pessoal atuais. Há muito entretanto destaca-se como o núcleo preferido em servidores de grandes porte, encontrando-se quase sempre presente nos mainframes de grandes empresas comerciais e até mesmo no computador mais rápido do mundo, o K computer, japonês (lista TOP500).O núcleo Linux foi, originalmente, escrito por Linus Torvalds do Departamento de Ciência da Computação da Universidade de Helsinki, Finlândia, com a ajuda de vários programadores voluntários através da Usenet (uma espécie de sistema de listas de discussão existente desde os primórdios da Internet).
Linus Torvalds começou o desenvolvimento do núcleo como um projeto particular, inspirado pelo seu interesse no Minix, um pequeno sistema UNIX desenvolvido por Andrew S. Tanenbaum. Ele limitou-se a criar, nas suas próprias palavras, "um Minix melhor que o Minix" ("a better Minix than Minix"). E depois de algum tempo de trabalho no projecto, sozinho, enviou a seguinte mensagem para comp.os.minix:
Você suspira pelos bons tempos do Minix-1.1, quando os homens eram homens e escreviam seus próprios "device drivers"? Você está sem um bom projecto em mãos e deseja trabalhar num S.O. que possa modificar de acordo com as suas necessidades? Acha frustrante quando tudo funciona no Minix? Chega de noite ao computador para conseguir que os programas funcionem? Então esta mensagem pode ser exactamente para você. Como eu mencionei há um mês atrás, estou trabalhando numa versão independente de um S.O. similar ao Minix para computadores AT-386. Ele está, finalmente, próximo do estado em que poderá ser utilizado (embora possa não ser o que você espera), e eu estou disposto a disponibilizar o código-fonte para ampla distribuição. Ele está na versão 0.02... contudo eu tive sucesso ao executar bash, gcc, gnu-make, gnu-sed, compress etc. nele.
Curiosamente, o nome Linux foi criado por Ari Lemmke, administrador do site ftp.funet.fi que deu esse nome ao diretório FTP onde o núcleo Linux estava inicialmente disponível.[4] (Linus tinha-o baptizado como "Freax", inicialmente)
No dia 5 de outubro de 1991 Linus Torvalds anunciou a primeira versão "oficial" do núcleo Linux, versão 0.02. Desde então muitos programadores têm respondido ao seu chamado, e têm ajudado a fazer do Linux o sistema operacional que é hoje. No início era utilizado por programadores ou só por quem tinha conhecimentos, usavam linhas de comando. Hoje isso mudou, existem diversas empresas que criam os ambientes gráficos, as distribuições cada vez mais amigáveis de forma que uma pessoa com poucos conhecimentos consegue usar o Linux. Hoje o Linux é um sistema estável e consegue reconhecer muitos periféricos sem a necessidade de se instalar os drivers de som, vídeo, modem, rede, entre outros.

quinta-feira, 26 de julho de 2012

Ip Fixo Linux.







exemplo de ip fixo no linux debian....

Dentro de /etc/network/interfaces configurar como usuário root o ip fixo do servidor:

#Interface Loopback
Auto lo
Iface lo inet loopback

Auto eth0
Iface eth0 inet static
Address: 000.000.000.000
Netmask: 000.000.000.000
Network 000.000.000.000
Broadcast 000.000.000.000
Gateway 000.000.000.000




Conexão com rede wireless.



Vai ai uma postagem pra quem já teve muita dificuldade ao configurar rede wireless em nootebocks ou placas de rede sem fio, no começo parece ser um pouco difícil mas depois de reperti-los por muitas e muitas vezes acaba se torando automático, o interessante não é se focar nos comando e sim procurar entendelos....


Como conectar em uma rede sem fio com o Debian Squeeze?



O primeiro passo é subir a placa com o comando:

# ifconfig wlan0 up

Observe o “#” antes do comando. Isto significa que o comando deve ser executado como root (Super Usuário). Se você estiver usando notebook veja se ativou a placa com o teclado, no meu caso é: fn + f11?.

Rode o comando para verificar as redes disponíveis:

# iwlist wlan0 scan

A resposta para o comando será mais ou menos isto:

wlan0 Scan completed :
Cell 01 - Address: 00:5E:73:21:EE:EF
Channel:1
Frequency:2.412 GHz (Channel 1)
Quality=68/70 Signal level=-42 dBm
Encryption key:on
ESSID:"WIFI"
Bit Rates:1 Mb/s; 2 Mb/s; 5.5 Mb/s; 11 Mb/s; 6 Mb/s
9 Mb/s; 12 Mb/s; 18 Mb/s
Bit Rates:24 Mb/s; 36 Mb/s; 48 Mb/s; 54 Mb/s
Mode:Master
Extra:tsf=00000008afb1d109
Extra: Last beacon: 1088ms ago
IE: Unknown: 00055743415357
IE: Unknown: 010882848B960C121824
IE: Unknown: 030101
IE: Unknown: 2A0100
IE: Unknown: 32043048606C
IE: IEEE 802.11i/WPA2 Version 1
Group Cipher : CCMP
Pairwise Ciphers (1) : CCMP
Authentication Suites (1) : PSK
IE: Unknown: DD0700E04C01020300

Observe as duas partes em negrito:
Encryption Key: on (Significa que não é uma rede pública, necessita de chave de segurança).
ESSID: "Wifi" (O nome da conexã é WIFI).
Na linha:
IE: IEEE 802.11i/wpa2 version 1 (Mostra que a conexão usa criptografia wpa2).

Para se conectar em uma rede pública sem criptografia o comando é:
# iwconfig wlan0 essid Nome_da_conexão

Rede com conexão WEP
# iwconfig wlan0 essid Nome_da_conexão Key Senha_da_conexão

Rede de conexão WAP
# wpa_passphrase Nome_da_conexão senha > /etc/wpa_supplicant/wpa_supplicant.conf
# wpa_supplicant -i wlan0 -c /etc/wpa_supplicant/wpa_supplicant.conf -B -D wext

Dhcp Habilitado na rede
Se sua rede usa servidor DHCP como (Roteador sem fio para conexão de internet banda larga)
Use somente o comando:

# dhclient wlan

Configurar rede manualmente
# ifconfig wlan0 192.168.0.100 netmask 255.255.255.0

Com este comando você define o IP e a máscara de sub-rede.
Adicione os servidores de nome (DNS) no arquivo:

/etc/resolv.conf
Exemplo:
nameserver 10.1.70.254

Agora coloque o Gateway:
# route add default gw 10.1.70.254

Iniciar conexão no boot
Coloque as seguintes configurações no arquivo /etc/network/interfaces:
Para conexão com servidor DHCP:
auto wlan0
iface wlan0 inet dhcp
wireless-essid Nome_da_Rede
pre-up wpa_supplicant -i wlan0 -c /etc/wpa_supplicant/wpa_supplicant.conf -wB -D wext
post-down killall -q wpa_supplicant

Para conexão manual:

auto wlan0
iface wlan0 inet static
address 192.168.0.100
netmask 255.255.255.0
gateway 192.168.0.1
wireless-essid WIFI
pre-up wpa_supplicant -i wlan0 -c /etc/wpa_supplicant/wpa_supplicant.conf -B -D wext
post-down killall -q wpa_supplicant


Fonte, com opções para Fedora e Slackware: