Linux配置本地Yum源及sed命令用法

1、每12小時備份並壓縮/etc/目錄至/backup目錄中,保存文件名稱格式爲,"etc-年-月-日-時-分.tar.gz"

#crontab -e
0 */12 * * * /bin/tar -zvcf /backup/etc-$(date +%Y-%m-%d-%H-%M).tar.gz /etc

2、rpm包管理功能總結以及實例應用演示。

[root@localhost ~]# rpm -qa 文件名 #查看軟件包是否安裝

[root@localhost ~]# rpm -ivh 文件名  #安裝軟件包

[root@localhost ~]# rpm -e  文件名  #卸載軟件包

3、yum的配置和使用總結以及yum私有倉庫的創建。

yum (Yellowdog Update Modifier)  程序包管理器的前端工具 、是一個在Fedora和RedHat以及SUSE中的Shell前端軟件包管理器。基於RPM包管理,能夠從指定的服務器自動下載RPM包並且安裝,可以自動處理依賴性關係,並且一次安裝所有依賴的軟體包。

yum客戶端安裝軟件等操作實現原理:
1、配置文件:指定各可用的yum倉庫;
 2、緩存元數據:yum會到各可用yum倉庫獲取元數據,並緩存至本地; 
 3、分析元數據:根據具體操作請求完成元數據分析, 可能包括檢查依賴關係、文件列表等信息;
 4、執行具體操作:

配置本地yum源

[root@localhost ~]# mkdir /123  #新建一個掛載目錄
[root@localhost ~]# mount /dev/cdrom /123/  #將本地鏡像源,掛載到新建目錄及/123
mount: /dev/sr0 is write-protected, mounting read-only

[root@localhost ~]# df -h  #查看掛載的路徑

[root@localhost ~]# yum clean all #清空yum緩存

[root@localhost ~]# yum makecache  #生成新的緩存

[root@localhost ~]# yum install lrzsz  #測試安裝lrzsz

4、寫一個腳本實現列出以下菜單給用戶:
(1)disk:show disk info信息
(2)mem: show memory info信息
(3)cpu: show cpu info信息
(*)quit

#!/bin/bash
#
cat<<EOF
(1)disk:show disk info信息

(2)mem:show memory info信息

(3)cpu:show cpu info信息

(*)quit
EOF

read -p "Your chioce: " option

if [[ "$option" == "disk" ]]; then
    fdisk -l /dev/[sh]d[a-z]
elif [[ "$option" == "mem" ]]; then
    free -m
elif [[ "$option" == "cpu" ]]; then
    lscpu
else
    echo "Unknow option."
    exit 3
fi

5、sed用法總結並結合實例演示

**Sed 簡介**
sed 是一種在線編輯器,它一次處理一行內容。處理時,把當前處理的行存儲在臨時緩衝區中,稱爲“模式空間”(pattern space),接着用sed命令處理緩衝區中的內容,處理完成後,把緩衝區的內容送往屏幕。接着處理下一行,這樣不斷重複,直到文件末尾。文件內容並沒有改變,除非你使用重定向存儲輸出。Sed主要用來自動編輯一個或多個文件;簡化對文件的反覆操作;編寫轉換程序等
sed之所以能以行爲單位的編輯或修改文本,其原因在於它使用了兩個空間:一個是活動的“模式空間(pattern space)”,另一個是起輔助作用的“保持空間(hold space)這2個空間的使用。

模式空間:可以想成工程裏面的流水線,數據之間在它上面進行處理。
保持空間:可以想象成倉庫,我們在進行數據處理的時候,作爲數據的暫存區域。
正常情況下,如果不顯示使用某些高級命令,保持空間不會使用到!

6、 用bash實現統計訪問日誌文件中狀態碼大於等於400的IP數量並排序

#!/bin/bash

 nginx_log='/usr/local/nginx/logs/mynginx.log'

 code_400_num=$(grep -o '[4|5][0-9][0-9]' ${nginx_log} | wc -l)

code_400_sort=$(grep '[4|5][0-9][0-9]' ${nginx_log} | sort

 echo $code_400_num

 echo $code_400_sort
7、 使用自制的yum源安裝ftp、openssh、curl、wget、tcpdump等軟件包

[root@localhost ~]# yum install ftp openssh curl wget tcpdump

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章