1. 程式人生 > 其它 >RPM管理安裝、yum原始碼編譯和共享目錄的掛載

RPM管理安裝、yum原始碼編譯和共享目錄的掛載

文章目錄

Linux應用程式基礎

應用程式與系統命令的關係

角色系統命令應用程式
檔案位置一般在/bin和/sbin目錄中,或為Shell內部指令通常在/usr/bin、/usr/sbin和/usr/local/bin、/usr/local/sbin目錄中
主要用途完成對系統的基本管理工作,例如IP配置工具完成相對獨立的其他輔助任務,例如網頁瀏覽器
適用環境一般只在字元操作介面中執行根據實際需要,有些程式可在圖形介面中執行
執行格式一般包括命令字、命令選項和命令引數通常沒有固定的執行格式,由程式開發者自行定義

典型應用程式的目錄結構

檔案型別儲存目錄說明
普通的可執行程式檔案/usr/bin所有使用者可執行
伺服器程式、管理程式檔案/usr/sbin只有管理員能執行
應用程式配置檔案/etc通過rpm或yum方式安裝的應用程式
日誌檔案/var/log系統日誌
應用程式參考文件檔案/usr/share/doc關於應用程式的參考文件等資料
應用程式手冊頁檔案/usr/share/man執行檔案及配置檔案的man手冊頁

常見的軟體包封裝型別

檔案型別儲存目錄
RPM軟體包副檔名為“.rpm”,適用於RHEL、CentOS等系統
DEB軟體包副檔名為“.deb”,適用於Ubuntu、Debian等系統
原始碼軟體包一般為“.tar.gz”、“.tar.bz2”等格式的壓縮包,包含程式的原始程式碼,需要編譯安裝
附帶安裝程式的軟體包軟體包的副檔名不一,以TarBall格式的居多;在軟體包中會提供用於安裝的可執行程式或指令碼檔案,如install.sh、setup等;安裝時只需執行安裝檔案就可以根據嚮導程式的提示完成安裝操作

RPM包管理工具

RPM軟體包管理器Red-Hat Package Manager

由Red Hat公司提出,被眾多Linux發行版所採用

建立統一的檔案資料庫
詳細記錄軟體包安裝、解除安裝、升級等變化資訊
自動分析軟體包依賴關係。

RPM軟體包

軟體素材參考:http://www.rpm.org
一般命名格式:bash-4.2.46-28.e17.x86_64.rpm(軟體名+版本號+釋出次數+硬體平臺+副檔名)

rpm命令的功能

rpm命令能夠實現幾乎所有對RPM軟體包的管理功能
執行“man rpm”命令可以獲得關於rpm命令的詳細幫助資訊

rpm命令功能:

  • 查詢、驗證RPM軟體包的相關資訊
  • 安裝、升級、解除安裝RPM軟體包
  • 維護重建RPM資料庫資訊等綜合管理操作

查詢RPM軟體包資訊

1、查詢已安裝的RPM軟體資訊
rpm -q[子選項] [軟體名]

常用選項:
rpm -q 軟體名 #查詢指定軟體是否已安裝
rpm -qi 軟體名 #顯示已安裝的指定軟體的詳細資訊
rpm -ql 軟體名 #顯示已安裝的指定軟體的檔案列表
rpm -qc 軟體名 #列出已安裝的指定軟體的配置檔案
rpm -qd 軟體名 #列出已安裝的指定軟體的軟體包文件所在位置
rpm -qR 軟體名 #列出已安裝的指定軟體的依賴的軟體包及檔案
rpm -qf 檔案或目錄 #查詢已安裝的指定軟體屬於哪個安裝包
rpm -qa #顯示當前系統中以 rpm方式安裝的所有軟體列表
rpm -qa | grep -i postfix #查詢軟體postfix是否已安裝

2、查詢未安裝的 RPM 軟體包檔案中資訊
rpm -qpi RPM包檔名 #查詢指定軟體包的詳細資訊
rpm -qpl RPM包檔名 #查詢指定軟體包的檔案列表
rpm -qpc RPM包檔名 #查詢指定軟體包的配置檔案
rpm -qpd RPM包檔名 #查詢指定軟體包的軟體包文件的位置

