Comandos Linux para Totós – Tutorial nº7

Comandos Linux para Totós – Tutorial nº7

Criado por Pedro Pinto em 18 de Agosto de 2011 | 23 comentários

Ora vivam !!! Cá estamos nós para mais uma rubrica “Comandos Linux para Totós” e hoje vamos falar sobre processos em Linux. Quando uma aplicação está a correr no sistema é comum designar-se de processo. Os processos estão presentes em quase todos os sistemas operativos e para quem é utilizador do Windows certamente já recorreu ao conjunto de teclas CTRL+ALT+DEL para “matar” um processo que esteja a correr.

Hoje vamos aprender como visualizar e “matar” processos no Linux.

totos

Para visualizar todos os processos que estão em execução no sistema usamos o comando «ps» (process-statistics).

O comando ps tem vários argumentos, no entanto o conjunto mais usual é ps aux:

ppinto@koala:~$ ps aux
USER       PID %CPU %MEM    VSZ   RSS TTY      STAT START   TIME COMMAND
root         1  1.6  0.3   2532  1372 1        Ss   13:56   0:01 /sbin/init
root         2  0.0  0.0      0     0 1        S<   13:56   0:00 [kthreadd]
root         3  0.0  0.0      0     0 1        S<   13:56   0:00 [migration/0]

Explicação do output anterior

  • USER – nome do utilizador que possui (iniciou?) o processo.
  • PID – process identification (identificação do processo).
  • %CPU – ocupação do CPU (desde a última actualização do ecrã).
  • %MEM – ocupação da memória física (memória RAM).
  • VSZ – quantidade de memória virtual usada pelo processo
  • RSS – kilobytes de memória física usados.
  • TTY – Indicação do terminal onde está a correr o processo
  • STAT – S-sleeping, R-running, T-(parado ou em trace), D-uniterruptable sleep, Z=zombie.
  • TIME – tempo total de CPU usado pelo processador (desde quando foi iniciado)
  • COMMAND – comando usado para iniciar o processo

Outras utilizações do comando ps

ps -e
ps -ef
ps -eF
ps -ely
Matar e enviar sinais a processos

O comando «kill» pode enviar vários tipos de sinais a um processo. Por omissão, caso não seja especificado nenhum outro, o sinal enviado é o TERM (terminate).

O sinal KILL garante que o processo é mesmo terminado.

Exemplo de utilização:

Kill -KILL 315
ou
kill -9 315

Para obter uma lista de todos os tipos de sinais disponíveis pode usar o comando kill -l

kill_00

O comando «killall», permite matar processo pelo nome. Serve para enviar sinais a todos os processos que estão a executar um determinado programa. Se por exemplo pretendemos terminar o vi (editor de texto do Linux) podemos executar o comando:

killall vi

E por hoje é tudo. Percebem agora porque se usa regularmente o kill –9, que como eu costumo referir, é matar um processo sem dó nem piedade. Além do ps podem também dar uma vista de olhos no comando top e htop (ver aqui).

Até à proxima! kill post

Artigos relacionados

Comandos Linux para Totós – Tutorial nº8

Comandos Linux para Totós – Tutorial nº8

Criado por Pedro Pinto em 20 de Agosto de 2011 | 12 comentários

RunLevels

Ora vivam caros “linuxianos”! Cá estamos nós para mais uma rubrica “Comandos Linux para Totós”. Espero que estejam a aproveitar e a perceber todas as dicas e que o “terminal preto” já não seja um “inimigo” dos utilizadores.

Depois de termos ensinado a utilizar o tar para compactação e descompactação (ver aqui), hoje vamos perceber o que é um runlevel e que níveis existem num sistema linux.

totos

Lembro-me quando comecei no mundo Linux de ouvir falar em runlevels, mais concretamente runlevel 3 e runlevel 5. Runlevel (nível de execução do sistema Linux) define de um modo geral como é que o nosso sistema se vai comportar ou seja quais os serviços e processos que vão ser inicializados durante o arranque do sistema. O runlevel é definido pelo processo «/sbin/init» que carrega a configuração a partir do ficheiro «/etc/inittab». De referir também que os runlevels variam de distribuição para distribuição.

Exemplo da informação contida no /etc/inittab de um CentOS:

# ‘Runlevel’ por omissão. Os 'runlevels' usados pelo RHS são:
#   0 - desligar (Não configure o 'initdefault' para isto)
#   1 – Modo mono-utilizador
#   2 – Modo multi-utilizador, sem NFS (Network file system)
#   3 - Modo multi-utilizador completo
#   4 – não usado
#   5 - X11
#   6 - reiniciar (NÃO configure o 'initdefault' para isto)
#
id:5:initdefault:

Para  saber qual o runlevel actual do seu sistema pode verificar a informação no ficheiro /etc/inittab  (ex.id:5:initdefault: – indica que vai arrancar no runlevel 5) ou então usando o comando:

