Ubuntu 下文件的安装与卸载命令汇总

  dpkg 即 Debian package 的简写 ,是 Debian 和基于 Debian 的系统中一个主要的包管理工具,可以用来安装、构建、卸载、管理 .deb 格式的软件包。dpkg 的主要和更友好的前端是 aptitude 。dpkg 本身完全由命令行参数控制,命令行参数只包含一个动作和零个或多个选项。动作参数告诉 dpkg 要做什么,选项以某种方式控制动作的行为。
  
  dpkg 主要是用来安装已经下载到本地的 deb 软件包,或者对已经安装好的软件进行管理。

  aptapt-get 是类似红帽系的 yum 工具,能够自行解决 deb 包的依赖关系。直接从远程的软件仓库下载安装软件。直接使用 dpkgapt 安装 .deb 文件时,无法通过命令行指定自定义安装目录。

1. apt 命令安装与卸载

  • 升级

    1
    sudo apt update && sudo apt upgrade -y	# 升级软件包
  • 安装

    1
    apt-get install software1 software2	# 普通安装
    1
    apt-get -f install software1 software2	# 修复安装
    1
    apt-get --reinstall install software1 software2	# 重新安装
  • 卸载

    1
    apt-get remove software1 software2	# 卸载软件,保留配置文件
    1
    apt-get --purge remove software1 software2	# 卸载软件包及配置文件
    1
    apt-get purge software1 software2	# 卸载软件包及配置文件
    1
    apt-get autoremove	# 清理不再使用的依赖和库文件
    1
    apt-get clean && apt-get autoclean	# 清理下载文件的存档 && 只清理过时的包

2. dpkg 命令安装与卸载

  • 安装

    1
    dpkg -i linuxqq_3.2.9-24815_amd64.deb	# 安装到系统,执行脚本
    1
    dpkg -x pkg.deb /usr/lib/	# 解压到指定文件夹,不安装到系统,不执行脚本
    1
    dpkg -R /usr/lib/src	# 安装一个目录下的所有软件包
    1
    dpkg --unpack lpkg.deb	# 释放软件包,但不进行配置
    1
    dpkg --configure pkg.deb	# 若和-a一起使用将配置所有没有配置的软件包
    1
    dpkg -reconfigure locals	# 重新配置系统本地环境设置
  • 卸载

    1
    dpkg -r pkg.deb	# 删除软件包信息,不删除配置信息。使用-r或者--remove。
    1
    dpkg -P pkg.deb	# 删除一个包,并删除配置信息。使用-P或者--purge。
    1
    dpkg -l | grep package_name	# 确认软件包已被彻底卸载,输出为空,说明软件包已完全卸载。
  • 其他命令

    1
    dpkg -b directory [filename]	# 建立一个.deb文件
    1
    dpkg -c filename	# 显示一个.deb文件的目录
    1
    dpkg -l	# 显示所有已安装的.deb包,同时显示版本号和简短说明
    1
    dpkg -l pkg	# 显示pkg.deb包的说明
    1
    dpkg -L pkg	# 查看软件包的安装位置
  • 命令解析

    dpkg -i|--install:手动安装软件包(这个命令并不能解决软件包之前的依赖性问题),如果在安装某一个软件包的时候遇到了软件依赖的问题,可以用 apt-get -f install 解决信赖性这个问题。

    dpkg -I|--info :查询deb包的详细信息,在一个软件包下载到本地之后看看用不用安装。

    dpkg -l|--list:列出当前系统中所有的包,可以和参数less一起使用在分屏查看。 (类似于rpm -qa)

    dpkg -L|--listfiles:查询系统中已安装的软件包所安装的位置。 (类似于rpm -ql)

    dpkg -l |grep -i "软件包名" :查看系统中与”软件包名”相关联的包。

    dpkg -s|--status:查询已安装的包的详细信息。

    dpkg -S|--search:查询系统中某个文件属于哪个软件包。(类似于rpm -qf)

    dpkg -r|--remove:卸载软件包,不是完全的卸载,它的配置文件还存在。

    dpkg -P|--purge:全部卸载,但是还是不能解决软件包的依赖性的问题。

    dpkg -c|--contents:显示包的目录内容

    dpkg -reconfigure:重新配置。