安裝、升級、解除安裝 RPM 軟體包

rpm [選項] RPM包檔案
rpm -ivh RPM軟體包

常用選項:
-i:安裝一個新的 RPM 軟體包。
-U:升級某個軟體包,若未安裝過,則進行安裝。
-F:升級某個軟體包,若未安裝過,則放棄安裝。
-h:在安裝或升級軟體包的過程中,以“#”號顯示安裝進度。
-v:顯示軟體安裝過程中的詳細資訊。
–force:強制安裝某個軟體包,比如要安裝版本更舊的軟體包
-e:解除安裝指定名稱的軟體包。
–nodeps:在安裝或升級、解除安裝一個軟體包時,不檢查與其他軟體包的依賴關係。

維護RPM資料庫

  1. 重建 RPM 資料庫
    當 RPM 資料庫發生損壞,可通過 重建RPM資料庫 修復
    rpm --rebuilddb 或者 rpm --initdb
  2. 匯入驗證公鑰
    在沒有匯入用於數字簽名驗證的公鑰檔案之前,安裝光碟中的一部分RPM軟體包時會報錯。需要向RPM資料庫中匯入位於光碟根目錄下的公鑰檔案
    mount /dev/sr0 /mnt/
    rpm --import /mnt/RPM-GPG-KEY-CentOS-7

原始碼編譯安裝

配置本地yum源倉庫

先配置本地yum源倉庫
mount /dev/cdrom /mnt/			#把光碟掛載到/mnt目錄下
cd /etc/yum.repos.d/
mkdir repos.bak
mv * repos.bak

vim local.repo
[local]							#倉庫類別
name=local						#倉庫名稱
baseurl=file:///mnt				#指定URL 訪問路徑為光碟掛載目錄
enabled=1						#開啟此yum源,此為預設項,可省略
gpgcheck=0						#不驗證軟體包的簽名

yum clean all && yum makecache		#刪除yum快取並更新

yum常用操作

yum -y install 軟體名 #安裝、升級軟體包,“-y”選項表示自動確認
yum -y remove 軟體名 #解除安裝軟體包,可自動解決其依賴關係
yum -y update 軟體名 #升級軟體包

yum list #查詢軟體包列表
yum list installed #查詢系統中已安裝的軟體包
yum list available #查詢倉庫中尚未安裝的軟體包
yum list updates #查詢可以升級版本的軟體包

yum info 軟體名 #查詢軟體包的描述資訊
yum info httpd

yum search [all] 關鍵詞 #根據某個關鍵詞來查詢相關的軟體包
yum search all httpd

yum whatprovides 命令 #查詢命令屬於哪個軟體包
yum whatprovides netstat

使用yum方式進行安裝
yum install -y gcc gcc-c++ make

掛載Windows中的共享目錄

Windows端共享許可權設定

  1. 解禁Guest
    右擊我的電腦選擇管理–>本地使用者和組–>在使用者項中雙擊Guest使用者–>取消賬號已禁用選項
  2. 設定共享目錄許可權
    右擊共享目錄點屬性–>在共享頁面中點選共享選項–>下拉選擇共享物件為Everyone–>點選共享按鈕
    3.設定本地策略
    開啟命令框–>輸入secpol.msc–>選擇本地策略
    使用者許可權分配–>拒絕從網路訪問這臺計算機–>把Guest使用者刪除
    安全選項–>網路訪問:本地賬戶的共享和安全模型–>下拉選擇僅來賓

Linux掛載端

  1. 掃描共享目錄
    smbclient -L //192.168.80.1/ #Windows端的IP地址
    不需要輸入密碼直接回車
  2. 掛載共享目錄
    yum install -y cifs-utils
    mkdir /data
    mount.cifs //192.168.80.1/share /data
    不需要輸入密碼直接回車

df -h
ls /data