apt-get install 这个是啥命令?从网上得到相关包 install?还都有哪些这样的命令?谢谢

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了apt-get install 这个是啥命令?从网上得到相关包 install?还都有哪些这样的命令?谢谢相关的知识,希望对你有一定的参考价值。

apt是debian系linux发行版的包管理器dpkg的前端。
apt-get install 是在线下载安装软件的命令,比如安装pidgin
apt-get install pidgin

如果要了解apt-get可以在终端运行man apt-get可以得到详细文档
参考技术A 基于debian的linux,一键下载并安装软件包及依赖。

CEPH-DEPLOY INSTALL时,远端节点在执行APT-GET UPDATE命令时失败

环境

  OS:Ubuntu 16.04

背景

  使用ceph-deploy部署Ceph集群,调用ceph-deploy install命令在远端节点安装ceph环境,执行apt-get update命令时失败。

Err:1 http://mirrors.163.com/ubuntu xenial InRelease
  Temporary failure resolving ‘mirrors.163.com‘

分析

  ceph-deploy的原理,就是ssh免密码登录到远端节点,然后执行各种命令。和刚才的apt-get命令结合起来,实际执行的是类似“ssh remote_node apt-get update”的命令。于是再回到执行ceph-deploy的admin节点,执行ssh remote_node apt-get update,果然失败。
  直接连接到出问题的节点,执行apt-get update命令,没有任何问题。这样看来,应该是一些环境变量的问题了。我的环境中是有网络代理的,连接外网必须配置http_proxy和https_proxy这两个环境变量。我将这两个环境变量设置在/etc/profile配置文件中,然而,ssh使用bash是作为一个non-login shell的,因此不会加载这个文件。我们可以执行下面的命令,就会发现apt-get可以成功。至于什么是non-login shell,可以参考login shell

$ ssh remote_node "bash --login -c ‘apt-get update‘"

Hit:1 http://mirrors.163.com/ubuntu xenial InRelease
Hit:2 http://mirrors.163.com/ubuntu xenial-security InRelease
Hit:3 http://mirrors.163.com/ubuntu xenial-updates InRelease
Hit:4 http://mirrors.163.com/ubuntu xenial-proposed InRelease
Hit:5 http://mirrors.163.com/ubuntu xenial-backports InRelease
Reading package lists...
Building dependency tree...
Reading state information...
162 packages can be upgraded. Run ‘apt list --upgradable‘ to see them.

解决方法

  将http_proxy和https_proxy的配置放到/etc/environment,或者~/.ssh/environment中。再次执行ceph-deploy install,成功。

以上是关于apt-get install 这个是啥命令?从网上得到相关包 install?还都有哪些这样的命令?谢谢的主要内容,如果未能解决你的问题,请参考以下文章

sudo apt-get install root-system-bin是啥意思?

sudo apt-get install build-essential这句是啥意思

linux apt-get install命令

在ubuntu下用apt-get install命令安装不了软件是咋回事

ubuntu使用命令apt-get install出现的问题

软件安装与卸载Ubuntu命令卸载软件(经过sudo apt-get install安装的)