第一章:硬件與系統(tǒng)
1.簡述Centos7 常見運(yùn)行級(jí)別
Centos7 中有7個(gè)運(yùn)行級(jí)別,常用的運(yùn)行級(jí)別為 多用戶模式,即:multi-user.target 運(yùn)行級(jí)別 2 3 4 都是多用戶模式,也是大部分服務(wù)器使用的 運(yùn)行級(jí)別5是圖形化模式 運(yùn)行級(jí)別0 是關(guān)機(jī) 6 是重啟 1是救援模式
2.簡述Cetnos7與 Centos6 的啟動(dòng)流程與不同
Cetnos6
特點(diǎn): 串行啟動(dòng)
第一步:打開電源-開機(jī)自檢-顯示服務(wù)器LOGO,自檢主要檢查硬件,這一步可以選擇U盤啟動(dòng),硬盤啟動(dòng),或者光盤啟動(dòng)
第二步:MBR 引導(dǎo),引導(dǎo)硬盤啟動(dòng)
第三步:讀取GRUB 菜單,菜單中選擇不同內(nèi)核,如果系統(tǒng)更新了,菜單中就會(huì)有多個(gè)選擇
第四步:加載內(nèi)核 讀取/boot 加載到內(nèi)存
第五步:運(yùn)行INIT 進(jìn)程,系統(tǒng)第一個(gè)進(jìn)程 Centos6 第一個(gè)進(jìn)程
第六步:讀取運(yùn)行級(jí)別,/etc/inittab
第七步:初始化系統(tǒng),設(shè)置主機(jī)名,啟動(dòng)網(wǎng)卡,開機(jī)自動(dòng)掛載等等操作 讀取/etc/rc/sysinit 初始化系統(tǒng)
第八步:啟動(dòng)mingetty顯示登陸界面,運(yùn)行l(wèi)ogin登陸見面
Centos7
特點(diǎn):并行啟動(dòng)
第一步:打開電源-開機(jī)自檢-顯示服務(wù)器LOGO,自檢主要檢查硬件,這一步可以選擇U盤啟動(dòng),硬盤啟動(dòng),或者光盤啟動(dòng)
第二步:MBR 引導(dǎo),引導(dǎo)硬盤啟動(dòng)
第三步:讀取GRUB 菜單,菜單中選擇不同內(nèi)核,如果系統(tǒng)更新了,菜單中就會(huì)有多個(gè)選擇,Centos6中GRUB 菜單可以進(jìn)入單用戶模式,Centos7中叫做救援模式
第四步:加載內(nèi)核 讀取/boot 加載到內(nèi)存
第五步:運(yùn)行systemd 進(jìn)程
第六步:讀取運(yùn)行級(jí)別 /etc/systemd/system/default.target
第七步:初始化系統(tǒng) /usr/lib/systemd/system/sysinit.target
第八步:并行執(zhí)行,啟動(dòng)服務(wù)
第九步:運(yùn)行/usr/lib/systemd/system/getty.target 顯示login登陸見面
區(qū)別:
4.簡述常見raid級(jí)別與企業(yè)應(yīng)用場景
5. 簡書企業(yè)磁盤常見分區(qū)規(guī)則
第一種:數(shù)據(jù)重要
swap分區(qū)按照通用 boot分區(qū)按照通用 根分區(qū)給 20-200G 剩余容量給/date目錄 存放數(shù)據(jù) 數(shù)據(jù)庫文件不能丟
第二種:數(shù)據(jù)不重要
swap分區(qū)按照通用 boot分區(qū)按照通用 剩余全部給根分區(qū)
第三種:不知道數(shù)據(jù)重不重要
swap分區(qū)按照通用 boot分區(qū)按照通用 根分區(qū) 20-200G ,剩余部分,誰需要誰分 用于大型公司,服務(wù)器數(shù)量巨大
6. 什么是inode 什么是block
inode
inode 索引節(jié)點(diǎn)號(hào),系統(tǒng)就是通過inode節(jié)點(diǎn)號(hào)訪問文件,indoe分為兩部分,一部分是inode節(jié)點(diǎn)號(hào),在一個(gè)分區(qū)內(nèi)是唯一的,類似身份證號(hào)碼, 第二部分是indoe空間,里邊存放著文件的一些屬性:類型,權(quán)限,所有者,時(shí)間,大小,硬鏈接數(shù),block位置
注意: 文件名不在inode空間中,文件名不是文件屬性
block 叫做數(shù)據(jù)塊,用來存放文件內(nèi)容
7. 簡述軟硬鏈接的區(qū)別
- 創(chuàng)建方法不同
軟鏈接創(chuàng)建方式
ln -s oldboy.txt oldboy.txt.soft
硬鏈接創(chuàng)建方式
ln oldboy.txt oldboy.txt.hard
- 含義
軟鏈接 相當(dāng)與windows中的快捷方式,方便訪問,與原文件inode號(hào)碼不同,是一種新的文件類型
硬鏈接 在同一分區(qū)下,與原文件inode號(hào)相同,相當(dāng)與原文件的另一個(gè)入口,防止文件誤刪除,類似備份。
- 特點(diǎn)
不能對目錄創(chuàng)建硬鏈接,但可以創(chuàng)建軟鏈接,對目錄的軟鏈接經(jīng)常用戶到
軟鏈接可以跨越文件系統(tǒng)(跨分區(qū)),硬鏈接不可以跨文件系統(tǒng)
4.原文件,軟鏈接,硬鏈接的關(guān)聯(lián)
1.刪除軟鏈接,對原文件與硬鏈接無影響
2.刪除文件硬鏈接,對原文件與硬鏈接無影響
3.刪除鏈接文件的原文件,軟鏈接失效(紅底白字閃爍),對硬鏈接無影響
4.同時(shí)刪除文件原文件與硬鏈接,文件才會(huì)被真正刪除
8. etc/fstab每一行含義
第一列:設(shè)備名或者UUID ( UUID查看命令blkid)
第二列:掛載點(diǎn)
第三列:文件系統(tǒng)
第四列:掛載參數(shù)
第五列:開機(jī)是否自動(dòng)備份
第六列:開機(jī)是否自動(dòng)檢查
注意:Centos7 中boot / swap 都檢查,Centos6 中只有/ 和 boot 檢查
9. 簡單概述虛擬機(jī)上不了網(wǎng)有那些原因
第一種:虛擬網(wǎng)卡未啟動(dòng)
第二種:網(wǎng)卡配置文件是否正確,網(wǎng)卡是是否開機(jī)啟動(dòng)
第三種:Centos7中,檢查是否關(guān)閉NetworkManager
第四種:虛擬機(jī)系統(tǒng)服務(wù)DHCP等服務(wù)是否啟動(dòng)
第五種:IP 沖突
第六種:虛擬機(jī)-虛擬網(wǎng)絡(luò)編輯器配置是否正確
第七種:物理機(jī)網(wǎng)絡(luò)是否通暢
第二章:文件目錄
1. 網(wǎng)卡配置文件
Centos7 /etc/sysconfig/network-scripts/ifcfg-ens33
Centos6 /etc/sysconfig/network-scripts/ifcfg-ens0
2. DNS 配置文件
/etc/resolv.conf
/etc/sysconfig/network-scripts/ifcfg-ens33
/etc/sysconfig/network-scripts/ifcfg-ens0
3. 系統(tǒng)日志
日志在排查文件的時(shí)候至關(guān)重要,在Linux上一般跟系統(tǒng)相關(guān)的日志默認(rèn)都會(huì)放到/var/log下面。
- /var/log/boot.log
一般包含系統(tǒng)啟動(dòng)時(shí)的日志,包括自啟動(dòng)的服務(wù)。
- /var/log/cron
cron計(jì)劃任務(wù)的日志,每當(dāng)cron任務(wù)被執(zhí)行的時(shí)候都會(huì)在這個(gè)文件里面記錄。
- /var/log/message
包括整體系統(tǒng)信息,其中也包含系統(tǒng)啟動(dòng)期間的日志。此外,mail,cron,daemon,kern和auth等內(nèi)容也記錄在var/log/messages日志中。
- /var/log/secure
包含驗(yàn)證和授權(quán)方面信息。例如,sshd會(huì)將所有信息記錄(其中包括失敗登錄)在這里。
- /var/log/yum.log
包含使用yum安裝軟件包的信息。
- /var/log/anaconda/ 目錄 或者 /var/log/anconda.log
包含在安裝CentOS/RHEL時(shí)候的日志。
- /var/log/cups
涉及所有打印信息的日志,即cups打印服務(wù)運(yùn)行的日志。
4. 登錄日志
/var/log/secure
包含驗(yàn)證和授權(quán)方面信息。例如,sshd會(huì)將所有信息記錄(其中包括失敗登錄)在這里。
5. 系統(tǒng)環(huán)境變量
etc/profile
6. 本地域名解析文件
/etc/hosts
7. 用戶名與密碼解析文件
/etc/passwd
/etc/shadow
8. 開機(jī)自啟動(dòng)文件
/etc/rc.d/rc.local
9. 開機(jī)自動(dòng)掛載
/etc/fstab
10. 用戶組信息文件
/etc/group
11. 簡述一以下文件/目錄的功能
- /dev
存放設(shè)備文件,硬盤,光盤等
- /etc/rc.local
開機(jī)啟動(dòng)命令
- /etc/ininttab
存放運(yùn)行級(jí)別的文件
- /var/log/secure
包含驗(yàn)證和授權(quán)方面信息。例如,sshd會(huì)將所有信息記錄(其中包括失敗登錄)在這里。
- /mnt
臨時(shí)掛載點(diǎn)
- /var/log/cron
cron計(jì)劃任務(wù)的日志,每當(dāng)cron任務(wù)被執(zhí)行的時(shí)候都會(huì)在這個(gè)文件里面記錄。
- /proc/loadavg
- /proc/cpuinfo
存放cpu相關(guān)信息
第三章:命令
- 創(chuàng)建目錄/oldboy/test
mkdir -p /oldboy/test
- 在/oldboy/test/目錄創(chuàng)建file01.txt到file10.txt的10個(gè)文件
touch /oldboy/test/file{01..10}.txt
- 查找/etc目錄下,以 .txt 結(jié)尾的,修改時(shí)間在7天前,大于1k的文件復(fù)制到 /tmp 下(兩種方法)
find /etc/ -type f -name '*.txt' -mtime +7 -size +1k | xargs cp -t /tmp
find /etc/ -type f -name '*.txt' -mitime +7 -size +1k -exec cp -t /tmp {} \ ;
- 查找/etc目錄下,以.txt結(jié)尾的,修改時(shí)間在7天前的,大于1k的文件打包壓縮到/tmp/并且以時(shí)間命名(兩種方法)
find /etc/ -type f -name '*.txt' -mtime +7 -size +1k | xargs tar -zcvf /tmp/`date +%F`.tar.gz
find /etc/ -type f -name '*.txt' -mitime +7 -size +1k -exec tar -zcvf /tmp/`date +%F`.tar.gz {} \;
- 將test.tar.gz 解壓縮到/root
tar -zxvf tar.gz -C /root
- 取出IP (三種方法)
1 hostname -I
2 ip a s eth0 | sed -n '3p' | sed 's#^.*t ##g' | sed 's#/.*$##g'
3 ip a s eth0 | awk '{print $2}'| awk NR==3 | awk -F / '{print $1}'
4 ip a s eth0 | sed -n '3p' | sed -r 's#^.*t (.*)/.*$#\1#g'
- 取出/tmp/file.txt 文件的權(quán)限(如0644)(三種)
stat file01.txt | sed -n '4p' | sed 's#^.*s: (##g' | sed 's#/-.*$##g'
stat file01.txt |awk 'NR==4' | awk -F\( '{print $2}' | awk -F/ '{print $1}'
stat file01.txt | sed -n '4p' | egrep -o '[0-7]{4}'
- 將/etc/passwd 最后一列與第一列調(diào)換位置
- 將oldboy/file.txt 文件中的所有oldboy替換成oldgirl 同時(shí)將 000 替換成 666
tr oldboy oldgirl /oldboy/file.txt
- 統(tǒng)計(jì)/etc/passwd中有幾個(gè)nologin
第四章:用戶與權(quán)限
- 有一文件權(quán)限是 -rw-r--r-- 則該權(quán)限用數(shù)字表示是什么,所有者,同用戶組,其他用戶對該文件都有什么權(quán)限
r read 4 w write 2 x executable 1
rw- r-- r-- 644
所有者權(quán)限為 讀寫,同用戶組合其他用戶都只有讀(read)權(quán)限
- 什么是超級(jí)用戶,什么是虛擬用戶,什么是普通用戶
超級(jí)用戶root,uid gid為0 linux系統(tǒng)中權(quán)限最高的用戶,相當(dāng)與皇帝
虛擬用戶 一些服務(wù)或者程序啟動(dòng)需要的用戶,不需要登陸系統(tǒng),用來支撐服務(wù)或者程序運(yùn)行
普通用戶,相當(dāng)于老百姓
- 將/oldboy/file.txt 權(quán)限修改為 644
chmod 644 /oldboy/file.txt
- 創(chuàng)建用戶組old 指定gid 為1024
groupadd old -g 1024
-
創(chuàng)建用戶boy,指定uid為1024,指定用戶組為old
創(chuàng)建用戶,指定uid 用戶組
第五章:定時(shí)任務(wù)
- 定時(shí)任務(wù)中的五個(gè) * 代表的都是什么含義
時(shí)間格式 格式為 :分 時(shí) 日 月 周
- 每周六凌晨2.15分將/etc/ 以.conf 結(jié)尾的文件打包到/backup 目錄下,并以時(shí)間命名
t=`date +%F-%w`
15 02 * * 06 find /etc/ -type f -name '*.conf' | xargs tar -zchf /backup/$t-bak-conf.tar.gz >dev/null 2>&1
- 每周六凌晨2.15分將/etc/ 以.conf 結(jié)尾的文件打包到/backup 目錄下,并以時(shí)間命名,同時(shí)刪除7天以前的壓縮包
創(chuàng)建一個(gè)腳本 bak.sh
touch /server/scripts/bak.sh
編輯腳本
#!/bin/bash
touch /server/scripts/bak.sh
find /etc/ -type f -name '*.conf' | xargs tar -zchf /backup/$t-bak-conf.tar.gz >dev/null 2>&1
find /backup/ -type f -name '*.tar.gz' -mtime +7 | xargs rm
寫入定時(shí)任務(wù)
15 02 * * 06
sh /server/scripts/bak.sh >/dev/nul 2>&1s
- 每周六凌晨2.15分將/etc/ 以.conf 結(jié)尾的文件打包到/backup 目錄下,并以時(shí)間命名,同時(shí)刪除7天以前的壓縮包但是要保留周一的
find /etc/ -type f -name '*.conf' | xargs tar -zchf /backup/$t-bak-conf.tar.gz >dev/null 2>&1
find /backup/ -type f -name '*.tar.gz' -mtime +7 ! -name '*1-bak*'| xargs rm
15 02 * * 06 sh /server/scripts/bak.sh >/dev/nul 2>&1s