terça-feira, 30 de abril de 2013

Respostas do Exercício da Aula 12 - Gerenciamento de Permissões no Linux utilizando ACL


Respostas do Exercício da Aula 12 -  Gerenciamento de Permissões no Linux utilizando ACL

Se você ainda não fez o Exercício, acesse ele neste link e faça antes de ver as respostas:

Toda a teoria necessária para a realização deste exercício encontra-se no link
abaixo:

Você pode encontrar todos os resumos de aula no link abaixo:

1 – Construa o seguinte cenário de grupos e usuários:


Dica 1: Crie primeiro os grupos
# groupadd lab1
# groupadd lab2
# groupadd lab3
# groupadd alunos
# groupadd todos

Dica 2: Crie os usuários dentro dos grupos. Vou utilizar as seguintes opções:
-g = grupo primário onde o usuário vai ficar
-G = grupo secundário (ou seja, os outros grupos no qual ele faz parte)
-m = cria o diretório home do usuário
-s /bin/bash = especifica que o usuário irá usar o shell /bin/bash

# useradd -m -s /bin/bash -g lab1 -G todos juca
# useradd -m -s /bin/bash -g lab1 -G todos chaves
# useradd -m -s /bin/bash -g lab2 -G todos marta
# useradd -m -s /bin/bash -g lab2 -G todos vanessa
# useradd -m -s /bin/bash -g lab3 -G todos dani
# useradd -m -s /bin/bash -g lab3 -G todos ceni
# useradd -m -s /bin/bash -g alunos aluno1
# useradd -m -s /bin/bash -g alunos aluno2
# useradd -m -s /bin/bash -g todos prof

# passwd juca
# passwd chaves
# passwd marta
# passwd vanessa
# passwd dani
# passwd ceni
# passwd aluno1
# passwd aluno2
# passwd prof


2 - Crie na raiz: os diretórios: lab1, lab2, lab3, alunos e todos.
# mkdir /lab1
# mkdir /lab2
# mkdir /lab3
# mkdir /alunos
# mkdir /todos


3 –  Faça com que as seguintes configurações sejam feitas:

Diretório
Usuário Dono
Grupo Dono
/lab1
juca
lab1
/lab2
marta
lab2
/lab3
dani
lab3
/alunos
aluno1
alunos
/todos
prof
todos

Atribuindo a propriedade ao usuário dono:
# chown juca /lab1
# chown marta /lab2
# chown dani /lab3
# chown aluno1 /alunos
# chown prof /todos

Atribuindo a propriedade de grupo dono:
# chgrp lab1 /lab1
# chgrp lab2 /lab2
# chgrp lab3 /lab3
# chgrp alunos /alunos
# chgrp todos /todos

Outra maneira de realizar este exercício é atribuindo a propriedade de usuário e grupo de uma vez só:
# chown juca:lab1 /lab1
# chown marta:lab2 /lab2
# chown dani:lab3 /lab3
# chown aluno1:alunos /alunos
# chown prof:todos /todos

4 – Faça com que o diretório /lab1 seja acessado apenas pelos usuários do grupo lab1 com poder total.
# chmod 770 /lab1

5 – Faça com que o diretório /lab2 seja acessado apenas pelos usuários do grupo lab2  com poder total.
# chmod 770 /lab2

6 – Faça com que o diretório /lab3 seja acessado apenas pelos usuários do grupo lab3 com poder total.
# chmod 770 /lab3

7 – Faça com que o diretório /alunos seja acessado apenas pelos usuários do grupo alunos.
# chmod 770 /alunos

8 – Faça com que o diretório /todos seja acessado apenas pelos usuários do grupo todos
# chmod 770 /todos

9 – Faça com que o usuário prof acesse o diretório /todos de modo somente leitura. Porém o grupo deve acessar livremente.
# chmod 570 /todos

10 – Faça com que o usuário prof acesse os diretórios /lab1, /lab2, /lab3 e /alunos com poder total.

# setfacl –m u:prof:rwx /lab1
# setfacl –m u:prof:rwx /lab2
# setfacl –m u:prof:rwx /lab3
# setfacl –m u:prof:rwx /alunos

11 – Exiba a situação de ACLs dos diretórios: /lab1, /lab2, /lab3 e /alunos
# getfacl /lab1
# getfacl /lab2
# getfacl /lab3
# getfacl /alunos

12 – Faça com que o grupo alunos acesse o diretório /todos com acesso total
# setfacl –m g:alunos:rwx /todos

