Linux slogan
Visite também: Segurança Linux · BR-Linux.org · Dicas-L · Doode · NoticiasLinux · SoftwareLivre.org · UnderLinux



» Screenshot
» Login
Login:
Senha:

Se você ainda não possui uma conta, clique aqui.

Esqueci minha senha


Dica

Comandos chattr e lsattr
Linux user
Publicado por Thiago Villani em 28/08/2008

Login: villani, 31504 pontos
[ Hits: 13908 ]

Comandos chattr e lsattr

Os comandos chattr e lsattr servem para incrementar segurança no arquivo ou diretório, o comando chattr usa atributos e não permissão como o chmod, esses atributos são extensões que proíbem que o arquivo seja alterado, removido e renomeado, esses atributos pode ser atribuídos para o dono do arquivo e até mesmo para o root. Abaixo será explicado a função de cada comando.

chattr

Esse comando modifica os atributos de arquivos/diretórios

Comando:

chattr [opção] [atributo] [arquivo/diretório]

Onde:

Opções:
  • -R - modifica atributos em subdiretórios.
  • -V - Mostra detalhes sobre a modificação do atributo atributo:
    atributos de arquivo / diretório
    + adiciona atributo
    - remove atributo
    = define o atributo igual especificado

Os atributos são os seguintes:
  • A - Não modifica a hora de acesso ao arquivo (somente em kernel 2.2)
  • a - Append Only, arquivo pode somente ser gravado em modo incrementado, ou seja, pode ser adicionado conteúdo somente no final do arquivo, não pode ser removido ou renomeado.
  • c - Permite compactação nos arquivos especificados de forma transparente.
  • d - Protege para o dump não fazer backup do arquivo.
  • i - Imutáveis. Arquivos Imutáveis não podem ser modificados, gravados, removidos, renomeados. Até mesmo o usuário root com pode máximo não pode alterar.
  • s - É chamado de apagamento seguro, quando eliminado o arquivo é zerado sem possibilidade de recuperação.
  • S - Faz a gravação imediatamente para o arquivo especificado, como sync, ex: igual aos disquetes.
  • u - É marcado como recuperável, quando apagado é salvo uma copia para permitir recuperação.

OBS: Quem utiliza Kernel 2.6 não precisa se preocupar com os atributos, somente os kernel a baixo de 2.6 que precisa de compilação em alguns casos.

Exemplos

Com arquivo:

# chattr +AsdiSu thiagovillani.txt

Ficou assim:

--S-iadA---------- thiagovillani.txt

# chattr -SdA thiagovillani.txt

Ficou assim:

----ia------------ thiagovillani.txt

Com diretório:

# chattr +iAd diretório

Ficou assim:

----i-dA---------- diretório

lsattr

Comando que lista os atributos atribuídos a um arquivo/diretório.

Comando:

lsattr [opção] [arquivo/diretório]

Opções:
  • -a - Lista todos os arquivo, incluindo os ocultos.
  • -d - Lista os atributos de diretórios.
  • -R - Lista um diretório e seus subdiretórios.
  • -v - Mostra versões dos arquivos.

Exemplos:

# lsattr -d diretório

Fica assim:

----i-dA---------- diretório

# lsattr -v thiagovillani.txt

Fica assim:

54 ----ia------------ thiagovillani.txt

# lsattr -dv diretório

Fica assim:

15 ----i-dA---------- diretório/

Exemplo de remoção de um diretório com atributo i adicionado:

# lsattr -d diretório
----i------------- diretório/

Comando com usuário root:

# rm -rfv diretório
rm: cannot remove directory `diretório/': Operação não permitida

OBS: Não deixou remover o diretório mesmo sendo com usuário root.


Outras dicas deste autor

Leitura recomendada
   Dica Linux recomendada Página do twitter não abre utilizando o Google Chrome no Fedora 15
   Dica Linux recomendada Configuração do Bind no Fedora 10
   Dica Linux recomendada Como instalar flashplayer em plataforma 64 bits
   Dica Linux recomendada Redimensionar HD - com Live-CD do Ubuntu
   Dica Linux recomendada Instação do layer7 no Debian Lenny

Comentários
[1] Comentário enviado por marujo em 17/01/2009 - 09:42h:

Uma dúvida... Em:
# lsattr -v thiagovillani.txt

Fica assim:

54 ----ia------------ thiagovillani.txt

O que seria esse número 54?


[2] Comentário enviado por premoli em 21/03/2011 - 11:03h:

O meu mostra: ----------------e-, não consigo localizar o significado do e!

[3] Comentário enviado por villani em 21/03/2011 - 14:42h:

Boa tarde,

Premoli, pela documentação é o seguinte:

O atributo 'e' indica que o arquivo está usando extensões para mapear os blocos no disco. Não pode ser removida utilizando chattr (1).

Att.

[4] Comentário enviado por mxfera em 15/02/2012 - 23:40h:

Muito bom o artigo.


Contribuir com comentário


  
Para executar esta ação você precisa estar logado no site, caso contrário, tudo o que for digitado será perdido.
Responsável pelo site: Fábio Berbert de Paula - Conteúdo distribuído sob licença GNU FDL
Site hospedado por:

Viva o Linux

A maior comunidade Linux da América Latina! Artigos, dicas, tutoriais, fórum, scripts e muito mais. Ideal para quem busca auto-ajuda em Linux.