3. 源码命令安装与卸载

  • 准备工作

    在 Debian/Ubuntu 系统上,可以使用以下命令安装基本的构建工具:

    1
    2
    sudo apt-get update
    sudo apt-get install build-essential

    以 GCC 软件为例,额外的依赖项,更新软件包列表,并安装所需的 GMP、MPFR 和 MPC 开发库,主要包括:

    1
    sudo apt-get install libgmp-dev libmpfr-dev libmpc-dev libc6-dev texinfo flex bison
  • 下载源码

    • 通过 GCC 官方网站下载最新版本的源代码。这里 SomeLocalDir 是希望将源代码克隆到的本地目录名称。如果目录不存在,Git 将会创建这个目录:

      1
      git clone git://gcc.gnu.org/git/gcc.git [SomeLocalDir]
    • 通过GitHub下载 GCC 源代码:

      1
      https://github.com/gcc-mirror/gcc.git
  • 解压源码教程

    1
    tar -xzvf archive.tgz		# 解压.tgz
    1
    tar -xzvf archive.tar.gz -C /usr/lib/	# 解压.tar.gz到指定目录
    1
    tar -xjvf archive.tar.bz2 -C /usr/lib/	# 解压.tar.bz2到指定目录
    1
    tar -xZvf archive.tar.Z		# 解压.tar.Z
    1
    tar -xJvf archive.tar.xz	# 解压.tar.xz
    1
    tar -xvf archive.tar		# 解压.tar
  • 通过 tar 命令安装

    进入解压目录,使用以下命令查看是否存在可执行文件(结尾带 * ):

    1
    2
    ls -F
    ls -F --color

    之后依次执行以下命令,完后安装:

    1
    2
    3
    ./configure --prefix=/usr/local/dyx-1.0	# 配置
    make # 编译
    sudo make install # 安装

    其中,执行 ./configure 命令并设置相关参数(如 –prefix= 指定安装路径),比如:指定 GCC 安装路径为 /usr/local/dyx-1.0 ,并且只支持 C、C++、Fortran 和 Objective-C 语言。此外,还添加了一个后缀 -12.0.0,以便区分系统默认的 GCC 版本。

    1
    ./configure --prefix=/usr/local/dyx-1.0 --enable-languages=c,c++,fortran,objc,obj-c++ --program-suffix=-12.0.0 --disable-multilib 
    • –prefix=/usr/local:
      这个参数指定了安装目录。在此例中,编译完成后的 GCC 将被安装在 /usr/local/dyx-1.0 目录下。这意味着 GCC 的可执行文件、库文件、文档等都会放在 /usr/local/bin、/usr/local/lib、/usr/local/share/doc 等子目录下。
    • –enable-languages=c,c++,fortran,objc,obj-c++:
      这个参数指定了需要编译的编程语言的编译器。这里包括 C ©、C++ (c++)、Fortran (fortran)、Objective-C (objc) 和 Objective-C++ (obj-c++)。这意味着 GCC 将支持这些语言的编译。
    • –program-suffix=-12.0.0:
      这个参数为安装的程序添加了后缀。在此例中,所有 GCC 编译的程序(如 gcc、g++、gfortran 等)将带有 -12.0.0 后缀。例如,GCC 的可执行文件将被命名为 gcc-12.0.0,而不是默认的 gcc。这对于在同一系统上安装多个版本的 GCC 非常有用,因为它允许用户区分和选择不同的版本。
    • –disable-multilib:
      此参数用于禁用多库支持。通常,在 64 位系统上,GCC 可能会尝试编译和安装 32 位(multilib)版本的库。使用这个参数意味着 GCC 将只为当前系统的原生架构编译程序(例如,仅为 64 位系统编译)。这有助于减少编译时间和减小安装后的大小,但也意味着不能使用这个 GCC 版本编译 32 位程序。

    一般情况下,prefix 一般默认为 /usr/local ,为了方便删除与查找,推荐自定义文件夹

    1
    ./configure --prefix=/usr/local/dyx-1.0  --enable-languages=c,c++ --disable-multilib 

    注意,如果在 ./configuremake 编译中报错,则在重新执行命令前一定要执行以下命令,它会清空 Makefile 文件或编译产生的 .o 头文件。

    1
    make clean
  • 测试安装

    进入到安装目录下的 bin 目录下:

    1
    /usr/local/dyx-1.0/bin/gcc --version

    显示安装软件 gcc 的版本号即为安装成功。

  • 卸载

    通过源码安装后,如果要卸载,则在安装路径下使用:

    1
    2
    sudo make uninstall
    sudo updatedb

    或者关闭软件服务后,执行:

    1
    rm -rf /usr/local/dyx-1.0/
发布于

2024-07-11

更新于

2024-12-02

许可协议

评论

:D 一言句子获取中...