Pesquisar por palavra-chave:

segunda-feira, 8 de novembro de 2010

Comandos básicos do Linux

Para abrir o modo-texto do linux, pressione simultâneamente as teclas:
CTRL + ALT + F1 ou F2

Vamos conhecer os comandos básicos de navegação:

LS (list)  ...............exibe conteúdo do diretório em que vc está (igual ao "cd"do Windows)

LS |less  ................exibe pausadamente, use as setas direcionais para navegar, e para sair do "less" use a tecla "q".

LS --color  ..............exibe em cores (ver tabela abaixo)
Verde = arquivos executáveis
Azul claro = Link simbólico
Vermelho e branco = link quebrado
Vermelho = arquivo compactado
Rosa = imagem ou arquivo não identificado
Branco = conteúdo em formato de texto
Amarelo = dispositivos
Marrom =  módulos de controle e/s
Azul = diretórios

cal: .....................exibe um calendário;

cat arquivo .............. mostra o conteúdo de um arquivo. Por exemplo, para ver o arquivo documento e ASCII
basta digitar "cat <nome-do_documento>"

cd diretório.............. abre um diretório. Por exemplo, para abrir a pasta /mnt, basta digitar cd /mnt. Para ir ao diretório raiz a partir de qualquer outro, digite apenas cd;

cd.. ......................volta um diretório

cd/  ......................volta para raiz

clear  .................... elimina todo o conteúdo visível, deixando a linha de comando no topo, como se o sistema acabasse de ter sido acessado;

date  ..................... mostra a data e a hora atual;

free  ..................... mostra a quantidade de memória RAM disponível;

halt  ..................... desliga o computador;

history  .................. mostra os últimos comandos inseridos

mv <origem> <destino>  ..... move o arquivo ou o diretório para o destino especificado;

mkdir <nome_diretório>......cria um diretório, por exemplo, "mkdir teste", cria uma pasta de nome teste;

rm arquivo  ............... apaga o arquivo especificado;

rmdir <diretório>........... apaga o diretório especificado, desde que vazio;

shutdown  ..................desliga ou reinicia o computador, veja: shutdown -r now: reinicia o computador shutdown -h now: desliga o computador. O parâmetro now pode ser mudado. Por exemplo: digite shutdown -r +10 e o sistema irá reiniciar daqui a 10 minutos

