探秘linux-電腦基礎

來源:互聯網
上載者:User

標籤:linux

電腦基礎一、電腦系統組成

電腦系統由硬體(Hardware)和系統軟體(Software)系統兩大部分組成

二、馮·諾依曼體系

三、伺服器儲存類型

DAS:直接連接儲存,儲存直接與伺服器相連,類似於在伺服器上直接加個儲存,用IDE、SATA線等線纜進行串連. 
NAS:網路連接儲存裝置,通過區域網路,在多個伺服器直接實現了檔案分享權限設定,類似於NFS、windows共用的模式. 
SAN:存放區域網路,有SAN的服務端和SAN的用戶端,用戶端通過網路連接到儲存上,效果類似在本地加上一塊磁碟,通過光纖或者網線相連.

四、ABI和API:

ABI:應用程式二進位介面,在應用程式和作業系統之間. 
API:應用程式調用介面,在底層和作業系統之間.

五、檔案系統:

ntfs、fat、iso9660 
ext2、3、4、CentOS6.X系統預設的檔案系統 
xfs、btrfs CentOS7預設的是xfs檔案系統

六、資料分割配置:

MBR: 
主要磁碟分割:一個磁碟主要磁碟分割的數量<=4,系統要裝在主要磁碟分割上,如果伺服器上有兩塊磁碟,那麼其中一塊磁碟可以沒有主要磁碟分割; 
擴充分區:一個磁碟只能有一個擴充分區,擴充分區數量+主要磁碟分割數量<=4,擴充分區不能儲存資料,只能又來劃分邏輯分區; 
邏輯分區:邏輯分區分區號從5開始編號,sda5; 
主要磁碟分割和擴充分區的編號可以認為指定,但是擴充分區裡面的邏輯分區的編號是系統自動指定的; 
分區後需要掛載後才能使用; 
swap分區在以前記憶體小的情況下,通常是實際記憶體的兩倍,但目前伺服器記憶體比較大,一般測試環境給2G就夠了,生產環境中8G以上的記憶體,可以分10G左右就夠了.

七、Linux哲學思想:

1.一切皆檔案; 
2.小型、單一用途的程式; 
3、連結程式,共同完成複雜的任務; 
4、避免令人困惑的使用者介面; 
5、配置資料存放區在文本中.

八、shell類型

shell:功能可以理解為將命令翻譯成電腦能夠識別的0101(二進位) 代碼,翻譯器. 
shell的種類:sh、csh、tcsh、ksh、bash、zsh 
/etc/shell設定檔中儲存了當前系統支援的shell類型

九、用到的一些命令

lscpu 可以查看cpu的資訊 
md5sum /dev/sr0 可以計算出來指定檔案的md5值 
whoami 可以顯示當前是哪個使用者登入 
tty 可以顯示當前登入的是哪個終端 
chvt 1-6 表示利用終端切換介面 
hostname 可顯示完整的主機名稱 
lsb_release -a 查看當前作業系統的版本資訊 
uname -r 查看核心版本 
id -u 可以查看當前登入使用者的UID 
id -u USERNAME 可以查看指定使用者的UID 
echo $SHELL 可查看預設的shell類型 
getent passwd ftp 可以查看ftp使用者的/etc/passwd中的條目 
type COMMAND 可以查看指定的命令是外部命令還是內部命令 
hash 可以將外部命令的路徑結果緩衝下來

十、相關命令詳解

cd 改變工作目錄 
文法: cd /PATH/TO/SOMEDIR 切換到指定目錄 
cd 切換回家目錄 
cd ~ 切換回自己的家目錄 
cd ~USERNAME 切換到指定使用者的家目錄(只有管理員才有許可權切換到其他使用者的家目錄) 
cd – 在上一次所在目錄與目前的目錄之間來回切換 
PWD 用來記錄當前工作目錄的環境變數 
OLDPWD 用來記錄上一次工作目錄的環境變數

ls:列出指定目錄下的內容

文法:ls [OPTION]…[FILE]… 
常用選項:

-a 顯示所有檔案,包括隱藏檔案 
-A 顯示除.和..之外的所有檔案 
-l 長格式列表,表示顯示檔案的詳細屬性資訊 
顯示出來的資訊為 
-rw-r-x— 1 root root 8827 10月15 20:34 testa.log

-rw-r-x—該檔案的檔案類型和相應的許可權 
最前面一個-表示檔案的類型,後面9位表示相應的許可權

