shell命令整理(九)

1酿炸、rpm管理

rpm的作用類似于windows上的電腦管家中軟件管理涨冀、安全衛(wèi)士里面 “軟件管家” 等產(chǎn)品,是 RPM 軟件包的管理工具扁眯。rpm 原本是 Red Hat Linux 發(fā)行版專門用來管理 Linux 各項(xiàng)套件的程序翅帜,由于它遵循 GPL 規(guī)則且功能強(qiáng)大方便,因而廣受歡迎绣版。逐漸受到其他發(fā)行版的采用歼疮。RPM 套件管理方式的出現(xiàn),讓 Linux 易于安裝缩麸,升級(jí)赡矢,間接提升了 Linux 的適用度。要想裝軟件痕檬,和 windows 下一樣送浊,先得找到安裝包袭景。
軟件包的獲得方式:

  • 不嫌麻煩的話,去官網(wǎng)去下載荒澡;

  • 不介意老版本的話与殃,可以從光盤(或者鏡像文件)中讀劝帧米奸;

rpm要安裝軟件需要掛載安裝悴晰,并且一個(gè)一個(gè)的去安裝對(duì)應(yīng)的依賴,對(duì)于一般運(yùn)維工作漂辐,使用yum即可

2棕硫、YUM包管理系統(tǒng)

2.1 yum簡(jiǎn)介

yum(Yellow dog Updater Modified)是 CentOS 中屬于 RPM 前端軟件包管理器,能從指定的服務(wù)器中下載 RPM 包复凳,并自動(dòng)分析和處理 RPM 包之間的依賴關(guān)系灶泵,最后將依次所依賴的軟件包都安裝了赦邻,而無需繁瑣的一個(gè)一個(gè)安裝实檀。
yum 相比 rpm 更人性化,更便捷:

  • 聯(lián)網(wǎng)安裝(不用掛載)

  • 聯(lián)動(dòng)安裝(軟件所需依賴自動(dòng)安裝)

  • 聯(lián)網(wǎng)更新

  • yum 倉(cāng)庫(kù)的組成部分

  • 數(shù)據(jù) :包含所有的軟件包文件

  • 元數(shù)據(jù):指的是數(shù)據(jù)文件:包括每個(gè)包的包名恬吕、版本信息须床、各包所包含的文件列表豺旬、包與包之間的依賴關(guān)系、包的分組信息.

2.2 yum的配置文件

yum 的配置文件有 2 種:

