RHCA考試基礎(二)

練習環境

每個學員機上有三臺預先配置好的虛擬機

server —— 作爲練習用服務器  172.25.0.11

desktop —— 作爲練習用客戶機  172.25.0.10

classroom —— 提供網關/DNS/軟件素材等資源  172.25.0.254

虛擬機Server

    P地址:172.25.0.11

    主機名:server0.example.com

    系統版本:RHEL 7.0

虛擬機Desktop

    IP地址:172.25.0.10

    主機名:desktop0.example.com

    系統版本:RHEL 7.0

 

真機遠程管理

    Ctrl+Shift+t : 新開一個終端

    ssh -X 登陸對方的用戶名@IP地址 

    [root@localhost ~]# ssh [email protected]

    [root@server0 ~]# exit        #退出遠程管理

 

簡單的軟件包管理

RPM Package Manager,RPM包管理器

    rpm -q   軟件名...        //查看軟件是否安裝

    rpm -ivh 軟件名-版本信息.rpm...      //安裝軟件

    rpm -e   軟件名...      //卸載軟件

舉例:

    [root@server0 ~]# rpm -q vsftpd     #查看vsftpd軟件包是否安裝

    [root@server0 ~]# rpm -ivh /dvd/Packages/vsftpd-3.0.2-22.el7.x86_64.rpm 

    [root@server0 ~]# rpm -e vsftpd     #卸載軟件包

 

瞭解內容:導入紅帽光盤包的簽名信息

    [root@server0 ~]# rpm --import /dvd/RPM-GPG-KEY-redhat-release 

 

Yum軟件包倉庫配置及使用自動解決依賴關係

服務:爲客戶端自動解決依賴關係,並且安裝軟件

服務端虛擬機classroom 搭建完成Web服務,共享光盤所有內容

驗證:瀏覽器中http://classroom.example.com/content/rhel7.0/x86_64/dvd/

 

