日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程资源 > 编程问答 >内容正文

编程问答

6 软件的安装

發布時間:2023/11/30 编程问答 28 豆豆
生活随笔 收集整理的這篇文章主要介紹了 6 软件的安装 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

6 軟件包管理

6.1 簡介

軟件包分類:

源碼包 源代碼(大多數是C語言) 安裝時慢,容易報錯

? ? >腳本安裝包 對源碼包進行改裝,使安裝更簡單,不多。

rpm包 ?二進制包 Ubuntu系列的二進制包不是rpm,這是根本不同

?

源碼包優點:

開源,如果有足夠的能力,可以修改源代碼

可以自由選擇所需的功能

軟件是編譯安裝,所以更加適合自己的系統,更加穩定也效率更高(比rpm5%

卸載方便(直接把安裝目錄刪掉)

?

源碼包缺點:

安裝過程步驟較多,尤其安裝較大的軟件集合(如LAMP環境搭建),容易出現拼寫錯誤

編譯過程時間較長,安裝比二進制安裝時間長

因為是編譯安裝,安裝過程中一旦報錯新手很難解決

用源碼包安裝一個Linux大概用3天(老手)

?

?

二進制包優點:

包管理系統簡單,只通過幾個命令就可以實現包的安裝、升級、查詢、卸載

安裝速度比源碼包安裝快得多

?

二進制包缺點:

經過編譯,不再可以看到源代碼

功能選擇不如源碼包靈活

依賴性

?

6.2 包命名與依賴性

httpd-2.2.15-15.e16.centos.1.i686.rmp

httpd 包名

2.2.15 版本

15 發布次數

e16.centos 適合的Linux平臺

i686 適合的硬件平臺 ?noarch 表示任何Linux版本都可以安裝

rpm rpm包擴展名

包全名:操作的包是沒有安裝的軟件包時,使用包全名。而且要注意路徑。安裝、升級操作

包名:操作已經安裝的軟件包時,使用包名。是搜索/var/lib/rpm/中的數據庫。查詢、卸載操作

?

樹形依賴 a -> b -> c

環形依賴 a -> b -> c -> a ?解決辦法:a b c 同時安裝

?

RPM包庫依賴 ?以?.so.2?結尾,不是獨立的,是某個軟件包中的文件

模塊依賴 查詢網站 www.rpmfind.net,輸入xxx.so.2可以查看屬于哪個包。

只要把包含此文件的軟件安裝上即可。


6.3 安裝與升級

安裝

rpm -ivh 包全名

-i ?install

-v ?verbose

-h ?hash ?顯示

實驗步驟:

1、先將光盤掛載:mount -t iso9660 /dev/sr0 /media

2cd /media/Packages

3、此時就可用 ?rpm -ivh 包全名 命令進行安裝了

?

升級

rpm -Uvh 包全名

-U upgrade 升級

?

卸載

rmp -e 包名

-e erase 卸載

????--nodeps 不檢查依賴性

?

6.4 查詢

查詢功能非常常用

?

查詢是否安裝

rpm -q 包名

rpm -qa

-q query 查詢

???? -a all 所有

rpm -qa| grep httpd ??此命令查詢所有和httpd相關的包安裝信息 ???|管道符

?

查詢軟件包詳細信息

rpm -qi 包名 #查詢已安裝的包信息

rpm -qip 包全名 #查詢未安裝包的信息,這些信息已經在包中寫好

-i information?查詢軟件信息

???? -p package?查詢未安裝包信息

?

查詢包中文件安裝位置 包的安裝位置都是默認的

rpm -ql 包名

rpm -qlp 包全名 查詢未安裝包打算的位置,已在包中設置好

-l list?列表

?

查詢系統文件屬于哪個RPM

rpm -qf 系統文件名

-f file?查詢系統文件屬于哪個軟件包 ?????etc目錄下都是系統的配置文件


查詢軟件包的依賴性

rpm -qR 包名

rpm -qRp 包全名 查詢未安裝包的依賴性

-R requires?查詢軟件包的依賴性

?

6.5 校驗

RPM包校驗 判斷系統文件是否被更改

?

rpm -V 已安裝包名

-V verify 校驗指定RPM包中的文件

?

例:rpm -V httpd

如果出現任何信息,則表示沒有任何修改。

如果有修改,會顯示“修改標志位 文件名”

?

修改標志位有8位信息 ? 點(.)代表未被修改

S 文件大小是否修改

M 文件類型 或者 文件權限(rwx)是否修改

5 文件MD5校驗(文件內容是否修改) MD5 -- 一種加密方式

D 設備中,從代碼是否改變

L 文件路徑是否修改

U 文件所有者是否修改

G 文件所屬組是否修改

T 文件修改時間是否修改

?

文件類型(對應上面的M

c config file 配置文件

d documentation 普通文檔

g ghost file 鬼文件 很少見 就是該文件不應該被這個RPM包包含

l license file 授權文件

r read me 描述文件

?

6.6 文件提取

目的:從rpm包中提取指定文件,用于恢復某些文件。

?

rpm2cpio 包全名 | cpio -idv . 文件絕對路徑

#rpm2cpio命令可將rpm包轉換為cpio處理格式

#cpio 是一個標準工具,用于創建軟件檔案文件和從檔案文件中提取文件

?

cpio 選項 < [文件|設備]

-i copy-in模式,還原

-d 還原時自動新建目錄

-v 顯示還原過程

?

rpm2cpio /mnt/cdrom/Packages/coreutils-8.4-19.e16.i686.rpm | cpio -idv . /bin/ls

提取RPM包中ls命令到當前目錄的/bin/ls

?

6.7 yum在線管理

yum在線管理 ?redhat收費 centos免費

?

內網:需配置ip 子網掩碼

公網:還需配置 網關 DNS

?

IP地址配置:

方法一

setup ??redhat系列專有命令

service network restart

?

方法二

vi /etc/sysconfig/network-scripts/ifcfg-eth0

ONBOOT="no"改為 ONBOOT="yes" #啟動網卡

如果文件中沒有設置DNS,則添加DNS1=1114.114.114.114

service network restart

?

網絡yum源: ?

(.repo都是合法的yum源 默認是CentOS-Base.repo生效)

配置文件為/etc/yum.repos.d/CentOS-Base.repo

這個文件默認已經配置好了,不需要更改

?

[base] 容器名稱,一定要放在[]

name ??容器說明,可以自己隨便寫

mirrorlist ?鏡像站點

baseurl ?yum源服務器的地址。默認是CentOS官方yum源服務器,如果覺得慢,可以改成別的yum源地址

enabled ?此容器是否生效,不寫默認為1,代表生效

gpgcheck ??RPM數字證書是否生效,如果是1,則生效

gpgkey ?數字證書公鑰文件保存位置,不用修改

?

查詢:

yum list ?#查詢所有可用軟件包列表

yum search 關鍵字 ?#搜索服務器上所有和關鍵字相關的包 ??yum全用包名 RPM則有包名和包全名之分

?

安裝:

yum -y install 包名

-y 自動回答yes ??

例:yum -y install gcc

?

升級:

yum -y update 包名

例:yum -y update ?//此命令升級所有軟件包,包括內核,慎用!

?

卸載:

yum -y remove 包名

#不要用yum卸載軟件包!!!

會將其依賴的包卸載,出現別的問題。

?

服務器使用的原則:

1.最小化安裝

2.使用什么軟件,安裝什么軟件

3.盡量不卸載軟件

?

yum軟件組管理命令:

yum grouplist ?#列出所有可用的軟件組列表

yum groupinstall 軟件組名 ?#安裝指定軟件組,組名可用grouplist查詢,如果組名有空格,用雙引號引起來

yum groupremove 軟件組名 ??#卸載指定軟件組

?

6.8 yum光盤管理

?

1> 掛載光盤 ?mount -t iso9660 /dev/sr0 /media

?

2> 讓網絡yum源文件失效

方法一:將所有選項都置成enable=0

方法二:yum源檢測的是.repo后綴名 ?所以改名即可

?

????mv CentOS-Base.repo CentOS-Base.repo.bak

????mv CentOS-Debuginfo.repo CentOS-Debuginfo.repo.bak

????mv CentOS-Vault.repo CentOS-Vault.repo.bak

?

3> 修改光盤yum

???vim CentOS-Media.repo

修改兩處:

???baseurl=file:///mnt/cdrom/ ??#地址為自己的光盤掛載點,并把其他地址注釋掉

???enabled=1 ?#讓此yum源生效

?

yum list | more ?分屏顯示

?

注釋有嚴格格式,最好單行頂格寫注釋

?

6.9 源碼包與RPM包的區別

安裝之前:概念上的區別

安裝之后:安裝位置不同

?

RPM包 系統指定的默認位置,不要人為手工修改安裝目錄

/etc/ ???配置文件

/usr/bin/ ?可執行命令

/usr/lib/ ?函數庫

/usr/share/doc/ ?使用手冊

/usr/share/man/ ?幫助文件


源碼包 人為手工指定安裝位置

一般是 /usr/local/軟件名/

?

安裝位置不同帶來的影響:

RPM包安裝的服務可以使用系統服務管理命令(service)來管理,--啟動、重啟、關閉

例如RPM包安裝的Apache的啟動方法是:

?? /etc/rc.d/init.d/httpd start ???#/etc/rc.d/init.d/是所有服務的安裝路徑 ?或者

?? service httpd start ?redhat系列專有命令,工作原理:去/etc/rc.d/init.d/目錄下去找httpd服務


源碼包安裝的服務只能通過絕對路徑進行管理:

?? /urs/local/apache2/bin/apachectl start

?

6.10 源碼包的安裝過程

源碼包安裝注意事項:

源碼包保存位置 ?/usr/local/src/

軟件安裝位置 ???/usr/local

如何確定安裝過程報錯?安裝過程停止并出現errorwarningno的提示

?

安裝Apache源碼包過程:

1、下載源碼包到/usr/local/src/

2、解壓縮下載的源碼包

3、(可選)du -sh 文件名/目錄 ?查看文件夾大小 ?disk usage

???? summarize

???? human

4、進入解壓縮目錄

兩個重要文件:INSTALL(安裝說明文件)、README(使用說明文件)

5、查看INSTALL文件內容

INSTALL關鍵內容

$ ./configure --prefix=PREFIX

$ make

$ make install

$ PREFIX/bin/apachectl start

?

./configure ?軟件配置與檢查,有三個作用

>定義需要的功能選項

>檢測系統環境是否符合安裝要求

>把定義好的功能選項和檢測系統環境的信息都寫入Makefile文件,用于后續的編輯

?

6./configure --prefix=/usr/local/apache2 ? ?#跟安裝路徑,此命令完成后,出現Makefile文件

7make ? ?#編譯;如果出錯,make clean 命令來清空產生的臨時文件

8make install ? ?#編譯安裝,此步真正向安裝目錄寫入文件

9、安裝完成后,/usr/local/apache2/bin/apachectl start

?

源碼包的卸載:

不需要卸載命令,直接刪除安裝目錄即可

不會遺留任何垃圾文件

?

?

源碼包 RPM包 如何選擇?

用途

對外訪問(如httpd),則采用源碼包安裝

本地應用(如gcc),則采用RPM

?

6.11 腳本安裝包

>腳本安裝包并不是獨立的軟件包類型,常見安裝的是源碼包

>是人為把安裝過程寫成了自動安裝的腳本,只要執行腳本,定義簡單的參數,就可以完成安裝

>非常類似于Windows下軟件的安裝方式

?

常見的腳本安裝包是硬件的驅動

?

./setup.sh

?

1 下載軟件

2 解壓縮,并進入解壓縮目錄

3 執行安裝腳本

?

?

?

?

總結

以上是生活随笔為你收集整理的6 软件的安装的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。