真实的国产乱ⅩXXX66竹夫人,五月香六月婷婷激情综合,亚洲日本VA一区二区三区,亚洲精品一区二区三区麻豆

成都創(chuàng)新互聯(lián)網(wǎng)站制作重慶分公司

周期性任務(wù)計(jì)劃,包管理,sed以及shell編程基礎(chǔ)-創(chuàng)新互聯(lián)

周期性任務(wù)計(jì)劃,包管理,sed以及shell編程基礎(chǔ)

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

成都創(chuàng)新互聯(lián)公司成立與2013年,先為泰興等服務(wù)建站,泰興等地企業(yè),進(jìn)行企業(yè)商務(wù)咨詢服務(wù)。為泰興企業(yè)網(wǎng)站制作PC+手機(jī)+微官網(wǎng)三網(wǎng)同步一站式服務(wù)解決您的所有建站問(wèn)題。
[root@localhost /]# crontab  -e
0 */12 * * *   /usr/bin/tar  -zcf /data/backup/etc-$(date '+%Y-%m-%d--%H-%M').tar.gz /ect/*

2.rpm包管理功能總結(jié)以及實(shí)例應(yīng)用演示
rpm是一個(gè)功能十分強(qiáng)大的軟件包管理系統(tǒng),它使得在Linux下安裝、升級(jí)和刪除軟件包的工作變得容易,并且具有安裝、升級(jí)、卸載、查詢和校驗(yàn)、數(shù)據(jù)庫(kù)維護(hù)等功能.
rpm命令:rpm [OPTIONS] [PACKAGE_FILE]
(1)安裝:

rpm {-i|--install} [install-options] PACKAGE_FILE ...
rpm  -ivh  PACKAGE_FILE ...
GENERAL OPTIONS:
 -v:verbose,詳細(xì)信息
 -vv:更詳細(xì)的輸出
[install-options]:
 -h:hash marks輸出進(jìn)度條;每個(gè)#表示2%的進(jìn)度;
 --test:測(cè)試安裝,檢查并報(bào)告依賴關(guān)系及沖突消息等;
--nodeps:忽略依賴關(guān)系;不建議;
--replacepkgs:重新安裝
注意:rpm可以自帶腳本;
四類:--noscripts
preinstall:安裝過(guò)程開(kāi)始之前運(yùn)行的腳本,%pre , --nopre
postinstall:安裝過(guò)程完成之后運(yùn)行的腳本,%post , --nopost
preuninstall:卸載過(guò)程真正開(kāi)始執(zhí)行之前運(yùn)行的腳本,%preun, --nopreun
postuninstall:卸載過(guò)程完成之后運(yùn)行的腳本,%postun , --nopostun
--nosignature:不檢查包簽名信息,不檢查來(lái)源合法性;
--nodigest:不檢查包完整性信息;

(2)升級(jí):

rpm {-U|--upgrade} [install-options] PACKAGE_FILE ...
rpm {-F|--freshen} [install-options] PACKAGE_FILE ...
 -U:升級(jí)或安裝;
 -F:升級(jí)
rpm  -Uvh PACKAGE_FILE ...
rpm  -Fvh PACKAGE_FILE ...
 --oldpackage:降級(jí);
 --force:強(qiáng)制升級(jí);
注意:(1) 不要對(duì)內(nèi)核做升級(jí)操作;Linux支持多內(nèi)核版本并存,因此,直接安裝新版本內(nèi)核;
(2) 如果某原程序包的配置文件安裝后曾被修改過(guò),升級(jí)時(shí),新版本的程序提供的同一個(gè)配置文件不會(huì)覆蓋原有版本的配置文件,而是把新版本的配置文件重命名(FILENAME.rpmnew)后提供;

(3)卸載:

rpm {-e|--erase} [--allmatches] [--nodeps] [--noscripts] [--test] PACKAGE_NAME ...----allmatches:卸載所有匹配指定名稱的程序包的各版本;
 --nodeps:忽略依賴關(guān)系
 --test:測(cè)試卸載,dry run模式

(4)查詢:

rpm {-q|--query} [select-options] [query-options]
[select-options]
PACKAGE_NAME:查詢指定的程序包是否已經(jīng)安裝,及其版本;
 -a, --all:查詢所有已經(jīng)安裝過(guò)的包;
 -f  FILE:查詢指定的文件由哪個(gè)程序包安裝生成;
 -p, --package PACKAGE_FILE:用于實(shí)現(xiàn)對(duì)未安裝的程序包執(zhí)行查詢操作;
 --whatprovides CAPABILITY:查詢指定的CAPABILITY由哪個(gè)程序包提供;
 --whatrequires CAPABILITY:查詢指定的CAPABILITY被哪個(gè)包所依賴;
[query-options]
 --changelog:查詢r(jià)pm包的changlog;
 -l, --list:程序安裝生成的所有文件列表;
 -i, --info:程序包相關(guān)的信息,版本號(hào)、大小、所屬的包組,等;
 -c, --configfiles:查詢指定的程序包提供的配置文件;
 -d, --docfiles:查詢指定的程序包提供的文檔;
 --provides:列出指定的程序包提供的所有的CAPABILITY;
-R, --requires:查詢指定的程序包的依賴關(guān)系;
--scripts:查看程序包自帶的腳本片斷;
用法:
-qi  PACKAGE, -qf FILE, -qc PACKAGE, -ql PACKAGE, -qd PACKAGE
-qpi  PACKAGE_FILE, -qpl PACKAGE_FILE, -qpc PACKAGE_FILE, ...

(5)校驗(yàn):

rpm {-V|--verify} [select-options] [verify-options] 
S file Size differs
M Mode differs (includes permissions and file type)
5 digest (formerly MD5 sum) differs
D Device major/minor number mismatch
L readLink(2) path mismatch
U User ownership differs
G Group ownership differs
T mTime differs
P caPabilities differ
包來(lái)源合法性驗(yàn)正和完整性驗(yàn)正:
來(lái)源合法性驗(yàn)正:
完整性驗(yàn)正:
獲取并導(dǎo)入信任的包制作者的密鑰:
對(duì)于CentOS發(fā)行版來(lái)說(shuō):rpm --import /etc/pki/rpm-gpg/RPM-GPG-KEY-CentOS-7
驗(yàn)正:
(1) 安裝此組織簽名的程序時(shí),會(huì)自動(dòng)執(zhí)行驗(yàn)正;
(2) 手動(dòng)驗(yàn)正:rpm -K PACKAGE_FILE

(6)數(shù)據(jù)庫(kù)重建:
rpm管理器數(shù)據(jù)庫(kù)路徑:/var/lib/rpm/
查詢操作:通過(guò)此處的數(shù)據(jù)庫(kù)進(jìn)行;

獲取幫助:
CentOS 6:man rpm
CentOS 7:man rpmdb
rpm {--initdb|--rebuilddb} [--dbpath DIRECTORY] [--root DIRECTORY]
 --initdb:初始化數(shù)據(jù)庫(kù),當(dāng)前無(wú)任何數(shù)據(jù)庫(kù)可實(shí)始化創(chuàng)建一個(gè)新的;當(dāng)前有時(shí)不執(zhí)行任何操作;
 --rebuilddb:重新構(gòu)建,通過(guò)讀取當(dāng)前系統(tǒng)上所有已經(jīng)安裝過(guò)的程序包進(jìn)行重新創(chuàng)建;
  • yum的配置和使用總結(jié)以及yum私有倉(cāng)庫(kù)的創(chuàng)建。
    (1) yum是rpm的前端工具,可以解決軟件包的依賴問(wèn)題。yum的配置文件分兩個(gè)部分:一個(gè)是 /etc/yum.conf 配置文件為所有倉(cāng)庫(kù)提供公共配置,一個(gè)是 /etc/yum.repos.d/*.repo 倉(cāng)庫(kù)配置文件。yum的日志文件保存在 /etc/log/yum.log 文件中。
    yum命令的用法:
    yum [options] [command] [package ...]
    顯示倉(cāng)庫(kù)列表:
    repolist [all|enabled|disabled]
    顯示程序包:
    yum list [all | glob_exp1] [glob_exp2] [...]
    yum list {available|installed|updates} [glob_exp1] [...]
    安裝程序包:
    install package1 [package2] [...]
    reinstall package1 [package2] [...]  (重新安裝)
    升級(jí)程序包:
    update [package1] [package2] [...]
    downgrade package1 [package2] [...] (降級(jí))
    檢查可用升級(jí):
    check-update
    卸載程序包:
    remove | erase package1 [package2] [...]
    查看程序包information:
    info [...]
    查看指定的特性(可以是某文件)是由哪個(gè)程序包所提供:
    provides | whatprovides feature1 [feature2] [...]
    清理本地緩存:
    clean [ packages | metadata | expire-cache | rpmdb | plugins | all ]
    構(gòu)建緩存:
    makecache
    搜索:
    search string1 [string2] [...]
    以指定的關(guān)鍵字搜索程序包名及summary信息;
    查看指定包所依賴的capabilities:
    deplist package1 [package2] [...]
    查看yum事務(wù)歷史:
    history [info|list|packages-list|packages-info|summary|addon-info|redo|undo|rollback|new|sync|stats]
    安裝及升級(jí)本地程序包:
    localinstall rpmfile1 [rpmfile2] [...]
    (maintained for legacy reasons only - use install)
      localupdate rpmfile1 [rpmfile2] [...]
    (maintained for legacy reasons only - use update) 
    包組管理的相關(guān)命令:
    groupinstall group1 [group2] [...]
    groupupdate group1 [group2] [...]
    grouplist [hidden] [groupwildcard] [...]
    groupremove group1 [group2] [...]
    groupinfo group1 [...]

(2)yum私有倉(cāng)庫(kù)的創(chuàng)建

[root@localhost yum.repos.d]# vim epel.repo 
[epel]
 name=Fedora EPEL
 baseurl=https://mirrors.aliyun.com/epel/7/x86_64/
 gpgcheck=0
  • 寫一個(gè)腳本實(shí)現(xiàn)列出以下菜單給用戶:
    (1)disk:show disk info信息
    (2)mem: show memory info信息
    (3)cpu: show cpu info信息
    (*)quit
    /bin/bash
    cat <
  • sed用法總結(jié)并結(jié)合實(shí)例演示
    1.用法:
    sed [OPTION]... 'script' [input-file] ...
    script:
    地址定界編輯命令
    常用選項(xiàng):
    -n:不輸出模式空間中的內(nèi)容至屏幕;
    -e script, --expression=script:多點(diǎn)編輯;
    -f  /PATH/TO/SED_SCRIPT_FILE
    每行一個(gè)編輯命令;
    -r, --regexp-extended:支持使用擴(kuò)展正則表達(dá)式;
    -i[SUFFIX], --in-place[=SUFFIX]:直接編輯原文件 ;
    地址定界:
    (1) 空地址:對(duì)全文進(jìn)行處理;
    (2) 單地址:
    #:指定行;
    /pattern/:被此模式所匹配到的每一行;
    (3) 地址范圍
    #,#:
    #,+#:
    #,/pat1/
    /pat1/,/pat2/
    $:最后一行;
    (4) 步進(jìn):~
    1~2:所有奇數(shù)行
    2~2:所有偶數(shù)行
    編輯命令:
    d:刪除;
    p:顯示模式空間中的內(nèi)容;
    a  \text:在行后面追加文本“text”,支持使用\n實(shí)現(xiàn)多行追加; 
    i  \text:在行前面插入文本“text”,支持使用\n實(shí)現(xiàn)多行插入; 
    c  \text:把匹配到的行替換為此處指定的文本“text”;
    w /PATH/TO/SOMEFILE:保存模式空間匹配到的行至指定的文件中;
    r  /PATH/FROM/SOMEFILE:讀取指定文件的內(nèi)容至當(dāng)前文件被模式匹配到的行后面;文件合并;
    =:為模式匹配到的行打印行號(hào);
    !:條件取反;
    地址定界!編輯命令;
    s///:查找替換,其分隔符可自行指定,常用的有s@@@, s###等;
    替換標(biāo)記:
    g:全局替換;
    w /PATH/TO/SOMEFILE:將替換成功的結(jié)果保存至指定文件中;
    p:顯示替換成功的行;
    高級(jí)編輯命令:
    h:把模式空間中的內(nèi)容覆蓋至保持空間中;
    H:把模式空間中的內(nèi)容追加至保持空間中;
    g:把保持空間中的內(nèi)容覆蓋至模式空間中;
    G:把保持空間中的內(nèi)容追加至模式空間中;
    x:把模式空間中的內(nèi)容與保持空間中的內(nèi)容互換;
    n:覆蓋讀取匹配到的行的下一行至模式空間中;
    N:追加讀取匹配到的行的下一行至模式空間中;
    d:刪除模式空間中的行;
    D:刪除多行模式空間中的所有行;

    2.結(jié)合實(shí)例演示:
    (1)打印 /etc/passwd 文件的第三行,原文件所有行也將打印:
    sed ‘3p’ /etc/passwd
    (2)只打印 /etc/passwd 文件的第三行
    sed -n ‘3p’ /etc/passwd
    (3)只打印 /etc/passwd 文件的第一行到第四行
    sed -n '1,4p' /etc/passwd
    (4)只打印 /etc/passwd 文件中包行root字符的所有行
    sed -n '/root/p' /etc/passwd
    (5)第一行打印行號(hào),第二行打印行內(nèi)容,循環(huán)打印所有匹配到的行
    sed -n -e '/root/p' -e '/root/=' /etc/passwd
    (6)在匹配行的下一行添加superman,并換行添加over。支持添加多行內(nèi)容。
    sed ‘/root/a\superman\nover’ /etc/passwd
    (7)在匹配行的上一行添加superman,并換行添加over。支持添加多行內(nèi)容。
    sed ‘/root/i\superman\nover’ /etc/passwd
    (8)在匹配行的行替換為superman和over新行。支持替換為多行內(nèi)容。
    sed ‘/root/c\superman\nover’ /etc/passwd
    (9)刪除file中的空行并打印
    sed ‘/^$/d’ file
    (10)將root替換為rootsuperman字符串,其中&代表是每一個(gè)匹配的結(jié)果,如一行中有多個(gè)字符串匹配則只選取第一個(gè)匹配結(jié)果
    sed -n 's/root/&superman/p' /etc/passwd
    (11)刪除/etc/fstab文件中所有以#開(kāi)頭的行的行首的#號(hào)及#后面的所有空白字符
    sed 's@^#[[:space:]]*@@' /etc/fstab

  • 用bash實(shí)現(xiàn)統(tǒng)計(jì)訪問(wèn)日志文件中狀態(tài)碼大于等于400的IP數(shù)量并排序
    (1) awk '$9>400{print $1}' /var/log/httpd/access_log | sort -n | uniq -c
    (2)sed -nr 's@^(.*)- -.*" ([0-9]{3}).*@\1,\2@p' /var/log/httpd/access_log | grep '.* ,[4|5].*' | sort -nr | uniq -c
  • 使用自制的yum源安裝ftp、openssh、curl、wget、tcpdump等軟件包
     [root@httpd-server yum.repos.d]# vim epel.repo 
      [epel]
      name=Fedora EPEL
      baseurl=https://mirrors.aliyun.com/epel/7/x86_64/
      gpgcheck=0

    yum install -y ftp openssh curl wget tcpdum &> /dev/null

另外有需要云服務(wù)器可以了解下創(chuàng)新互聯(lián)cdcxhl.cn,海內(nèi)外云服務(wù)器15元起步,三天無(wú)理由+7*72小時(shí)售后在線,公司持有idc許可證,提供“云服務(wù)器、裸金屬服務(wù)器、高防服務(wù)器、香港服務(wù)器、美國(guó)服務(wù)器、虛擬主機(jī)、免備案服務(wù)器”等云主機(jī)租用服務(wù)以及企業(yè)上云的綜合解決方案,具有“安全穩(wěn)定、簡(jiǎn)單易用、服務(wù)可用性高、性價(jià)比高”等特點(diǎn)與優(yōu)勢(shì),專為企業(yè)上云打造定制,能夠滿足用戶豐富、多元化的應(yīng)用場(chǎng)景需求。


分享名稱:周期性任務(wù)計(jì)劃,包管理,sed以及shell編程基礎(chǔ)-創(chuàng)新互聯(lián)
轉(zhuǎn)載源于:http://weahome.cn/article/hggos.html

其他資訊

在線咨詢

微信咨詢

電話咨詢

028-86922220(工作日)

18980820575(7×24)

提交需求

返回頂部