13 – Exiba a situação de ACLs do diretório /todos
# getfacl /todos

14 – Não permita que os usuários juca, marta e dani não façam alterações no diretório /todos
# setfacl –m u:juca:r-x /todos
# setfacl –m u:marta:r-x /todos
# setfacl –m u:dani:r-x /todos

15 – Exiba a situação de ACLs do diretório /todos
# getfacl /todos

16 – Altere a ACL que permite o acesso total do usuário prof ao diretório /alunos. Deixe este usuário com acesso somente leitura.
# setfacl –m u:prof:r-x /alunos

17 – Exiba a situação de ACLs do diretório /alunos
# getfacl /alunos

18 – Retire a ACL que permite o usuário professor de usar o diretório /lab1
# setfacl –x u:prof /lab1

19 – Exiba a situação de ACLs do diretório /lab1
# getfacl /lab1

20 – Retire a ACL que permite o uso do diretório /alunos do usuário prof.
# setfacl –x u:prof /alunos

21 – Exiba a situação de ACLs do diretório /alunos
# getfacl /alunos


Exercício da Aula 12 - Gerenciamento de Permissões no Linux utilizando ACL


Exercício relativo a Aula 12 de Manipulação de Usuários e Grupos

Toda a teoria necessária para a realização deste exercício encontra-se no link abaixo:
http://www.dailson.blogspot.com.br/2013/03/aula-11-gerenciamento-de-permissoes-no.html

Você pode encontrar todos os resumos de aula no link abaixo:
http://www.dailson.com.br/2009/05/indice-mini-tutoriais-usados-em-aula.html  

As respostas deste exercício você encontra no seguinte link:

1 – Construa o seguinte cenário de grupos e usuários:

2 - Crie na raiz: os diretórios: lab1, lab2, lab3, alunos e todos.

3 –  Faça com que as seguintes configurações sejam feitas:

Diretório
Usuário Dono
Grupo Dono
/lab1
juca
lab1
/lab2
marta
lab2
/lab3
dani
lab3
/alunos
aluno1
alunos
/todos
prof
todos

4 – Faça com que o diretório /lab1 seja acessado apenas pelos usuários do grupo lab1

5 – Faça com que o diretório /lab2 seja acessado apenas pelos usuários do grupo lab2

6 – Faça com que o diretório /lab3 seja acessado apenas pelos usuários do grupo lab3

7 – Faça com que o diretório /alunos seja acessado apenas pelos usuários do grupo alunos

8 – Faça com que o diretório /todos seja acessado apenas pelos usuários do grupo todos

9 – Faça com que o usuário prof acesse o diretório /todos de modo somente leitura.

10 – Faça com que o usuário prof acesse os diretórios /lab1, /lab2, /lab3 e /alunos com poder total.

11 – Exiba a situação de ACLs dos diretórios: /lab1, /lab2, /lab3 e /alunos

12 – Faça com que o grupo alunos acesse o diretório /todos com acesso total

13 – Exiba a situação de ACLs do diretório /todos

14 – Não permita que os usuários juca, marta e dani não façam alterações no diretório /todos

15 – Exiba a situação de ACLs do diretório /todos

16 – Altere a ACL que permite o acesso total do usuário prof ao diretório /alunos. Deixe este usuário com acesso somente leitura.

17 – Exiba a situação de ACLs do diretório /alunos

18 – Retire a ACL que permite o usuário professor de usar o diretório /lab1

19 – Exiba a situação de ACLs do diretório /lab1

20 – Retire a ACL que permite o uso  do diretório /alunos do usuário prof.

21 – Exiba a situação de ACLs do diretório /alunos

Respostas do Exercício 11 - Gerenciamento de Permissões no Linux


Respostas do Exercício da Aula 11 -  Gerenciamento de Permissões no Linux

Se você ainda não fez o Exercício, acesse ele neste link e faça antes de ver as respostas:

Toda a teoria necessária para a realização deste exercício encontra-se no link
abaixo:

Você pode encontrar todos os resumos de aula no link abaixo:

1 – Construa o seguinte cenário de grupos e usuários:

Dica 1: Crie primeiro os grupos
# groupadd lab1
# groupadd lab2
# groupadd lab3
# groupadd alunos
# groupadd todos

Dica 2: Crie os usuários dentro dos grupos. Vou utilizar as seguintes opções:
-g = grupo primário onde o usuário vai ficar
-G = grupo secundário (ou seja, os outros grupos no qual ele faz parte)
-m = cria o diretório home do usuário
-s /bin/bash = especifica que o usuário irá usar o shell /bin/bash