# 為所有倉(cāng)庫(kù)提供公共配置
/etc/yum.conf
# 為倉(cāng)庫(kù)的指向提供配置
/etc/yum.repos.d/*.repo

2.2.1 主配置文件

路徑 /etc/yum.conf

[main]
# 下載RPM包的緩存目錄
cachedir=/var/cache/yum/$basearch/$releasever
# RPM緩存的程序包安裝完成后是否保存篓跛,0表示不保存坦刀,1表示保存
keepcache=0
# 調(diào)試級(jí)別 取值范圍 0 – 10,默認(rèn)值為2
debuglevel=2
# yum相關(guān)日志存放路徑
logfile=/var/log/yum.log
# 是否要平臺(tái)完全匹配才能安裝
exactarch=1
# 需不需要檢查已過期的倉(cāng)庫(kù)
obsoletes=1
# 是否檢查包的完整性和合法性
gpgcheck=1
# 是否允許支持yum的插件功能林艘,0 表示不允許 芽丹,1表示允許
plugins=1
# 允許保留多少個(gè)內(nèi)核包
installonly_limit=5
bugtracker_url=http://bugs.centos.org/set_project.php?project_id=19&ref=http://bugs.centos.org/bug_report_page.php?category=yum
# 指定一個(gè)軟件包,yum 會(huì)根據(jù)這個(gè)包判斷你的發(fā)行版本咕村,默認(rèn)是redhat-release
distroverpkg=centos-release

2.2.2 倉(cāng)庫(kù)配置文件

路徑 /etc/yum.repos.d/*.repo

# 容器名字蚊俺,必須是唯一的
[repositoryID]
# 倉(cāng)庫(kù)的名字泳猬,僅作一個(gè)標(biāo)識(shí)
name=Some name for this repository
# 指定真正倉(cāng)庫(kù)所在的路徑,可以指多個(gè)倉(cāng)庫(kù)
baseurl=url://path/to/repository/
# 指是否啟用這個(gè)倉(cāng)庫(kù)埋心,1表示啟用忙上,0表示不啟用
enabled={1|0}
# 是否要檢測(cè)軟件包的合法性,1表示啟用茬斧,0表示不啟用
gpgcheck={1|0}
# 軟件包的公鑰文件所在路徑
gpgkey=URL
# 是否基于組來批量管理程序包
enablegroups={1|0}
# 意思是有多個(gè)url可供選擇時(shí)梗逮,yum選擇的次序慷彤,roundrobin是隨機(jī)選擇,默認(rèn)為:roundrobin贷屎,意為隨機(jī)挑選艘虎;
failovermethod={roundrobin|priority}
# 倉(cāng)庫(kù)優(yōu)先級(jí) ,默認(rèn)為1000 
cost=1000

2.3 配置本地 yum 源

2.3.1 掛載光盤

虛擬光驅(qū)加載鏡像文件野建,然后掛載到本地目錄恬叹,先用 lsblk 命令查看光驅(qū)的塊設(shè)備名稱同眯,這里是 sr0

#建立本地yum源文件夾
mkdir /mnt/dvd
#掛載
mount –o ro /dev/sr0 /mnt/dvd

2.3.2 開機(jī)自動(dòng)掛載

方法 1
修改/etc/rc.local 文件须蜗。該文件是操作系統(tǒng)開機(jī)后最后執(zhí)行的一個(gè)文件,該文件默認(rèn)是沒有執(zhí)行權(quán)限的菱农,如果你是第一次修改柿估,請(qǐng)記得加執(zhí)行權(quán)限。這就相當(dāng)于開機(jī)后用腳本執(zhí)行了一條掛載命名

    echo "mount -O ro /dev/sr0 /mnt/dvd" >> /etc/rc.local

方法 2
編寫/etc/fstab文件的妖,將光盤當(dāng)作塊狀設(shè)備掛載到系統(tǒng)中足陨。

    # 將下面一行配置寫入/etc/fstab中
    /dev/sr0   /mnt/dvd   iso9660    defaults      0 0

2.3.3 修改配置文件指向本地倉(cāng)庫(kù)

配置文件路徑:/etc/yum.repos.d/

# 備份源配置文件
mkdir /root/yum_back
mv /etc/yum.repos.d/* /root/yum_back/
創(chuàng)建本地配置文件墨缘,名字隨意,如:vim /etc/yum.repos.d/dvd.repo

# 倉(cāng)庫(kù)的名字,不要有特殊符號(hào)(自定義)
[dvd]
# 倉(cāng)庫(kù)描述
name=localdvd
# 指定yum倉(cāng)庫(kù)的路徑狠毯;file://表示本地路徑
baseurl=file:///mnt/dvd
# 啟用倉(cāng)庫(kù)褥芒,1表示啟用锰扶;0表示不啟用
enabled=1
# 不用校驗(yàn)軟件包的簽名,0表示不校驗(yàn)坷牛;1表示校驗(yàn)
gpgcheck=0

2.3.4 測(cè)試驗(yàn)證

yum clean all    #清空yum緩存 rm -rf /var/cache/yum
yum makecache   #創(chuàng)建yum緩存
yum list       #查看倉(cāng)庫(kù)里的軟件包

2.4 配置國(guó)內(nèi)網(wǎng)絡(luò) yum 源(重點(diǎn))

前面說了京闰,由于自帶的 yum 源是國(guó)外的源甩苛,速度很慢讯蒲,所以可以替換為國(guó)內(nèi)的 yum 源肄扎。目前國(guó)內(nèi)提供 yum 源的機(jī)構(gòu)有很多犯祠,如阿里、網(wǎng)易雷则、搜狐月劈、清華等等,這里以阿里源為例惭墓。

2.4.1 還是先備份原來的 yum 源

mkdir /root/yum_back
mv /etc/yum.repos.d/* /root/yum_back/

2.4.2 下載網(wǎng)絡(luò)源的 repo 文件到服務(wù)器

wget -O /etc/yum.repos.d/CentOS-Base.repo http://mirrors.aliyun.com/repo/Centos-7.repo
wget -O /etc/yum.repos.d/CentOS-epel.repo http://mirrors.aliyun.com/repo/epel-7.repo
也可以將這兩個(gè)文件自己保存起來腊凶,每次新建服務(wù)器拴念,將該源替換進(jìn)去。

清空并創(chuàng)建緩存

# 清空yum緩存 rm -rf /var/cache/yum
yum clean all
#創(chuàng)建yum緩存
yum makecache

2.5 擴(kuò)展:自建局域網(wǎng) yum 源

公司內(nèi)網(wǎng)自建了 yum 倉(cāng)庫(kù)风瘦,在公司內(nèi)的服務(wù)器可以使用

[base]
name=CentOS-7-Base-hbgg
baseurl=http://10.10.16.80/centos/7/base/
gpgcheck=1
gpgkey=http://10.10.16.80/centos/RPM-GPG-KEY-CentOS-7
[updates]
name=CentOS-7-updates-hbgg
baseurl=http://10.10.16.80/centos/7/updates/
gpgcheck=1
gpgkey=http://10.10.16.80/centos/RPM-GPG-KEY-CentOS-7
[extras]
name=CentOS-7-extras-hbgg
baseurl=http://10.10.16.80/centos/7/extras/
gpgcheck=1
gpgkey=http://10.10.16.80/centos/RPM-GPG-KEY-CentOS-7
[epel]
name=CentOS-7-epel-hbgg
baseurl=http://10.10.16.80/centos/7/epel/
gpgcheck=1
gpgkey=http://10.10.16.80/centos/RPM-GPG-KEY-EPEL-7

具體用法不再贅述万搔,參考前文官帘。

3刽虹、安裝網(wǎng)絡(luò) yum 源

# 清理緩存
yum clean all
# 更新YUM源
yum makecache
# 備份默認(rèn)源
mkdir /root/yum_back
mv /etc/yum.repos.d/* /root/yum_back/
# 刪除默認(rèn)的國(guó)外源
rm -rf /etc/yum.repos.d/*
# 下載阿里源的repo文件到服務(wù)器
cd /etc/yum.repos.d/
wget -O /etc/yum.repos.d/CentOS-Base.repo http://mirrors.aliyun.com/repo/Centos-7.repo 
wget -O /etc/yum.repos.d/CentOS-epel.repo http://mirrors.aliyun.com/repo/epel-7.repo
# 清理緩存
yum clean all
# 更新YUM源
yum makecache
# 關(guān)閉防火墻
systemctl stop firewalld.service
# 禁止開機(jī)自啟
systemctl disable firewalld
# 關(guān)閉selinux 
sed -i 's/SELINUX=enforcing/SELINUX=disabled/g' /etc/sysconfig/selinux
# 重啟
reboot
# 查詢啟用的yum源清單,獲取倉(cāng)庫(kù)標(biāo)識(shí)
yum repolist
# 安裝常用軟件
yum -y install vim wget net-tools telnet tree nmap sysstat lrzsz dos2unix bind-utils ntpdate
vim /etc/resolv.conf

nameserver 8.8.8.8
nameserver 114.114.114.114

4意敛、yum 命令的用法

4.1 yum 查詢功能

yum [options] [command] [package …]
 -y:默認(rèn)yum需要是交互模式草姻,-y表示自動(dòng)提供yes響應(yīng)
 search:搜索某個(gè)軟件名或關(guān)鍵字
 list:列出所有yum所管理的軟件包和名稱
 info:同上,也類似rpm -qai
 provides:查找該命令是由軟件安裝生成的敞曹,類似rpm -df的功能
 repolist:列出所有可用的repo

4.2 yum 安裝综膀、升級(jí)剧劝、降級(jí)、卸載

yum install:后面接需要安裝的軟件
 reinstall:后面接需要重新安裝的軟件
 update:后面接需要升級(jí)到的軟件
 check-update:檢查可用的升級(jí)包
 downgrade:后面接需要降級(jí)到的版本
 remove:卸載軟件
 erase:功能同上拢锹,卸載和軟件組相關(guān)的功能

4.3 yum 組功能

yum grouplist:列出所有可使用的組列表
 groupinfo:后面接groupname萄喳,可用了解該group內(nèi)含所有組的名稱
 groupinstall:安裝整組的軟件
 groupremove:刪除某個(gè)組的軟件

4.4 清理緩存

yum clean { all | package | headers }
 all:將所有的數(shù)據(jù)刪除他巨,包括元數(shù)據(jù)和軟件文件
 package:將所有已下載的軟件文件刪除
 headers:刪除所有下載的元數(shù)據(jù)文件

4.5 構(gòu)建緩存

yum makecache

5、查看服務(wù)器基本信息

5.1 查看 gcc 版本級(jí)相關(guān)信息

gcc -v

5.2 查看當(dāng)前內(nèi)核系統(tǒng)版本信息

cat /proc/version

5.3 安裝 lsb_release

yum install redhat-lsb -y

5.4 查看操作系統(tǒng)版本信息 (使用命令時(shí)提示 command not found, 需要安裝 redhat-lsb)

lsb_release -a

6捻爷、開關(guān)防火墻

在 RHEL7 里有幾種防火墻共存:

  • firewalld
  • iptables
  • ebtables

默認(rèn)是使用 firewalld 來管理 netfilter 子系統(tǒng)也榄,不過底層調(diào)用的命令仍然是 iptables 等
Firewalld 與 iptables 對(duì)比更自由薪棒、更人性化

6.1 查看 firewalld 狀態(tài)

systemctl status firewalld

6.2 策略啟停 firewalld

# 啟動(dòng)
systemctl start firewalld
# 停止
systemctl stop firewalld
**6.3 開機(jī)啟用 / 禁用**

# 啟用
systemctl enable firewalld
# 禁用
systemctl disable firewalld

6.4 查看默認(rèn)域中的火墻

firewall-cmd --list-all

6.5 啟 / 停俐芯、重啟firewalld服務(wù)

# 啟動(dòng)
systemctl start firewalld.service
# 關(guān)閉
systemctl stop firewalld.service
# 重啟一個(gè)服務(wù)
systemctl restart firewalld.service

6.6 顯示一個(gè)firewalld服務(wù)的狀態(tài)

systemctl status firewalld.service

6.7 是否開機(jī)自啟

# 查看服務(wù)是否開機(jī)啟動(dòng)
systemctl is-enabled firewalld.service
# 查看已啟動(dòng)的服務(wù)列表
systemctl list-unit-files|grep enabled
# 查看啟動(dòng)失敗的服務(wù)列表
systemctl --failed
# 開機(jī)自啟
systemctl enable firewalld.service
# 禁止開機(jī)自啟
systemctl disable firewalld.service

6.8 查看端口開放情況

firewall-cmd --list-port

如果提示FirewallD is not running吧史,說明防火墻處于關(guān)閉狀態(tài)

6.9 防火墻開啟狀態(tài)下開放端口

firewall-cmd --zone=public --add-port=3334/tcp --permanent
# 重啟firewall
firewall-cmd --reload
最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請(qǐng)聯(lián)系作者
  • 序言:七十年代末贸营,一起剝皮案震驚了整個(gè)濱河市,隨后出現(xiàn)的幾起案子揣云,更是在濱河造成了極大的恐慌冰啃,老刑警劉巖,帶你破解...
    沈念sama閱讀 210,914評(píng)論 6 490
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件,死亡現(xiàn)場(chǎng)離奇詭異扇调,居然都是意外死亡狼钮,警方通過查閱死者的電腦和手機(jī),發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 89,935評(píng)論 2 383
  • 文/潘曉璐 我一進(jìn)店門士聪,熙熙樓的掌柜王于貴愁眉苦臉地迎上來剥悟,“玉大人曼库,你說我怎么就攤上這事〈鹊蓿” “怎么了种玛?”我有些...
    開封第一講書人閱讀 156,531評(píng)論 0 345
  • 文/不壞的土叔 我叫張陵赂韵,是天一觀的道長(zhǎng)。 經(jīng)常有香客問我肄满,道長(zhǎng),這世上最難降的妖魔是什么掰担? 我笑而不...
    開封第一講書人閱讀 56,309評(píng)論 1 282
  • 正文 為了忘掉前任带饱,我火速辦了婚禮横媚,結(jié)果婚禮上,老公的妹妹穿的比我還像新娘恢口。我一直安慰自己穷躁,他們只是感情好问潭,可當(dāng)我...
    茶點(diǎn)故事閱讀 65,381評(píng)論 5 384
  • 文/花漫 我一把揭開白布狡忙。 她就那樣靜靜地躺著,像睡著了一般窜觉。 火紅的嫁衣襯著肌膚如雪北专。 梳的紋絲不亂的頭發(fā)上,一...
    開封第一講書人閱讀 49,730評(píng)論 1 289
  • 那天语婴,我揣著相機(jī)與錄音砰左,去河邊找鬼场航。 笑死,一個(gè)胖子當(dāng)著我的面吹牛酬核,可吹牛的內(nèi)容都是我干的适室。 我是一名探鬼主播捣辆,決...
    沈念sama閱讀 38,882評(píng)論 3 404
  • 文/蒼蘭香墨 我猛地睜開眼,長(zhǎng)吁一口氣:“原來是場(chǎng)噩夢(mèng)啊……” “哼旧巾!你這毒婦竟也來了忍些?” 一聲冷哼從身側(cè)響起罢坝,我...
    開封第一講書人閱讀 37,643評(píng)論 0 266
  • 序言:老撾萬榮一對(duì)情侶失蹤嘁酿,失蹤者是張志新(化名)和其女友劉穎,沒想到半個(gè)月后娱仔,有當(dāng)?shù)厝嗽跇淞掷锇l(fā)現(xiàn)了一具尸體游桩,經(jīng)...
    沈念sama閱讀 44,095評(píng)論 1 303
  • 正文 獨(dú)居荒郊野嶺守林人離奇死亡众弓,尸身上長(zhǎng)有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點(diǎn)故事閱讀 36,448評(píng)論 2 325
  • 正文 我和宋清朗相戀三年,在試婚紗的時(shí)候發(fā)現(xiàn)自己被綠了脚乡。 大學(xué)時(shí)的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片奶稠。...
    茶點(diǎn)故事閱讀 38,566評(píng)論 1 339
  • 序言:一個(gè)原本活蹦亂跳的男人離奇死亡捡遍,死狀恐怖画株,靈堂內(nèi)的尸體忽然破棺而出啦辐,到底是詐尸還是另有隱情蜈项,我是刑警寧澤紧卒,帶...
    沈念sama閱讀 34,253評(píng)論 4 328
  • 正文 年R本政府宣布,位于F島的核電站轴总,受9級(jí)特大地震影響,放射性物質(zhì)發(fā)生泄漏博个。R本人自食惡果不足惜怀樟,卻給世界環(huán)境...
    茶點(diǎn)故事閱讀 39,829評(píng)論 3 312
  • 文/蒙蒙 一、第九天 我趴在偏房一處隱蔽的房頂上張望盆佣。 院中可真熱鬧漂佩,春花似錦、人聲如沸罪塔。這莊子的主人今日做“春日...
    開封第一講書人閱讀 30,715評(píng)論 0 21
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽征堪。三九已至瘩缆,卻和暖如春,著一層夾襖步出監(jiān)牢的瞬間庸娱,已是汗流浹背。 一陣腳步聲響...
    開封第一講書人閱讀 31,945評(píng)論 1 264
  • 我被黑心中介騙來泰國(guó)打工谐算, 沒想到剛下飛機(jī)就差點(diǎn)兒被人妖公主榨干…… 1. 我叫王不留熟尉,地道東北人。 一個(gè)月前我還...
    沈念sama閱讀 46,248評(píng)論 2 360
  • 正文 我出身青樓洲脂,卻偏偏與公主長(zhǎng)得像斤儿,于是被迫代替她去往敵國(guó)和親。 傳聞我的和親對(duì)象是個(gè)殘疾皇子恐锦,可洞房花燭夜當(dāng)晚...
    茶點(diǎn)故事閱讀 43,440評(píng)論 2 348

推薦閱讀更多精彩內(nèi)容