[root@pplware ~]# runlevel
N 5

N5” significa: N – “o sistema não arrancou com nenhum outro runlevel entretanto” e “5” é o runlevel corrente”. O runlevel pode ser trocado a qualquer momento pelo comando «init». Por exemplo, init 3 (como root) irá alterar o runlevel para o nível 3.

No RedHat ou CentOS podemos ver em que nível ou níveis um determinado serviço  estará activo. Para isso, podemos usar  o comando chkconfig  –list

[root@pplware ~]# chkconfig --list
NetworkManager  0:off   1:off   2:off   3:off   4:off   5:off   6:off
acpid           0:off   1:off   2:on    3:on    4:on    5:on    6:off
anacron         0:off   1:off   2:on    3:on    4:on    5:on    6:off
apmd            0:off   1:off   2:on    3:on    4:on    5:on    6:off
apt             0:off   1:off   2:off    3:off   4:off   5:off   6:off
atd             0:off   1:off   2:off    3:on    4:on    5:on    6:off
auditd          0:off   1:off   2:on     3:on    4:on    5:on    6:off
autofs          0:off   1:off   2:off    3:on    4:on    5:on    6:off
avahi-daemon    0:off   1:off   2:off    3:on    4:on    5:on    6:off
avahi-dnsconfd  0:off   1:off   2:off    3:off   4:off   5:off   6:off
bluetooth       0:off   1:off   2:on     3:on    4:on    5:on    6:off
capi            0:off   1:off   2:off    3:off   4:off   5:off   6:off
Em resumo

Tal como referido, os runlevels indicam o nível em que o nosso sistema vai operar ou seja, quais os serviços/processos que vão ser inicializados durante o arranque do nosso sistema. Porque se fala muito no runlevel 3 e 5? Bem, basicamente porque um sistema que arranca no runlevel 3 (Modo multi-utilizador completo), apenas disponibilizará a linha de comandos. Este é por exemplo o nível adequado quando instalamos um servidor e apenas vamos fazer gestão remota do mesmo via SSH (não precisamos do interface gráfico). Um sistema a correr no runlevel 5 (X11 – ambiente gráfico), disponibiliza ao utilizador o ambiente gráfico (ex. Gnome, Kde, xfce, etc).

Qual o runlevel actual do vosso sistema?

Domingo é dia de dicas do Microsoft Word

Domingo é dia de dicas do Microsoft Word

Criado por Pedro Pinto em 21 de Agosto de 2011 | 13 comentários

Por Paulo Correia para o PPLWARE

Como é habitual ao Domingo, hoje trazemos mais algumas dicas sobre a potente ferramenta que é o Microsoft Word. Uma vez que esta rubrica tem vindo a tornar-se cada vez mais popular, decidimos torná-la uma rubrica de fim de semana e “aberta” a todos os leitores que pretendam contribuir.

word_001

No seguimento da vossa ultima dica para o MS Word acerca dos placeholders em substituição das fotografias, mando-vos uma dica de como extrair todas as fotografias de um ficheiro word.
Quando alguém nos envia um ficheiro “carregado” de fotografias (por exemplo  uma noticia para publicação na net), dá uma trabalheira enorme copiar todas as fotografias uma a uma para um programa de edição.
Uma forma de as extrair todas de uma vez, é duplicar o ficheiro (não é necessário, mas…) e alterar a extensão de DOCX para ZIP ou RAR. Depois basta abrir o ficheiro comprimido e as fotos estão todas na subpasta\word\media\.

word

Relembramos que o Windows por omissão oculta as extensões dos ficheiros. Para ver essa informação devemos ir por exemplo ao meu computador, carregar na tecla ALT > Tools > Folder Options e depois vamos ao separador View  e tiramos o checkbox da opção Hide extensions for know file types

word_99

Por hoje é tudo! Esperamos que as dicas sejam úteis e que vos ajudem a criar de forma mais simples os vossos documentos. Como referi anteriormente, esta dica está aberta a todos os que pretendam contribuir. Enviem-nos as vossas dicas para ppinto @ pplware .com para publicarmos em próximos artigos.

Veja aqui todas as dicas para o Microsoft Word.

Arquivado na categoria: Tutoriais, Word

Comandos Linux para Totós – Tutorial nº6

Comandos Linux para Totós – Tutorial nº6

Criado por Pedro Pinto em 16 de Agosto de 2011 | 14 comentários

Compactação e descompactação de ficheiros usando o tar

Com meia dúzia de artigos da rubrica “Comandos Linux para Totós“, brevemente vamos ter de fazer uma mini avaliação para recordar todos os comandos que já foram apresentados nesta rubrica.

Hoje vamos aprender a comprimir e descomprimir ficheiros no linux usando o tar.