su  ....................... passa para o usuário administrador, ou seja, alterna para "root" porém vai exigir senha (perceba que o símbolo $ mudará para #);

Espero que este tutorial ajude a diminuir o aspecto de "bicho-de-sete-cabeças" que muitos imaginam sobre os comandos linux.

Configurando um servidor Samba Linux

O Samba linux, é um programa cujo a principal função é compartilhar arquivos e recursos entre computadores windows e linux.
O principal objetivo dos desenvolvedores do Samba é que ele apresente todas as funcionalidades de um servidor windows NT, ou uma estação de trabalho microsoft.

O que o samba é capaz de fazer?
Servidor de arquivos
Servidor de impressão
PDC (primary domain controler) somente para autenticação de usuários
Local Master browser
Domain Master Browser

Antes de começar a configurar o samba, você deve saber alguns comandos básicos antes, caso não saiba, leia o tutorial de Comandos básicos do Linux neste mesmo blog.

Instalando pacote do samba.

Neste tutorial, vou escrever como instalar usando a distribuição Open-suse.

No modo-texto logado como root (super-usuário) digite o comando:

zypper install samba

Obs: necessário conexão com a internet para baixar o pacote.

Em seguida configure o arquivo /etc/samba/smb.conf conforme o exemlo abaixo:
Para maior facilidade, para abrir o arquivo use o programa mcedit, caso não tenha este programa instalado no seu linux, use o comando:

Zipper install mc

Para abrir o arquivo, dentro do diretório /etc/samba, use o comando "mcedit smb.conf"

as linhas começadas com "#" estão comentadas, não tem efeito no arquivo, são somente explicações sobre as linhas logo abaixo.

___________________________início do arquivo______________________

[global]
# Na sessão Global está definido a forma como o servidor samba irá funcionar.
# Acompanhe com atenção cada campo.
# No workgroup vai o nome do grupo de trabalho ou Domínio,
# No nosso caso, sendo um PDC, é o nome de Domínio.
workgroup = microcamp

# netbios name, o nome do servidor na rede
netbios name = SERVER

# A descrição do servidor para a rede
server string = PDC SERVER LINUX

# Usuário Administrador de Domínio.
# Esses usuários serão administradores do domínio.
# Pode ser informado vários usuários
# separados por espaços e /ou grupos. No exemplo, usuários
# andré,  joão e o grupo hardware serão os administradores
admin users = Andre joão @hardware

# O PDC pode ser um servidor de data e hora?
# habilitamos essa função e posteriormente faremos os
# computadores da rede sincronizar seu relógio com o servidor
time server = yes

#nos campos abaixo, a primeira linh dá preferencia ao samba de vencer a eleição
#de master browser, na segunda linha define se será o domain master, na tereceira
#linha os level define o nível do sistema operacional (100 tá ótimo)
preferred master = yes
domain master = yes
os level = 100

# O Servidor aceitará Logon dos usuários nas estações
domain logons = yes
local master = yes

# As próximas duas linhas referem-se aos diretórios
# onde seriam armazenados os profiles dos usuários.
# No nosso caso, o servidor não guardará essas informações,
# elas ficaram salvas localmente em cada estação, por isso
# as tags ficam vazias.
logon path =
logon home =

# Script a ser executado pelos usuários quando fizerem logon.
# Os scripts deverão estar dentro da pasta NETLOGON que
# veremos adiante o seu compartilhando, também devem ser .bat
# para que o windows possa executá-lo.
# Neste caso temos um único script para todos os usuários,
# Você pode definir scripts individuais com o nome do usuário
# ex: andre.bat. Aqui na configuração coloque:
# logon script = %u.bat
# ou ainda conforme o grupo do usuário
# logon script = %g.bat
# se não houver script´s deixe a próxima linha comentada
# logon script = todos.bat

# Security: nível de acesso, pode ser user ou share.
# User, temos um controle de autenticação por usuário, cada
# usuário tem suas permissões de acesso. Já como share,
# temos um compartilhamento simples onde todos acessam
# tudo sem nenhum controle.
security = user

# O servidor aceitará usuários sem senha?
# Eu prefiro deixar No
null passwords = no

# Habilita senhas criptografadas, é importante a habilitação
# para compatibilidade com windows 2000 e XP
encrypt passwords = true


# IPs ou hostnames dos micros da rede
# importante para a segurança, evita conexões indesejadas.
# A classe de IPs da rede do exemplo é 10.1.0.0 talvez a sua
# seja 192.168.0.0, mude de acordo. 127. diz respeito
# ao localhost, o próprio servidor.
hosts allow = 10.1.0. 127.

# arquivo de log do samba
log file = /mnt/sda7/logs/samba/log.%m

# tamanho máximo do arquivo de log em KBs
max log size = 10000

# Nível de detalhes do arquivo log
# altere de 1 a 5 e verifique as diferenças
log level = 2
debug level = 2



# Agora em diante vem os
# compartilhamentos e suas configurações:
# O compartilhamento netlogon é obrigatório
# nele ficará os scripts de logon dos usuários.
# Defina o path, especificando onde está a pasta netlogon
# não esqueça de criá-la também depois.
# Estamos definindo abaixo que o compartilhamento não
# será navegável e que será somente leitura.

[NETLOGON]
comment = Servico de logon
path = /mnt/sda7/netlogon
browseable = no
read only = yes

# Criamos abaixo um compartilhamento público para todos
# acessarem livremente e trocarem arquivos. Ele é
# navegável (browseable=yes), arquivos somente leitura
# podem ser apagados (delete readonly=yes), gravável
# (writable), publico (usuários anônimos também acessaram) e
# disponível (available). Em veto files, defini extensões
# de arquivos que não poderão gravadas, afim de evitar
# abusos. Em create mode, está definido que os arquivos
# criados poderão ser alterados por qualquer um, não
# somente pelo dono, exemplo diferente você verá mais abaixo
[publico]
browseable = yes
delete readonly = yes
writable = yes
path = /mnt/sda7/publico
create mode = 0777
available = yes
public = yes
veto files = /*.mp3/*.wma/*.wmv/*.avi/*.mpg/*.wav/

# O compartilhamento abaixo segue a mesma estrutura,
# a diferença é que só os usuários do grupo adm
# poderão acessá-lo.

[administracao]
path = /mnt/sda6/adm
available = yes
browseable = yes
create mode = 0777
writable = yes
valid users = @adm

# Abaixo temos um compartilhamento com force file mode=700,
# desta maneira os arquivos criados só poderão ser lidos ou
# alterados pelo usuário que os criou.parecido com o comando chmod

[bkps]
path = /mnt/sda7/bkps
available = yes
browseable = yes
writeable = yes
force file mode = 700
veto files = /*.mp3/*.wma/*.wmv/*.avi/*.mpg/
________________Fim do arquivo______________________

Se estiver usando o mcedit, salve pressionando a tecla F2 e saia usando F10.

após a configuração, crie os usuários no linux com o comando: (substitua o <usuário> pelo nome desejado sem as tags <>)

groupad d <nome_grupo>
useradd -g <grupo> <usuário>

Porém, adiciona-los no linux não dá o direito de acessar o samba, devemos adiciona-los ao samba tambem, use o comando

Para adicionar usuários no samba, primeiramente adicionamos no linux conforme o exemplo abaixo:

 smbpasswd –a <usuário>


Ok! agora é só iniciar o samba, dentro do diretório /etc/init.d/ digite o comando:

sh smb start

Para acessar o samba usando o Windows, basta digitar o ip do servidor samba no "executar"



Carregando drivers no linux.

Detecção de hardware:

Comandos básicos (modo-texto com superusuário)
Lspci
Lista itens detectados no PCI ou onboard
Lspci –v
Exibe detalhado
Lsusb
Lista itens usb
Lsusb –v
Detalhadamente
Lshw
Localiza e identifica hardware
Diretório /proc
         Este diretório contem informações sobre o hardware do computador, pode ser visualizado com o comando "cat", basta selecionar o ítem de hardware que deseja obter informações.

Exemplo:

Cat cpuinfo.........informações sobre o processador
      Cat DMA............informações sobre DMA (Direct memory access)

Carregando módulos


Abra os diretórios com o comando "cd", para visualizar o conteúdo do diretório modules para saber a versão do kernel, digite "ls"

/lib/modules/<ver_kernel>/kernel/drivers

Localize o diretório do dispositivo
Ex: net = diretório de módulos de placas de rede.

Dentro do diretório execute o seguinte comando para maiores informações sobre o módulo:

Modinfo <modulo>
Mostra informações sobre o módulo

Para carregar o módulo especificado, não esquecendo de verificar se é mesmo o correto com o comando acima, digite:

Modprobe <módulo>

Outros comandos úteis:

Insmod <módulo>
Descarrega módulo especificado
Lsmod
Lista módulos em uso
Rmmod
Visualiza dependências

Baixando driver no site do fabricante
Geralmente, usamos este método para instalação de drivers de vídeo ou modens que não foram detectados automaticamente pelo sistema.

Faça o download do site do fabricante do ítem de hardware, que deve ser no formato “.run”
         Após o download, torne o arquivo executável com o comando:


Chmod +x <driver.run>

Em seguida execute o arquivo para iniciar a instalação:


sh <driver>.run 


Obs: para instalar drivers de vídeo, é necessário desativar o ambiente gráfico, cara isso, use os comandos:


sh kdm stop ...............................para ambientes gráficos KDE
sh gdm stop ...............................para ambientes gráficos GNOME


Reinicie o sistema após a instalação para voltar o ambiente gráfico, ou digite o comando:


start x

DLL's do Windows

Acredito que todos os usuários dos sistemas operacionais microsoft já se depararam com pelo menos 10 erros causados por dll´s, do tipo “ tal programa não  pode abrir devido ao arquivo A3d.dll não ter sido carregado”. Mas o que são os arquivos .dll? Acredite, erros de dll´s na maioria dos casos ocorre por mau uso do sistema Windows,  portanto, antes de querer matar o Bill Gates por fazer um sistema que vive travando, leia este artigo e tome mais cuidado.
As dll (dynamic link library) ou biblioteca de link Dinâmico, são funções de programas, cada dll em uma função, pra se ter uma idéia, existem DLL para as mais diversas finalidades, como aceesar um dispositivo de hardware, escrever e ler a memória, enviar uma impressão, tem até dll só pra aparecer mensagens de erro, (esta dá vontade de apagar)
A ideia básica de uma dll, é que muitos programas diferentes usam muitas funções em comum, então, porque carregar duas vezes uma mesma função se é possível fazer os programas compartilharem estas funções?
Vários programas têm funções em comum, então se ao carregar um programa na memória, que usa uma determinada função, ao abrir outro programa que também exige a mesma determinada função, o segundo programa não tem que carregar sua dll, pois já existe outra dll de outro programa que faz a mesma função, então uma dll de um programa pode “ ser emprestada” outro programa, assim economizando espaço na memória. Geralmente existem várias dll´s, com a mesma função e mesmo nome espalhadas no computador. mas não são carregadas em duplicidade.
O grande problema, é que ao apagar uma dll (acidentalmente ou não) vários programas podem ter mau funcionamento ou até parar de funcionar, já que suas funções ficam reduzidas.
Outro grande perigo, é quanto a instalação de softwares de desenvolvedores desconhecidos, uma dll de uma determinada função, sempre terá o mesmo nome de arquivo, mesmo que haja atualização destas dll´s, um programa bem desenvolvido, verifica antes de ser instalado, se a dll que está tentando instalar já existe no sistema, se existir, verifica sua versão, se a versão encontrada no computador for de versão mais recente, o programa de instalação não sobrescreve a dll existente, pois a dll de versão mais nova tem funções melhoradas. Mas infelizmente, nem todos os programas fazem isso, dependendo de quem desenvolveu o programa, pode ser que a dll seja sobrescrita e substituida por uma mais antiga, causando um enorme impacto no sistema, pois programas mais novos não trabalham com dll´s antigas, mesmo que programas antigos, funcionam sem problemas com as dll´s  de novas versões, portanto atualizar por dll´s novas não prejudicam programas antigos, enquanto que o contrario não acontece.
Meu conselho é:
Antes de instalar um programa, leia a documentação pra saber se haverá instalação de dll´s, sendo que eu nunca ouvi falar de ninguém que costuma ler o tal arquivo “leiame.txt” ou “readme.txt” (geralmente estes arquivos só são lidos quando o usuário está procurando o serial de um software pirata!) no arquivo que acompanha os programas, geralmente, esta  a informação sobre versões de dll´s, ou se poderá haver substituição de versões da mesma.
Outra dica é criar um ponto de restauração antes de instalar um novo programa, se bem que geralmente o Windows faz isso sozinho, mas não custa ter certeza!
Existe uma reação comum de acontecer quando uma dll é substituida, é muito comum, talvez já aconteceu com você!
Ao tentar abrir dois programas simultaneamente, (vamos chama-lo de “programa 1” e “programa 2”) se abrir o programa 1 primeiro, e em seguida abrir o programa 2, ambos funcionam normalmente, agora, se abrir o programa 2 primeiro, e em seguida o programa 1, eles não funcionam, já aconteceu com você? Este problema ocorre devido a versões diferentes de dll entre os programas, que ao abrir o programa antigo primeiro, a dll é carregada, quando abrir um programa mais recente, que depende de uma dll mais recente, a mesma não é carregada, pois já existe outra dll igual com a mesma função na memória, e as dll´s não carregam em duplicidade, mas até aí, é só inverter a ordem de abertura dos programas quando for abri-los simultaneamente.
Corrigindo problemas com DLL:
Caso seja um problema de falta de uma determinada dll, o arquivo ausente ou corrompido pode ser substituido, localize em outro computador a dll faltante, copie em um pendrive, e instale no computador com problemas, mas verifique a versão do sistema operacional.
Podemos também executar no prompt de comandos o seguinte comando que corrige arquivos protegidos do Windows
Em iniciar > executar digite “CMD” e em seguida digite o seguinte comando:
       sfc /scannow
(necessita do cd de instalação do Windows caso o SFC encontre erros nos arquivos, se isso acontecer o próprio SFC exibirá uma mensagem na tela pedindo para inserir o CD)

Uma possível solução, é encontrar a dll em sites de repositório de dll's, às vezes eu uso este site, www.dlldump.com

Espero com este artigo ter ajudado pessoas com problemas  com dll's 




google-site-verification: google53a8eb0bc7dc474a.html