第一周博客 計算機組成及Linux基礎入門
摘要
1、描述計算機組成及其功能。
2、描述羅列Linux的發行版,并描述不同發行版之間的聯系和區別。
3、描述Linux的哲學思想,并按照自己的理解對其進行解釋。
4、說明Linux系統上命令的使用格式,詳細介紹ifconfig、echo、tty、startx、export、pwd、history、
shutdown、poweroff、reboot、hwclock、date命令的使用,并配合相應的示例說明闡述。
5、如何在Linux系統上獲取命令的幫助信息,請詳細列出,并描述man文檔的章節是如何劃分。
6、請羅列Linux發行版的基礎目錄名稱命名法則及功能規定。
2、描述羅列Linux的發行版,并描述不同發行版之間的聯系和區別。
3、描述Linux的哲學思想,并按照自己的理解對其進行解釋。
4、說明Linux系統上命令的使用格式,詳細介紹ifconfig、echo、tty、startx、export、pwd、history、
shutdown、poweroff、reboot、hwclock、date命令的使用,并配合相應的示例說明闡述。
5、如何在Linux系統上獲取命令的幫助信息,請詳細列出,并描述man文檔的章節是如何劃分。
6、請羅列Linux發行版的基礎目錄名稱命名法則及功能規定。
一、計算機的組成及其功能
計算機概念:
電子計算機,也叫做電腦(computer),是一種用于高速計算的電子計算機器,通過計算機,可以實現計算、存儲等功能電子計算機,也叫做電腦(computer)。
計算機組成結構:
計算機一般是由控制器、運算器、存儲器、輸入設備、輸出設備 這五個部分組成。
- 控制器(Control):是整個計算機的中樞神經,其功能是對程序規定的控制信息進行解釋,根據其要求進行控制,調度程序、數據、地址,協調計算機各部分工作及內存與外設的訪問等。
- 運算器(Datapath):運算器的功能是對數據進行各種算術運算和邏輯運算,即對數據進行加工處理。
- 存儲器(Memory):存儲器的功能是存儲程序、數據和各種信號、命令等信息,并在需要時提供這些信息。
- 輸入(Input system):輸入設備是計算機的重要組成部分,輸入設備與輸出設備合你為外部設備,簡稱外設,輸入設備的作用是將程序、原始數據、文字、字符、控制命令或現場采集的數據等信息輸入到計算機。常見的輸入設備有鍵盤、鼠標器、光電輸入機、磁帶機、磁盤機、光盤機等。
- 輸出(Output system):輸出設備與輸入設備同樣是計算機的重要組成部分,它把外算機的中間結果或最后結果、機內的各種數據符號及文字或各種控制信號等信息輸出出來。微機常用的輸出設備有顯示終端CRT、打印機、激光印字機、繪圖儀及磁帶、光盤機等。
操作系統的功能:
驅動程序
進程管理
安全
網絡功能
內存管理
文件系統
......
二、Linux發行版簡介
發行版 | 特點 |
---|---|
Ubuntu | 安裝簡單,默認采用的GNOME桌面系統,并且Ubuntu采用自行加強的內核(kernel),安全性方面更上一層樓。并且,Ubuntu默認不能直接root登陸,必須從第一個創建的用戶通過su或sudo來獲取root權限。Ubuntu 的版本周期為六個月,彌補了Debian 更新緩慢的不足。而且具有人 氣頗高的論壇提供優秀的資源和技術支持,固定的版本更新周期和技術支持,適于新手使用。 |
openSUSE | SUSE 是Novell 公司的著名Linux 發行版,自主開發的專業,易用的YaST 軟件包管理系也大受好評。SUSE 是一個非常專業、優秀的發行版,一向以華麗的用戶界面著稱。使用方便,也是當前最流行的版本之一,適于新手使用。 |
Debian | Debian 是迄今為止,最遵循GNU 規范的Linux 系統。dpkg 是Debian 系列特有的軟件包管理工具,它被譽為所有Linux 軟件包管理工具(比如RPM ) 最強大的!配合apt-get ,在Debian 上安裝、升級、刪除和管理軟件變得異常容易。Debian 具有優秀的網絡和社區資源,強大的apt- get ,許多發行版都是基于Debian 的,最有影響力的發行版之一。不過Debian 安裝相對不易,stable 分支的軟件極度過時,不適于新手使用。 |
Redhat | 應該稱為Redhat系列,包括RHEL(Redhat Enterprise Linux,也就是所謂的Redhat Advance Server,收費版本)、Fedora Core(由原來的Redhat桌面版本發展而來,免費版本)、CentOS(RHEL的社區克隆版本,免費)。Redhat應該說是在國內使用人群最多的Linux版本,甚至有人將Redhat等同于Linux,而有些老鳥更是只用這一個版本的Linux。所以這個版本的特點就是使用人群數量大,資料非常多,言下之意就是如果你有什么不明白的地方,很容易找到人來問,而且網上的一般Linux教程都是以Redhat為例來講解的。Redhat系列的包管理方式采用的是基于RPM包的YUM包管理方式,包分發方式是編譯好的二進制文件。穩定性方面RHEL和CentOS的穩定性非常好,適合于服務器使用,但是Fedora Core的穩定性較差,最好只用于桌面應用 |
參考文檔:linux各個發行版的區別
三、Linux的哲學思想
1、一切皆文件
把幾乎所有資源統一抽象為文件形式;包括硬件設備,通信接口等。
2、由眾多功能單一的程序組成
一個程序只做一件事,并做好。
組合小程序完成復雜任務。
3、盡量避免和用戶交互
目標:易于以編程的方式實現自動化任務
4、使用文本文件保存配置信息:
四、Linux系統上命令的使用格式
基礎命令格式:
localhost ~]#COMMAND [OPTIONS] [ARGUMENTS]
命令 選項 參數
選項:用于啟動或者關閉命令的某個或某些功能
短選項:-c -a等多個短選項可以合并使用
長選項:由兩個連字符和一些大小寫字母組合的單詞構成,如--word 或者--long 等
參數:命令的作用對象(向命令提供數據),命令的參數可以有一個或者多個發起一命令:
請求內核將某個二進制程序運行為一個進程;
程序 --> 進程
靜態 --> 動態(有生命周期)
命令本身是一個可執行的程序文件:二進制格式的文件,有可能會調用共享庫文件;
多數系統程序文件都存放在:/bin, /sbin, /usr/bin, /usr/sbin,/usr/local/bin, /usr/local/sbin
普通命令:/bin, /usr/bin, /usr/local/bin
管理命令:/sbin, /usr/sbin, /usr/local/sbin
共享庫:/lib, /lib64, /usr/lib, /usr/lib64, /usr/local/lib, /usr/local/lib64
32bits的庫:/lib, /usr/lib, /usr/local/lib
64bits的庫:/lib64, /usr/lib64, /usr/local/lib64
注意:并非所有的命令都有一個在某目錄與之對應的可執行程序文件
命令必須遵循特定格式規范:exe, msi, ELF(Linux)
~]# file /bin/ls
命令分為兩類:
由shell程序的自帶的命令:內置命令(builtin)
獨立的可執行程序文件,文件名即命令名:外部命令
shell程序是獨特的程序,負責解析用戶提供的命令;
環境變量:
PATH:從哪些路徑中查找用戶鍵入的命令字符串所對應的命令文件;
~]# echo $PATH
/usr/lib64/qt-3.3/bin:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/root/bin
查找次序:自左而右;
查看命令類型:
type COMMAND
OPTIONS:
指定命令的運行特性;
選項有兩種表現形式:
短選項:-C, 例如-l, -d
注意:有些命令的選項沒有-;
如果同一命令同時使用多個短選項,多數可合并:-l -d = -ld
長選項:--word, 例如--help, --human-readable
注意:長選項不能合并;
注意:有些選項可以帶參數,此稱為選項參數;
終端介紹:
1、物理終端:我們將顯示器、鍵盤鼠標直接連接在主機上的接口,這樣的終端稱為物理終端,即本機自帶,我們也稱為物理控制臺console表示/dev/console
2、虛擬終端:系統會提供用戶6個虛擬終端,這些虛擬終端是附加在物理終端上的,用軟件方式虛擬實現的終端console默認啟用6個虛擬終端,可以通過快捷鍵進行切換,切換方式為:Ctrl-Alt-F[1-6],表示:/dev/tty#
3、圖形終端:附加在物理終端上,,用軟件方式虛擬實現的功能,但是額外會提供煮面環境,切換方式:Ctrl-Alt-F7
4、偽終端:圖形界面下打開的命令行接口,還有基于ssh協議或telnet協議等遠程打開的命令行界面,表示:/dev/pts/# 。查看當前的終端設備命令:tty COMMAND
交互式程序
GUI:圖形化界面,基于X協議實現的窗口管理器
Linux桌面系統是由:
GNOME,KDE,XFCE
CLI:命令行界面。對應的叫shell程序,用戶需要用過shell實現與系統的交互
shell程序版本:
sh,csh,ksh,bash,zsh
獲取當前環境使用的shell:
localhost ~]# echo $SHELL
顯示當前系統使用的所有shell:
localhost ~]# cat /etc/shells
Linux基礎命令
- ifconfig語法:
ifconfig [-v] [-a] [-s] [interface] ifconfig [-v] interface [aftype] options | address ...
作用:
Unix-like系統中用于查看以及配置網絡接口設備的系統管理工具。其作用等同于ip addr, 作用于類Unix系統中,用于配置、控制及查詢TCP/IP網絡接口的系統管理工具
- echo語法:
echo [SHORT-OPTION]... [STRING]... echo LONG-OPTION
作用:
回顯命令,用來將字符串輸出到終端上。它通常在shell腳本中使用,以將狀態信息輸出到屏幕或文件中
參數:
-n 不要在最后自動換行 -e 若字符串中出現以下字符,則特別加以處理,而不會將它當成一般 文字輸出: \a 發出警告聲; \b 刪除前一個字符; \c 最后不加上換行符號; \f 換行但光標仍舊停留在原來的位置; \n 換行且光標移至行首; \r 光標移至行首,但不換行; \t 插入tab; \v 與\f相同; \\ 插入\字符; \nnn 插入nnn(八進制)所代表的ASCII字符; –help 顯示幫助 –version 顯示版本信息
參考文檔:echom命令詳解
- tty語法:
tty [OPTION]...
作用:
查看當前終端對應的設備
- startx語法:
startx(參數)
作用:
用來啟動X Window,實際上啟動X Window的程序為xinit。
- export語法:
BASH BUILTIN COMMANDS
作用:
設置或顯示環境變量。
參數:
-f:代表[變量名稱]中為函數名稱。 -n:刪除指定的變量。變量實際上并未刪除,只是不會輸出到后續指令的執行環境中。 -p:列出所有的shell賦予程序的環境變量。
參考文檔:linux export 的作用
- pwd語法:
pwd [OPTION]...
作用:
以絕對路徑的方式顯示用戶當前工作目錄
參數:
一般情況下不帶任何參數,如果目錄是鏈接時: -P:顯示出實際路徑,而非使用連接(link)路徑。 –help:顯示幫助信息 –version:顯示版本信息
參考文檔:每天一個linux命令(3):pwd命令
- history語法:
BASH BUILTIN COMMANDS
作用:
用于顯示指定數目的指令命令,讀取歷史命令文件中的目錄到歷史命令緩沖區 系統在關閉后會將現有history內容保存在文件~/.bash_history 系統默認保留1000條
參數:
-c:清空當前歷史命令 -a:將歷史命令緩沖區中命令寫入歷史命令文件中 -r:將歷史命令文件中的命令讀入當前歷史命令緩沖區 -w:將當前歷史命令緩沖區命令寫入歷史命令文件中 n:打印最近n條歷史命令(n為數字)
- shutdown語法:
shutdown [OPTIONS...] [TIME] [WALL...]
作用:
用于安全的關閉/重啟計算機
參數:
- k 不執行任何關機操作,只發出警告信息給所有用戶 - r 重新啟動計算機 ,相關重啟操作命令有shutdown -r ,reboot,init 1等 - h 關機并徹底斷電,等同于halt,相關關機操作命令有halt,shutdown -h now,poweroff,init 0等 - f 快速關機且重啟動時跳過fsck - n 快速關機不經過init程序 - c 取消之前的定時關機 time: - now 馬上 - hh:mm 具體時間 +0 幾分鐘后執行操作 wall:廣播信息至所有用戶都能看見 /]# shutdown -r +15 "15分鐘后將重啟機器"
- poweroff語法:
poweroff [OPTIONS...]
作用:
用于安全的關機
參數:
-n:關閉操作系統時不執行sync操作 -w:不真正關閉操作系統 -d:關閉操作系統時,不將操作寫入日志文件 \ -f:強制關閉系統 -i:關閉系統之前關閉所有的網絡接口 -h:關閉操作系統之前將系統中所有的操作設置為備用模式
- reboot語法:
reboot [OPTIONS...]
作用:
用于安全的重啟
參數:
-d:重新開機時不把數據寫入數據文件/var/tmp/wtmp -f:強制重新開機,不調用shutdown指令的功能 -i:在重開機之前,先關閉所有網絡界面 -n:重開機之前不檢查是否有未結束的程序 -w:僅做測試,并不真正將系統重新開機,只會把重開機的數據寫入/var/log目錄下的wtmp記錄文件
- hwclock語法:
hwclock [function] [option...]
作用:
顯示與設定硬件時鐘。在Linux中有硬件時鐘與系統時鐘等兩種時鐘。硬件時鐘是指主機板上的時鐘設備,也就是通??稍贐IOS畫面設定的時鐘。系統時鐘則是指kernel中的時鐘。當Linux啟動時,系統時鐘會去讀取硬件時鐘的設定,之后系統時鐘即獨立運作。所有Linux相關指令與函數都是讀取系統時鐘的設定。
參數:
--adjust hwclock每次更改硬件時鐘時,都會記錄在/etc/adjtime文件中。使用--adjust參數,可使hwclock根據先前的記錄來估算硬件時鐘的偏差,并用來校正目前的硬件時鐘。 --debug 顯示hwclock執行時詳細的信息。 --directisa hwclock預設從/dev/rtc設備來存取硬件時鐘。若無法存取時,可用此參數直接以I/O指令來存取硬件時鐘。 --hctosys 將系統時鐘調整為與目前的硬件時鐘一致。 --set --date=<日期與時間> 設定硬件時鐘。 --show 顯示硬件時鐘的時間與日期。 -s --systohc 將硬件時鐘調整為與目前的系統時鐘一致。 --test 僅測試程序,而不會實際更改硬件時鐘。 --utc 若要使用格林威治時間,請加入此參數,hwclock會執行轉換的工作。 --version 顯示版本信息。
以硬件為準,把系統調整為與硬件時間相同
~]# hwclock -s --hctosys
以系統為準,把硬件時間調整為與系統一致
~]# hwclock -w --systohc
date語法:
date [OPTION]... [+FORMAT]
date [-u|--utc|--universal] [MMDDhhmm[[CC]YY][.ss]]
作用:
date 可以用來顯示或設定系統的日期與時間
參數(常用):
-d<“字符串”>:顯示字符串所指的日期與時間
-s<“字符串”>:根據字符串設置的日期與時間
%F:年月日
%T:小時分鐘秒
%Y:年
%m:月
%d:日
%H:小時(24小時進制)
%S:秒
%s:秒(從1970-01-01 00:00:00 開始到命令執行那一刻的秒數 unix元年)
日期書寫格式:
date [MMDDhhmm[[CC]YY][.ss]]
~]# date -s '2017-10-12 17:26:00'
五、Linux獲取命令的幫助信息
內建命令與外部命令
內建命令:help COMMAND
語法:help(選項)(參數)
作用:用于顯示shell內部命令的幫助信息
參數:-s:輸出短格式的幫助信息。僅包括命令格式
外部命令: man COMMAND
語法: man(選項)(參數)
SECTION:
NAME:功能性說明
SYNOPSIS:語法格式
DESCRIPTION:描述
OPTIONS:選項
EXAMPLES:使用示例
AUTHOR: 作者
BUGS: 報告程序bug的方式
SEE ALSO: 參考
...
SYNOPSIS:
[]:可選內容;
<>:必須提供的內容;
a|b|c:多選一;
...:同類內容可出現多個;
作用:可以使用man手冊獲取幫助
man使用手冊:
壓縮格式的文件,有章節之分(共8個章節)
/usr/share/man,man1,man 2 ...................
1、用戶命令:
2、系統調用:
3、C庫調用:
4、設備文件及特殊文件
5、文件格式:(配置文件說明)
6、 游戲使用說明
7、雜項
8、管理工具和守護進程
man手冊查看方法/快捷鍵:
空格鍵:向文件尾部翻一頁
B鍵 : 向文件首部翻一頁
CTRL+D :向文件尾部翻半頁
CTRL+K :向文件首部翻半頁
ENTER: 向文件尾部翻一行
K建:向文件首部翻一行
G鍵:跳轉至全文最后一行
#G: 跳轉至制定行 ,eg:2G,3G
1G:跳轉文件首行
文本搜索功能:
/keyword :從文件首部向文件尾部依次查 或者 ?leyword :從文件尾部向文件首部依次查找
keyword 換成需要查找的文件,n/N上下查找 ,查找時不區分大小寫
n:與查找命令方向相同
N:與查找命令方向相反
退出查找:q
六、Linux發行版的基礎目錄名稱命名法則及功能規定
FHS:文件系統層級結構標準
目錄 | 用途 |
---|---|
/bin | 所有用戶可用的基本命令程序文件 |
/sbin | 供系統管理員使用的工具程序 |
/boot | 引導加載器所依賴的靜態文件,一般有內核、initramfs、prub等,開機后該目錄無用,下次重啟會再次啟動 |
/dev | 存儲特殊文件、設備文件,設備有兩種類型 字符設備(線性設備) 塊設備(隨機設備) |
/etc | 存放系統程序的配置文件 |
/home | 普通用戶的家目錄的集中位置,層級結構 /home/USERNAME 一般每個普通的家目錄認為此目錄下能與用戶名同名的子目錄 |
/root | 管理員家目錄 |
/lib | 共享庫文件和內核模塊 為系統啟動和根文件系統上的應用程序(/bin /sbin) 提供共享庫,以及為內核提供內核模塊。 libc.so. 動態連接的C庫, ld 運行時鏈接器/加載器, modules 用于存儲內核模塊的目錄 |
/lib64 | 64位系統特有的存放64位共享庫的路徑 |
/media | 便攜性設備掛載點 cdrom ,floppy等 |
/mnt | 其他文件系統臨時掛載點 |
/opt | 附加應用程序/第三方程序的安裝位置,可選路徑 |
/srv | 當前主機為服務提供的數據 |
/tmp | 為那些會產生臨時文件的程序提供用于存儲臨時文件的目錄,供所有用戶執行寫入操作,有特殊權限 |
/usr | 全局共享只讀數據路徑文件 |
/var | 存儲經常發生變化的數據的目錄 |
/proc | 基于內存的虛擬文件系統,用于為內核及進程存儲其相關信息 ,他們多為內核參數 |
/sys | sysfs虛擬文件系統提供一種比proc更為理想的訪問內核數據的途徑,其主要作用在于為管理linux設備提供一種統一模型的接口 |
文件名使用法則:
1、嚴格區分字符大小寫:file1 File1 FILE1 并不是一個文件
2、目錄也是文件,在同一路徑下,兩個文件不能同名
3、支持使用除”/“以外的任意字符;
4、最長不得超過255個字符
本文來自投稿,不代表Linux運維部落立場,如若轉載,請注明出處:http://www.www58058.com/89157