1. 程式人生 > >linux計算機基礎 Day05

linux計算機基礎 Day05


• 每個學員機上有三臺預先配置好的虛擬機器
– server —— 作為練習用伺服器
– desktop —— 作為練習用客戶機
– classroom —— 提供閘道器/DNS/軟體素材/DHCP等資源 真機:還原與啟動優先虛擬機器classroom  
[[email protected] ~]# rht-vmctl reset classroom
[[email protected] ~]# rht-vmctl reset server
[[email protected] ~]# rht-vmctl reset desktop ################################################
重定向操作:將前面命令輸出,作為內容寫入到文字檔案
 
    >
: 覆蓋重定向
    >> : 追加重定向
[[email protected] ~]# ls --help  > /opt/ls.txt
[[email protected] ~]# less /opt/ls.txt [[email protected] ~]# hostname
[[email protected] ~]# hostname > /opt/ls.txt
[[email protected] ~]# cat /opt/ls.txt [[email protected]
~]# hostname >> /opt/ls.txt
[[email protected] ~]# cat /opt/ls.txt
[[email protected] ~]# echo 123456      
123456
[[email protected] ~]# echo 123456 >> /opt/ls.txt
[[email protected] ~]# cat /opt/ls.txt [[email protected] ~]# echo A.tedu.cn > /etc/hostname
[
[email protected]
~]# hostname ]# echo nameserver 172.25.254.254 > /etc/resolv.conf
]# cat /etc/resolv.conf #################################################
檢視時間: date
[[email protected] ~]# date
2018年 11月 05日 星期一 09:52:10 CST
[[email protected] ~]# date +%F      #檢視年月日 修改時間:
[[email protected] ~]# date -s "年-月-日    時:分:秒"
[[email protected] ~]# date -s "2000-10-1 12:00"
2000年 10月 01日 星期日 12:00:00 CST
[[email protected] ~]# date
2000年 10月 01日 星期日 12:00:02 CST 計算器:bc  加  +    減 -     乘 *   除 /    求模運算(取餘數運算)   % [[email protected] ~]# bc
  Ctrl + c  退出 #################################################
  | 管道操作 : 
        將前面命令的輸出,傳遞到後面命令,作為後面命令的引數,再進行處理 ]# head -12 /etc/passwd  |  tail -5
]# cat -n /etc/passwd | head -12 | tail -5
]# ls --help | less
]# ls --help | grep A
]# echo 1+1 | bc
]# echo 3*8 | bc
]# ifconfig | head -2 ###############################################
管理使用者和組                使用者賬戶: 1.能夠登陸作業系統    2.不同使用者,可以設定不同許可權
  組賬戶:   方便管理使用者 
                  將想要具備相同許可權的使用者加入一個組,為組設定許可權,組中所有使用者自動繼承組的許可權
  
  唯一標識:UID  GID   管理員root的UID為0   組:基本組(私有組)  附加組(從屬組)
 Linux一個使用者至少屬於一個組    基本組:由系統建立該組,與使用者同名。由系統將使用者加入該組
   附加組:由管理員建立該組,隨意命名。由管理員將使用者加入該組 ################################################ 新增使用者
使用者基本資訊存放在 /etc/passwd 檔案
  [[email protected] ~]# head -1 /etc/passwd
  root:x:0:0:root:/root:/bin/bash  使用者名稱:密碼佔位符:UID:使用者基本組GID:使用者描述資訊:家目錄:直譯器 • 使用 useradd 命令
– useradd [選項]... 使用者名稱
• 常用命令選項
-u 使用者id、-d 家目錄路徑、-G 附加組、-s 登入直譯器程式
[[email protected] ~]# useradd nsd01
[[email protected] ~]# grep nsd01 /etc/passwd
 使用者名稱:密碼佔位符:UID:使用者基本組GID:使用者描述資訊:家目錄:直譯器 [[email protected] ~]# id nsd01     #檢視使用者基本資訊