totos

Compactar e descompactar ficheiros é uma tarefa muito regular no linux. Uma das ferramentas mais utilizadas no linux para compactar e descompactar ficheiros é o tar. Já sabem, que por norma um comando tem vários argumentos e toda a documentação de um determinado comando pode ser consultada usando o comandoman <comando>.

Alguns argumentos importantes do comando tar:

  • c – criar um novo ficheiro
  • p – preserva as permissões (saber mais sobre as permissões aqui)
  • z – comprimir o ficheiro usando o gzip
  • f – indica qual o ficheiro
  • v – modo “verbose”, mostra no ecrã tudo o que está a acontecer
  • x – extrair
  • j – bzip2
  • z – gzip

Para aprender facilmente como usar o comando tar vamos a alguns exemplos.

Como compactar?

Arquiva todo o directório /root/pplware em pplware.tar

tar -cf pplware.tar /root/pplware

Arquiva o o ficheiro pplware1 e pplware2 em pplware.tar (modo verbose, opção v)

tar -cvf pplware.tar pplware1 pplware2

Criar ficheiro pplware.tgz (zip)

tar czfP pplware.tgz /root/pplware

Criar ficheiro pplware.tgz (bzip2)

tar -cjf home.tbz /root/pplware

Como descompactar?

Extrair ficheiro pplware.tar

tar -xf home.tar

Extrair ficheiro pplware.tgz (zip)

tar -xzf pplware.tgz

Extrair ficheiro pplware.tgz (bzip2)

tar -xjf pplware.tgz

Extrair o ficheiro pplware.txt do ficheiro pplware.tar.gztar -xzf pplware.tar.gz pplware.txt

Espero que tenham percebido como compactar e descompactar ficheiros. No início parece complicado, mas se percebermos os argumentos a usar tudo é muito mais simples. Caso tenham alguma dúvida ou dica deixem em comentários para que toda a comunidade pplware possa ajudar.

Layar Vision – Realidade aumentada em tudo o que existe

Layar Vision – Realidade aumentada em tudo o que existe

Criado por Ana Narciso em 11 de Agosto de 2011 | 3 comentários

Lembra-se do Google Goggles? A aplicação móvel que permite captar e reconhecer objetos do dia-a-dia através da câmara do smartphone. Pois bem, em vez ser criada uma pesquisa por esse objecto no Google Search, oLayar Vision permite interagir em tempo real com o objecto filmado.

Confuso? Imagine-se a fotografar o seu restaurante favorito e poder fazer “gosto” ou fotografar um recorte de jornal e publicar a notícia nas redes sociais. Estes são apenas alguns exemplos daquilo que podemos esperar da realidade aumentada.

A Layar, empresa criadora da aplicação móvel de realidade aumentada com o mesmo nome, anunciou recentemente uma extensão para a sua plataforma, Layar Vision. Esta extensão permite o reconhecimento de objectos do mundo real através da câmara do seu smartphone e visualização de conteúdo digital sobre as imagens. Desde recortes de revistas e jornais, logótipos, posteres ou qualquer imagem pré-programada com conteúdo de realidade aumentada.

Tendo em conta a instalação do Layar em 10 milhões de dispositivos móveis um pouco por todo o mundo, trata-se de uma mais-valia para as empresas que pretendem publicitar os seus serviços enquanto divertem o cliente com conteúdo rico em realidade aumentada.

O Layar Vision, combinado com as inúmeras “camadas” já disponíveis na aplicação Layar com os mais diversos pontos de interesse e ligações a sites como a Wikipédia, mostra que cada vez mais caminhamos para um futuro onde a realidade aumentada poderá representar o futuro do marketing e publicidade.

Veja um vídeo que mostra todas a potencialidades desta plataforma.

Esta plataforma já está disponível para os developers que pretendam criar conteúdo rico para a plataforma. Está aberto um concurso de criação de camadas para o Layar Vision – Layar Creation Challenge – onde os prémios ascendem aos $55.000.

Embora ainda não tenha sido lançado ao público, o Layar Vision promete ser incluído no Layar Player que será lançado no último trimestre deste ano, tanto para iOS como para Android. Outra grande novidade é a capacidade de incorporar as funcionalidades do Layar Vision em aplicações individuais para dispositivos móveis.

Artigos relacionados:

Comandos Linux para Totós – Tutorial nº5

Comandos Linux para Totós – Tutorial nº5

Criado por Pedro Pinto em 12 de Agosto de 2011 | 14 comentários

Prontos para mais uma rubrica “Comandos Linux para Totós“? Bem, depois de termos explicado o output de um “ls –l” e de termos explicado o sistema de permissões no Linux é hora de avançarmos para a prática e aprender como definir permissões para um ficheiro.

Vamos a mais uma viagem no “terminal preto”?  Lets go…777!

totos

