Linux ディストリビューション ファミリとリリース バージョン、およびソフトウェアのインストール方法

Linux プラットフォームでは、ソフトウェア パッケージの種類はソース パッケージバイナリ パッケージの2 つのカテゴリに分類できます
ソフトウェアは Linux 上で実行されるバイナリ ファイルである必要があります。
ソース パッケージ: プログラム ソフトウェアのソース コード (一般に Tarball と呼ばれます)ソフトウェアのソース コードは tar でパッケージ化されてから圧縮されます。ソース コード パッケージは、作成者がソース プログラムをインターネット上で直接公開し、ソース ファイルを直接ダウンロードしてバイナリ プログラムにコンパイルして使用します。バイナリ パッケージ: Red Hat ディストリビューション パッケージの .rpm
、Debian ディストリビューションの .deb パッケージなど。

バイナリパッケージのインストール:

Linux には主に 2 つの派閥があります。

RedHatシリーズ:Redhat、Centos、Fedoraなど
一般的なインストールパッケージ形式は rpmパッケージ で
、rpmパッケージをインストールするコマンドはパッケージ管理ツールyumの「rpm -parameter」です

Debian シリーズ: Debian、Ubuntu など
一般的なインストールパッケージ形式は deb package、deb パッケージをインストールするコマンドは「dpkg -parameter」
パッケージ管理ツールapt-get です、
両者の違いは dpkg は apt パッケージ管理をバイパスすることですデータベースを使用してパッケージを操作します。そのため、dpkg でインストールしたソフトウェア パッケージは、apt を使用して再度インストールできます。システムは、それが以前にインストールされたことを認識せず、以前の dpkg インストールを上書きします。
1. dpkg は .deb ファイルのインストールに使用されますが、モジュールの依存関係は解決されず、ubuntu ソフトウェア ウェアハウスのソフトウェアは考慮されません。ローカルの deb ファイルのインストールに使用できます。
2. Apt はモジュールの依存関係を解決してインストールし、ソフトウェア ウェアハウスを参照しますが、ローカルの deb ファイルはインストールしません Apt は、dpkg 上に構築されたソフトウェア管理ツールです。

rmp、yum、deb、および apt-getの違い:

RMP パッケージ

Rmp は LINUX 上で実行可能なソフトウェア プログラムであり、インストールするだけで済みます。この種のソフトウェア インストール パッケージは通常、RPM パッケージ (Redhat のパッケージ マネージャーである Redhat Linux Packet Manager) であり、接尾辞は です.rpm

Rmp は、Red Hat が Redhat Linux とともに提供するパッケージマネージャーであり、ソフトウェアのインストールをより簡単に実現できます。

注文:

 rpm -ivh rpm包名    	#安装软件,下面是参数说明
 						##-i :install ,安装
    					##-v : --verbose ,显示详细信息
    					##-h:–hash,进度条
    					##–nodeps :安装前不需要检查依赖
 rpm -Uvh rpm包名 		#升级软件
 rpm -e rpm包名          #卸载软件,其中如果在加上选项–nodeps ,表示卸载软件时,不检查依赖。这样会使那些使用软件包的软件在此之后可能会不能正常工作
 rpm -qpi rpm包名        #查询软件包的详细信息:执行
 						###由于软件包比较多,一般会采取过滤。类如: rpm -qa | grep rpm软件包 
 rpm -qf rpm包名         #查询某个文件是属于那个rpm包的
 rpm -qpl rpm包名        #查该软件包会向系统里面写入哪些文件 

debパッケージ

deb は tar パッケージをベースにした Unix システム (実際には主に Linux) 上のインストール パッケージであるため、ファイルのアクセス許可 (読み取り/書き込み/実行可能) と所有者/ユーザー グループが記録されます。Unix システムには権限、所有者、グループに関する厳しい要件があり、deb 形式のインストール パッケージにはシステムの下位レベルの操作が含まれることが多いため、権限の設定は特に重要です