客戶端:虛擬機server

    修改配置文件,指定服務端位置/etc/yum.repos.d/*.repo

    注:正確的文件與錯誤的文件會相互影響

    [root@server0 ~]# rm -rf /etc/yum.repos.d/*      //清空yum源目錄

    [root@server0 ~]# vim /etc/yum.repos.d/dvd.repo

        [rhel7]                          #倉庫標識

        name=nsd rhel7          #倉庫描述信息

        baseurl=http://classroom.example.com/content/rhel7.0/x86_64/dvd/     #服務端具體位置路徑

        enabled=1                                                            #是否啓用該文件

        gpgcheck=0                                                         #是否檢測軟件包簽名信息

    [root@server0 ~]# yum repolist                                #列出倉庫信息

    [root@server0 ~]# yum -y install httpd                     #安裝軟件

    [root@server0 ~]# yum list sssd                                #列軟件

    [root@server0 ~]# yum  remove  軟件名      #卸載軟件 

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

 

配置網絡地址

永久配置主機名 

    [root@server0 ~]# vim /etc/hostname

配置IP地址

網卡配置文件:/etc/sysconfig/network-scripts/ifcfg-eth0

連接管理:nmcli    

1.查看nmcli命令識別的網卡名字

    [root@A ~]# nmcli connection show

2.配置ip地址

    [root@server0 ~]# nmcli connection modify 'System eth0'   \

                   > ipv4.method manual  \                               

                   > ipv4.addresses '172.25.0.110/24 172.25.0.254'   \      

                   > connection.autoconnect yes

格式:

    #nmcli 連接網絡配置 '網卡識別的名字'       

    #ipv4.method 配置ip地址的方法  //auto自動獲取 manual手工配置

    #ipv4.addresses 'ip地址/子網掩碼 網關地址'         

    #connection.autoconnect yes      //每次開機自動啓用

3.激活配置

    [root@server0 ~]# nmcli connection up 'System eth0'

    [root@server0 ~]# ifconfig    #查看ip地址

    [root@server0 ~]# route       #查看網關地址   gateway

DNS-Domain Name Server服務器配置

作用: 域名解析爲對應IP地址

DNS服務器虛擬機classroom

配置文件: /etc/resolv.conf 

 

虛擬機Server

    [root@server0 ~]# vim /etc/resolv.conf 

    nameserver  172.25.254.254

    [root@server0 ~]# nslookup desktop0.example.com

 

查找文本內容

根據字符串模式提取文本行

    grep [選項] '匹配模式'    文本文件...

    -v,取反匹配

    -i,忽略大小寫

    [root@server0 ~]# grep 'root'  /etc/passwd

    [root@server0 ~]# grep -i 'ROOT'  /etc/passwd   #忽略大小寫

    [root@server0 ~]# grep -v 'root'  /etc/passwd   #不要包含root

    ^word  以字符串word開頭

    word$  以字符串word結尾

    [root@server0 ~]# grep '^root' /etc/passwd    #root開頭的行

    [root@server0 ~]# grep 'root$' /etc/passwd    #root結尾的行

重定向輸出

    > : 覆蓋重定向      #將前面命令的輸出,寫入文本文件中自帶touch功能

    >> : 追加重定向  

    [root@server0 ~]# grep 'bash$' /etc/passwd > /opt/nsd.txt

    [root@server0 ~]# hostname  >>  /opt/1.txt 

echo  字符串輸出

  [root@server0 ~]# echo hello world

  [root@server0 ~]# echo 123456 > /opt/1.txt

  [root@server0 ~]# echo server0.example.com >  /etc/hostname

  [root@server0 ~]# echo nameserver 172.25.254.254 > /etc/resolv.conf

 

管理用戶和組

唯一標識: UID 編號 GID 編號

管理員用戶rootUID 0

普通用戶UID:從UID 1000

組:基本組(私有組)  附加組(從屬組 公共組)   

 

添加用戶

用戶基本信息存放在 /etc/passwd 文件

    [root@server0 ~]# head -1 /etc/passwd

    root:x:0:0:root:/root:/bin/bash

    用戶名:密碼佔位符:UID:GID:用戶描述信息:家目錄:解釋器程序(shell)

useradd  添加用戶命令

常用命令選項

    -u 用戶id-d 家目錄路徑、-s 登錄Shell解釋器 、-G 附加組、-g 基本組

    [root@server0 ~]# useradd -d /mnt/abc nsd06        #指定家目錄創建用戶

    [root@server0 ~]# useradd -u 1100 nsd02               #指定UID創建用戶

    [root@server0 ~]# useradd -s /sbin/nologin nsd07  #指定解釋器,禁止用戶登陸操作系統

    [root@server0 ~]# groupadd tarena                        #創建tarena

bc Linux計算器  

    [root@server0 ~]# bc

    1+1         #加法

    2*3          #乘法

    10/3        #除法

    10%3       #取餘數運算,餘數一定小於被除數

    [root@server0 ~]# quit  #退出計算器

管道操作  |

作用:將前面命令的輸出結果,交由後面命令處理,最後輸出最後命令的結果

    [root@server0 ~]# cat -n /etc/passwd | head -12 | tail -5

    [root@server0 ~]# ifconfig | head -2

    [root@server0 ~]# grep 'root' /etc/passwd | grep 'bash'

 passwd:密碼設置命令

 用戶密碼信息存放在 /etc/shadow 文件

    [root@server0 ~]# passwd harry

    [root@server0 ~]# su - harry         #臨時切換用戶身份

    [harry@server0 ~]$ passwd          

    [root@server0 ~]# echo 123 | passwd --stdin harry   #非交互式設置密碼

usermod  更改用戶信息

    -u 用戶id-d 家目錄路徑、-s 登錄Shell解釋器、-G 附加組、-g 基本組

    [root@server0 ~]# usermod -u 1300 -d /opt/abc -s /sbin/nologin -G root natasha

    [root@server0 ~]# grep 'natasha' /etc/passwd

    [root@server0 ~]# id natasha

補充: 也可以vim修改/etc/passwd 文件內容更改用戶信息

userdel  刪除用戶

    -r:連同用戶家目錄一併刪除

    [root@server0 ~]# userdel -r nsd01

管理組賬號

組基本信息存放在 /etc/group 文件

    [root@server0 ~]# groupadd stugrp

    [root@server0 ~]# tail -1 /etc/group

    stugrp:x:1002:

    組名:組的密碼佔位符:本組的GID編號:本組成員的列表

    [root@server0 ~]# useradd kenji 

使用gpasswd命令

    gpasswd -a 用戶名 組名     #用戶加入組

    gpasswd -d 用戶名 組名     #從組中刪除用戶

    [root@server0 ~]# gpasswd -a kenji stugrp

    [root@server0 ~]# gpasswd -d tom stugrp

    [root@server0 ~]# grep 'stugrp' /etc/group

groupdel  刪除組命令

    [root@server0 ~]# groupadd stugrp    //刪除組stugrp

 

tar備份與恢復

歸檔的含義

    將許多零散的文件整理爲一個文件

    文件總的大小基本不變

壓縮的含義

    按某種算法減小文件所佔用空間的大小

    恢復時按對應的逆向算法解壓

 

Linux獨有的壓縮工具 

    gzip -------> *.gz

    bzip2 ------> *.bz2

    xz ----------> *.xz

    [root@server0 opt]# gzip /opt/group 

    [root@server0 opt]# bzip2 /opt/passwd 

    [root@server0 opt]# xz /opt/shadow 

tar 集成備份工具

    tar  [選項] tar包名字  被歸檔的文件

    [root@server0 /]# tar -cPf test01.tar  /home/  /mnt/

    [root@server0 /]# tar -xf /opt/file01.tar -C /nsd/


    -c:創建歸檔   -P:保持路徑不變進行歸檔   -f:指定歸檔包的名字

    -x: 釋放歸檔  -C:指定釋放位置       -t:查看tar包內容

     [root@server0 /]# tar -tf /root/test.tar     #查看tar包裏面內容

     [root@server0 /]# tar -xPf /root/test.tar    #絕對路徑釋放


    -z-j-J : 調用 .gz.bz2.xz 格式的工具進行處理

    [root@server0 ~]# tar -zcPf /opt/nsd.tar.gz  /home/

    [root@server0 ~]# tar -jcPf /opt/abc.tar.bz2  /home/

    [root@server0 ~]# tar -JcPf /opt/home.tar.xz  /home/

    [root@server0 ~]# tar -xf /opt/nsd.tar.gz -C /mnt/

 

查看日期時間

    [root@server0 ~]# date

    2018年 03月 14日 星期三 17:21:38 CST

    [root@server0 ~]# date +%F          #顯示年--

    [root@server0 ~]# date +%Y          #顯示年

    [root@server0 ~]# date +%m         #顯示月

    [root@server0 ~]# date +%d          #顯示當天是多少號

    [root@server0 ~]# date +%H          #顯示時

    [root@server0 ~]# date +%M         #顯示分

修改時間

    [root@server0 ~]# date -s "--日 時:分:秒"

 

NTP時間同步

NTP-Network Time Protocol網絡時間協議

NTP服務器爲客戶機提供標準時間

NTP客戶機需要與NTP服務器保持溝通

    服務端:服務端軟件,classroom.example.com  NTP服務器

    客戶端:客戶端軟件.虛擬機server

1.安裝客戶端同步時間的軟件chrony

    [root@server0 ~]# yum -y install chrony      

2.修改配置文件指定服務端位置

    [root@server0 ~]# vim /etc/chrony.conf

    server classroom.example.com iburst

3.重啓服務

   [root@server0 ~]# systemctl restart chronyd   #重起服務

   [root@server0 ~]# systemctl enable chronyd    #開機啓動

4.驗證:

   [root@server0 ~]# systemctl restart chronyd

   [root@server0 ~]# date

 

cron計劃任務

用途:按照設置的時間間隔爲用戶反覆執行某一項固定的系統任務

軟件包:croniecrontabs  系統服務:crond  日誌文件:/var/log/cron

編寫crontab任務記錄

    * * * * * COMMAND

    分 時 日 月 周 命令

    *:匹配範圍內任意時間    ,:分隔多個不連續時間點

    -:制定連續的時間範圍    /n:指定時間頻率

 

使用crontab命令

crontab -e [-u 用戶名]

    [root@server0 ~]# crontab -e -u root

    *  *  *  *  *    date >> /opt/time.txt

    [root@server0 ~]# cat /opt/time.txt

 

find 按條件查找文件

根據預設的條件遞歸查找對應的文件

find [目錄] [條件1] [-a|-o] [條件2] ...

    -type 類型(f文件、d目錄、l快捷方式)

    -name "文檔名稱"

    -size +|-文件大小(kMG)

    -user 所有者

    -group 所屬組

    [root@server0 ~]# find /boot/ -type l     #查找是快捷方式

    [root@server0 ~]# find /boot/ -type d     #查找是目錄

    [root@server0 ~]# find /boot/ -type f     #查找是文本文件

    [root@server0 ~]# find /root/ -name "nsd*"  #文件名稱查找

    [root@server0 ~]# find /boot/ -size +300k   #文件大小查找

    [root@server0 ~]# find / -user wangwu       #用戶名稱查找


舉例:請顯示/etc目錄下以.conf結尾的?(包含子目錄)

    [root@server0 ~]# find /etc  -name  "*.conf"

舉例:請顯示/etc目錄下以.conf結尾的?(不包含子目錄)

    [root@server0 ~]# ls /etc/*.conf


使用find命令的-exec 操作

    find .. .. -exec 處理命令 {} \;

    優勢{} 代替每一個結果,逐個處理\; 結束

    [root@server0 ~]# find /boot/ -size +300k -exec cp -r {} /opt \;

    [root@server0 ~]# find / -user student -type f -exec cp {} /root/findfile \;

 根據名稱查找忽略大小寫

    -iname

    [root@server0 ~]# find /etc/ -name "PASSWD"

    [root@server0 ~]# find /etc/ -iname "PASSWD"

根據賬號名稱或所屬組

    -user-group

    [root@server0 ~]# find /home/ -group student

限制目錄查找的深度(最大層數)

    -maxdepth

    [root@server0 ~]# find /etc/ -maxdepth  1  -name  "*.conf"

    [root@server0 ~]# find /etc/ -maxdepth  2  -name  "*.conf"

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