# useradd -m -s /bin/bash -g lab1 -G todos juca
# useradd -m -s /bin/bash -g lab1 -G todos chaves
# useradd -m -s /bin/bash -g lab2 -G todos marta
# useradd -m -s /bin/bash -g lab2 -G todos vanessa
# useradd -m -s /bin/bash -g lab3 -G todos dani
# useradd -m -s /bin/bash -g lab3 -G todos ceni
# useradd -m -s /bin/bash -g alunos aluno1
# useradd -m -s /bin/bash -g alunos aluno2
# useradd -m -s /bin/bash -g todos prof

# passwd juca
# passwd chaves
# passwd marta
# passwd vanessa
# passwd dani
# passwd ceni
# passwd aluno1
# passwd aluno2
# passwd prof


2 - Crie na raiz: os diretórios: lab1, lab2, lab3, alunos e todos.
# mkdir /lab1
# mkdir /lab2
# mkdir /lab3
# mkdir /alunos
# mkdir /todos


3 –  Faça com que as seguintes configurações sejam feitas:

Diretório
Usuário Dono
Grupo Dono
/lab1
juca
lab1
/lab2
marta
lab2
/lab3
dani
lab3
/alunos
aluno1
alunos
/todos
prof
todos

Atribuindo a propriedade ao usuário dono:
# chown juca /lab1
# chown marta /lab2
# chown dani /lab3
# chown aluno1 /alunos
# chown prof /todos

Atribuindo a propriedade de grupo dono:
# chgrp lab1 /lab1
# chgrp lab2 /lab2
# chgrp lab3 /lab3
# chgrp alunos /alunos
# chgrp todos /todos

Outra maneira de realizar este exercício é atribuindo a propriedade de usuário e grupo de uma vez só:
# chown juca:lab1 /lab1
# chown marta:lab2 /lab2
# chown dani:lab3 /lab3
# chown aluno1:alunos /alunos
# chown prof:todos /todos

4 – Faça com que o diretório /lab1 seja acessado apenas pelos usuários do grupo lab1 com poder total.
# chmod 770 /lab1

5 – Faça com que o diretório /lab2 seja acessado apenas pelos usuários do grupo lab2  com poder total.
# chmod 770 /lab2

6 – Faça com que o diretório /lab3 seja acessado apenas pelos usuários do grupo lab3 com poder total.
# chmod 770 /lab3

7 – Faça com que o diretório /alunos seja acessado apenas pelos usuários do grupo alunos.
# chmod 770 /alunos

8 – Faça com que o diretório /todos seja acessado apenas pelos usuários do grupo todos
# chmod 770 /todos

9 – Faça com que o usuário prof acesse o diretório /todos de modo somente leitura. Porém o grupo deve acessar livremente.
# chmod 570 /todos

7 - Faça o teste com o usuário juca, marta, dani, e prof logando nos consoles e entrando nas pastas. Em cada pasta faça o comando mkdir teste e veja o resultado.

Faça o login e teste cada um dos diretórios tentando criar ao menos uma pasta dentro com o comando mkdir.

Exercício da Aula 11 - Gerenciamento de Permissões no Linux


Exercício relativo a Aula 11 de Manipulação de Usuários e Grupos

Toda a teoria necessária para a realização deste exercício encontra-se no link abaixo:
http://www.dailson.blogspot.com.br/2013/03/aula-11-gerenciamento-de-permissoes-no.html

Você pode encontrar todos os resumos de aula no link abaixo:
http://www.dailson.com.br/2009/05/indice-mini-tutoriais-usados-em-aula.html  

As respostas deste exercício você encontra no seguinte link:
1 – Construa o seguinte cenário de grupos e usuários:


2 - Crie na raiz: os diretórios: lab1, lab2, lab3, alunos e todos.

3 –  Faça com que as seguintes configurações sejam feitas:

Diretório
Usuário Dono
Grupo Dono
/lab1
juca
lab1
/lab2
marta
lab2
/lab3
dani
lab3
/alunos
aluno1
alunos
/todos
prof
todos

4 – Faça com que o diretório /lab1 seja acessado apenas pelos usuários do grupo lab1

5 – Faça com que o diretório /lab2 seja acessado apenas pelos usuários do grupo lab2

6 – Faça com que o diretório /lab3 seja acessado apenas pelos usuários do grupo lab3