檔案類型: 
-:表示是普通檔案, 
d:表示是目錄 
b:表示是塊裝置檔案,支援以“block”為單位進行隨機訪問 
c:表示是字元裝置檔案,支援以“character”為單位進行線性訪問 
l:表示是符號連結(軟連結)檔案 
p:表示是管道檔案,有名字的管道檔案 
s:表示是通訊端檔案 
1 表示檔案被永久連結的次數 
root 表示檔案的屬主 
root 表示檔案的屬組 
8827 表示檔案的大小 
但是如果對ll /dev 該處顯示的是兩個數字,類似brw-rw—-. 1 root cdrom 11, 0 7月13 00:34 sr0 
這裡的數字前一個表示主裝置號,後一個表示次裝置號,一個標識裝置類型,後一個標識同一類不同裝置 
10月15 20:34 表示檔案最後一次被修改的時間 
-h 表示對檔案大小做單位換算,換算後的結果可能為非精確值(1000和1024的區別) 
-d 表示僅顯示目錄自身,而不是目錄下面每個檔案的屬性,要與-l一起使用,顯示目錄自身的屬性資訊 
-r ,–reverse 表示顯示時以逆序的方式進行顯示,預設是升序顯示 
-R ,–recursive 表示遞迴顯示 
cat:顯示文字檔的檔案內容 
文法:cat [OPTION]…[FILE]… 
選項: 
-n 給顯示的文本行編號 
-E 顯示行結束符,Linux行結束符為$ 
FILE可以有多個,顯示的時候將多個檔案全部列出來

echo:回顯命令 
文法:echo [OPTION]…[STRING]… 
選項: 
-n 顯示完成後不自動進行換行 
-e 讓轉意符生效,而不是顯示出來 
轉意符:\n 表示換行

1.   \b 表示退格
2.   \t 表示定位字元
3.   \0nnn插入nnn(八進位)代表的ASCII編碼

利用上述的可以改顏色,色彩設定檔在/etc/DIR_COLORS