uid=1004(nsd01) gid=1004(nsd01) 組=1004(nsd01)
[[email protected] ~]# id haha [[email protected] ~]# useradd nsd02
[[email protected] ~]# grep nsd02 /etc/passwd
[[email protected] ~]# id nsd02
[[email protected] ~]# id xixi  -u 使用者id、-d 家目錄路徑、-G 附加組
[[email protected] ~]# useradd -u 1600 nsd03
[[email protected] ~]# grep nsd03 /etc/passwd
[[email protected] ~]# id nsd03 [[email protected] ~]# useradd nsd04
[[email protected] ~]# grep nsd /etc/passwd [[email protected] ~]# useradd -d /mnt/nsd05 nsd05
[[email protected] ~]# grep nsd05 /etc/passwd
[[email protected] ~]# ls /mnt/ [[email protected] ~]# groupadd tarena     #建立組tarena
[[email protected] ~]# useradd -G tarena nsd06
[[email protected] ~]# id nsd06 -s 登入直譯器程式                           /sbin/nologin :禁止使用者登陸作業系統 [[email protected] ~]# useradd -s /sbin/nologin  nsd07
[[email protected] ~]# grep nsd07 /etc/passwd [[email protected] ~]# useradd -s /sbin/nologin  nsd08
[[email protected] ~]# grep nsd08 /etc/passwd ################################################
設定使用者密碼 [[email protected] ~]# passwd  nsd01
更改使用者 nsd01 的密碼 。
新的 密碼:                     #輸入密碼
無效的密碼: 密碼少於 8 個字元
重新輸入新的 密碼:           #輸入密碼
passwd:所有的身份驗證令牌已經成功更新。
[[email protected] ~]# su - nsd01  #命令列臨時切換身份
[[email protected] ~]$ passwd
Changing password for user nsd01.
Changing password for nsd01.
(current) UNIX password:          #輸入舊密碼
New password:                     #輸入新密碼
Retype new password:              #重新輸入新密碼
passwd:allauthentication tokens updated successfully
[[email protected] ~]$ exit      #退出回到root
logout
[[email protected] ~]# 非互動式設定密碼
– echo '密碼'   |    passwd  --stdin 使用者名稱 [[email protected] ~]# echo 123 | passwd --stdin nsd01 [[email protected] ~]# echo abc | passwd --stdin nsd01 [[email protected] ~]# echo redhat | passwd --stdin nsd01 [[email protected] ~]# echo 789 | passwd --stdin nsd01 使用者密碼資訊存放在 /etc/shadow 檔案 [[email protected] ~]# head -1 /etc/shadow  
root:$6$UiGI4Tc2$htsXYn5cJnOqv3P1VLcUSgfjDu2pL5yiJBuua6foZAHdwqeuLHfYUfS/vBn27Wjvoel8EJgtdsMjyquqvKAmf1:16261:0:99999:7:::  使用者名稱:密碼加密字串:上一次修改密碼時間 上一次修改密碼時間:1970-1-1~2018-11-1 ##################################################
修改使用者屬性
• 使用 usermod 命令
usermod [選項]... 使用者名稱
• 常用命令選項
-u 使用者id、-d 家目錄路徑、-s 登入Shell
– -G 附加組 [[email protected] ~]# useradd nsd09
[[email protected] ~]# id nsd09
[[email protected] ~]# grep nsd09 /etc/passwd [[email protected] ~]# usermod -u 1700 -d /mnt/abc -G tarena -s /sbin/nologin   nsd09 [[email protected] ~]# grep nsd09 /etc/passwd
[[email protected] ~]# id nsd09 ############################################# 刪除使用者
• 使用 userdel  命令        #刪除使用者,保留家目錄
– userdel [-r] 使用者名稱    #刪除使用者,摧毀家目錄 [[email protected] ~]# userdel -r alex
[[email protected] ~]# id alex
id: alex: no such user [[email protected] ~]# userdel nsd01
[[email protected] ~]# ls  /home/
[[email protected] ~]# id  nsd01 [[email protected] ~]# userdel nsd02
[[email protected] ~]# ls  /home/
[[email protected] ~]# id  nsd02 [[email protected] ~]# userdel nsd03
[[email protected] ~]# ls  /home/
[[email protected] ~]# id  nsd03 ################################################
管理組賬號 新增組 組基本資訊存放在 /etc/group 檔案
[[email protected] ~]# grep stugrp /etc/group
 stugrp:x:1609:
  組名:組的密碼佔位符:組的GID:組的成員列表 • 使用 groupadd 命令