deb パッケージ自体は 3 つの部分で構成されています:データ パッケージ(実際にインストールされているプログラム データが含まれ、ファイル名は data.tar.XXX)、インストール情報と制御スクリプト パッケージ(deb のインストール手順、ロゴ、スクリプト、などで、ファイル名は control.tar .gz です。最後のファイルは 、ファイル ヘッダーやその他の情報を含むdeb ファイルのバイナリ データで、通常は表示されませんが、一部のソフトウェアで開くと表示されます。

deb 自体はさまざまな圧縮方法を使用できます。tar形式は圧縮形式ではなく、点在するファイルやディレクトリを直接収集し、そのパーミッションなどのデータ情報を記録します。前述の data.tar.XXX (XXX は圧縮されたサフィックス)。deb で使用されるデフォルトの圧縮形式は gzip 形式であるため、最も一般的なものは data.tar.gz です。一般的な圧縮形式には bzip2 と lzma があり、lzma が最も圧縮率が高くなりますが、圧縮に必要な CPU リソースと時間が比較的長くなります。

data.tar.gz には実際にインストールされるプログラム データが含まれており、インストール プロセス中にパッケージ内のデータはルート ディレクトリ (つまり / ) に直接解凍されるため、対応するファイル/ディレクトリ ツリーを設定する必要があります

control.tar.gz には、  deb インストールに必要な制御情報が含まれています 。通常、ソフトウェア ID、バージョン番号、プラットフォーム、依存関係情報などのデータを記録するために使用される control、data.tar.gz を解凍する前に実行するスクリプト preinst、後に実行するスクリプト postinst の 5 つのファイルがあります。データの解凍; prerm、アンインストール時にファイルを削除する前に実行するスクリプト; postrm、ファイルの削除後に実行するスクリプト; Cydia システムでは、Cydia の作者である Saurik が、次のような別のスクリプト extrast_ を追加しました。ポストインスタ。

注文:

sudo dpkg -i xxx.deb     # 安装软件包xxx.deb
sudo dpkg -R xxx         # 安装目录xxx下所有的软件包
sudo dpkg -r xxx.deb     # 卸载软件包xxx.deb,但是保留软件配置信息。有些软件会有个人设置的一些配置
sudo dpkg -P xxx.deb     # 卸载软件包xxx.deb,且删除软件配置信息。
sudo dpkg -I xxx         # 搜索软件包
sudo dpkg -l             # 列出所有已安装的deb包,同时显示版本号以及简短说明
sudo dkpg -p xxx         # 查看包的具体信息
sudo dkpg -L xxx         # 查看一个软件包安装到系统里面的文件目录信息。很多人抱怨用了Ubuntu或者Debian以后,不知道自己的软件给安装到什么地方了,其实就可以用这个命令来查找

うーん

YUM (正式名 Yellow Dog Updater、Modified) は、Fedora、RedHat、および CentOS
のシェル フロントエンド パッケージ マネージャーです。RPM パッケージ管理に基づいて、指定したサーバーから RPM パッケージを自動的にダウンロード
してインストールし、依存関係を自動的に処理し、面倒な
ダウンロードとインストールを何度も繰り返すことなく、すべての依存ソフトウェア パッケージを一度にインストールできます。

注文

[root@localhost opt]# yum --help
已加载插件:fastestmirror, langpacks
Usage: yum [options] COMMAND

List of Commands:

check          检查 RPM 数据库问题
check-update   检查是否有可用的软件包更新
clean          删除缓存数据
deplist        列出软件包的依赖关系
distribution-synchronization 已同步软件包到最新可用版本
downgrade      降级软件包
erase          从系统中移除一个或多个软件包
fs             Acts on the filesystem data of the host, mainly for removing docs/lanuages for minimal hosts.
fssnapshot     Creates filesystem snapshots, or lists/deletes current snapshots.
groups         显示或使用、组信息
help           显示用法提示
history        显示或使用事务历史
info           显示关于软件包或组的详细信息
install        向系统中安装一个或多个软件包
langavailable  Check available languages
langinfo       List languages information
langinstall    Install appropriate language packs for a language
langlist       List installed languages
langremove     Remove installed language packs for a language
list           列出一个或一组软件包
load-transaction 从文件名中加载一个已存事务
makecache      创建元数据缓存
provides       查找提供指定内容的软件包
reinstall      覆盖安装软件包
repo-pkgs      将一个源当作一个软件包组,这样我们就可以一次性安装/移除全部软件包。
repolist       显示已配置的源
search         在软件包详细信息中搜索指定字符串
shell          运行交互式的 yum shell
swap           Simple way to swap packages, instead of using shell
update         更新系统中的一个或多个软件包
update-minimal Works like upgrade, but goes to the 'newest' package match which fixes a problem that affects your system
updateinfo     Acts on repository update information
upgrade        更新软件包同时考虑软件包取代关系
version        显示机器和/或可用的源版本。


Options:
  -h, --help            显示此帮助消息并退出
  -t, --tolerant        忽略错误
  -C, --cacheonly       完全从系统缓存运行,不升级缓存
  -c [config file], --config=[config file]
                        配置文件路径
  -R [minutes], --randomwait=[minutes]
                        命令最长等待时间
  -d [debug level], --debuglevel=[debug level]
                        调试输出级别
  --showduplicates      在 list/search 命令下,显示源里重复的条目
  -e [error level], --errorlevel=[error level]
                        错误输出级别
  --rpmverbosity=[debug level name]
                        RPM 调试输出级别
  -q, --quiet           静默执行
  -v, --verbose         详尽的操作过程
  -y, --assumeyes       回答全部问题为是
  --assumeno            回答全部问题为否
  --version             显示 Yum 版本然后退出
  --installroot=[path]  设置安装根目录
  --enablerepo=[repo]   启用一个或多个软件源(支持通配符)
  --disablerepo=[repo]  禁用一个或多个软件源(支持通配符)
  -x [package], --exclude=[package]
                        采用全名或通配符排除软件包
  --disableexcludes=[repo]
                        禁止从主配置,从源或者从任何位置排除
  --disableincludes=[repo]
                        disable includepkgs for a repo or for everything
  --obsoletes           更新时处理软件包取代关系
  --noplugins           禁用 Yum 插件
  --nogpgcheck          禁用 GPG 签名检查
  --disableplugin=[plugin]
                        禁用指定名称的插件
  --enableplugin=[plugin]
                        启用指定名称的插件
  --skip-broken         忽略存在依赖关系问题的软件包
  --color=COLOR         配置是否使用颜色
  --releasever=RELEASEVER
                        在 yum 配置和 repo 文件里设置 $releasever 的值
  --downloadonly        仅下载而不更新
  --downloaddir=DLDIR   指定一个其他文件夹用于保存软件包
  --setopt=SETOPTS      设置任意配置和源选项
  --bugfix              Include bugfix relevant packages, in updates
  --security            Include security relevant packages, in updates
  --advisory=ADVS, --advisories=ADVS
                        Include packages needed to fix the given advisory, in
                        updates
  --bzs=BZS             Include packages needed to fix the given BZ, in
                        updates
  --cves=CVES           Include packages needed to fix the given CVE, in
                        updates
  --sec-severity=SEVS, --secseverity=SEVS
                        Include security relevant packages matching the
                        severity, in updates

共通コマンド

install:安装rpm软件包
update:更新rpm软件包
check-update :检查是否有可用的更新rpm软件包
remove :删除指定的rpm软件包
list :显示软件包信息
clean :清理yum过期的缓存
deplist:显示yum软件包的所有依赖关系

ネットワークのyumソースを変更する

デフォルトのシステム YUM ソースは海外の Apache Web サイトに接続する必要があり、ネットワーク速度は比較的遅いですが、関連するネットワーク
YUM ソースを Netease 163、aliyun などの国内のミラー Web サイトに変更することができます。

1. まず wget をインストールします。wget は指定された URL からファイルをダウンロードするために使用されます

[root@hadoop101 ~] yum install wget

2. /etc/yum.repos.d/ ディレクトリで、デフォルトの repos ファイルをバックアップします。

[root@hadoop101 yum.repos.d] pwd
/etc/yum.repos.d
[root@hadoop101 yum.repos.d] cp CentOS-Base.repo CentOS-Base
.repo.backup

3. NetEase 163 または Aliyun のリポジトリ ファイルをダウンロードし、どちらかを選択します

[root@hadoop101 yum.repos.d] wget http://mirrors.aliyun.com/repo/Centos-7.repo //阿里云
[root@hadoop101 yum.repos.d] wget http://mirrors.163.com/.help/CentOS7-Base-163.repo //网易 163

4. ダウンロードしたリポジトリ ファイルを使用して、デフォルトのリポジトリ ファイルを置き換えます。

例: CentOS-Base.repo を CentOS7-Base-163.repo に置き換えます。

[root@hadoop101 yum.repos.d]# mv CentOS7-Base-163.repo CentOS-Base.repo

5. 古いキャッシュ データをクリーンアップし、新しいデータをキャッシュする

[root@hadoop101 yum.repos.d]#yum clean all
[root@hadoop101 yum.repos.d]#yum makecache
yum makecache 就是把服务器的包信息下载到本地电脑缓存起来

6. テスト検証

[root@hadoop101 yum.repos.d]# yum list | grep firefox
[root@hadoop101 ~]#yum 

適切な

apt は Linux のパッケージ管理ツールです。
apt は、Ubuntu、Debian、および関連する Linux ディストリビューションで deb パッケージをインストール、更新、削除、管理するためのコマンド ライン ユーティリティです。
apt は対話的に使用するように設計されています。apt-get と apt-cache は異なるバージョン間で下位互換性があり、より多くのオプションと機能を備えているため、シェル スクリプトで apt-get と apt-cache を使用することをお勧めします。
ほとんどの apt コマンドは、sudo 権限を持つユーザーとして実行する必要があります。

apt update
#从软件源服务器获取最新的软件信息并缓存到本地。
#因为很多apt的其他命令都是要通过比对版本信息来进行操作的,如果每次都去对比线上的版本信息效率肯定不理想,也没必要,所以做了一个缓存的机制。

apt upgrade
# 从本地仓库中对比系统中所有已安装的软件,如果有新版本的话则进行升级

apt list
#列出本地仓库中所有的软件包名

apt list [package]
#从本地仓库中查找指定的包名,支持通配符,比如"apt list zlib*“就能列出以zlib开头的所有包名

apt list --installed
#列出系统中所有已安装的包名

apt search [key]
#与list类似,通过给出的关键字进行搜索,列出所有的包和其描述

apt show [package]
#列出指定包的详细情况,包名要填写完整。

apt install [package]
#安装指定的包,并同时安装其依赖的其他包。

apt remove [package]
#卸载包,但不删除相关配置文件。包名支持通配符

apt autoremove
#卸载因安装软件自动安装的依赖,而现在又不需要的依赖包

apt purge [package]
#卸载包,同时删除相关配置文件。包名支持通配符

apt clean
#删除所有已下载的软件包

apt autoclean
#类似clean,但删除的是过期的包(即已不能下载或者是无用的包)

予防:

  • apt と apt-get の違い

apt コマンドの導入は、コマンドが分散しすぎているという問題を解決するためであり、apt-get コマンドの登場以降、最も広く使用されている関数オプションに加え、apt-cache や apt であまり使用されない関数も含まれています。 -config コマンド。
apt コマンドを使用する場合、ユーザーは apt-get から apt-cache または apt-config に移動する必要がなくなり、apt はより構造化され、パッケージを管理するために必要なオプションをユーザーに提供します。

  • /etc/apt/sources.list

- パッケージ管理ツールによって使用される構成ファイルで、パッケージ リポジトリの場所を記録するのに適しています。

ソースパッケージのインストール

ソース コードのインストールの一般的な手順は次のとおりです。

1、下载源码包并解压到指定目录;           //一般将源码包解压至目录/user/local/src下
 
2、预编译(配置)./configure;            //设置安装目录,安装模块等选项
 
3、编译 make;                         //生成可执行二进制文件
 
4、安装make install;                  //复制二进制文件到系统,配置应用环境
 
Configure是一个可执行脚本,它有很多选项,在待安装的源码路径下使用命令./configure–help输出详细的选项列表; 配置这一步骤:把系统环境的检测结果和定义好的功能选项写入Makefile文件中,为了后续的编译和安装做铺垫
 
其中./configure --prefix==安装路径,来指定安装路径,一般情况下默认的安装路径为/usr/local--prefix选项是配置安装的路径,如果不配置该选项,安装后可执行文件默认放在/usr/local/bin,库文件默认放在/usr/local/lib,配置文件默认放在/usr/local/etc,其它的资源文件放在/usr/local/share,比较凌乱;
 
如果配置--prefix,如:./configure --prefix=/usr/local/test
 
可以把所有资源文件放在/usr/local/test的路径中,不会杂乱;
 
用了—prefix选项的另一个好处是卸载软件或移植软件。当某个安装的软件不再需要时,只须简单的删除该安装目录,就可以把软件卸载得干干净净;移植软件只需拷贝整个目录到另外一个机器即可(相同的操作系统);
 
make会调用gcc编译器,读取makefile文件中的信息进行系统软件编译。将源码程序转化为可以被linux系统所识别的可执行文件
 
如果在./configure或者make编译中报错,那么我们在重新执行前一定要执行make clean命令,系统清空Makefile文件或编译产生的.o开头的文件;
 
make install是用来安装的,它从Makefile中读取指令,安装到指定的位置。只有在执行install的时候才会向指定的安装目录写入文件。
 
当然要卸载程序,也可以在原来的make目录下用一次make uninstall,但前提是make文件指定过uninstall;

おすすめ

転載: blog.csdn.net/juanxiaseng0838/article/details/130643771
おすすめ