Ainda relembrando o último artigo desta rubrica (ver aqui) e para aqueles quem atribuíam a permissão 777 sem saber porquê, acho que agora já dá para perceber quais as implicações :)

Bem, vamos então ao que interessa. Tal como referiram alguns dos nossos leitores nos comentários do ultimo artigo desta rubrica, para definir as permissões de um ficheiro utiliza-se o comando chmod. As permissões podem ser definidas num dos seguintes modos: “amigável” ou “máscara binária (ou modo octal)”

Modo: “amigável” (com letras)

Para a definição de permissões através do modo “amigável” é necessário recorrer a letras e mais alguns símbolos. Para isso, produzi uma tabela auxiliar com tudo o que precisam de saber. Por exemplo, a letra ‘u’ indica que é dono, ‘g’ refere-se ao grupo, etc. Depois temos as permissões de leitura, escrita e execução que são definidas através das letras r,w e x respectivamente. Depois há os operadores que nos permitem definir uma permissão (‘+’) ou remover uma permissão (‘-).

linux_tabelaAlguns exemplos

Criem o ficheiro pplware através do comando touch, e depois experimentam mudar-lhe as permissões. Para ver as permissões do ficheiro podem usar o comando ls –l pplware

  • chmod u+rw pplware – dá permissões ‘r/w’(leitura e escrita) ao dono do ficheiro
  • chmod o‐rwx pplware – retira todas as permissões aos “outros”
  • chmod a+rw pplware – dá permissões ‘r/w’ a todos (ugo)
  • chmod go‐r pplware – retira a permissão ‘r’(leitura) ao grupo e outros

Modo: Máscara binária ou modo octal

A máscara binária é composta por três algarismos arábicos sob a base 8 ou seja de 0 a 7 (daí o nome de modo octal) onde:

  • O primeiro dígito representa o dono do ficheiro (u)
  • O segundo dígito representa o grupo (g)
  • O terceiro dígito representa os outros (o)

As permissões são especificadas para cada grupo, somando as permissões necessárias:

  • 4 = Leitura (r)
  • 2 = Escrita (w)
  • 1 = Execução (x)

Relativamente à máscara binária, criei duas tabelas auxiliares:

binario_00binario_01

Vamos considerar então que pretendemos dar ao ficheiro pplware a permissão de leitura(4), escrita (2) eexecução (1) para o dono do ficheiro, leitura (4) ao grupo e leitura (4) aos outros.  Ora somando os “pesos” para o dono temos 4+2+1=7, relativamente ao grupo temos apenas 4 e o mesmo acontece para os outros. Então, a permissão a atribuir seria 744. Percebido? Numa primeira fase parece confuso, mas depois torna-se um sistema bastante simples. Vamos a mais alguns exemplos:

  • chmod 600 pplware > permissões ‘rw‐‐‐‐‐‐‐’
  • chmod 755 pplware > permissões ‘rwxr‐xr‐x’
  • chmod 777 pplware > permissões ‘rwxrwxrwx’

Resumindo, modo amigável usamos letras e na máscara binária usamos um conjunto de três dígitos. Como dica final deixo-vos o comando stat. Experimentem usar da seguinte forma: stat pplware e depois analisam a informação presente no campo Access.

Estão abertos os comentários do artigo a nível de leitura e escrita > chmod 666 :)

Artigos relacionados

Redes – Sabe para que serve um serviço LDAP?

Redes – Sabe para que serve um serviço LDAP?

Criado por Pedro Pinto em 9 de Agosto de 2011 | 29 comentários

De acordo com os vários artigos que já escrevemos sobre redes, é fácil de imaginar que numa rede de dados são muitos os serviços que dão suporte a toda a infra-estrutura. Um dos serviços mais importantes e que serve de suporte a outros é o LDAP (Lightweight Directory Access Protocol). Mas quais as funcionalidades que este serviço permite?

ldap_00

Considere por exemplo uma rede de uma empresa. Já imaginou onde são guardadas as informações relativamente aos utilizadores (Nome, username, password, informações sobre a conta, etc) grupos de utilizadores, informações das máquinas entre outras informações?

Numa rede bem estruturada, existe normalmente um serviço LDAP que mantém toda essa informação e ainda permite a autenticação de utilizadores.

ad_00(imagem do Active Directory do Windows)

A informação encontra-se organizada de forma hierárquica e centralizada, tal como uma agenda telefónica, o que facilita a gestão da mesma por parte de qualquer Administrador e o acesso por parte de outros serviços (ex.FreeRadius).

Para a implementação de um serviço de LDAP existem algumas alternativas sendo que as mais conhecidas são o Active Directory do Windows e o OpenLDAP para sistemas Linux (existem também um porte para o Windows – ver aqui).

Num próximo artigo iremos ensinar como montar o OpenLDAP num sistema Linux.