groupadd [-g 組ID]  組名 [[email protected] ~]# groupadd stugrp
[[email protected] ~]# grep stugrp /etc/group [[email protected] ~]# useradd harry
[[email protected] ~]# useradd natasha
[[email protected] ~]# useradd kenji
[[email protected] ~]# useradd jack   管理組成員
組成員資訊存放在 /etc/shadow 檔案
• 使用 gpasswd 命令
– gpasswd -a 使用者名稱   組名
– gpasswd -d 使用者名稱   組名 [[email protected] ~]# gpasswd -a harry stugrp
[[email protected] ~]# grep stugrp /etc/group [[email protected] ~]# gpasswd -a kenji stugrp
[[email protected] ~]# grep stugrp /etc/group [[email protected] ~]# gpasswd -a jack stugrp
[[email protected] ~]# grep stugrp /etc/group [[email protected] ~]# gpasswd -d kenji stugrp
[[email protected] ~]# grep stugrp /etc/group [[email protected] ~]# gpasswd -a natasha stugrp
[[email protected] ~]# grep stugrp /etc/group ################################################
修改組屬性                                          
• 使用 groupmod 命令
– groupmod [-g 組ID] [-n 新組名] 組名
[[email protected] ~]# groupmod -g 1100 market
刪除組
使用 groupdel 命令
– groupdel 組名 ################################################## tar備份與恢復 歸檔和壓縮
• 歸檔的含義
– 將許多零散的檔案整理為一個檔案
– 檔案總的大小基本不變 • 壓縮的含義
– 按某種演算法減小檔案所佔用空間的大小
– 恢復時按對應的逆向演算法解壓  Linux獨有的壓縮格式
    gzip -----》.gz
    bzip2 -----》.bz2
    xz  -----》.xz
tar可以達到歸檔及壓縮  打包格式:
  tar  選項    /路徑/壓縮包的名字    /路徑/被壓縮的源文件 ......  解包格式:
  tar  選項    /路徑/壓縮包的名字   -C  釋放的路徑
• tar 整合備份工具                   
– -c:建立歸檔
– -x:釋放歸檔
– -f:指定歸檔檔名稱,必須在所有選項的最後
– -z、-j、-J:呼叫 .gz、.bz2、.xz 格式的工具進行處理
– -t:顯示歸檔中的檔案清單
– -C:釋放的路徑 ]# rm -rf /opt/*
]# tar -zcf /opt/nsd01.tar.gz /home/  /etc/passwd
]# ls /opt/
    
]# tar -jcf /opt/test.tar.bz2 /home/ /etc/passwd
]# ls /opt/ ]# tar -Jcf /opt/file.tar.xz /home/  /etc/passwd
]# ls /opt/ 使用 tar 工具完成以下備份任務:
– 建立一個名為 /root/backup.tar.bz2 的歸檔檔案
– 其中包含 /usr/local 目錄中的內容
– tar 歸檔必須使用 bzip2 進行壓縮 ]# tar -jcf /root/backup.tar.bz2    /usr/local/
]# ls /root/
 解包格式:
  tar  選項    /路徑/壓縮包的名字   -C  釋放的路徑 [[email protected] ~]# date
[[email protected] ~]# date -s "2018-11-5  16:53" ]# tar -xf /opt/nsd01.tar.gz   -C   /mnt/
]# ls /mnt/
]# ls /mnt/etc/
]# ls /mnt/home/ ############################################### 檢視包裡的內容
]# tar -tf /opt/test.tar.bz2
]# tar -tf /root/backup.tar.bz2 ###########################################
NTP時間同步
• Network Time Protocol
– NTP伺服器為客戶機提供標準時間
– NTP客戶機需要與NTP伺服器保持溝通   NTP伺服器:虛擬機器classroom   NTP客戶機:虛擬機器server    1 .安裝chrony軟體,專用於與NTP伺服器溝通
  [[email protected] ~]# rpm -q chrony
  chrony-1.29.1-1.el7.x86_64    2.配置檔案: /etc/chrony.conf
  [[email protected] ~]# vim /etc/chrony.conf
     以#開頭的行,大多數為註釋行
     #server 0.rhel.pool.ntp.org iburst
     #server 1.rhel.pool.ntp.org iburst
     #server 2.rhel.pool.ntp.org iburst
     server classroom.example.com iburst     3 .重起服務chronyd 重新整理配置  
    daemon:守護程式    ]# systemctl restart chronyd    #重新起動服務
   ]# systemctl enable chronyd     #開機自動啟動    4.驗證:
   ]# date
   ]# date -s "2000-10-1 12:12:12"  #修改錯誤時間
   ]# date
   ]# systemctl restart chronyd   #重起服務進行時間同步
   ]# date
   ]# date
   ]# date     檢視檔案內容是否有誤
  [[email protected] ~]# vim /etc/chrony.conf #################################################