一、描述計算機的組成及其功能。
計算機系統:是由硬件(Hardware)系統和軟件(Software)系統兩大部分構成。
1、硬件系統:
1)控制器(Control):是整個計算機的中樞神經,其功能是對程序規定的控制信息進行解釋,根據其要求進行控制,調度程序、數據、地址,協調計算機各部分工作及內存與外設的訪問等。
2)運算器(Datapath):運算器的功能是對數據進行各種算術運算和邏輯運算,即對數據進行加工處理。
3)存儲器(Memory):存儲器的功能是存儲程序、數據和各種信號、命令等信息,并在需要時提供這些信息。
4)輸入(Input system):輸入設備是計算機的重要組成部分,輸入設備與輸出設備合稱為外部設備,簡稱外設,輸入設備的作用是將程序、原始數據、文字、字符、控制命令或現場采集的數據等信息輸入到計算機。常見的輸入設備有鍵盤、鼠標器、光電輸入機、磁帶機、磁盤機、光盤機等。
5)輸出(Output system):輸出設備與輸入設備同樣是計算機的重要組成部分,它把外算機的中間結果或最后結果、機內的各種數據符號及文字或各種控制信號等信息輸出出來。微機常用的輸出設備有顯示終端CRT、打印機、激光印字機、繪圖儀及磁帶、光盤機等。
2、系統軟件
系統軟件:是指控制和協調計算機及外部設備,支持應用軟件開發和運行的系統,是無需用戶干預的各種程序的集合,主要功能是調度,監控和維護計算機系統;負責管理計算機系統中各種獨立的硬件,使得它們可以協調工作。系統軟件使得計算機使用者和其他軟件將計算機當作一個整體而不需要顧及到底層每個硬件是如何工作的。(如Windows、Linux、Dos、Unix等操作系統都屬于系統軟件。)
應用軟件:(application software)是用戶可以使用的各種程序設計語言,以及用各種程序設計語言編制的應用程序的集合,分為應用軟件包和用戶程序。應用軟件包是利用計算機解決某類問題而設計的程序的集合,供多用戶使用。計算機軟件分為系統軟件和應用軟件兩大類。應用軟件是為滿足用戶不同領域、不同問題的應用需求而提供的那部分軟件。 它可以拓寬計算機系統的應用領域,放大硬件的功能。(如Word、Excel、QQ等都屬于應用軟件)
二、按系列羅列Linux的發行版,并描述不同發行版之間的聯系與區別。
Linux最早由Linus Benedict Torvalds在1991年開始編寫。在不斷的有杰出的程序員和開發者加入到GNU組織中后,便造就了今天我們所看到的Linux。Linux的發行版本大體可以分為兩類,一類是商業公司維護的發行版本,以著名Redhat(RHEL)為代表;一類是社區組織維護的發行版本,以Debian為代表。
1、Redhat,應稱為Redhat系列,包括RHEL(Redhat Enterprise Linux,為收費版本)、Fedora Core(由Redhat桌面版本發展而來,免費)、CentOS(RHEL的社區克隆版本,免費)。Redhat可以說是在國內使用最多的Linux版本,甚至有人將Redhat等同于Linux。這個版本的特點就是使用人數多,資源多,而且網上的許多Linux教程也都以Redhat為例進行講解。Redhat系列的包管理方式采用的是基于RPM包的YUM包管理方式,包分發方式是編譯好的二進制文件。穩定性方面RHEL和CentOS的穩定性非常好,適合于服務器使用,但是Fedora Core的穩定性較差,最好只用于桌面應用。如果你需要一個比較穩定的服務器系統,而且你不喜歡各種Linux的配置,那么你可以選擇CentOS,在安裝完成后經過簡單的配置就能非常穩定地運行了
2、Debian,或者稱Debian系列,包括Debian和Ubuntu等。Debian是社區類Linux的典范,也最遵循GNU規范。Debian分為三個分支: stable, testing和unstable。其中,unstable為最新的測試版本,有相對較多的bug,適合桌面用戶。testing的版本都經過測試,相對較為穩定。而stable一般只用于服務器,軟件包大都比較過時,但是穩定和安全性都很高。Debian最具特色的是apt-get/dpkg包管理方式。
3、Ubuntu,嚴格來說不能算一個獨立的發行版本,Ubuntu是基于Debian的unstable版本加強而來,可以說Ubuntu是一個擁有Debian所有的優點,以及自己所加強的優點的近乎完美的Linux桌面系統。根據選擇的桌面系統不同,有三個版本可供選擇,基于Gnome的Ubuntu,基于KDE的Kubuntu以及基于Xfc的Xubuntu。特點是界面非常友好,容易上手,對硬件的支持非常全面,是最適合做桌面系統的Linux發行版本。
如果你不需要自己進行定制,不想在系統上浪費太多時間,那么你可以根據自己的愛好在ubuntu、kubuntu以及xubuntu中選一款吧,三者的區別僅僅是桌面程序的不一樣。
4、Gentoo,Gentoo是Linux最年輕的發行版本,因此也吸取之前的發行版本的優點,這也是Gentoo被稱為最完美的Linux發行版本的原因之一。Gentoo最初由DanielRobbins(FreeBSD的開發者之一)創建,由于開發者對FreeBSD的熟識,所以Gentoo擁有媲美FreeBSD的廣受美譽的ports系統——Portage包管理系統。不同于APT和YUM等二進制文件分發的包管理系統,Portage是基于源代碼分發的,必須編譯后才能運行,對于大型軟件而言比較慢,不過正因為所有軟件都是在本地機器編譯的,在經過各種定制的編譯參數優化后,能將機器的硬件性能發揮到極致。Gentoo是所有Linux發行版本里安裝最復雜的,但是又是安裝完成后最便于管理的版本,也是在相同硬件環境下運行最快的版本。
如果你需要一個桌面系統,而且還想非常靈活的定制自己的Linux系統,那么你完全可以選擇Gentoo。
5、FreeBSD,FreeBSD并不是一個Linux系統,但FreeBSD與Linux支持的硬件環境比較一致,采用的軟件也比較類似,用戶也有許多重合。所以可以將FreeBSD視為一個Linux版本來比較。FreeBSD擁有兩個分支:stable和current。其中,stable是穩定版,而current則是添加了新技術的測試版。
FreeBSD采用Ports包管理系統,與Gentoo類似,基于源代碼分發,必須在本地機器編后后才能運行,但是Ports系統沒有Portage系統使用簡便,使用起來稍微復雜一些。FreeBSD的最大特點就是穩定和高效,是作為服務器操作系統的最佳選擇,但對硬件的支持沒有Linux完備,所以并不適合作為桌面系統。
如果你需要的是一個非常非常穩定的服務器系統,那么你的唯一選擇就是FreeBSD。
三、描述Linux的哲學思想,并按照自己的理解對其進行解釋性描述。
1、一切皆文件,把幾乎所有的資源統統定義為文件形式,包括硬件設備和通信接口等
2、有眾多功能單一的程序組成:一個程序只做一件事,并且做好,組合小程序完成復雜的任
3、盡量避免跟用戶交互,目標:易于以編程的方式實現自動化任務
4、使用文本文件保存配置信息
四、說明Linux系統上命令的使用格式;詳細介紹ifconfig、echo、tty、startx、export、pwd、history、shutdown、poweroff、reboot、hwclock、date命令的使用,并配合相應的示例來闡述。
1、ifconfig
功能說明:查看網絡接口參數
語法格式: ifconfig [接口]
示例:
[root@joylin ~]# ifconfig ens33 ens33: flags=4163<UP,BROADCAST,RUNNING,MULTICAST> mtu 1500 inet 10.0.0.2 netmask 255.255.255.0 broadcast 10.0.0.255 inet6 fe80::20c:29ff:fe5a:1ba8 prefixlen 64 scopeid 0x20<link> ether 00:0c:29:5a:1b:a8 txqueuelen 1000 (Ethernet) RX packets 1261 bytes 112522 (109.8 KiB) RX errors 0 dropped 0 overruns 0 frame 0 TX packets 1064 bytes 223704 (218.4 KiB) TX errors 0 dropped 0 overruns 0 carrier 0 collisions 0
2、echo
功能說明:顯示一行文本
語法格式:echo [-neE] [arg …]
常用參數:
-n:不換行
-e:轉義符生效
示例:
[root@joylin test]# echo $SHELL /bin/bash [root@joylin test]# echo $PWD /test [root@joylin test]# echo $OLDPWD /root [root@joylin test]# echo $LANG zh_CN.UTF-8 [root@joylin test]# echo "hellow world" hellow world [root@joylin test]# echo "hellow\nworld" hellow\nworld [root@joylin test]# echo -e "hellow\nworld" hellow world [root@joylin test]# echo -n "hellow" hellow[root@joylin test]#
3、tty
功能說明:查看當前終端設備
示例:
[root@joylin ~]# ls /dev/pts/ 0 1 2 ptmx [root@joylin ~]# tty /dev/pts/0
4、startx
功能說明:startx命令用來啟動X Window,實際上啟動X Window的程序為xinit。
示例:
[root@joylin ~]# startx
5、export
功能說明:用于將shell變量輸出為環境變量,或者將shell函數輸出為環境變量
示例:
root@joylin ~]# export declare -x HISTCONTROL="ignoredups" declare -x HISTSIZE="1000" declare -x HOME="/root" declare -x HOSTNAME="joylin" declare -x LANG="zh_CN.UTF-8" declare -x LESSOPEN="||/usr/bin/lesspipe.sh %s" declare -x LOGNAME="root" [root@joylin ~]# export aa="11" [root@joylin ~]# echo $aa 11 [root@joylin ~]# bb=22 [root@joylin ~]# export bb [root@joylin ~]# echo $bb 22
6、pwd
功能說明:printing working directory 顯示當前目錄
相關的環境變量:
$PWD:當前工作目錄
$OLDPWD:上一次的工作目錄
示例:
[root@joylin test]# cd /test/ [root@joylin test]# pwd /test [root@joylin test]# cd /root/ [root@joylin ~]# pwd /root
7、history
功能說明:查看命令歷史
命令歷史:shell進程會在其會話中保存此前用戶提交執行的命令
~]# history,指包括文件和內存中的命令歷史
定制histroy的功能,可通過環境變量實現
HISTSIZE:shell進程可保留的命令歷史的條數
HISTFILE:持久保存命令歷史的文件
HISTFILESIZE:命令歷史文件的大小
history #:顯示最近的#跳命令
調用命令歷史列表中的命令
1)!#:再一次執行歷史列表中的第#條命令
2)!!:再一次執行上一條命令
3)!STRING:再一次執行命令歷史列表中最近一個以STRING開頭的命令
注意:命令的重復執行有時候一倆與冪等性
4)調用上一個命令的命令最后一個參數
快捷鍵:ESC,.
字符串:!$
控制命令歷史記錄的方式:
環境變量:HISTCONTROL
ignoredups:忽略重復命令
ignorespace:忽略以空白字符開頭的命令
ignoreboth:以上兩者同時生效
語法格式:
history: history [-c] [-d 偏移量] [n]
或 history -anrw [文件名]
或 history -ps 參數 [參數…] 顯示或操縱歷史列表。
常用參數:
-c:清空命令歷史
-d offset:刪除指定命令歷史
-r:從文件讀取命令歷史到歷史列表中
-w:把歷史列表中的命令追加到歷史文件中
示例:
[root@joylin test]# echo $HISTSIZE 1000 [root@joylin test]# echo $HISTFILE /root/.bash_history [root@joylin test]# echo $HISTFILESIZE 1000 [root@joylin test]# history 10 #顯示最近10條歷史命令 697 who -r 698 w 699 clear 700 history 701 echo $HISTSIZE 702 echo $HISTFILE 703 echo $HISTFILESIZE 704 history 695 705 history 7 706 history 10 [root@joylin test]# !701 echo $HISTSIZE 1000 [root@joylin test]# echo $HISTSIZE 1000 [root@joylin test]# !! echo $HISTSIZE 1000 [root@joylin test]# !cl clear [root@joylin test]# history -d 700 710 ##指定刪除700-710之間的歷史命令 [root@joylin test]# history -c #清空命令歷史 [root@joylin test]# history 1 history [root@joylin test]# history –r #從命令歷史文件中讀取到歷史列表 [root@joylin test]# history |wc -l 608 [root@joylin test]# history –w #把歷史列表中的命令追加到歷史文件中
8、shutdown
功能說明:關閉所有程序
語法格式:shutdown [OPTION]… TIME [WALL]
常用參數:
-h:halt 關機
-r:reboot 重啟
-c:cancel 發送告警信息所有給用戶
TIME:
now
hh:mm
+m
WALL
示例:
[root@joylin ~]# shutdown -c "system will shutdown after 5 minutes" [root@joylin ~]# Broadcast message from root@joylin (Thu 2017-02-16 20:25:46 CST): system will shutdown after 5 minutes The system shutdown has been cancelled at Thu 2017-02-16 20:26:46 CST
9、poweroff
功能說明:關閉計算機操作系統并且切斷系統電源
10、reboot
功能說明:重啟
語法格式:reboot 選擇
常用參數:
-w:僅做測試,并不真正將系統重新開機
示例:
[root@joylin ~]# reboot -w
11、hwclock
功能說明:顯示或設定硬件時鐘
語法格式:hwclock [function] [option…]
常用參數:
-s, –hctosys 將硬件時鐘同步到系統時鐘(set the system time from the hardware clock )
-w, –systohc 將系統時鐘同步到硬件時鐘(set the hardware clock to the current system time )
示例:
[root@joylin test]# date -s "2015-02-16" 2015年 02月 16日 星期一 00:00:00 CST [root@joylin test]# hwclock 2015年02月16日 星期一 00時03分47秒 -0.851829 秒 [root@joylin test]# ntpdate ntp1.aliyun.com 16 Feb 22:00:04 ntpdate[7895]: step time server 182.92.12.11 offset 63237573.891571 sec [root@joylin test]# date 2017年 02月 16日 星期四 22:00:09 CST [root@joylin test]# hwclock -s [root@joylin test]# date 2015年 02月 16日 星期一 00:04:42 CST [root@joylin test]# date 2015年 02月 16日 星期一 00:13:02 CST [root@joylin test]# ntpdate ntp1.aliyun.com 16 Feb 22:09:54 ntpdate[8061]: step time server 182.92.12.11 offset 63237337.220648 sec [root@joylin test]# date 2017年 02月 16日 星期四 22:09:57 CST [root@joylin test]# hwclock 2015年02月16日 星期一 00時14分21秒 -0.177806 秒 [root@joylin test]# hwclock -w [root@joylin test]# hwclock 2017年02月16日 星期四 22時10分16秒 -0.787362 秒
12、date
功能說明:顯示時間和日期
語法格式:
date [OPTION]… [+FORMAT格式符]
date [MMDDhhmm[[CC]YY][.ss]]
常用參數:
%F:按照指定的格式顯示
%D:直接顯示日期mm/dd/yy
%H:顯示小時
%M:顯示分鐘
%S:顯示秒
%m:顯示月份
示例:
[root@joylin test]# date +%c 2017年02月16日 星期四 21時46分16秒 [root@joylin test]# date 2017年 02月 16日 星期四 21:46:32 CST [root@joylin test]# date +%c 2017年02月16日 星期四 21時46分36秒 [root@joylin test]# date +%F 2017-02-16 [root@joylin test]# date +%T 21:47:10 [root@joylin test]# date +%d 16 [root@joylin test]# date +%Y 2017 [root@joylin test]# date +%d 16 [root@joylin test]# date +%D 02/16/17 [root@joylin test]# date +%F 2017-02-16 [root@joylin test]# date +%F-%T 2017-02-16-21:49:14 [root@joylin test]# date +%F--%T 2017-02-16--21:49:31 [root@joylin test]# date +%Y 2017 [root@joylin test]# date +%m 02 [root@joylin test]# date +%d 16 [root@joylin test]# date +%H 21 [root@joylin test]# date +%M 50 [root@joylin test]# date +%S 30
五、如何在Linux系統上獲取命令的幫助信息,請詳細列出,并描述man文檔的章節是如何劃分的。
1、獲取命令的使用幫助
1)內部命令:help COMMAND
2)外部命令:
a.命令自帶簡要格式的使用幫助
COMMAND –help
b.使用手冊:manual
位置:/usr/share/man
#man COMMAND
例如:
NAME:功能性說明
SYNOPSIS:語法格式
DESCRIPTION:描述
OPTIONS:選項
EXAMPLES:示例
AUTHOR:作者
REPORTING BUGS:報告程序bug的方式
COPYRIGHT:版權
SEE ALSO:參考
[]:可選內容
<>:必須提供的內容
a|b|c:多選一
…:同類內容可出現多個
使用手冊:壓縮格式的文件,有章節之分
/usr/share/man1,man2…/
2、 man的章節功能介紹:
1)用戶命令
2)系統調用
3)C庫調用
4)設備文件及特殊文件
5)文件格式(配置文件格式)
6)游戲使用幫助
7)雜項
8)管理工具及守護進程
語法格式:#man CHAPTER COMMAND
注意:并非每個COMMAND在所有章節都有手冊
查看命令在那一章節:#whatis COMMAND
注意:其執行過程是查詢數據庫進行的
手動更新數據庫:#makewhatis
man命令打開手冊后的操作方法:
翻屏:
空格鍵:向文件末尾翻一屏
b:向文件首部翻一屏
ctrl+d:向文件尾部翻半屏
ctrl+u:向文件首部翻半屏
回車鍵:向文件尾部翻一行
k:向文件首部翻一行
G:跳轉至最后一行
G:跳轉至指定行
1G:跳轉至文件首部
退出:q(quit)
選項:
-M:到指定目錄下查找命令手冊并打開之
六、請羅列Linux發行版的基礎目錄名稱命名法則及功用規定
一、Linux的文件顏色:
藍色:表示目錄
青色:表示鏈接
黑色:表示文件
二、Linux目錄結構:
1、/- 根
每一個文件和目錄從根目錄開始。
只有root用戶具有該目錄下的寫權限。請注意,/root是root用戶的主目錄,這與/.不一樣
2、/bin-用戶二進制文件
包含二進制可執行文件。
在單用戶模式下,你需要使用的常見Linux命令都位于此目錄下。系統的所有用戶使用的命令都設在這里。
例如:ps、ls、ping、grep、cp
3、/sbin目錄 – 系統二進制文件
就像/bin,/sbin同樣也包含二進制可執行文件。
但是,在這個目錄下的linux命令通常由系統管理員使用,對系統進行維護。例如:iptables、reboot、fdisk、ifconfig、swapon命令
4、/etc – 配置文件
包含所有程序所需的配置文件。
也包含了用于啟動/停止單個程序的啟動和關閉shell腳本。例如:/etc/resolv.conf、/etc/logrotate.conf
hosts:設備名稱(或域名)到ip地址的解析,相當于本地存在的dns功能。見下圖:
5、/dev – 設備文件
包含設備文件。
這些包括終端設備、USB或連接到系統的任何設備。例如:/dev/tty1、/dev/usbmon0
6、/proc – 進程信息
包含系統進程的相關信息。
這是一個虛擬的文件系統,包含有關正在運行的進程的信息。例如:/proc/{pid}目錄中包含的與特定pid相關的信息。
這是一個虛擬的文件系統,系統資源以文本信息形式存在。例如:/proc/uptime
7、/var – 變量文件
var代表變量文件。
這個目錄下可以找到內容可能增長的文件。
這包括 – 系統日志文件(/var/log);包和數據庫文件(/var/lib);電子郵件(/var/mail);打印隊列(/var/spool);鎖文件(/var/lock);多次重新啟動需要的臨時文件(/var/tmp);
8、/tmp – 臨時文件
包含系統和用戶創建的臨時文件。
當系統重新啟動時,這個目錄下的文件都將被刪除。
9、/usr – 用戶程序
包含二進制文件、庫文件、文檔和二級程序的源代碼。
/usr/bin中包含用戶程序的二進制文件。如果你在/bin中找不到用戶二進制文件,到/usr/bin目錄看看。例如:at、awk、cc、less、scp。
/usr/sbin中包含系統管理員的二進制文件。如果你在/sbin中找不到系統二進制文件,到/usr/sbin目錄看看。例如:atd、cron、sshd、useradd、userdel。
/usr/lib中包含了/usr/bin和/usr/sbin用到的庫。
/usr/local中包含了從源安裝的用戶程序。例如,當你從源安裝Apache,它會在/usr/local/apache2中。
10、/home – HOME目錄
所有用戶用home目錄來存儲他們的個人檔案。
例如:/home/john、/home/nikita
11、/boot – 引導加載程序文件
包含引導加載程序相關的文件。
內核的initrd、vmlinux、grub文件位于/boot下。
例如:initrd.img-2.6.32-24-generic、vmlinuz-2.6.32-24-generic
12、/lib – 系統庫
包含支持位于/bin和/sbin下的二進制文件的庫文件.
庫文件名為 ld或lib.so.*
例如:ld-2.11.1.so,libncurses.so.5.7
13、/opt – 可選的附加應用程序
opt代表可選的。
包含從個別廠商的附加應用程序。
附加應用程序應該安裝在/opt/或者/opt/的子目錄下。
14、/mnt – 掛載目錄
臨時安裝目錄,系統管理員可以掛載文件系統。
15、/media – 可移動媒體設備
用于掛載可移動設備的臨時目錄。
舉例來說,掛載CD-ROM的/media/cdrom,掛載軟盤驅動器的/media/floppy;
16、/srv – 服務數據
srv代表服務。
包含服務器特定服務相關的數據。
例如:/srv/cvs包含cvs相關的數據。
原創文章,作者:jaylin,如若轉載,請注明出處:http://www.www58058.com/69596
總結的很精練,加油