Linux簡述與部分基礎命令
計算機
什么是計算機?
計算機是一種能接收和存儲信息,并根據存儲在其內部的程序對輸入的信息進行加工、處理,然后把處理結果輸出的電子設備(借鑒)。家用電腦(pc)、服務器(server)均可稱為計算機
計算機的組成部分
計算機由運算器、控制器、存儲器、輸入、輸出設備五部分組成
運算器、控制器:統稱為“CPU”,做算數運算以及控制總線內存尋址等功能
存儲器:稱為內存,用于暫時存放CPU中的運算數據,以及與硬盤等外部存儲交換的數據
??????? 輸入設備:為cpu下指令,提供數據書寫的設備
??????? 輸出設備:輸出數據加工的結果并顯示出來的設備
什么是Linux?
Linux是一套免費開源使用和自由傳播的類Unix系統,是一個基于多用戶、多任務、支持多線程和多CPU的操作系統。
Linux的主流發行版本
什么是發行版本:
Linux系統由于是一套遵循GPL協定的開源類Unix系統,所以很多技術牛人或企業都可對都可以拿到源代碼,對系統進行再次編譯。但是由于編譯出來的新功能或新代碼都是以二進制文件進行表示,所以很多人用起來不是很方便,所有某些企業或個人專門將各位牛人反饋給社區的源代碼進行收集和重新編譯封裝成系統進行發布,供他人下載使用,我們將這樣的系統稱為發行版。
部分常用主流發行版廠商以及標志性系統如下:
Debian:
- Ubuntu
- Knopix
Slackware:
- S.u.S.E
- OpenSUSE
RedHat:
- Fedroa
- CentOS
上述這三個發型廠商是我個人比較注意的三個,其主要特點都是基于Linux的內核進行二次封裝編譯。
Linux的哲學思想
什么是哲學是想我不是很明白,我只知道一些簡單的系統特點。如下:
1、一切皆文件,硬件也是以文件形式在系統中體現
2、由眾多單一目的的小程序,一個程序只實現一個功能,多個這樣的小程序組合在一起完成復雜任務
3、文本文件保存配置信息
4、運行均以進程體現,通過命令行將可執行文件調用配置文件運行成進程
常用命令
ifconfig:Linux系統中用于顯示或配置網絡設備的命令
語法:ifconfig [網絡設備名稱][down up -allmulti -arp -promisc][add<地址>][del<地址>][<硬件地址>] [media<網絡媒介類型>][mem_start<內存地址>][metric<數目>][mtu<字節>][netmask<子網掩碼>][tunnel<地址>][-broadcast<地址>] [-pointopoint<地址>]
常用參數:
down 關閉指定的網絡設備。
up 啟動指定的網絡設備。
-arp 打開或關閉指定接口上使用的ARP協議。前面加上一個負號用于關閉該選項。
add<地址> 設置網絡設備的IP地址。
del<地址> 刪除網絡設備的IP地址。
mtu<字節> 設置網絡設備的MTU。
netmask<子網掩碼> 設置網絡設備的子網掩碼。
常用命令如下:
~]#ifconfig ??????? #顯示當前網卡配置信息
~]#ifconfig eth0 192.168.0.1 netmask 255.255.255.0? #臨時配置網卡地址重啟后失效
~]#ifconfig eth0 down?? #將eth0網卡設置為down狀態
~]#ifconfig eth0 up???? #將eth0網卡設置為up狀態
echo:回顯命令
語法:echo [-ne][字符串]或 echo [–help][–version]
參數:
-n:顯示出內容不自動進行換行,顯示內容后直接接命令提示符
-e:讓轉義符生效(讓反斜線\在顯示內容中換行)
\n:換行
\t:制表符(顯示內容中空一個字符)
\a 發出警告聲;
\b 刪除前一個字符;
\c 最后不加上換行符號;
\f 換行但光標仍舊停留在原來的位置;
\n 換行且光標移至行首;
\r 光標移至行首,但不換行;
\t 插入tab;
\v 與\f相同;
\\ 插入\字符;
STRING可以使用引號,單引號和雙引號均可用
單引號:強引用,變量引用不執行替換
root#echo ‘$SHELL’
$SHELL
雙引號:弱引用,變量引用會被替換
root#echo “$SHELL”
顯示環境變量內容
注意:變量引用正規符號
$(name),不過()可省略
tty:虛擬終端連接命令,默認系統可以連接6個虛擬終端
語法:tty [-s][–help][–version]
參數:
-s或–silent或–quiet 不顯示任何信息,只回傳狀態代碼。
–help 在線幫助。
–version 顯示版本信息。
startx:圖形終端命令,默認在那個虛擬終端啟動,即位于那個虛擬終端
語法:startx(參數)
export:設置或顯示環境變量
語法:export [-fnp][變量名稱]=[變量設置值]
參數:
-f 代表[變量名稱]中為函數名稱。
-n 刪除指定的變量。變量實際上并未刪除,只是不會輸出到后續指令的執行環境中。
-p 列出所有的shell賦予程序的環境變量
pwd:顯示當前工作
語法:pwd [ -L | -P ]
參數:
-L:如果 PWD環境變量包含了不包含文件名 .(點)或 ..(點點)的當前目錄的絕對路徑名,則顯示 PWD 環境變量的值。否則,-L 標志與 -P 標志一樣運行。
-P:顯示當前目錄的絕對路徑名。與 -P 標志一起顯示的絕對路徑不包含在路徑名的絕對路徑中涉及到符號鏈接類型的文件的名稱。
history:查看歷史命令記錄
語法:history(選項)(參數)
參數:
-c:清空當前歷史命令
-a:將歷史命令緩沖區中命令寫入歷史命令文件中
-r:將歷史命令文件中的命令讀入當前歷史命令緩沖區
-w:將當前歷史命令緩沖區命令寫入歷史命令文件中
shutdown:系統關機命令
語法:shutdown [-t seconds] [-rkhncfF] time [message]
參數:
-P執行關機
-a 取消關機
-s 關機
-f 強行關閉應用程序
-m \\計算機名 控制遠程計算機
-i 顯示“遠程關機”圖形用戶界面,但必須是Shutdown的第一個參數
-l 注銷當前用戶
-r 關機并重啟
-s -t 時間 設置關機倒計時
-h 休眠
Poweroff:系統關機命令
語法:poweroff(選項)
參數:
-n:關閉操作系統時不執行sync操作
-w:不真正關閉操作系統,僅在日志文件“/var/log/wtmp”中
-d:關閉操作系統時,不將操作寫入日志文件“/var/log/wtmp”中添加相應的記錄
-f:強制關閉操作系統
-i:關閉操作系統之前關閉所有的網絡接口
-h:關閉操作系統之前將系統中所有的硬件設置為備用模式。
reboot:
語法:reboot(選項)
參數:
-d:重新開機時不把數據寫入記錄文件/var/tmp/wtmp。本參數具有“-n”參數效果
-f:強制重新開機,不調用shutdown指令的功能
-i:在重開機之前,先關閉所有網絡界面
-n:重開機之前不檢查是否有未結束的程序
-w:僅做測試,并不真正將系統重新開機,只會把重開機的數據寫入/var/log目錄下的wtmp記錄文件。
hwclock:硬件時鐘訪問工具
語法:hwclock(選項)
參數:
–adjust:hwclock每次更改硬件時鐘時,都會記錄在/etc/adjtime文件中。使用–adjust參數,可使hwclock根據先前的記錄來估算硬件時鐘的偏差,并用來校正目前的硬件時鐘
–debug:顯示hwclock執行時詳細的信息.
–directisa:hwclock預設從/dev/rtc設備來存取硬件時鐘。若無法存取時,可用此參數直接以I/O指令來存取硬件時鐘
–hctosys:將系統時鐘調整為與目前的硬件時鐘一致
–set –date=<日期與時間>:設定硬件時鐘
–show:顯示硬件時鐘的時間與日期
–systohc:將硬件時鐘調整為與目前的系統時鐘一致
–test:僅測試程序,而不會實際更改硬件時鐘
–utc:若要使用格林威治時間,請加入此參數,hwclock會執行轉換的工作
–version:顯示版本信息。
date:系統時間工具
?語法:date(選項)(參數)
選項:
-d<字符串>:顯示字符串所指的日期與時間。字符串前后必須加上雙引號
-s<字符串>:根據字符串來設置日期與時間。字符串前后必須加上雙引號
-u:顯示GMT; –help:在線幫助
–version:顯示版本信息。
參數:
顯示日期時間:date
date +%F(顯示年、月、日)
date +%T(顯示小時、分、秒)
date +%F-%T(顯示年、月、日、小時、分、秒)
date +%c(顯示星期幾)
date +%Y(顯示年)
date +%m(顯示月)
date +%d(顯示日)
date +%H(顯示小時)
date +%M(顯示分)
date +%S(顯示秒)
date +%s(顯示從1970年1月1日00:00:00-unix元年到現在所經過了多少秒)
date +%Y-%m-%d-%H-%M-%S(組合顯示年月日小時分秒)
注意“+”只能出現一次,如果有空格出現,那么用“”將命令引用起來,表示空格符不是命令
設置日期時間:
date 月日小時分鐘年.秒
例如改成:2013年10月10日8點8分8秒
~]#date 10100808082013.8
man命令
語法:man COMMAND
man手冊說明:
section:
NAME:功能性說明
SYNOPSIS:語法說明
DESCRIPTION:描述
OPTIONS:選項
EXAMPLES:使用示例
AUTHOR:作者
NIGS:報告程序bug的方式
SEE ALSO:參考
SYNOPSIS:
[]:可選內容
<>:必須提供的內容
a|b|c:多選一
…:同類內容可出現多個
使用手冊:壓縮格式的文件,有章節之分
/usr/share/man
man1,man2….其中1、2代表如下:
1:用戶命令
2:系統調用
3:C庫調用
4:設備文件及特殊文件
5:文件格式:(配置文件格式)
6:游戲使用幫助
7:雜項
8:管理工具及守護進程
~]#man # COMMAND
~]#man 數字 命令
注意:并非每個COMMAND在所有章節下都有手冊
查看:
~]#whatis COMMAND
注意:其執行過程是查詢數據庫進行的
手動更新數據庫命令:
~]#makewhatis
man命令打開手冊的操作方法:
翻屏操作:
空格鍵:向文件尾部翻一屏
b:向文件首部翻一屏
Ctrl+d:向文件尾部翻半屏
Ctrl+u:向文件首部翻半屏
回車鍵:向文件尾部翻一行
k:向文件首部翻一行
G:跳轉至最后一行
數字G:跳轉到指定行
1G:跳轉至文件首部
文本搜索:
/關鍵詞:從文件首部向文件尾部依次查找,不區分大小寫
?關鍵詞:從文件尾部向文件首部依次查找,不區分大小寫
n命令:與查找命令方向相同,查看下一個關鍵詞
N命令:與查找命令方向相反,查看上一個關鍵詞
退出:
q:quit
選項:
-M /PATH/TO/SOMEDIR:到指定目錄下查找命令手冊并打開
Linux發行版系統的基礎目錄名稱命名法則及功用規定
/bin:所有用戶可用的基本命令程序文件
/sbin:系統的二進制文件,系統管理員使用的工具程序
/boot:引導加載器必須用到的各靜態文件:kernel、initramfs(initrd),grub等
/dev:當前系統上識別到的所有硬件設備文件。存儲特殊文件或設備文件
設備有兩種類型:
字符設備(線性設備,有時序性的):數據交換是以字符為單位進行的
塊設備(隨機設備):將多個字符打包成一個單位進行發送
/etc:主機特有的系統靜態配置文件,只能為靜態文件,不能是二進制文件
/home:普通用戶家目錄的集中位置;一般每個普通用戶的家目錄默認為此目錄下與用戶同名的子目錄,/home/USERNAME
/root:管理員家目錄,可選
/lib:基礎共享庫和內核模塊,在系統啟動或跟文件系統上的應用程序主要為/bin,/sbin提供共享庫以及為內核提供內核模塊
libc.so.*:動態鏈接的C庫
ld*:運行時鏈接器或加載器
modules目錄:存放內核模塊的目錄
/lib64:64位系統特有的存放64位共享庫的路徑
/mnt:其他文件系統臨時掛載點
/media:便攜式設備掛載點,cdrom,floppy等
/opt:第三方(附加應用程序)非關鍵程序的安裝路徑,可選路徑
/srv:當前主機為服務提供的數據,不具有通用性
/tmp:為那些會產生臨時文件的程序提供的用于存儲臨時文件的目錄,可供所有用戶執行寫入操作,具有特殊權限
/usr:全局共享只讀數據路徑
include:C程序頭文件
share:命令手冊頁和自帶文檔等,架構特有的文件存儲位置
local:另一個層級目錄(hierarchy)
x11R6:x-windows程序的安裝位置
src:程序源碼文件的存儲位置
/usr/lcoal:讓系統管理員安裝本地應用程序,也通常用于安裝第三方應用程序
/var:存儲經常發生變化數據的目錄
/proc:基于內存的虛擬文件系統,用語為內核及進程存儲相關信息的虛擬文件系統,他們多為內核參數,例如net.ipv4.ip_forward,虛擬為net/ipv4/ip_forward,存儲于/proc/sys,因此其完整路徑為/proc/sys/net/ipv4/ip_forward
/sys:sysfs虛擬文件系統提供了一種比proc更為立項的訪問內核數據的途徑,其主要作用在與為管理LInux設備提供一種統一模型的接口
本文來自投稿,不代表Linux運維部落立場,如若轉載,請注明出處:http://www.www58058.com/89484
博客內容整理的很好,一開始的內容比較基礎,但很重要,需要堅持,再接再勵!