計算機硬件五大單元:
一、輸入
二、輸出
三、控制單元
四、算數邏輯單元
五、內存
CPU種類
一、RISC(Reduced Instruction Set Computing),SPARC、PowerPC、ARM
二、CSIC(Complex Instruction Set Computer),AMD、Intel、VIA等x86架構CPU
Intel主板芯片組
北橋:負責鏈接速度較快的CPU、內存與顯卡
南橋:負責鏈接數獨較慢的周邊接口,包括硬盤、USB、網卡等
AMD與Intel不一樣地方在於,內存是直接與CPU通訊而不經過北橋
CPU外頻:指的是CPU與外部組件進行數據傳輸/運算時的速度,倍頻則是CPU內部用來加速工做性能的一個倍數,二者相乘得出CPU頻率
例如,CPU頻率是3.0GHz,外頻是333MHz,則 倍頻就是9(3.0G=333M*9,其中1G=1000M)
若是想要超頻,能夠將外頻333MHz調成400MHz,但可能會形成不穩定
系統內核(Kernel)
實際上是一組程序,參考硬件規格寫成,重點在於管理計算機全部活動以及驅動系統中的全部硬件,內核程序防止到內存中的區塊是受保護的,而且開機以後就一直常駐於內存當中。
一、系統調用
二、程序管理
三、內存管理
四、文件系統管理
五、設備驅動
操做系統
內核與其提供的接口工具,也可包含相關的用戶應用軟件。例如windows的一大堆API
Linux就是一套操做系統,因爲是開源的,因此具備很是高的「移植性」,N多人來幫助修改兼容
GPL開源協議並不表明沒有商業空間,自由軟件是能夠銷售的,軟件是開源的,可是其中的說明,售後,工具等附加價值就是要收費的了,畢竟軟件不是每一個人都會寫。
Linux系統中,全部文件硬件都被當成一個文件來對待
磁盤每一個扇區爲512bytes,第一個扇區主要記錄了MBR和分區表
MBR:主引導分區,有446bytes
分區表:記錄整塊硬盤分區的狀態,有64bytes,因爲只有64bytes,因此只能容納4個分區,分爲主/擴展分區,擴展分區不能被格式化,要繼續分區成邏輯分區
邏輯分區數量,linux中,IDE最多有59個(5到63號),SATA最多有11個(5到15號)
Ctrl+Alt+F1~F6 文字界面登陸tty1~6終端,F7是圖形界面
在Linux中root的默認提示符爲#,通常身份的提示符爲$,~表明用戶的主文件夾。
通常最好設置兩個帳號,一個通常帳號,須要動用系統功能修改時,纔會轉換身份成爲root
基本命令操做:
用戶用戶組,帳號管理:
groups:有效與支持用戶組查看,第一個輸出爲有效用戶組(新建文件默認用戶組)
newgrp:有效用戶組的切換
useradd:新建用戶
passwd:密碼設置
chage:詳細密碼參數顯示
usermod:用戶參數調整
userdel:刪除用戶相關數據
finger:查閱用戶信息
chfn:修改用戶我的信息
chsh:修改用戶的shell
groupadd:添加用戶組
groupmod:修改用戶組參數
groupdel:刪除用戶組&
gpasswd:用戶組管理員功能(root管理員沒時間,你來)
setfacl:啓動ACL後,單獨設置針對某一用戶或用戶組來對文件設定特定的權限需求
getfacl:獲取啓動ACL後的權限
su:身份切換
sudo:用其餘身份執行命令,並不切換
visudo:編輯其餘帳戶能夠經過sudo執行root權限
w/who:查詢目前已登陸在系統上的用戶
lastlog:獲取每一個帳號的最近登陸時間
write:給別的用戶發消息
mesg:開啓關閉接受其餘用戶發過來的消息
wall:對所用用戶廣播
pwck:檢查/etc/passwd配置文件信息
文件目錄:
切換目錄:cd
顯示目前所在目錄:pwd(print working directory)
新建目錄:mkdir
mkdir -p test1/test2/test3,建立多層目錄
mkdir -m 711 test,建立的時候附加權限
刪除「空」目錄:rmdir
刪除目錄:rm -r test
查看文件與目錄:ls
複製:cp
移動:mv
取得路徑文件名:basename
取得路徑目錄名:dirname
chattr:設置文件的隱藏屬性(只能在Ext2/Ext3的文件系統生效)
lsattr:顯示文件隱藏屬性
文件查閱:
cat(concatenate):從第一行開始顯示問文件內容
tac:從最後一行開始顯示,與cat相反
nl:顯示的時候,順便輸出行號
more:一頁一頁的顯示內容
less:與more相似,能夠翻頁!
head -n 10:只看頭n行
tail:只看結尾幾行
od:以二進制方式讀取文件內容
touch:修改文件時間或建立新文件
umask -s:默認權限,分數的意思是「該默認值須要減去的權限」,0022就是022意思是group和others被去掉了寫權限,r四、w2,x1
file:查看文件類型
which:根據$path路徑去查找「執行文件」的文件名
whereis:查找特定文件,利用數據庫,查找至關快
locate:查找文件,根據/var/lib/mlocate內的數據庫查找,updatedb用來更新這個數據庫,否則新建文件找不到,默認天天會更新一次
find:無敵查找命令,只不過比較慢,參數不少
pringf:格式化打印
awk:數據處理
diff:文件比較(純文本)
patch:使用diff生成的.patch來打補丁
cmp:主要利用「字節比較」,也能夠比較二進制
pr:文件打印準備,比較複雜
文件系統:
df:列出文件系統的總體磁盤使用量
du:評估文件系統的磁盤使用量(經常使用語評估目錄),會直接到文件系統去查找全部的文件數據。
ls -l /lib/modules/$(uname -r)/kernel/fs:
查看Linux支持的文件系統
cat /proc/filesystems:
查看目前已加載到內存中支持的文件系統
dumpe2fs:查看文件系統信息。
ln -[sf]:鏈接文件
fdisk [-l]:磁盤分區(只有root才能執行)
mkfs [-t 文件系統格式] 設備文件名:磁盤格式化
fsck:[-t 文件系統] [-ACay] 設備名稱:檢測文件系統是否出錯
badblocks -[svw] 設備名稱:檢測硬盤或軟盤扇區是否有壞道
mount:掛載磁盤
umount:卸載磁盤
mknod:磁盤參數修改
parted:分區2TB以上的磁盤
mkisofs:製做鏡像文件
cdrecord:光盤刻錄工具
壓縮打包:
compress:已過期的壓縮
gzip:可揭開compress,zip,gzip等軟件壓縮文件
bzip2:比gzip要好的壓縮
tar:相似winrar直接打包壓縮整個目錄,上面的不方便弄。
備份恢復:
dump:-j參數能夠下降備份佔用空間
restore:恢復備份
dd:能夠讀取磁盤設備內容(扇區讀取),其餘指令作不到啊!
cpio:須要搭配find進行備份,它能夠備份任何文件
bash shell:
sh:執行,追蹤,調試腳本
source:在父進程中運行腳本
test:功能測試
type:查詢命令是來自於外部,仍是內置於bash
\[Enter]:若是指令太長,這樣能夠換行繼續輸入
echo $PATH:輸出變量
export:變量輸出爲環境變量
unset:刪除變量
env(environment):列出目前shell環境下的全部環境變量
set:查看全部變量
echo $$:顯示當前shell的pid,$也是變量喲
echo $?:顯示上一個命令的執行結果,0爲正常,其餘爲錯誤代碼
read:讀取來自鍵盤輸入的變量
declare:聲明變量的類型
ulimit:限制用戶的系統資源,包括可打開的文件數量,可以使用的CPU時間,可以使用的內存總量。
alias:別名
unalias:取消別名
history:查詢曾經使用過的命令
source:讀取環境配置文件
stty:終端機環境設置
cmd1&&cmd2:1對,2執行,1錯,2不執行
cmd1||cmd2:1對,2不執行,1錯,2執行
管道命令
cut:切割信息
grep:根據正則表達式,分析信息,提取顯示
sort:排序信息
uniq:將重複的行刪掉,只顯示一個
wc:顯示文件字數,行數,字符數
tee:雙向重定向,轉存輸出到另外一個文件,而其餘命令同時處理
tr:刪除一段信息中的文字,或者替換
col:將tab轉換成對等空格,文字有/時,保留/最後接的字符
join:將兩個文件中相同數據那一行加在一塊兒
paste:與join相似直接將兩行貼在一塊兒,以[TAB]隔開
expand:將[tab]轉換成空格
split:文件切割
xargs:參數帶換,不少命令不支持管道命令,能夠用xargs來提供該命令引用輸入只用。
sed:能夠分析輸入,也能夠將數據進行替換,刪除,新增等
工做調度
at:單一工做調度,最好使用絕對路徑來執行命令
atq:查詢主機有多少個at工做調度
atrm:刪除工做調度
batch:利用at執行任務,可是CPU負載小於0.8時,才執行工做任務
crontab:循環執行工做調度
anacron:喚醒停機期間的工做任務
進程管理
jobs:查看目前的後臺工做狀態
fg:將後臺工做拿到前臺處理
bg:讓工做在後臺下的狀態變成運行中
kill:管理後臺中的工做
nohup:在脫機或註銷以後,還能繼續工做任務
ps:將某個時間點的進程運行狀況選取下來
psaux:查看系統全部進程
top:動態查看進程的變化
pstree:進程樹
nice:新執行的命令即給予新的nice值
renice:已存在進程的nice從新調整
free:查看內存使用狀況
uname:查看系統與內核相關信息
uptime:查看系統啓動時間與工做負載
netstat:跟蹤網絡
dmesg:分析內核產生的信息
vmstat:檢測系統資源變化
fuser:經過問卷查找出正在使用該文件的程序
lsof:列出被進程所打開的文件名
pidof:找出某個正在執行的進程PID
ldd:查看某個程序的動態函數庫支持狀態
其餘:
Tab按鍵:自動完成
Ctrl+c:中斷指令
Ctrl+d:結束輸入,至關於Exit
顯示日期:date
顯示日曆:cal 10 2015
計算器:bc (scale=3設置小數)
簡單編輯器:nano ^爲ctrl,M爲Alt
查看有誰在線:who
查看網絡的聯機狀態:netstat -a
查看後臺執行的程序:ps -aux
關機:shutdowm -h 10 '關機'
#會告訴你們,這機子10分鐘後關機,顯示在登錄者的屏幕前方
重啓:reboot
切換模式:init 0關機3純命令行5含有圖像界面6重啓
查看實際內核版本:uname -r
查看distribution版本:lsb_release -a
dos2UNIX/UNIX2dos:轉換斷行格式,windows爲CRLF,linux只有LF
iconv:編碼轉換
locale:語言設置與顯示列表
在線幫助:man 或者 info(用?查看命令)
空格往下翻頁
/string 向下查詢字符串
?string 向上查詢字符串
n,N 向下,向上繼續查詢
代號
1 用戶在shell環境中能夠操做的命令或可執行文件
2 系統內核可調用的函數與工具等
3 一些經常使用函數與函數庫,大部分爲C的函數庫
4 設備文件的說明,一般在/dev下的文件
5 配置文件或者是某些文件的格式
6 遊戲
7 慣例與協議
8 系統管理員可用的管理命令
9 根kernel有關的文件
用戶與用戶組
linux中,任何一個文件都有User,Group,Others權限設置
帳號都記錄在/etc/passwd這個文件內
/etc/passwd中一行記錄對應着一個用戶,每行記錄又被冒號(:)分隔爲7個字段,其格式和具體含義以下:
用戶名:口令:用戶標識號(uid):組標識號(gid):註釋性描述:主目錄:登陸Shell
其中uid
0:系統管理員,1~499:系統帳號,500~65535:可登錄帳號
我的密碼記錄在/etc/shadow文件下
每行表明一個用戶,:分隔9個字段,含義以下:
帳號名稱:密碼(加密過):最近改動密碼日期:密碼不可被更改天數:密碼須要從新更改天數:密碼須要更改期限前的警告天數:密碼過時後的帳號寬限時間:帳號失效日期:保留
用戶組都記錄在/etc/group內
:做爲分隔,4個字段
用戶組名稱:用戶組密碼(具體位置在/etc/gshadow):GID:次用戶組支持帳號名稱(,追加新用戶)
/etc/gshadow,4個字段:
用戶組名:密碼列(!開頭標識無合法密碼,無用戶組管理員):用戶組管理員帳號:用戶組所屬帳戶
Linux文件屬性
-rw-r--r-- 1 root root 42304 Sep 4 18:26 install.log
【權限】 【文件名鏈接數】 【全部者帳號】【所屬用戶組】【容量大小】【建立/修改日期】【文件名】
第一個字符
d 目錄
- 文件
l 鏈接文件
b 設備文件裏面可供存儲的接口設備
c 設備文件裏的串行端口設備
後面字符3個一組rwx(讀,寫,執行),表明全部者權限,用戶組權限,其餘非本用戶組權限
注意:文件夾若是沒有x權限,那麼不能進入此目錄
改變文件屬性與權限
chgrp:改變文件所屬用戶組
循環遞歸將文件夾/文件所屬用戶組改成users
chgrp
-R
users dirname/filename
chown:改變文件全部者
循環遍歷文件或目錄將用戶組改成root,用戶名改成leestar
chown
-R
root:leestar dirname/filename
chmod:改變文件的權限,r4,w2,x1
循環遍歷文件將權限改成全部都有
chmod -R 777 dirname/filename
linux文件種類
普通文件、純文本文件、二進制文件、數據格式文件
目錄、鏈接文件(相似快捷方式)、設備與設備文件(塊設備文件,字符設備文件)
套接字、管道
linux是沒有所謂「擴展名」的,能不能執行只與x屬性有關,擴展名其實就是爲了瞭解文件是什麼東西。
linux目錄配置
標準:FHS(Filesystem Hierarchy Standard)
|
可分享的 |
不可分享的 |
不可變的 |
/user(軟件放置處) |
/etc(配置文件) |
/opt(第三方軟件) |
/boot(開機與內核文件) |
可變的 |
/var/mail |
/var/run |
/var/spool/news |
/var/lock |
目錄定義:
/(root根目錄):與開機系統有關,所在分區越小越好,不要與應用程序安裝的軟件放在同一分區。
/bin:放置不少執行文件,cat,chmod等
/boot:放置開機會用到的文件
/dev:設備相關
/etc:配置文件
/home:系統默認用戶主文件夾
/lib:系統函數庫,開機時會用到
/media:媒體文件
/mnt:掛載額外設備
/opt:第三方軟件目錄
/root:管理員主文件夾
/sbin:只有管理員能利用的bin
/srv:服務器數據目錄
/tmp:臨時文件
/proc:虛擬文件,數據都是在內存中
/sys:虛擬文件,記錄與內核相關的信息,不佔用硬盤容量
(粗體目錄必定不可與跟目錄分開放在不一樣分區)
/usr(UNIX software resource):與軟件安裝/執行相關,相似windows的program files。
/bin:大部分用戶可用命令再次,與根目錄的bin不一樣在於,是否與開機過程有關
/include:安裝文件使用到的頭文件
/lib:應用軟件函數庫,不會常常被管理員用到
/local:系統管理員在本機自行安裝本身下載的軟件
/sbin:非系統正常運行所需的系統命令
/share:共享文件
/src:源碼
/var:與系統運做過程相關
/cache:應用自己運行中產生的緩存
/lib:應用自己用到的lib,例如mysql就在/var/lib/mysql
/lock:資源鎖
/log:日誌文庫
/mail:我的電子信箱目錄
/run:程序或服務啓動後,pid放置在此目錄
/spool:放置隊列數據,等待其餘程序使用,被使用後一般會被刪除。
絕對路徑:由根目錄(/)開始寫起
相對路徑:開頭不是/寫起的就是相對路徑
.表明當前的目錄
..表明上一次的目錄
-表明前一個工做目錄
~表明「目前用戶身份」所在主文件夾
~account表明account這個用戶的主文件夾
執行文件路徑變量$path
echo $path
文件的三個主要時間:
modification time:內容數據更改時
status time:權限屬性更改時
access time:內容被取用時
特殊文件權限:
4755,權限爲-rwsr-xr-x,前面則是特殊權限
SUID(SetUID):4
全部者的x能變成s,僅對二進制程序有效,例如改密碼的passwd,擁有x權限,執行的時候會臨時得到程序全部者的權限
對目錄無效
SGID(SetGID):2
用戶組的x能變成s,SGID對目錄有效,對程序做用和SUID相似,對目錄的話,進入目錄以後,就變成擁有該目錄的用戶組
Sticky Bit(SBIT):1
只針對目錄有效,例如temp文件夾權限問drwxrwxrwt,加上SBIT權限,任何人能夠在temp內添加、修改文件,可是以後文件/目錄的建立者與root可以刪除本身的文件或目錄
Linux磁盤與文件系統管理(段頁式)
date block(數據塊):
block大小 |
1KB |
2KB |
4KB |
最大單一文件限制 |
16GB |
256GB |
2TB |
最大文件系統總容量 |
2TB |
8TB |
16TB |
- 原則上,block大小與數理在格式化完就不能改變了
- 每一個block內最多隻能放置一個文件
- 若是文件大於block大小,則一個文件會佔用多個block數量
- 若是文件小於block大小,block的剩餘空間就不會被使用(浪費空間),因此小文件系統建議block大小越小越好
inodetable(inode表格):
inode主要記錄文件的屬性以及該文件實際數據放置在哪幾號block內,主要包括
- 文件訪問模式(rwx)
- 文件全部者與組
- 文件大小
- 建立或狀態改變時間
- 最近一次讀取時間
- 最近一次修改時間
- 文件特性標識(flag),如SUID
- 文件真正內容指向(pointer)
inode在格式化的時候數量與大小已經肯定
- 每一個inode大小均固定128bytes,可是是段頁式存儲,因此能夠記錄不少個block,拿1KB的block來講,12個直接,1間接256,1二級間接256^2,1三級間接256^3
- 每一個文件會佔用一個inode
- 文件系統可以建立的數量與inode數量有關
- 系統讀取文件的時候先找到inode,分析inode所記錄的權限與用戶是否符合,符合才能開始實際的讀取block的內容。
Superblock(超級快)
記錄整個文件系統相關信息的地方,沒有Superblock,就沒有這個文件系統。
- block與inode的總量;
- 爲使用與已使用的block/inode數量;
- block與inode的大小(1K,2K,4K、128byte);
- 文件系統掛載時間、最近一次寫入數據時間、最近一次檢驗磁盤(fsck)的時間等文件系統相關信息。
- 一個validbit數值,若此文件系統已被掛載,則valid bit爲0,若未被掛載,則valid bit爲1;
superblock掛了,文件系統就要花不少時間完救,通常來講superblock的大小爲1024bytes
File system Description(文件系統描述說明)
block bitmap(塊對照表)
inode bitmap(inode對照表)
掛載點必定是目錄,該目錄爲進入該系統文件的入口
文件系統最頂層的目錄的inode通常爲2
- Linux中內存中的文件若是被修改了,會被標識爲dirty,並不會立馬寫入磁盤,會不定時寫入。
- 系統會將經常使用文件數據放置到主存儲器緩衝區,加速文件系統讀寫,所以Linux的物理內存最後都會被用光,正常現象
- 你能夠手動用sync來將內存中的dirty數據寫回磁盤
- 若是正常關機,會主動調用sync,若是非正常關機,數據未寫回磁盤,重啓後會花不少時間檢測磁盤,甚至文件系統崩潰
Ext3相比Ext2來講,得益於日誌系統,有更好的可利用性、數據完整性、數據及易於轉換。
hard link(硬鏈接/實際鏈接)ln
只是在某個目錄下新建一條文件名鏈接到某inode號碼關聯的記錄而已
symbolic link(符號鏈接,快捷方式)ln -s
就是在建立一個獨立的文件,會佔用inode和block,而這個文件會讓數據的讀取指向它鏈接的那個文件的文件名,和inode無關
壓縮
常見的壓縮文件擴展名:
.Z:compress程序壓縮的文件
.gz:gzip程序壓縮的文件
.bz2:bzip2程序壓縮的文件
.tar:tar程序打包的數據,沒有壓縮
.tar.gz:tar程序打包文件,通過gzip壓縮
.tar.bz2:tar程序打包文件,通過bzip2壓縮
變量
命令別名,自定義變量在註銷bash後就會消失,若是想保留,必須寫入配置文件
變量是以一組文字或符號等, 來代替一些設置或者是一串保留的數據。
- 變量與變量以=來連接
- 等號兩邊不能直接接空格符號
- 變量名稱只能是英文字母或數字,可是開頭字符不能是數字
- 若是須要有空格,能夠用'或"來保留,這兩個區別一個是不解析,一個解析
- 能夠經過\來轉義特殊字符
- 可使用$(命令)來調用其餘命令提供的信息
- 若該變量須要在其餘子進程執行,可使用export來使變量變成環境變量
- 一般大寫字符爲系統默認變量,自定義變量可使用小寫,方便判斷
變量類型默認爲「字符串」
bash環境中的數值運算,默認最多僅能達到整數類型
var[index]=content聲明數組
echo ${var[1]}讀取數組
環境變量
HOME:用戶主文件夾
SHELL:目前使用的shell,默認爲/bin/shell
HISTSIZE:歷史命令相關,記錄條數
MAIL:使用mail命令會去讀取郵件的文件
PATH:執行文件查找路徑
LANG:語言
RANDOM:隨機數變量,在bash環境下,random變量在0~32767之間
OSTYPE,HOSTTYPE,MACHTYPE:主機硬件與內核的等級
Bash Shell操做環境
新建/etc/nologin.txt,若是用戶的shell爲nologin,則提示txt的內容
登陸與歡迎信息:
/etc/issue 進站界面
/etc/motd 登陸後的提示信息
bash的login shell狀況下所讀取的總體環境配置文件其實只有/etc/profile
通配符:
*:0~N個任意字符
?:必定有一個任意字符
[abcd]:必定有一個字符,在[]之中任意一個
[0-9]:0~9直接全部字符
[^abc]:必定有一個字符,不在[^]中的任意一個
特殊符號:
#:批註
\:轉義
|:管道,
每一個管道後,必須是命令,這個命令必需要能就收輸入數據,對於錯誤信息會忽略
;:連續執行分隔符,一個接着一個執行
~:用戶主文件夾
$:變量前導符
&:做業控制,將命令變成背景下工做?
!:非
/:路徑分隔
>,>>:數據流重定向,替換,累加,1爲正確的數據,2位錯誤的數據,若是指向/dev/null,則吃掉信息
<,<<:輸入,輸入結束
'':不具有解析變量置換
"":具有解析變量置換
``:先執行的命令
():子shell起始結束
{}:命令塊組合
管道命令中-號能夠用來替代前一個命令的輸入輸出
正則表達式
使用表達式時,要注意系統環境語系,由於和編碼順序有關。
^word:待查找word在首行
word$:待查找word在尾行
e.e:表明中間必定有一個任意字符,如eve,eae,eee
\:轉移字符,去除特殊符號的用途
ess*:重複0~N個前一個字符,如es(*能夠是0),ess,esss
go+d:重複1個或一個以上,如god,good
go?d:0個或1個,如gd,god
[abc]:包含a或b或c
[0-9]:包含0~9的數字,和字符集的編碼順序有關喲!
[^abc]:不包含
go\{2,3\}g:g與g之間有2~3個o存在的字符串,如goog,gooog
|:或
():找出組字符串,如g(al|oo)d,結果位,gald或good
()+:重複多個組的判斷
磁盤配額(Quota)
例如一個分區10G,30個帳戶,每一個用戶應該平均333M,若是有用戶保存電影幾個G,其餘人都不用用了。
使用場景:
一、WWW server,我的網頁空間的容量限制
二、mail server,每一個人的郵件空間限制
三、file server,網絡硬盤空間,結合Hadoop分佈式文件系統?
使用限制:
一、僅針對整個文件系統,而不能僅設爲目錄
二、內核必須支持quota
設置選項:
一、容量限制或文件數量限制
- inode用量,管理用戶能夠新建的文件數
- block用量,管理用戶磁盤容量。
二、soft/hard
- hard,用戶以爲不能超過該限額,超過以後會鎖住用戶磁盤使用權
- soft,超過會報警,在寬限時間內必須減小容量,不然轉化爲hard。
quotacheck:掃描文件系統並新建Quota的配置文件
quotaon:啓動quota的服務
quotaoff:關閉服務
edquota:編輯帳號/用戶組的限制於寬限時間
quota:單一用戶的報表
repquota:針對文件系統的限額作報表
warnquota:對超過限額者發出警告值
setquota:直接於命令中設置quota的限額
軟件磁盤陣列
RAID:RedundantArrays of inexpensive Disks,容錯廉價磁盤陣列。
RAID-0:將文件切割成N分,分別放入N個磁盤,磁盤數量越多,性能越好,其中有一個損壞,所有玩完。
RAID-1:若是2個100G的磁盤組成,只有100G能用,另外一個是備份空間,其中一塊損壞,沒事
RAID 0+1/1+0:先讓2塊磁盤組成RAID0,組成2組,這兩組再組成RAID1,ABCD,AB,CD,性能提升,AB,CD又組成RAID1,互相備份,數據獲得保護
RAID5:至少須要3塊以上才能組成,寫入的時候通過校驗碼計算,記錄到不一樣磁盤,一個磁盤順壞時,都能經過其餘磁盤的校驗碼恢復數據,RAID5容量總會少一個磁盤塊(由於用來作校驗),當損壞的磁盤數大於等於2塊時,就玩完
SELinux
由美國國家安全局開發,是在進程程序、文件等權限設置依據的一個內核模塊
開發緣由:不少企業發現,一般系統出現問題緣由大部分在於「內部員工的資源誤用」致使,實際由外部發動的攻擊反而沒那麼嚴重。
root管理員權限太大,總愛給一些文件弄個777權限。
開發目的:防止root權限過大,以進程爲主體,控制訪問權限。
傳統文件權限與帳號關係:自主訪問控制,DAC(Discretionary Access Control)
可否使用系統資源,和帳號的rwx權限設置有關
以策略規則定製特定程序讀取特定文件:委託訪問控制,MAC(Mandatory AccessControl)
針對控制的「主體」變成了「進程」而不是用戶,即便你是root,在不一樣的進程,你所能取得的權限不必定是root,要看當時進程的設置而定
如此一來,控制項目很是多,因此SELinux提供一些默認策略。