Eu instalei recentemente o Ubuntu Server edição 13.10 (Saucy Salamander). Mas encontrei um pouco de problema.
No final da instalação, ele solicita vários pacotes extras, quer você os queira ou não, como o servidor OpenSSH e o host da máquina virtual. Aqui está o que eu estou olhando:
Agora, meu problema é que não consigo me lembrar se marquei a caixa de seleção "host da máquina virtual". Como verifico se meu servidor tem os pacotes correspondentes?
Quais pacotes vêm com o host da máquina virtual?
server
package-management
virtual
D.Zou
fonte
fonte
$ apt-cache policy <package-name>
, por exemplo$ apt-cache policy dillo
Respostas:
Você está procurando conhecer todos os comandos do dpkg com opções? Leia o link abaixo.
15 comandos dpkg para gerenciar servidores Linux baseados no Debian
Para listar todos os pacotes instalados
Aqui, "less" é um simples leitor de texto usado para rolar pela lista de pacotes em um novo buffer que é aberto na janela existente do terminal. A lista não será misturada com outros comandos e saídas do terminal. Pressione 'q' para retornar ao prompt do terminal. Veja "menos homem" para mais informações.
Para verificar se um pacote está instalado ou não:
Para verificar se o pacote está instalado ou não (por exemplo,
vlc
). Se instalado, inicie o pacote:Mostra o local em que o pacote está instalado. O "-S" (S maiúsculo) significa "pesquisa"
Para usar o Grep para pesquisar:
fonte
dpkg -l packagename
, pois ele pode retornar com um código de saída 0, mesmo que o pacote não esteja totalmente instalado - consulte: github.com/bitrise-io/bitrise/issues/433dpkg -l | cut -d " " -f 3 | grep "^vlc"
para mostrar todos os nomes de pacotes que começam comvlc
Usar
dpkg
Este comando é o gerenciador de pacotes debian.
Você pode listar todos os pacotes instalados com
Você pode ver detalhes de um pacote específico com
E para saber se está instalado, use
Você pode aprender qual pacote contém o software que deseja com
No seu caso, você deve usar este comando para pesquisar o nome do pacote que deseja
fonte
apt -qq list PACKAGE
também pode ser usado para verificar se o PACKAGE está instalado.Se instalado, ele imprimirá algo como (com
[installed]
no final da linha):Se não estiver instalado, a saída será:
fonte
-qq
? Parece que funciona de forma idêntica sem ele, e essa opção não está no manualman apt
apt list
comando ainda não está totalmente documentado. Alguns testes rápidos no 16.04 parecem indicar que-q
é sinônimo de--quiet
opção. O primeiro-q
impede que a palavra "Concluído" seja impressa. O segundo também impede que "Listagem ..." seja impressa.Eu encontrei uma maneira de verificar a instalação de pacotes com apenas o comando dpkg-query e sem pipes.
Eu procurei por essa solução enquanto escrevia uma tarefa para o manual ansible.
Então, você pode fazer algo assim:
Esta é apenas mais uma maneira de fazer a coisa.
fonte
shell
módulo.Estou escrevendo uma nova resposta, pois o Tasksel 'Task names' NÃO aparece
dpkg
ou fazapt
perguntas. Significando que as outras respostas estão incompletas (ou incorretas)."Não lembro se marquei a caixa de seleção 'host da máquina virtual'".
Verifique se há um asterisco pelo nome após a reexecução
sudo tasksel
.(ou um ' i ' se estiver em execução
tasksel --list-tasks
).Se você não vê isso, provavelmente não possui o ' meta-pacote tasksel ' instalado.
"..Como verifico se o meu servidor tem os pacotes correspondentes?"
Se você deseja descobrir o que está instalado no meta-pacote de tarefas do Virtual Machine Host:
tasksel --list-tasks
(no seu caso
tasksel --list-tasks | grep virt
é suficiente)Isso fornece o nome apropriado da tarefa e uma indicação sobre se está instalado.
No seu caso, esse nome do taskel é
virt-host
."Quais pacotes vêm com o host da máquina virtual?"
No último comando, encontre o nome da tarefa tasksel.
Isso é necessário para o próximo comando:
tasksel --task-packages virt-host
Isso lista o meta-pacote individual de Tasksel (indicado por '^' em anexo) que compõe o nome.
No seu caso é
virt-host^
.Depois de encontrar o meta-nome adequado, você pode usar o apt:
(ou
apt-cache show
...
seapt show
não funcionar.)Isso mostrará todos os pacotes que compõem o meta pacote fornecido.
Então:
Isso informará se o pacote individual está instalado / desinstalado (observado pela segunda letra: o status 'i' significa instalado). Faça isso para todos os pacotes listados no pacote task / meta.
Isso deve responder às perguntas originais.
Nota lateral: /usr/share/tasksel/descs/ubuntu-tasks.desc também contém descrições dos meta-pacotes Tasksel. Se você:
grep "virt" /usr/share/tasksel/descs/ubuntu-tasks.desc
ele mostrará o nome apropriado do meta-pacote do APT. (No seu caso, isso éubuntu-virt-server
). Você também pode usarapt
comandos com esse meta-nome.Se você deseja remover os pacotes tasksel, isso entra um pouco no mato. Por favor, consulte https://askubuntu.com/a/88897/169878 ou qualquer número de outras respostas disponíveis.
Observe que os pacotes apt "meta" não correspondem aos nomes dos pacotes Tasksel. Consulte a página da comunidade Tasksel para obter mais informações.
fonte
Use o tasksel (
sudo apt-get install tasksel
se você ainda não o possui) e executetasksel --list-tasks
.tasksel imprimirá uma lista das tarefas, e haverá um
i
próximo a cada tarefa instalada e umu
próximo a cada tarefa que não estiver instalada.Se você deseja instalar a tarefa, use
tasksel install <task>
. O nome da tarefa que você está procurando évirt-host
.Os itens de seleção de software são chamados de "tarefas".
fonte
Se alguém estiver interessado, criei um pequeno script com o qual você pode instalar automaticamente a partir de uma lista de pacotes ou aplicativos ou simplesmente verificar se eles já estão instalados:
Espero que ajude alguém.
fonte
Solução mais simples:
Agora existe um
apt list
comando que lista os pacotes instalados. Você também pode procurar um pacote específico comVeja
man apt
para mais informações. Se você não souber o nome exato do pacote, poderá usarapt search
seguido por parte dele para ver uma lista de pacotes relacionados.fonte