1、描述計算機的組成及其功能。
主要分為五個部分:
控制器:計算機的中樞神經,控制總線使用權限、尋址、管理各類資源的分配。
運算器:對數據進行各種算數運算和邏輯運算。
存儲器:通常指內存RAM,CPU需要運行的程序以及數據都存放在存儲器中供CPU調用處理。
(以上三者為計算機核心的三大部件,依靠這三大部件即可完成核心工作。)
輸入設備:比如鼠標、鍵盤,使用戶向計算機輸入數據及下指令。
輸出設備:輸出數據加工后的結果。
2、按系列羅列Linux的發行版,并描述不同發行版之間的聯系與區別。
三大主流:
Debian:僅以社區支撐,黑客人物更喜歡,因為發行版中加入的東西更少,使用難度相對較高;dpkg(軟件包的后綴是deb),apt-get
Ubuntu(早期為了桌面應用而發行,目前server也做的不錯)
mint
Knoppix(以安全著稱,短小精悍)
Slackware:基于SLS,這哥們很快嗝屁了
S.u.S.E:界面華麗,歐洲人民喜好;rpm,zypper
SLES
OpenSUSE
RedHat:美國、臺灣和大陸多;rpm(已成為Linux工業標準),yum(未來將被dnf替代)
企業版的RHELRedHat Enterprise Linux(>=18個月)
CentOS:Community ENTerprise OS:RHEL只提供源碼的更新程序包,想被支持,就得付費,后來有一部分組織 看不下去了,將RHEL重新編譯后以新的發行版發出,可以認為centos是REHL的山寨版
個人版的Fedora Core(6個月)
其余:
Gentoo(基于Enoch)
Arch:馬哥說包管理工具是port,網上查以及同事介紹都是pacman
3、描述Linux的哲學思想,并按照自己的理解對其進行解釋性描述。
(1)、一切皆文件:
優點是全部都可以通過系統調用open(),read(),write(),close(),delete(),create()向文件系統進行操作;
(2)、由眾多功能單一的程序組成:
一個程序專心做一件事;
多和大的事情通過管道之類的方式組合完成;
(3)、盡量避免跟用戶交互:
易于以編程的方式實現自動化任務;
(4)、使用文本文件保存配置信息;
4、說明Linux系統上命令的使用格式;詳細介紹ifconfig、echo、tty、startx、export、pwd、history、shutdown、poweroff、reboot、hwclock、date命令的使用,并配合相應的示例來闡述。
ifconfig:
查看網卡接口信息,主要用于查看IP地址,也可以啟用和關閉某個網卡接口。
使用man查看的時候,有說明該命令要被淘汰掉了,被命令ip取而代之。
This program is obsolete! For replacement check ip addr and ip link. For statistics use ip -s link.
echo:
echo [SHORT-OPTION]… [STRING]…
-n:不再輸出尾部的新行;
-e:啟用反斜線轉義功能;
STRING可以使用引號:
單引號:強引用,變量引用不執行替換;
雙引號:弱引用,變量引用會執行替換;
注意:變量引用的正規符號
${variable_name}
另外,echo還可以帶有顏色輸出;
tty:
打印連接到標準輸出的終端的文件名。
~]# tty
/dev/pts/0
startx:
初始化一個X(圖形)會話。
startx是一個shell腳本,作為xinit的前端,xinit提供了一個稍微漂亮的用戶接口用于運行一個X窗口系統的會話,一般不帶任何參數。
export:
為shell變量設置輸出屬性。
語法是export [-fn] [name[=value] …]或者export -p
標志每個NAME并自動輸出到隨后用于執行命令的環境,如果VALUE被提供了,那么就在輸出前賦值
pwd:
print working directory,打印工作目錄,即顯示當前所在的目錄
history:
history [-c] [-d offset] [n] or history -anrw [filename] or history -ps arg [arg…]
顯示或者操作歷史列表。這里的歷史指的是以往執行過的命令的歷史記錄。
顯示帶有行號的歷史列表,每個被修改的條目都會被加上一個前綴“*”。參數N表示列出最后N行條目。
如果FILENAME被給出了,那么它將被作為歷史文件所使用。否則,就看$HISTFILE這個變量有沒有值,最后看~/.bash_history。
cat ~/.bash_history可以發現我們的歷史命令都保存在這個文件里面。
如果$HISTTIMEFORMAT被設置或者非空,它的值被用于格式化顯示歷史命令(一般都是打時間戳之類的),具體的格式,參照strftime(3),也就是要你man 3 strftime了。反之就沒時間戳了。
showdown:
shutdown [OPTION]… TIME [MESSAGE]
OPTIONS:
-h:請求系統在bring down之后被halt或者power off,由系統自行決定。一般關機用這個。
-H:請求系統在bring down之后被halt。
-P:請求系統在bring down之后被power off。
-r:重啟
-c:取消
-k:只發送廣播信息但是不關機
TIME:
now:現在執行
hh:mm:具體時間點執行
+m:幾分鐘后執行
MESSAGE:
shutdown執行時候廣播的信息
poweroff:
關機
reboot:
重啟
知識補充:
時間分為硬件時間和系統時間,系統啟動時從硬件讀取日期和時間并寫入到系統時間中,讀取完畢就不再與硬件時間關聯。系統時間根據內核頻率相關,比如內核震動頻率為50Hz的話,當內核震動50次的時候,系統會認為時間已過去1秒。
hwclock:
查看和修改硬件時間
clock是hwclock的字符鏈接;顯示或設定硬件時間;
-s,–hctosys:將系統時間設置為硬件時間;
-w,–systohc:將硬件時間設置為當前的系統時間;
to前面是什么時間,就以什么為準
date:
查看系統時間
date [OPTION]… [+FORMAT]
修改系統時間
date [MMDDhhmm[[CC]YY][.ss]]
設置系統時間也可以通過STRING的方式操作
date -s “STRING”
5、如何在Linux系統上獲取命令的幫助信息,請詳細列出,并描述man文檔的章節是如何劃分的。
首先應當判斷命令是內部命令還是外部命令,可以使用type命令來判斷。
~]# type COMMAND
如果命令是內部命令的話:
~]# help COMMAND
如果命令是外部命令的話,則有多種辦法:
(1)命令自帶簡要格式的使用幫助
~]# COMMAND –help
(2)使用手冊(比較詳細):manual
位置:/usr/share/man/
~]# man COMMAND
文檔結構:
NAME:簡要功能說明
SYNOPSIS:語法格式
DESCRIPTION:描述
OPTIONS:選項
EXAMPLES:使用實例
AUTHOR:作者
BUGS:報告程序BUG給作者的方式
SEE ALSO:另請參閱
…
SYNOPSIS:
[]:可選內容;
<>:必填選項;
a|b:多選一內容;
…:同類內容可出現多個;
使用手冊:壓縮格式的文件,有章節之分;
/usr/share/man/
man1,man2,…
1、用戶命令;
2、系統調用;
3、C庫調用;
4、設備文件及特殊文件;
5、配置文件格式說明;
6、游戲;
7、雜項;
8、管理工具及守護進程;
(3)info COMMAND
獲取命令的在線文檔;(馬哥不推薦)
(4)很多應用程序自帶幫助文檔:/usr/share/doc/APP-VERSION
README:程序相關信息;
INSTALL:安裝幫助;
CHANGES:版本變更信息;
(5)主流發行版的官方文檔
http://www.redhat.com/doc
(6)程序的官方文檔:
國外官網上的document(最權威)
馬哥說國人的書籍大部分是抄襲國外官網站點的doc
(7)善用Google搜索引擎
6、請羅列Linux發行版的基礎目錄名稱命名法則及功用規定。
FHS:
Filesystem Hierarchy Standard文件系統層級結構標準
/bin:所有用戶可用的基本命令程序文件;
/sbin:供系統管理使用的工具程序;
/boot:引導裝載程序的靜態文件;
kernel,initramfs(initrd),grub等;
/dev:特殊文件(可能是虛擬設備)或設備文件;
設備有兩種類型:
字符設備(線性設備,有時序):鍵盤和顯示器;
塊(block)設備(隨機設備):硬盤;
/etc:系統程序的配置文件,僅為靜態;
/home:普通用戶的家目錄,是一個可選的目錄,程序不應該安裝在此;
/root:root用戶的家目錄,也是可選的;
/lib:基礎的共享庫和內核模塊,主要為/bin和/sbin程序提供庫文件;
libc.so.*:動態鏈接C庫
ld*:運行時鏈接器/裝載器
/lib/modules:可裝載的內核模塊
/lib<qual>:qual表示系統的位數,如果64位系統的話,那么就是/lib64;
/media:可移除的媒體掛載點,一般是掛光盤硬盤之類的;
/mnt:文件系統臨時掛載點;
/opt:option縮寫,附加程序軟件包,一般是不重要的程序;
/src:此系統為服務提供的數據,幾乎沒使用;
/tmp:存放臨時文件;
/usr:usr Hierarchy,全局共享的只讀數據路徑(s:sharable,r:read-only data);這是一個單獨的層級結構,僅次于根目錄層級結構的重要性;
bin,sbin
lib,lib64
include:C程序頭文件;
share:架構獨立的路徑,對于centos來說是存放命令手冊之類的
X11R6:X-windows程序的安裝路徑;
src:源碼文件路徑;
local:local Hierarchy,又是一個層級,字面意義理解為本地應用程序,早期第三方是安裝在/opt下的,現在大部分都是在/usr/local下;
/var:var Hierarchy,又是一個層級結構;包含變化的數據文件,比如日志文件、運行文件(包含PID)、鎖文件
/proc和/sys主要用于未來的系統調優中涉及到!
/proc:內核和進程信息的基于內存的虛擬文件系統;
為內核和進程存儲相關信息的,多為內核參數,例如:
net.ipv4.ip_forward,虛擬為net/ipv4/ip_forward文件,參數的值是虛擬文件的內容
/sys:
sysfs虛擬文件系統提供了一種比proc更為理想的訪問內核的途徑,也是基于內存的虛擬文件系統;
為管理Linux設備提供一種統一模型的接口;
原創文章,作者:N24_alongdidi,如若轉載,請注明出處:http://www.www58058.com/57113
總結的還是比較全的,能在排版上多注意下的話,會更好~~繼續加油~