Páginas

27 de nov. de 2006

Computador para Todos reduz pirataria


Semana passada ( de 20/11/2006 a 24/11/2006) observamos vários sites de notícias reproduzirem a informação de que o projeto de inclusão digital do governo federal "Computador para todos"que vem com o sistema operacional Linux instalado, não estaria bem das pernas por não vir com o sisteama operacional dominante instalado por padrão neste tipo de computador.Isto estaria acontecendo porque as pessoas que estão adquirindo o "Computador para todos" estaria trocando a Linux,totalmente legalizado,por uma cópia pirata do sistema operacional dominante.Para o leitor comum que não tem informações completas e neutras sobre a questão acaba ficando confuso e sem saber o que fazer de fato para se posicionar ante a confusão gerada pela instituíção,no caso a Associação Brasileira das Empresas de Software (Abes),que provocou tal confusão baseada numa pesquisa no mínimo duvidosa. Vale lembrar que a ABES apesar de ser brasileira é formada por empresas estrangeiras,entre elas a microsoft,que vem criticando o programa desde o início,o que é perfeitamente compreensível,dado que o sistema escolhido não é o deles,e sim software livre.
O assunto é importante e lendo o artigo do Rafael Evangelista,na coluna zona de combate na Dicas-L considerei a explicação dele muito boa e esclarecedora,então entrei em contato por email com ele e fui autorizado a reproduzir na íntegra o conteúdo do artigo,contribuíndo assim com a divulgação correta da questão.Boa Leitura.

Computador para Todos reduz pirataria

Por Rafael Evangelista

No último dia 21, circularam fortemente pelos veículos de comunicação dados de uma pesquisa encomendada pela Associação Brasileira das Empresas de Software (Abes) ao instituto Ipsos. O objetivo era avaliar o programa Computador para Todos, do governo federal. A Abes, que é brasileira no nome, é uma associação formada também por empresas estrangeiras, entre elas a Microsoft e tem feito, desde o início, críticas ao programa.

O Computador para Todos oferece redução de impostos e boas condições de financiamento para facilitar a compra de PCs pela classe C. Uma das exigências feitas aos fabricantes, que ganham com a redução dos impostos, é que esses computadores sejam vendidos somente com softwares livres. A Abes é contra essa exigência e tem afirmado que cabe ao comprador o "direito de escolha" do sistema operacional e aplicativos. A Microsoft chegou a oferecer o seu Windows Starter Edition, aquela versão bastante limitada do sistema, que abre no máximo três aplicativos simultaneamente.

De uma maneira geral, o que a imprensa destacou foi que 73% dos entrevistados afirmaram que trocaram o sistema operacional livre pelo Windows da Microsoft. O título das matérias não variou quase nada, foi de dizer que "Usuários do Computador para Todos trocam Linux por Windows" (Estadão) a "Computador para Todos: 73% trocam Linux por Windows" (IDGNow), passando por "Pirata domina programa de inclusão" (Gazeta Mercantil/InvestNews). No corpo das matérias, quase invariavelmente apareceram declarações do presidente da Abes, Jorge Sukarie, afirmando que o programa priva os usuários de opções. A declaração mais repetida nas matérias derivou ou foi transcrita literalmente de um comunicado do presidente da Abes: "A Abes, em diversas oportunidades, já havia se manifestado no sentido de que a oferta de uma solução única, cerceando a liberdade de escolha do sistema operacional por parte do usuário do programa Computador para Todos, acabaria induzindo e estimulando o consumidor ao grave crime de pirataria de software, cujas penas estão previstas pela legislação federal".