7 – Faça com que o diretório /alunos seja acessado apenas pelos usuários do grupo alunos

8 – Faça com que o diretório /todos seja acessado apenas pelos usuários do grupo todos

9 – Faça com que o usuário prof acesse o diretório /todos de modo somente leitura.

10 - Faça o teste com o usuário juca, marta, dani, e prof logando nos consoles e entrando nas pastas. Em cada pasta faça o comando mkdir teste e veja o resultado.

Respostas do Exercício 10 - Manipulação de Usuários e Grupos

Respostas do Exercício da Aula 10 - Manipulação de Usuários e Grupos.

Se você ainda não fez o Exercício, acesse ele neste link e faça antes de ver as respostas:

Toda a teoria necessária para a realização deste exercício encontra-se no link
abaixo:

Você pode encontrar todos os resumos de aula no link abaixo:


1 - Considere o seguinte cenário de grupos e usuários. Faça os comandos correspondentes para que este cenário seja verdadeiro no seu servidor. Não esqueça de atribuir senhas a cada um dos usuários.




Dica 1: Crie primeiro os grupos
# groupadd lab1
# groupadd lab2
# groupadd lab3
# groupadd alunos
# groupadd todos

Dica 2: Crie os usuários dentro dos grupos. Vou utilizar as seguintes opções:
-g = grupo primário onde o usuário vai ficar
-G = grupo secundário (ou seja, os outros grupos no qual ele faz parte)
-m = cria o diretório home do usuário
-s /bin/bash = especifica que o usuário irá usar o shell /bin/bash

# useradd -m -s /bin/bash -g lab1 -G todos juca
# useradd -m -s /bin/bash -g lab1 -G todos chaves
# useradd -m -s /bin/bash -g lab2 -G todos marta
# useradd -m -s /bin/bash -g lab2 -G todos vanessa
# useradd -m -s /bin/bash -g lab3 -G todos dani
# useradd -m -s /bin/bash -g lab3 -G todos ceni
# useradd -m -s /bin/bash -g alunos aluno1
# useradd -m -s /bin/bash -g alunos aluno2
# useradd -m -s /bin/bash -g todos prof

# passwd juca
# passwd chaves
# passwd marta
# passwd vanessa
# passwd dani
# passwd ceni
# passwd aluno1
# passwd aluno2
# passwd prof

2 - Exiba o arquivo que contém os usuários do sistema.
# cat /etc/passwd

3 - Exiba o arquivo que contém os grupos do sistema
# cat /etc/group

4 - Exiba o arquivo que contém as senhas criptografadas dos usuários do sistema.
# cat /etc/shadow

5 - Exiba o arquivo que contém as senhas criptografadas dos grupos do sistema.
# cat /etc/gshadow

6 - Mude o nome de login do usuário aluno1 para user1
# usermod -l user1 aluno1

7 - Mude o nome do grupo alunos para usuarios
# groupmod alunos –n usuarios

8 – Atribua uma senha para o grupo usuarios
# gpasswd usuarios

9 - Inclua no grupo usuarios, os usuários juca e marta.
# gpasswd –a juca usuários
# gpasswd –a marta usuários

10 - Retire do grupo usuarios, os usuários juca e marta.
# gpasswd –d juca usuários
# gpasswd –d marta usuários

11 - Apague o grupo usuarios.
# groupdel usuários

Provavelmente você verá um erro dizendo que há um usuário dentro do grupo.
Note que os usuários aluno2 e user1 ainda estão no grupo. Veja:
# id user1
# id aluno2

Vamos apagar os usuários aluno2 e user1
# userdel -r aluno2
# userdel -r user1

Agora você poderá apagar o grupo usuarios
# groupdel usuarios

12 - Quantos usuários tem no servidor?
# wc –l /etc/passwd

13 - Grave no arquivo user_ordenado.txt o login de todos usuários do servidor ordenado por nome e numerado.
# cat /etc/passwd | cut –d: -f1 | sort | nl > user_ordenado.txt

14 - Grave no arquivo group_ordenado.txt a relação de todos os grupos do servidor ordenado por nome e numerado.
# cat /etc/group | cut –d: -f1 | sort | nl > user_ordenado.txt

15 - Coloque a senha criptografada dentro do arquivo /etc/passwd
# pwunconv

16 - Devolva a senha para o arquivo /etc/shadow
# pwconv

17 - Crie um usuario chamado denylogin que não loga no sistema.
# useradd –s /bin/false denylogin