echo -e “\033[背景顏色;字型顏色m字串\033[0m” 背景顏色可省略 
echo -e “\033[43;31m nihao \033[0m” 
43;31表示前景色彩和背景色 
字型顏色:30-37分別表示:黑、紅、綠、黃、藍、紫、天藍、白色 
背景顏色:40-47分別表示:黑、紅、綠、黃、藍、紫、天藍、白色 
\033[0m是控制選項,0m表示無屬性,1m表示高亮度,4m表示底線,5m表示閃爍,7m表示反顯,8m表示隱藏顯示 
echo -e “\033[5m\033[44;32m*\033[0m” 顯示為*號閃爍,如果寫到最後面\033[0m這裡,則會變成顯示完成後換行後的命令提示字元閃爍 
STRING:可以使用引號,單引號和雙引號均可使用 
單引號:強引用,變數引用不執行替換; 
雙引號:弱引用,變數引用執行替換; 
如:echo “SHELL’ 
顯示出來的資訊為 USER結果為echo root 
echo ‘echo USER 
echo “echo $USER”結果為 echo root 
echo echo $USER結果為root 
注意:變數引用中的正規參考資料表示法為 ${SHELL},只是很多時候{}可以被省略

shutdown: 關機或重啟命令 
文法:shutdown [OPTIONS…][TIME][WARNING…] 
選項: 
-h:表示關機 
-r:表示重啟 
-c:表示取消之前定義的關機或重啟操作 
TIME: 
now:表立即 
hh:mm 表示指定的時間點 
+m 表示在當前時刻的多少分鐘之後 
WARNING:表示提示資訊 
例如:shutdown -r +10 “system is going to reboot after 10 minutes” 
日期相關的命令:date、clock、hwclock、cal 
Linux有兩套時間,一套是硬體時鐘,一套是系統時鐘,系統啟動時,從硬體讀取日期和時間資訊;讀取完成以後,就不在與硬體相關 
date:顯示或設定系統時間(顯示和設定系統時鐘) 
文法:date [OPTION]… [+FORMAT] 用來顯示時間日期 
date [MMDDhhmm[[CC]YY][.ss]] 用來設定時間日期 
date -d “STRING” :顯示指定字串的日期 
例如:date -d yesterday 
date -d “10 days ago” 顯示10天以前的日期 
date -d “1 month 10 days ago” 顯示1個月10天之前的日期 
date -d “20 days” 顯示20天之後的日期 
date –set 20160725 可以將日期設定為2016年7月25日 
date –set “20160726 17:25:26”可以設定日期和時間 
+FORMAT:表示顯示為指定格式的日期,+為固定格式 
FORMAT支援的常用格式有: 
%F:顯示為例如2016-07-20的日期格式 
%T:顯示為例如08:58:15這樣的時間顯示格式 
%Y:顯示年 
%m:顯示月 
%d:顯示日 
%H:顯示幾點 
%M:顯示幾分 
%S:顯示幾秒 
%j:顯示當前數一年中的第多少天,值為1-356 
%D:顯示為07/22/16這樣月/日/年格式 
%s:顯示時間戳記,也就是從1970年1月1號0點0分0秒到目前時間所經曆的秒數 
多個格式之間用空格分隔,可以將整個格式用雙引號引起來 
例如:date +“%F %T” 
例如:date +“%Y%m%d %H%M%S” 
date +“YEAR:%Y Month:%m” 
設定時間的例子: 
date 072008522016.25 表示修改時間為07月20日08點52分鐘2016年 25秒

clock,hwclock:查詢和設定硬體時鐘(硬體時鐘,可理解為BIOS時鐘) 
clock和hwclock為同一套命令,clock是hwclock的永久連結 
clock不跟任何資訊,表示顯示硬體時鐘 
-s,–hctosys 表示將系統時間設定為跟硬體時間一樣的時間 
-w,–systohc 表示將硬體時間設定為跟系統時間一樣的時間 
cal:顯示日曆 
cal 表示顯示當前這個月的日曆 
cal 2016 表示顯示指定年的全年的日曆 
cal 07 2016 表示顯示指定年的指定月的日曆

type:顯示命令的類型,是內建命令還是外部命令 
例如:type ls 
如果原始命令被隱藏,要想使用原始命令,可以使用\ls

whatis COMMAND可以顯示命令的大致功能說明

which:用來顯示命令的完整路徑 
文法:which [OPTION]…COMMAND 
例如:which ls 
選項: 
–skip-alias 忽略命令別名,而直接顯示命令本身

whereis:顯示命令的路徑以及相關協助檔案的路徑資訊 
文法:whereis [OPTIONS] NAME 
例如:whereis ls 
選項: 
-b僅顯示二進位檔案程式的路徑 
-m僅顯示協助檔案的程式的路徑 
who:顯示當天系統的有哪些登入使用者 
文法:who [OPTIONS]… 
who 顯示當前系統的所有登入使用者的資訊 
who 顯示當前系統的所有登入使用者的資訊 
who -b 顯示系統啟動的時間 
who -r 顯示系統啟動的時間,以及當前的系統運行層級 
who -d 顯示系統死亡進程的資訊 
who -u 顯示各個登入使用者的資訊,包括顯示登入持續時常和登入的進程號 
w:增強版的who命令,用於顯示當前所有登入的使用者,及其在操作的動作等詳細資料

命令別名: 
alias 可以顯示當前系統上的命令別名資訊 
定義命令別名: 
alias NAME=’COMMAND’ 只對當前shell有效,立即生效,重啟後失效 
例如 alias cds=‘cd /etc/sysconfig/network-scripts/’ 
撤銷別名: 
umalias NAME 
例如 unalias cds 
hash命令:可以對命令的路徑緩衝至記憶體中 
hash 可以查看緩衝的列表 
hash -d COMMAND 可以將hash緩衝中包含COMMAND的條目刪除 
hash -r 可以清空hash路徑緩衝的緩衝表

screen命令:字元介面實現遠程協助(前提是:連到同一台機器,使用同一個帳號)需要安裝該screen軟體,yum install screen 
開啟新共用案頭:screen -S 共用工作階段的名稱 
顯示共用案頭會話列表:screen -ls 
對方連到建立的共用工作階段上:screen -x 會話名稱 
退出會話ctrl+a,d 
退出後再次串連上 screen -r 會話的進程號 
退出並完全關閉會話exit 
在遠程登入的時候,運行一個執行過程比較長的程式(例如備份),為了防止斷網後, 
程式斷開,無法知道程式啟動並執行狀態,可以單獨開個screen來運行該程式 
命令執行的優先順序:命令別名>內部>外部命令緩衝(hash)>外部命令

十一、課後作業

1、 用echo顯示閃爍的,帶顏色的倒三角 
echo -e “\033[背景顏色;字型顏色m字串\033[0m” 背景顏色可省略 
echo -e “\033[43;31m nihao \033[0m” 
43;31表示前景色彩和背景色 
字型顏色:30-37分別表示:黑、紅、綠、黃、藍、紫、天藍、白色 
背景顏色:40-47分別表示:黑、紅、綠、黃、藍、紫、天藍、白色 
\033[0m是控制選項,0m表示無屬性,1m表示高亮度,4m表示底線,5m表示閃爍,7m表示反顯,8m表示隱藏顯示 
echo -e “\033[5m\033[44;32m*\033[0m” 顯示為*號閃爍,如果寫到最後面\033[0m這裡,則會變成顯示完成後換行後的命令提示字元閃爍,故可以:

1.[[email protected] ~]# echo -e "\033[5m\033[31m*******\n ***** \n   *   \033[0m"  #顯示為一個紅色,閃爍的倒三角

2、date顯示前十天前的日期,後20天的日期資訊 
date -d “10 days ago” +%F 顯示10天前的日期 
date -d “20 days” +%F 顯示20天后的日期

3、screen命令:字元介面實現遠程協助(前提是:連到同一台機器,使用同一個帳號)需要安裝該screen軟體,yum install screen 
開啟新共用案頭:screen -S 共用工作階段的名稱 
顯示共用案頭會話列表:screen -ls 
對方連到建立的共用工作階段上:screen -x 會話名稱 
退出會話ctrl+a,d 
退出後再次串連上 screen -r 會話的進程號 
退出並完全關閉會話exit 
在遠程登入的時候,運行一個執行過程比較長的程式(例如備份),為了防止斷網後, 
程式斷開,無法知道程式啟動並執行狀態,可以單獨開個screen來運行該程式


探秘linux-電腦基礎

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.