Observando-se as matérias e a pesquisa original, publicada no site da Abes (http://www.abes.org.br/computadorparatodos.pdf), é possível fazer alguns comentários sobre as características da circulação da informação jornalística e sobre a força de alguns atores na promoção de uma determinada leitura dos dados. Não que os dados divulgados não comportem as interpretações que foram divulgadas, mas muita coisa interessante ficou de fora e há a predominância de uma determinada leitura, a da Abes, que é reproduzida em diversas matérias. O resultado são vários artigos tecnicamente corretos - alguns amplos, ouvindo também fontes do governo e empresariais, o popular "outro lado" - só que todos mais ou menos iguais.

Ao que parece, funcionou mais ou menos assim: a Abes divulgou a pesquisa e um comunicado, dizendo que os resultados mostravam que o Computador para Todos com software livre levava à pirataria - praticamente um "eu te disse". Ninguém procurou olhar a pesquisa com mais atenção, buscando outro ponto de vista que não o da indústria. Os entrevistados, por sua vez, muito provavelmente pegos de surpresa, também não conseguiram - ou não tiveram chance - de questionar a visão da Abes. Depois de espalhada as primeiras matérias pelos veículos principais, outros apenas parafrasearam o que foi divulgado.

Há vários fatores que levam a essa dinâmica da notícia pasteurizada e que responde ao interesse de alguns poucos: as redações estão enxutas demais; o jornalista é obrigado a produzir muito e em pouco tempo; é mais fácil seguir a visão de um grande anunciante (ou de uma associação deles) do que buscar um ponto de vista alternativo; as assessorias de imprensa são fortes e entregam releases que são matérias praticamente prontas; entre outros. A tudo isso, soma-se o mito de que, ao jornalista, cabe somente ouvir os "dois lados" que sua missão está cumprida, foi produzida uma matéria "imparcial". Porém, dessa forma, a análise e a reflexão, que servem para basear a abordagem e o recorte a serem dados ao fato noticiado, ficam à cargo de quem emitiu o release. Tentando ser "neutro", o jornalista acaba por reproduzir uma interpretação dominante.

Sucesso ou fracasso?

Então vejamos os dados do levantamento encomendado pela Abes. Em primeiro lugar, é preciso falar do método de pesquisa utilizado. Foram realizadas 502 entrevistas por telefone e os entrevistados foram divididos em dois grupos: os responsáveis pela compra e os principais usuários da máquina adquirida. Cada entrevista levou, em média, 25 minutos. Apenas os estados do Paraná e de São Paulo foram objeto da pesquisa - e o relatório não informa a quantidade de entrevistados em cada um. Isso significa dizer que os dados não podem ser extrapolados diretamente para o resto do país, embora sejam indicativos de um processo geral. A margem de erro é de 4,3 pontos, para cima ou para baixo.

Dos entrevistados, 86% afirmaram ser esse o primeiro computador da casa. Do total, a maioria pertence às classes C (56,4%) e D (13,3%), público-alvo do programa, e poucos (dois entrevistados, 0,4%) à classe E. O restante pertence às classes B e A.

É interessante notar que os dois atrativos principais declarados para a compra foram as condições de parcelamento e o preço do produto. Apenas um dos entrevistados declarou ter comprado à vista. Em quinto lugar foi declarado o sistema operacional GNU/Linux pré-instalado como chamariz para a aquisição do produto.

O dado mais explorado da pesquisa foi lido de modo superficial, dando origem à idéia equivocada de que o programa incentiva a pirataria. Dos entrevistados, 73% afirmaram ter substituído o sistema livre por Windows. Porém, destes, somente 1% declarou ter pago mais de R$ 150 pelo sistema. Assumindo-se, como na pesquisa, que um Windows custa pelo menos R$ 400 reais, é evidente que trata-se de uma cópia ilegal. No entanto, isso não significa que é o programa que está levando as pessoas a cometerem a ilegalidade. Na verdade, o Computador para Todos está fazendo com que 30% da pirataria seja evitada, pelo uso de sistemas livres.

Para uma população que tem, de acordo com a pesquisa, renda familiar média entre R$ 2500 (classes A e B) e R$ 1150 (classe C), um sistema de computador que custa, pelado, sem os aplicativos mínimos, R$ 400 não é uma opção. No programa, o GNU/Linux concorre com um sistema que, na prática, ou é gratuito ou custa muito pouco, já que é obtido ilegalmente. E, some-se a isso, o fato de o Windows ser amplamente disseminado e contar com uma rede ativa de "técnicos informais". Dos entrevistados, 18% trocaram de sistema usando serviços da própria loja em que o computador foi vendido, ou seja, o próprio vendedor foi até à casa do comprador e instalou o sistema ilegal.

O Computador para Todos é um programa com deficiências. A principal delas talvez seja a má qualidade de algumas distribuições livres que equipam as máquinas e de parte do suporte técnico oferecido. Mas dizer que o programa é ruim está muito longe da realidade. Ninguém bateu nessa tecla, mas a primeira conclusão destacada na pesquisa Ipsos é que "Computador para Todos tem atingido seus objetivos gerais de incentivo à venda de computadores para a população menos favorecida, através da redução do seu preço primário e da facilidade das condições de pagamento do computador. O programa, de fato, tem atingido a classe C, o público-alvo do programa.".

Calcula-se que tenham sido vendidas, só no início deste semestre, 256 mil máquinas pelo programa. Se imaginarmos que 30% continuam usando GNU/Linux são quase 80 mil computadores por semestre que passam a usar sistemas livres. É um número alto, que contribui para diminuir a diferença entre os sistemas proprietários e livres. Historicamente os sistemas livres nunca corresponderam a mais de 10% dos sistemas instalados. De acordo com outra pesquisa recente, divulgada pelo Comitê Gestor da Internet no Brasil (http://www.nic.br/indicadores/usuarios/tic/2006/rel-geral-04.htm), somente 1,45% dos desktops brasileiros são equipados com GNU/Linux. E essa pesquisa mostra outro dado interessante, que a maior porcentagem de uso está na classe C (1,95%), e a menor na classe A (0,18%).

O uso ilegal de sistemas deve sim ser combatido. No entanto, não cabe ao governo ajudar a distribuir ou oferecer facilidades a um produto que já monopoliza o mercado. Principalmente porque já existe uma alternativa de qualidade, que funciona muito bem, e que institui um sistema de circulação de bens intangíveis muito mais ético e solidário, o software livre. Tendo o computador em mãos, cabe ao consumidor decidir se quer continuar usando o sistema livre ou se quer obter uma licença proprietária a preços exorbitantes. O governo deve fiscalizar e punir as cópias ilegais, mas não pode emperrar ou encarecer um programa de inclusão digital só porque uma empresa quer. Esse programa, inclusive, dá acesso único às funcionalidades do computador, pois inclui não só o sistema operacional, mas também um conjunto grande de aplicativos e seus códigos, livres. Se as máquinas fossem distribuídas somente com o sistema operacional, sem os aplicativos, aí sim haveria incentivo à pirataria, não do Windows, mas dos aplicativos proprietários.

Além do mais, a possibilidade de a Microsoft integrar o programa nunca esteve fechada. Basta oferecer seus softwares com uma licença livre.


Sobre o autor

Rafael Evangelista é cientista social e linguista. Sua dissertação de mestrado tem o título Política e linguagem nos debates sobre o software livre. É editor-chefe da revista ComCiência e faz parte de algumas iniciativas em defesa do software livre como Rede Livre, Hipatia e CoberturaWiki.


Links úteis:

http://www.softwarelivre.rj.gov.br/

http://www.suportelivre.org/

http://twiki.softwarelivre.org/

http://br.tldp.org/

http://codigolivre.org.br/

http://www.onlinux.com.br/dicas/lnag/

http://www.lpibrasil.com.br/

http://focalinux.cipsga.org.br/

http://www.rau-tu.unicamp.br/linux/

http://www.devin.com.br/eitch/tlm4/


23 de nov. de 2006

BASH – Bourne-Again Shell - De usuário para usuário





Tentarei fornecer alguma noção básica sobre a utilização do poderoso BASH,o terminal de linha de comandos do linux.Este artigo serve apenas para estimular o leitor a ir em busca de informação mais completa a fim de ter um controle maior sobre seu sistema operacional.Considere este um bate-papo de usuário para usuário que tem seu linux instalado em casa e muitas vezes precisa “se virar sozinho”.O objetivo é eliminar a idéia de bicho-papão que se tem da linha de comandos,tentando mostrar sua utilidade e simplicidade.
Existem vários tipos de shell que são : Csh (C Shell),Tcsh(Tenex/Tops C Shell),Ksh (Korn Shell),Sh (Bourne Shell) e o citado acima,Bash (Bourne-Again Shell),este último geralmente o padrão no linux.
Existem duas formas básicas de acessar o shell,a forma tradicional é o que se chama “shell puro” e para saber como ele é tecle ctrl+alt+F1 e veja o que vai acontecer,não se assuste,para retornar ao modo gráfico simplesmente digite startx .
O usuário pode acessar,usar,vários terminais virtuais (console,shell) simultaneamente conforme descrito no Guia Foca Linux “2.2 Terminal Virtual (console)”.
“Terminal (ou console) é o teclado e tela conectados em seu computador. O GNU/Linux faz uso de sua característica multi-usuária usando os "terminais virtuais". Um terminal virtual é uma segunda seção de trabalho completamente independente de outras, que pode ser acessada no computador local ou remotamente via telnet, rsh, rlogin, etc.
No GNU/Linux, em modo texto, você pode acessar outros terminais virtuais segurando a tecla ALT e pressionando F1 a F6. Cada tecla de função corresponde a um número de terminal do 1 ao 6 (o sétimo é usado por padrão pelo ambiente gráfico X). O GNU/Linux possui mais de 63 terminais virtuais, mas apenas 6 estão disponíveis inicialmente por motivos de economia de memória RAM (cada terminal virtual ocupa aproximadamente 350 Kb de memória RAM, desative a quantidade que não estiver usando para liberar memória RAM para uso de outros programas!) .
Se estiver usando o modo gráfico, você deve segurar CTRL+ ALT enquanto pressiona uma tela de F1 a F6.
Um exemplo prático: Se você estiver usando o sistema no Terminal 1 com o nome "joao" e desejar entrar como "root" para instalar algum programa, segure ALT enquanto pressiona para abrir o segundo terminal virtual e faça o login como "root". Será aberta uma nova seção para o usuário "root" e você poderá retornar a hora que quiser para o primeiro terminal pressionando ALT+F1”.
Em algumas distribuíções é possível que você não consiga retornar ao modo gráfic
o apenas dando um startx,caso aconteça não fique apavorado(a) apenas digite alguns comandos a mais,assim :

/etc/init.d/gdm stop (para gnome)
/etc/init.d/kdm stop (para kde)

Talvez seja necessário usar privilégios de root para fazer isto.Logo após o enter vai aparecer uma mensagem dizendo que o kdm ou gdm foi desativado.Então,aí sim,digite o startx.Se mesmo assim não der certo use o famoso crtl+alt+del,isto vai reiniciar o sistema e tudo volta ao lugar.

Outro detalhe importante que algumas distribuíções não permitem fazer é o login em modo gráfico como root,e estão certas,afinal logar como root é sempre um risco,mas em algumas situações talvez seja necessário fazer isso,resolver o que se pretende rapidamente e depois voltar como usuário comum.Uma forma de fazer é assim:

ctrl + alt + F1 para entrar em modo texto
login como usuario normal
sudo su para virar root ( em algumas é su + senha)
/etc/init.d/gdm stop para desativar o gdm e X ou
/etc/init.d/kdm stop para desativar o kdm e X
startx para iniciar o gnome ou kde como root dependendo de qual é o default.

Usuários do slackware não precisam destas instruções porque o default do sistema é o login em modo texto,o usuário tem a liberdade de escolher se vai logar como usuário comum ou root.
A estrutura do sistema operacional pode ser dividida em três níveis : O kernel,o Shell(terminal virtual,console) e as ferramentas e aplicativos.
Atualmente quando falamos em interface de usuário pensamos logo em tela gŕafica com botões,ícones,barras e links para interagirmos com o computador,mas o verdadeiro poder de uso de um sistema operacional é em modo texto e no linux isso é uma verdade e frequentemente uma necessidade se a pessoa quer saber realmente como as coisas funcionam.Finalmente,no linux o Shell é a interface mais simples entre o ser humano e o computador,técnicamente falando o shell é o interpretador de comandos.O trabalho dele é analisar o texto digitado,os comandos digitados,e executá-los produzindo algum tipo de resultado.É a ferramenta que nos possibilita comunicar com o kernel (núcleo) do sistema operacional.

Outra detalhe importante é saber identificar quando se está como root ou usuário comum no shell.fazemos isso observando os caracteres :

~$ significa vocẽ está como usuário comum ( com privilégios limitados,mas suficientes para tarefas comuns,rotineiras e sem condições de danificar o sistema)

~# significa que vocẽ está como root (que é o administrador todo-poderoso,podendo até destruir o sistema inteiro,porque tem-se acesso a todos os arquivos críticos do sistema com ampla permissão de leitura,escrita e execução ) .
Outro detalhe igualmente interessante de saber é o que siginifica os caracteres que aparecem antes do cursor,o formato do prompt de comandos padrão do Bash,que tem a seguinte sintaxe :

\u@\h:\w\$

Sendo,

O \u é para o nome do usuário,o \h é para o nome do sistema (hostname),o \w é o diretório atual.Por exemplo :

usuário@ubuntu:~$ ( o til representa o diretório /home)

É possível alterar o nome do hostname,existe um comando para fazer isso,chamado de hostname,sua sintaxe é:

hostname [nome]

Onde [nome] é o nome a ser atribuído ao host local,preferêncialmente em letras minúsculas e evitando usar os caracteres especiais(você foi avisado!).Caso omitido e nenhuma opção passada hostname retornará o nome do host tal qual obtido pela função gethostname().Para saber quais as opções disponíveis para o comando hostname digite:

~$ info hostname

Outra coisa interessante é saber qual shell está instalado e que fica disponível logo que o usuário faz o login,para saber digite no terminal:

~$ echo $SHELL
Se for o bash a resposta será

/bin/bash

Precisamos estar atentos para um detalhe importante no mundo linux,quando digitamos os comandos no terminal,porque existe diferenças entre maiúsculas e minúsculas,sendo isto técnicamente chamdo de case sensitive,ou seja cd é diferente de CD,mv difere de MV,arquivo difere de ARQUIVO e assim por diante,portanto muito cuidado quando digitar comandos.

Para sair do shell ou encerrar a sessão,use os comandos:

~$ exit ( este encerra apenas o shell em uso )

~$ logout (encerra a sessão do usuário)

Os especialistas recomendam utilizar preferencialmente o exit porque pode acontecer que o usuário tenha invocado um shell a partir do outro.

Quando estamos no modo texto ou linha de comando no linux temos uma diversidade enorme de comandos a nossa disposição para usar .Após digtarmos um comando qualquer sempre teclamos enter e a informação é examinada pelo interpretador de comandos (shell,terminal virtual,console ) e logo em seguida repassados para o linux (kernel) que então executa a ação desejada ou retorna uma mensagem de erro.A sintaxe comumente usada pelos comandos é esta:
$ comando [opções] [argumentos]

Outra coisa legal de saber é como usar a ajuda do sistema estando no shell,ou seja a ajuda nativa do sistema. Vamos lá.

No terminal é só digitar :

~$ Help

A saída do comando é esta ( aqui está em português porque eu instalaei os arquivos de tradução,mas normalmente estará em inglês mesmo):

~$ help
GNU bash, version 3.1.17(1)-release (i486-pc-linux-gnu)
Esses comandos do shell são definidos internamente. Digite `help' para ver essa lista.
Digite `help nome' para saber mais sobre a função `nome'.
Use `info bash' para saber mais sobre shell em geral.
Use `man -k' ou `info' para saber mais sobre comandos que não estão nessa lista.


Um asterísco (*) próximo ao nome significa que o comando está desabilitado.
.....

Depois deste texto acima vem uma lista de comandos internos do shell .
Segundo nosso guru de shell Julio Cézar Neves,em seu livro “Programação shell linux” na página 06,na 5ª edição explica o seguinte :

“O comando help é utilizado para mostrar informações gerais dos built-ins do shell ( chama-se built-ins os comandos que são incorporados ao shell,isto é,não são instruções autônomas como o who,por exemplo.São comandos cujos códigos se encontram incorporados ao código do shell).Este comando é muito útil para novos usuários.”

Outra explicação muito boa nos é oferecida pelo Guia Focalinux,deste jeito,no ítem 31.4 HELP:
“Ajuda rápida, útil para saber que opções podem ser usadas com os comandos internos do interpretador de comandos. O comando help somente mostra a ajuda para comandos internos...”

Outra fonte de ajuda são as famosas man pages,páginas de manual,acessível também pelo shell. É a documentação padrão do linux,ali está a ajuda para todos os comandos padrão do sistema.Os utilitários e aplicativos podem incluir instruções nas man pages,mas isso tem de ser feito por eles mesmos na sua instalação,espera-se que o desenvolvedor do aplicativo ou utilitário tenha programado isto.As man pages são divididas em oito seções.,como descrito abaixo.

  • 1 – Comandos do usuários(User Commands): Comandos para serem executados a partir do shell.
  • 2 – Chamadas do sistema(System Calls): Funções executadas pelo kernel.
  • 3 – Bibliotecas de funções(Library Subroutines): A maioria das funções da biblioteca libc
  • 4 – Formatos de arquivos especiais(File Formats): Drivers e hardware
  • 5 – Arquivos de configuração(Miscellaneous): Formatos de arquivos e convenções
  • 6 – Jogos e demonstrações(Games): Jogos do X11
  • 7 – Pacotes de macros e convenções(Devices): Sistemas de arquivos,protocolos de rede,códigos ASCII e outros.
  • 8 – Comandos de administração do sistema(System Administration): Comandos que geralmente só o root pode executar.

Para fazer uma consulta nas man pages basta usar uma sintaxe muito simples e eficiente:

man [seção] [tópico] ou

man + comando

Exemplo

man 1 ls
man mkdir

sendo,

[seção] Indica uma das selões do manual
[tópico] Qual tópico pesquisar.Deve ser o nome do comando,chamada do sistema,biblioteca,etc.

Ou simplesmente:

man -k + palavra chave
(não se esqueça que sua palavra chave tem de estar em inglês ) Faz uma pesquisa com base na palavra chave que foi digitada listando comandos que possuam esta descrição.Exemplo:

~$ man -k copy
bcopy (3) - copy byte sequence
btcopyannounce (1) - copy torrent announce information to other torrents
copysign (3) - copy sign of a number
copysignf (3) - copy sign of a number
copysignl (3) - copy sign of a number
cp (1) - copy files and directories
.....

Uma diferença básica se faz necessária ao utilizar o termo man,porque existe o comando man e o utilitário man,o comando apresenta as páginas de manual,entretanto man é também o utilitário de documenmtação padrão.
Depois de encontrar o tópico selecionado o programa aceita comandos diretamente.Alguns são:
  • -h Mostra a ajuda
  • q Sai do man
  • [N]e Avança uma linha ou N linhas
  • [N]y Volta uma linha ou N linhas
  • f Avança uma tela
  • b Volta uma tela
  • /texto Pesquisa um texto no texto apresentado pelo man
  • Mostra a pŕoxima linha
  • Mostra a pŕoxima página

Um comando muito útil que se pode utilizar no shell para obter informações é tembém o apropos

Sintaxe : apropos comando

Pesquisa um banco de dados que tem a descrição do comando desejado.Útil quando se deseja executar alguma tarefa e não se sabe o nome do comando.
Para descobrir por exemplo qual o compilador está instalado bastaria digitar:

$ apropos compiler
c++ (1) - GNU project C and C++ compiler
c89 (1) - ANSI (1989) C compiler
c89-gcc (1) - ANSI (1989) C compiler
c99 (1) - ANSI (1999) C compiler
c99-gcc (1) - ANSI (1999) C compiler
cc (1) - GNU project C and C++ compiler
ccmakedep (1x) - create dependencies in makefiles using a C compiler
g++ (1) - GNU project C and C++ compiler
g++-4.1 (1) - GNU project C and C++ compiler
gcc (1) - GNU project C and C++ compiler
gcc-4.1 (1) - GNU project C and C++ compiler
i486-linux-gnu-g++ (1) - GNU project C and C++ compiler
i486-linux-gnu-g++-4.1 (1) - GNU project C and C++ compiler
i486-linux-gnu-gcc (1) - GNU project C and C++ compiler
i486-linux-gnu-gcc-4.1 (1) - GNU project C and C++ compiler
.......

Depois de obtaer a informação bastaria:

man gcc

Como nem tudo são flores,caso apareça a seguinte mensagem:

~$ apropos compiler
apropos : file /usr/local/main/whatis not found
Create the whatis database using the catman -w comand

Isto significa que o tal banco de dados ainda não foi criado e a mensagem está te dizendo para fazer isso e te fornece inclusive qual o comando para criar o banco de dados que o apropos vai utilizar.Então para construir o banco de dados basta digitar:
~$ catman -w

Depois de criado o banco de dados o comando apropos ou man -k estará disponível.

Outro comando disponível para ajuda é o whatis.A diferença dele para o apropos é que o whatis obtém uma breve descrição do comando:

Sintaxe: whatis comando

~$ whatis chmod
chmod (1) - change file access permissions
chmod (2) - change permissions of a file

Com apropos

~$ apropos chmod
chmod (1) - change file access permissions
chmod (2) - change permissions of a file
fchmod (2) - change permissions of a file
fchmodat (2) - change permissions of a file relative to a directory file descriptor

Algumas teclas de atalho úteis do shell:

  • Ctrl+A = Move o cursor para o inicio da linha;
  • Ctrl+E = Move o cursor para o fim da linha;
  • Ctrl+U = Apaga o que estiver a esquerda do cursor;
  • Ctrl+K = Apaga o que estiver a direita do cursor;
  • Ctrl+L = Limpa a tela e mantém o texto que estiver sendo digitado.
  • Ctrl+f = Avança o cursor um caracter
  • Ctrl+b = Volta o cursor um caracter
  • Ctrl+d = Deleta o caracter sob o cursor
  • Ctrl+h = Deleta o caracter antes do cursor
  • ESC-f = Avança o cursor até o final de uma palavra
  • ESC-b = Volta o cursor até o início de uma palavra
  • ESC-d = Deleta a partir do cursor (inclusive) até o final da palavra
  • ESC-C+h = Deleta a partir do cursor até o início da palavra
  • ESC-\ = Deleta espaços em branco antes e depois do cursor
  • ESC-[TAB] = Idem ao anterior, porém procura apenas os comandos que estão no histórico
  • ESC-/ = Tenta completar procurando apenas no diretório corrente
  • Ctrl+x-/ = Lista todas as possibilidades de completar o texto que precedeu o comando
  • ESC-~ = Tenta completar procurando no passwd pelo nome do usuário
  • Ctrl+x-~ = Lista todos os usuários que podem ser completados
  • ESC-u = Passa para maiúsculo desde a posição do cursor até o final da palavra
  • ESC-l = Passa para minúsculo desde a posição do cursor até o final da palavra
  • ESC-c = Passa para maiúsculo apenas a letra sob o cursor e muda para minúscula a partir do caracter seguinte até o final da palavra.
  • [Ctrl+x][Ctrl+e] =Edita a linha corrente usando o programa setado em $EDITOR executando o comando assim que finalizar o mesmo.
  • [Ctrl+x][Ctrl+v] = Mostra a versão do shell
  • TAB = Autocompletar - se for pressionada logo após alumas letras, ele tentará completar o comando procurando por programas executáveis. A ordem e os locais de procura são tirados do $PATH
Com estas dicas já temos condições de fuçar bastante nas man pages e ir testando os comandos. Entretanto vocẽ pode também adquirir algum livro ou baixar o Guia focalinux,o guia é grátis,os livros lógicamente não,mas comprando-os nós estaremos contribuíndo com os autores que se esforçam para disponibilizar material de qualidade,dê preferêrencia aos escritores Brasileiros sempre que possível.Espero que tenha contribuído,ainda que pouco,para seu estudo pessoal.Sucesso. :)

Bibliografia:

  • Programação Shell Linux – 5ª edição – Julio Neves
  • Certificação Linux – Uirá Ribeiro
  • Linux Modo Texto Para Profissionais – Moisés pereira Alves
  • Linux para profissionais – Do Básico à Conexão de Redes – George L. jamil &Bernardo A. Gouvêa
  • Guia Foca Linux – Gleidysom mazioli da Silva
  • Comandos do Linux – Guia de Consulta Rápida - Roberto G. A. Veiga
  • Atalhos de teclado no Bash - Rodrigo Zarth - http://br-linux.org/tutoriais/002229.html

16 de nov. de 2006

Recuperando grub/lilo danificado

Recuperando grub/lilo danificado

Existem muitos relatos de usuários que perdem o acesso ao seu sistema linux por diversos motivos,a maioria geralmente é porque precisou reinstalar o windows e como ele tem um comportamente ant-social,simplesmente sobrescreve a MBR e não dá a mínima para qualquer outro S.O,aliás se a pessoa não estiver atenta o windows vai apagar todo seu HD e se instalar sozinho lá.
As vezes acontece também,comigo aconteceu por distração mesmo,do usuário instalar uma versão ou distribuíção nova que saiu naquela partição de teste que tem reservado no HD e na hora de configurar o grub ou lilo simplesmente esqueçe de colocar ele no início da partição raiz e não na MBR,afinal é uma partição de teste,portanto o S.O aí instalado não deve ter seu lilo/grub gerenciando o boot,mas sim seu sistema default é deve ter o lilo/grub na MBR,e logicamente penso que você deseja que as coisas fiquem assim,do contrário caso haja alguma falha não adianta chorar.
Esta dica é simples de ser executada,e o material necessário será apenas um linux qualquer que seja live-CD,recomendo o Ubuntu ou Kurumin,por estarem em português,mas pode ser qualquer outro.
Abaixo vai o passo-a-passo:

1 – Boot pelo live-CD que vocẽ escolheu. (penso que sua Bios já está configurada para isso)

2 – Monte a partição onde o sistema principal está instalado ,Penso que você sabe fazer isso,então,como root,no ubuntu ou kurumin é só digitar no terminal os comandos correspondentes ,mas de qualquer forma mais abaixo tem como fazer.

3 – Caso apareça uma mansagem dizendo que não existe ponto de montagem,é só criar um #mkdir /mnt/hdxy onde x é o hd master ou slave e y a partição 1,2,3 etc.Se não aparecer mensagem alguma e a partição for montada normalmente,prossiga.

4 – Para montar a partição,por exemplo : # mount -t reiserfs /dev/hdb3 /mnt/hdb3 ( mount é o comando, -t é a opção para especificar o sistema de arquivos que neste exemplo é reiserfs,poderia ser ext2,ext3,vfat, /dev/hdb3 é o dispositivo, /mnt/hdb3 é o ponto de montagem

5 – Agora precisamos usar o chroot,continuando com nosso exemplo,é só digitar:

# chroot /mnt/hdb3

6 - Pronto,agora você tem um prompt de comandos do seu sistema principal instalado,onde você tem a possibilidade de recuperar o sistema.Muitas coisas podem ser feitas,mas o objetivo aqui é apenas reparar sua MBR.Para isso digite:

# vi /etc/lilo.conf (para editar seu lilo,vocẽ pode usar outro editor de texto) OU

# vi /boot/grub/menu.lst (para editar seu grub)

7 - As opções acima somente serão necessárias caso precise alterar alguma coisa nos referidos arquivos,se você tem certeza que seu grub/lilo esta correto,é mais fácil ainda,pois não precisa sequer abri-los,basta digitar como root,para o lilo :

# lilo

8 - Para o grub são 2 comandos :

#update-grub

E depois

#grub-install /dev/hda ( ou hdb,hdc,hdd dependendo do disco e da partição )

Espera-se que estas opções recupere sua MBR e você possa voltar a acessar seu sistema principal.
Existem outros métodos preventivos para evitar este tipo de transtorno,como criar o bom,barato,eficiente,fácil de usar e velho disquete de boot.Mas isso é para outro artigo.

Referência :

Linux entendendo o sistema – guia prático – Carlos Morimoto

Linux ferramentas técnicas – guai prático – Carlos Morimoto

Comandos do Linux – guia de consulta rápida – Roberto G. A. Veiga

Certificação linux – Uirá Ribeiro

Google