18 - Apague os grupos lab1, lab2, lab3 e todos.
Dica 1: Há dois caminhos para fazer esta questão. Uma é apagar todos os usuários e depois apagar os grupos. A outra é retirar os usuários de dentro do grupo para depois apaga-lo. Vamos optar pela primeira alternativa: Apagar todos os usuários e depois os grupos:

# userdel -r juca
# userdel -r chaves
# userdel -r marta
# userdel -r vanessa
# userdel -r dani
# userdel -r ceni


# groupdel lab1
# groupdel lab2
# groupdel lab3
# groupdel alunos
# groupdel todos

"Pessoas de caráter fazem a coisa certa não porque elas acham que isso irá mudar o mundo, mas porque elas se recusam a serem mudadas pelo mundo."
 Michael Josephson

Exercício da Aula 10 - Manipulação de Usuários e Grupos


Exercício relativo a Aula 10 de Manipulação de Usuários e Grupos

Toda a teoria necessária para a realização deste exercício encontra-se no link abaixo:
http://www.dailson.blogspot.com.br/2012/10/aula-10-gerenciamento-de-usuarios-e.html

Você pode encontrar todos os resumos de aula no link abaixo:
http://www.dailson.com.br/2009/05/indice-mini-tutoriais-usados-em-aula.html  

As respostas deste exercício você encontra no seguinte link:


1 - Considere o seguinte cenário de grupos e usuários. Faça os comandos correspondentes para que este cenário seja verdadeiro no seu servidor. Não esqueça de atribuir senhas a cada um dos usuários.



2 - Exiba o arquivo que contém os usuários do sistema.

3 - Exiba o arquivo que contém os grupos do sistema

4 - Exiba o arquivo que contém as senhas criptografadas dos usuários do sistema.

5 - Exiba o arquivo que contém as senhas criptografadas dos grupos do sistema.

6 - Mude o nome de login do usuário aluno1 para user1

7 - Mude o nome do grupo alunos para usuarios

8 – Atribua uma senha para o grupo usuarios

9 - Inclua no grupo usuarios, os usuários juca e marta.

10 - Retire do grupo usuarios, os usuários juca e marta.

11 - Apague o grupo usuarios.

12 - Quantos usuários tem no servidor?

13 - Grave no arquivo user_ordenado.txt o login de todos usuários do servidor ordenado por nome e numerado.

14 - Grave no arquivo group_ordenado.txt a relação de todos os grupos do servidor ordenado por nome e numerado.

15 - Coloque a senha criptografada dentro do arquivo /etc/passwd

16 - Devolva a senha para o arquivo /etc/shadow

17 - Crie um usuario chamado denylogin que não loga no sistema.

18 - Apague os grupos lab1, lab2, lab3 e todos.

sábado, 27 de abril de 2013

Frase do Dia.


"Para viajar basta existir"
Fernando Pessoa

Aula 8.1 - Gerenciando Pacotes Redhat / CentOS / Fedora com o rpm


Segue o resumo de comandos e conceitos vistos em Sala de Aula.
Este é um material de apoio aos meus alunos que tem todo embasamento durante as aulas presenciais.

O Exercício de fixação desta aula, pode ser acessado no seguinte link:
Em breve...

Você pode encontrar todos os resumos de aula no link abaixo:

Gerenciador de Pacotes RPM

O yum é um gerenciador de pacotes da Redhat e derivados classificado como "amigável" (user-friendly). Na verdade, para manipular os pacotes de instalação do Redhat/CentOS/Fedora, aprenderemos a utilizar o RPM - Redhat Packager Mangager.

O RPM, originalmente abreviatura de Red Hat Package Manager, e atualmente um acrónimo recursivo de RPM Package Manager (“Gerenciador de Pacotes RPM”)1 é um sistema de gerenciamento de pacotes de software, assim como o formato de arquivo usado por esse sistema. Ele é parte da Linux Standard Base1 . O RPM serve para instalar, atualizar, desinstalar, verificar e procurar softwares1 . Originalmente desenvolvido pela Red Hat, RPM é agora usado por muitas distribuições Linux. E também é portado para outros sistemas operacionais como NetWare da Novell e AIX da IBM.

Um pacote (programa) para distribuições baseadas em Redhat/CentOS/Fedora, utilizam o formato .rpm

Exemplo:
htop-1.0.2-1.el6.rf.x86_64

Para os exemplos abaixo, iremos usar como base o pacote htop-1.0.2-1.el6.rf.x86_64 . Clique neste link para baixá-lo: http://apt.sw.be/redhat/el6/en/x86_64/rpmforge/RPMS/htop-1.0.1-2.el6.rf.x86_64.rpm

Para instalar um pacote .rpm
# rpm -hiv htop-1.0.2-1.el6.rf.x86_64

Para atualizar um programa a partir de um pacote .rmp
# rpm -Uvh htop-1.0.2-1.el6.rf.x86_64

Para remover um pacote
# rpm -e htop (note aqui que não é o nome do pacote e sim o comando que foi instalado)

Exibindo a lista de arquivos instalados por um pacote
# rpm -ql htop (note que aqui é usado o nome do comando)

Para listar o conteúdo de um pacote .rpm
# rpm -qpl htop-1.0.2-1.el6.rf.x86_64

Listando os arquivos que foram instalados a partir de um pacote
# rpm -ql htop (note que aqui é usado o nome do comando)

Exibindo informações sobre o pacote
# rpm -qip htop-1.0.2-1.el6.rf.x86_64

Procura o pacote ao qual pertece o arquivo
# rpm -qf /etc/services

Listando de todos os pacotes instalados no sistema
# rpm -qa

Fontes:

sexta-feira, 26 de abril de 2013

Frase do Dia


"Eu tenho medos bobos e coragens absurdas."
Clarice Lispector

Aula 7.1 - Gerenciando pacotes Debian com o DPKG


Segue o resumo de comandos e conceitos vistos em Sala de Aula.
Este é um material de apoio aos meus alunos que tem todo embasamento durante as aulas presenciais.

O Exercício de fixação desta aula, pode ser acessado no seguinte link:
Em breve...

Você pode encontrar todos os resumos de aula no link abaixo:

Gerenciador de Pacotes DPKG

O apt-get, aptitude, dselect e synaptic são conhecidos como gerenciadores  "amigáveis" (user-friendly) para o o comandos de manipulação de pacotes do Debian, o dpkg.

Um pacote (programa) para distribuições baseadas em Debian, utilizam o formato .deb

Exemplo:
htop_0.8.3-1_amd64.deb

Para manipular este tipo de pacote utilizaremos o dpkg.
O dpkg é um programa de computador que é a base do sistema de gerenciamento de pacotes da distribuição linux Debian. Foi inicialmente criado por Matt Welsh, Carl Streeter e Ian Murdock como uma aplicação Perl, sendo posteriormente reescrito, em sua maior parte, para a linguagem C (linguagem de programação) por Ian Jackson em 1993. O dpkg, similar ao RPM, é usado para instalar, remover e fornecer informações sobre os pacotes .deb.
O dpkg é uma ferramenta de baixo nível; ferramentas de alto nível, como o APT são usadas para obter os pacotes de instalação de localizações remotas ou lidar com as complexas relações entre eles(dependências).

Para os exemplos abaixo, iremos usar como base o pacote htop_0.8.3-1_amd64.deb.
Clique neste link para baixá-lo:
http://ftp.br.debian.org/debian/pool/main/h/htop/htop_0.8.3-1_amd64.deb

Para instalar um pacote .deb
# dpkg -i htop_0.8.3-1_amd64.deb

Para remover um pacote
# dpkg -r htop (note aqui que não é o nome do pacote e sim o comando que foi instalado)

Para remover um pacote completamente
# dpkg -P htop
# dpkg --purge htop

Para listar o conteúdo de um pacote .deb
# dpkg -L htop_0.8.3-1_amd64.deb

Listando os arquivos que foram instalados a partir de um pacote
# dpkg -L htop

Exibindo informações sobre o pacote
# dpkg -I htop_0.8.3-1_amd64.deb

Exibindo o status de um pacote no sistema
# dpkg -s htop (note que não é o pacote e sim o comando)

Procurando por pacotes com problema de instalação
# dpkg -C
Será listado todos os pacotes com algum tipo de problema, verifique os detalhes do pacote com "dpkg -s" para decidir como corrigir o problema.

Procura o pacote ao qual pertence o arquivo
# dpkg -S /etc/services
# dpkg -S htop

Listando de todos os pacotes instalados no sistema (Nesta listagem também aparece o status do pacote)
# dpkg -l

Exibe a lista de pacotes instalados no sistema (listagem resumida)
# dpkg --get-selections

Listando o conteúdo (arquivos) de um pacote
# dpkg -c htop_0.8.3-1_amd64.deb

Fonte: