1、描述計算機的組成及其功能。
根據馮·諾依曼體系計算機有中央處理器、主存儲器、輸入/輸出三個子系統組成。
1.中央處理器
CPU(Central Processing Unit)用于數據運算。CPU有控制單元、算數邏輯單元、寄存器組組成。
(1)控制單元:控制各個子系統操作
(2)算數邏輯單元:對數據進行邏輯、移位和算數運算
-
邏輯運算:有與、或、非或異或邏輯運算符。邏輯運算把輸入數據作為二進制位模式,運算的結果也是二進制位模式。
-
移位運算:邏輯移位運算用來對二進制位模式向左或向右的移位。邏輯算數運算應用于整數。主要用途是用2除或乘一個整數。
-
算數運算:加、減、乘、除等,用于整數和浮點數。
2.主存儲器
存儲單元的集合,每一個存儲單位都有唯一的標識,成為地址。數據以成為字的位組的形式在內存中傳入和傳出。
存儲器中標識的獨立的地址單元的總數成為地址空間。每個字都是通過地址來標識的。內存地址用無符號二進制整數定義。
存儲器的類型:
-
隨機存儲器(Random Access Memory,簡稱RAM):使用存儲單元地址來隨機存取一個數據項,而不需要存取位于它前面的所有數據項。
-
只讀存儲器(Read Only Memory,簡稱ROM):內容是由內存制造商寫進去的。用戶只能讀但不能寫。優點:易失性;當切斷電源后,數據額也不會丟失。通常用來存儲哪些關機后不能丟失的程序或數據。ROM存儲開機時運行的程序。
3.輸入/輸出:Input/Output,簡稱IO
輸入:用于輸入數據以便計算機處理數據
輸出:計算機輸出數據加工的結
I/O分兩種類型:
-
存儲設備:
磁介質存儲設備:磁盤、磁帶等;
介質存儲設備:一種新技術、使用激光技術來存儲和讀取數據。有CD-ROM,CD-R、CD-RW,DVD等 ;
-
非存儲設備:鍵盤、監視器、打印機等。
——————————————————————————————————————
2、按系列羅列Linux的發行版,并描述不同發行版之間的聯系與區別。
Linux發行版是由GNU開源組織開源的GNU/Linux內核以及個發行商應用程序進行打包進行編譯成完整的操作系統。它使用自由、靈活、編譯了安裝操作系統便于安裝管理整個操作系統。各個發行版使用的不用的包管理器、以及按付費服務或捐贈模式進行商業操作。
常用Linux發行版:
-
RedHat系列:Red Hat 公司的 Linux 發行版,面向商業市場,包括大型機。Red Hat Enterprise Linux 常簡稱為 RHEL。.rpm包文件,rpm包管理工具,yum前段工具(事務處理有問題),后來參考zypper開發dnf工具
-
RHEL:RHEL 是商業版本,并不提供免費下載和使用。需要購買 Red Hat 公司的商業服務才能合法取得,并得到商業支持。目前有RHEL5、RHEL6、RHEL7版本。
-
CentOS:RHEL 的開源衍生版。
發行版 | 免費下載 | 免費使用 | 技術支持 (商業) |
RHEL | 否 | 否 | 付費 |
---|---|---|---|
CentOS | 是 | 是 | 不提供 |
-
Fedora:它是一套功能完備、更新快速的免費操作系統,而對贊助者Red Hat公司而言,它是許多新技術的測試平臺,被認為可用的技術最終會加入到Red Hat Enterprise Linux中。Fedora大約每六個月發布新版本。.deb包文件,dpkg包管理器,apt-get前段工具。
-
S.u.S.E Linux:德國的 SuSE Linux AG公司發行維護的Linux發行版。2004年這家公司被Novell公司收購。原是以Slackware Linux為基礎,并提供完整德文使用界面的產品。.rpm包,zypper前段工具。
-
ArchLinux:可定制的發行版,你獲得的只是一個基礎系統,然后你可以在它上面建立屬于你個人的發行版。pacman包管理器。
-
Gentoo:Linux的自由操作系統,它能為幾乎任何應用程序或需求自動地作出優化和定制。portage包管理器
-
LFS:Linux From Scratch,不是程序文件,是編譯安裝指南??梢愿鶕撝改线M行自定義編譯Linux系統。
——————————————————————————————————————————
3、描述Linux的哲學思想,并按照自己的理解對其進行解釋性描述。
1. 一切皆文件。幾乎所有的資源統統抽象為文件形式;包括硬件設備,甚至通信接口等;
2. 由眾多單一的小程序組成;組合小程序完成復雜任務
3. 盡量避免跟用戶交互;易于以編程的方式實現自動化任務
4. 使用文本格式保存配置信息
——————————————————————————————————————————
4、說明Linux系統上命令的使用格式;詳細介紹ifconfig、echo、tty、startx、export、pwd、history、shutdown、poweroff、reboot、hwclock、date命令的使用,并配合相應的示例來闡述。
ifconfig命令:配置網絡接口,即查看或設置網絡接口
查看ifconfig命令所在即幫助文件所在文件:
ifconfig命令所在路徑:/usr/sbin/ifconfig
ifconfig命令幫助文件:/usr/share/man/man8/ifconfig.8.gz
補充:ifconfig命令幫助 # man 8 ifconfig
[root@localhost tmp]# whereis ifconfig ifconfig: /usr/sbin/ifconfig /usr/share/man/man8/ifconfig.8.gz
ifconfig命令所在包命:
[root@localhost tmp]# rpm -qf /usr/sbin/ifconfig net-tools-2.0-0.17.20131004git.el7.x86_64
常用選項:
-a 顯示所有當前激活或非激活的網絡接口
CentOS 7
eno16777736:網絡接口信息
inet:IP地址, netmask:子網掩碼地址, boradcast:廣播地址
lo:本地回環網卡信息
[root@localhost tmp]# ifconfig -a eno16777736: flags=4163<UP,BROADCAST,RUNNING,MULTICAST> mtu 1500 inet 192.168.1.71 netmask 255.255.255.0 broadcast 192.168.1.255 inet6 fe80::20c:29ff:fe4e:2155 prefixlen 64 scopeid 0x20<link> ether 00:0c:29:4e:21:55 txqueuelen 1000 (Ethernet) RX packets 22949 bytes 2045847 (1.9 MiB) RX errors 0 dropped 0 overruns 0 frame 0 TX packets 15933 bytes 2936252 (2.8 MiB) TX errors 0 dropped 0 overruns 0 carrier 0 collisions 0 lo: flags=73<UP,LOOPBACK,RUNNING> mtu 65536 inet 127.0.0.1 netmask 255.0.0.0 inet6 ::1 prefixlen 128 scopeid 0x10<host> loop txqueuelen 0 (Local Loopback) RX packets 0 bytes 0 (0.0 B) RX errors 0 dropped 0 overruns 0 frame 0 TX packets 0 bytes 0 (0.0 B) TX errors 0 dropped 0 overruns 0 carrier 0 collisions 0
interface 顯示指定的接口名稱的信息
[root@localhost tmp]# ifconfig eno16777736 eno16777736: flags=4163<UP,BROADCAST,RUNNING,MULTICAST> mtu 1500 inet 192.168.1.71 netmask 255.255.255.0 broadcast 192.168.1.255 inet6 fe80::20c:29ff:fe4e:2155 prefixlen 64 scopeid 0x20<link> ether 00:0c:29:4e:21:55 txqueuelen 1000 (Ethernet) RX packets 23042 bytes 2054655 (1.9 MiB) RX errors 0 dropped 0 overruns 0 frame 0 TX packets 15972 bytes 2940594 (2.8 MiB) TX errors 0 dropped 0 overruns 0 carrier 0 collisions 0
up:啟用接口
<UP這是指的是啟用當前網絡接口
[root@localhost tmp]# ifconfig eno16777736 up [root@localhost tmp]# ifconfig eno16777736 eno16777736: flags=4163<UP,BROADCAST,RUNNING,MULTICAST> mtu 1500 inet 192.168.1.71 netmask 255.255.255.0 broadcast 192.168.1.255 inet6 fe80::20c:29ff:fe4e:2155 prefixlen 64 scopeid 0x20<link> ether 00:0c:29:4e:21:55 txqueuelen 1000 (Ethernet) RX packets 23223 bytes 2070052 (1.9 MiB) RX errors 0 dropped 0 overruns 0 frame 0 TX packets 16080 bytes 2953145 (2.8 MiB) TX errors 0 dropped 0 overruns 0 carrier 0 collisions 0
down:禁用接口
[root@localhost tmp]# ifconfig eno16777736 down [root@localhost tmp]# ifconfig eno16777736 eno16777736: flags=4163<BROADCAST,RUNNING,MULTICAST> mtu 1500 ether 00:0c:29:4e:21:55 txqueuelen 1000 (Ethernet) RX packets 23223 bytes 2070052 (1.9 MiB) RX errors 0 dropped 0 overruns 0 frame 0 TX packets 16080 bytes 2953145 (2.8 MiB) TX errors 0 dropped 0 overruns 0 carrier 0 collisions 0
address:臨時設置IP地址分配各指定的接口,關閉系統之后無效
[root@localhost ~]# ifconfig eno33554984 address 172.168.10.10/16 [root@localhost ~]# ifconfig eno33554984 eno33554984: flags=4163<UP,BROADCAST,RUNNING,MULTICAST> mtu 1500 inet 172.168.10.10 netmask 255.255.0.0 broadcast 172.168.255.255 inet6 fe80::20c:29ff:fe4e:215f prefixlen 64 scopeid 0x20<link> ether 00:0c:29:4e:21:5f txqueuelen 1000 (Ethernet) RX packets 162 bytes 14702 (14.3 KiB) RX errors 0 dropped 0 overruns 0 frame 0 TX packets 92 bytes 11801 (11.5 KiB) TX errors 0 dropped 0 overruns 0 carrier 0 collisions 0
netmask:設置子網掩碼地址
*可是設置IP地址的時候使用/16方式設置子網掩碼
[root@localhost ~]# ifconfig eno33554984 address 172.168.10.10 netmask 255.255.0.0 [root@localhost ~]# ifconfig eno33554984 eno33554984: flags=4163<UP,BROADCAST,RUNNING,MULTICAST> mtu 1500 inet 172.168.10.10 netmask 255.255.0.0 broadcast 172.168.255.255 inet6 fe80::20c:29ff:fe4e:215f prefixlen 64 scopeid 0x20<link> ether 00:0c:29:4e:21:5f txqueuelen 1000 (Ethernet) RX packets 172 bytes 15690 (15.3 KiB) RX errors 0 dropped 0 overruns 0 frame 0 TX packets 92 bytes 11801 (11.5 KiB) TX errors 0 dropped 0 overruns 0 carrier 0 collisions 0
gateway:設置網關地址
[root@localhost ~]# ifconfig eno33554984 address 172.168.10.10/16 gateway 192.168.1.1
————————————————————————————————————————————
echo:回顯,即在標準輸出上輸出信息,默認輸出內容后自動添加換行符
echo命令所在路徑:/usr/bin/echo
echo命令幫助文件路徑:/usr/share/man/man1/echo.1.gz
[root@localhost ~]# echo "Hello world" Hello world [root@localhost ~]#
常用選項:
-n:輸出內容后面不添加換行符
[root@localhost ~]# echo -n "Hello world" Hello world[root@localhost ~]#
-e:啟用轉義符號生效
[root@localhost ~]# echo -e "First \t Second \t \n 01 \t 02 \n" First Second 01 02
對輸出內容顯示字體顏色、背景顏色、閃爍燈功能
[root@localhost ~]# echo -e "My name is \033[1;31;47;7m;Lingyima\033[0m.How are you?" My name is ;Lingyima.How are you?
\033[mode內容\033[0m
mode:
第一個數字:1-7
1:加粗
3: 字體顏色
4: 背景顏色
5: 閃爍
7: 字體顏色與背景顏色互換
第二個數字:顏色
1-7,分別代代表不同的顏色值
tty:顯示終端設備
tty命令所在路徑:/usr/bin/tty
tty命令幫助文件路徑:/usr/share/man/man1/tty.1/gz
Linux常用終端設備:
物理終端:
系統啟動時使用,啟動完之后關閉
設備位置:/dev/console
串行終端:
設備位置:/dev/ttyS#
虛擬終端:
設備位置:/dev/tty[0-9], Ctrl+Alt+F[1-6]
圖形終端:
啟動圖形終端必須先啟動圖形服務(gnome,dke,xfce)然后按下Ctrl+Alt+F7。
啟動圖形終端(守護進程運行):# startx &
偽終端:
設備設置:/dev/pts/#
遠程連接、圖形界面下打開的終端都是偽終端
startx命令
啟動圖形終端,后面加上&表示已守護進程打開圖形終端
export
導出環境變量
在當前shelll進程以及子進程有效
用法:
[root@localhost ~]# export name=jerry [root@localhost ~]# echo $name jerry [root@localhost ~]# bash [root@localhost ~]# echo $name jerry
還是可是使用declare -x導出環境變量
[root@localhost ~]# declare -x name=jerry [root@localhost ~]# echo $name jerry [root@localhost ~]# bash [root@localhost ~]# echo $name jerry
pwd
顯示當前工作目錄
[root@localhost ~]# pwd /root
當前工作目錄保存在環境變量$PWD中
當前工作目錄的之前工作目錄在$OLDPWD環境變量中
[root@localhost tmp]# pwd /tmp [root@localhost tmp]# echo $PWD /tmp [root@localhost tmp]# cd /root [root@localhost ~]# pwd /root [root@localhost ~]# echo $PWD /root [root@localhost ~]# echo $OLDPWD /tmp
history
顯示執行命令的歷史記錄,當系統關閉時保存在當前用戶家目錄~/.bash_history文件中
shell進程會其會話中保存此前用戶提交執行過的命令
命令歷史:history
定制history的功能,可通過環境變量實現:
HISTSIZE:shell進程可保留的命令歷史的條數
HISTFILE:持久保存命令歷史的文件;.bash_history
HISTFILESIZE:命令歷史文件的大小
命令用法:
history [-c] [-d] [n]
history -anrw [文件名]
history -ps 參數 [參數…]
-c: clear
-d offset:delete
-r: 從文件讀取命令歷史至歷史列表中
-w:把歷史列表中的命令追加至歷史文件中
history #:顯示最近的#條命令
調用命令歷史列表中的命令:
!#:再一次執行歷史列表中的第#條命令
!!:再一次執行上一條命令
!STRING:再一次執行命令歷史列表中最近一個以STRING開頭的命令
注意:命令的重復執行有時候需要依賴于冪等性
調用上一條命令的最后一個參數:
快捷鍵:ESC, .
字符串:!$
控制命令歷史記錄的方式:
環境變量:HISTCONTROL
ignoredups:忽略重復的命令;
ignorespace:忽略以空白字符開頭的命令;
ignoreboth:以上兩者同時生效;
shutdown
關閉/重啟/取消計算機命令
shutdown [OPTIONS…] [TIME] [WALL…]
-h: halt
-r:reboot
-c:cancel
TIME:now/hh:mm/+m/+0
# shutdown -h now, halt, poweroff
# reboot, shutdown -r now
CentOS 7:
# systemctl poweroff
# systemctl reboot
poweroff
不安全關機命令
reboot
不安全重啟命令
hwclock
顯示硬件時鐘
顯示或設定硬件時鐘
-s, –hctosys:以硬件為準,把系統調整為與硬件時間相同;
-w, –systohc:以系統為準,把硬件時間調整為與系統時鐘相同;
date:系統時鐘
date [OPTION]… [+FORMAT]
FORMAT:格式符
%F:FULLDATE
%T:TIME
%Y:YEAR
%m:month
%d:day
%H:HOUR
%M:MINUTE
%S:SECOND
%s: 從1970年1月1號(unix元年)0點0分0秒到命令執行那一刻經過的秒數; …
設定日期時間:date [MMDDhhmm[[CC]YY][.ss]]
5、如何在Linux系統上獲取命令的幫助信息,請詳細列出,并描述man文檔的章節是如何劃分的。
內部命令:help COMMAND
外部命令:
(1) 命令自帶簡要格式的使用幫助
# COMMAND –hep
(2) 使用手冊:manual
# ls /usr/share/man/
# man COMMAND
SECTION:
NAME:簡要功能性說明
SYNOPSIS:命令語法格式
DESCRIPTION:描述
OPTIONS: 選項
EXAMPLES: 使用示例
AUTHOR: 作者
BUGS: 報告程序bug的方式
SEE ALSO: 參考
SYNOPSIS:
[]: 可選內容;
<>:必選提供的內容;
a|b|c:多選一;
{}:分組
…:同類內容可出現多個
使用手冊:壓縮格式的文件,有章節之分;
/usr/share/man man1, man2, …
MANUAL SECTION
1: User Command
2: System Call
3: C Library Call
4: Device files and special files
5: Config file
6: Game and etc
7: 雜錄
8: Admin Command and daemon process
~]# man CHAPTER COMMAND
注意:并非每個COMMAND在所有章節下都有手冊;
查看命令都有哪些章節:
~]# whatis COMMAND
注意:其執行過程是查詢數據庫進行的;
手動更新數據庫:
~]# makewhatis
man命令打開手冊以后的操作方法:
翻屏:
b/空格鍵:向文件首部/尾部翻一屏;
Ctrl+u/d:向文件首部/尾部翻半屏
k/回車鍵:向文件首部/尾部翻一行
G:跳轉至最后一行;
#G:跳轉至指定行;
1G,gg:跳轉至文件首部;
文本搜索:
/keyword:從文件首部向文件尾部一次查找;不區分字符大小寫
?keyword:從文件尾部向文件首部一次查找;
n:與查找命令方向相同
N:與查找命令方向相反
q: quit
選項:-M /PATH/TO/SOMEDIR 到指定目錄下查找命令手冊并打開 之;
(3) info COMMAND 獲取命令的在線文檔
(4) 很多程序會自帶幫助文檔:/usr/share/doc/APP-VERSION
README:程序的相關的信息
INSTALL:安裝幫助;
CHANGE:版本迭代時的改動信息;
(5) 主流的發行版官方文檔
http://www.redhat.com/doc
(6) 程序官方的文檔
官方站點上的”Document”
(7) 搜索引擎
keyworld filetype:pdf
keyworld site:doman.tld
keyworld inurl:value
keyworld intitle:value
書籍的出版社:
O’Reiley
Wrox
機械工業、電子工業、人郵、清華大學、水利水電
——————————————————————————————————————————
6、請羅列Linux發行版的基礎目錄名稱命名法則及功用規定
/bin:所有用戶可用的基本命令程序文件
/sbin:系統管理員使用的工具程序
/boot:引導加載器必須用到的各靜態文件:kernel, initramfs(initrd), grub等
/dev:存儲特殊文件或設備文件
設備有兩種類型:字符設備(線性設備)、塊設備(隨機設備)
/etc:系統程序的配置文件,只能為靜態
/root:管理員家目錄,可選
/home:普通的家目錄的集中位置:一般每個普通的家目錄默認為此目錄下與用戶名同名的子目錄,/home/USERNAME
/lib:為系統啟東或根文件系統上的應用程序(/bin, /sbin等)提供共享庫,以及為內核提供內核模塊
libc.so.*:動態鏈接的C庫;
ld*:運行時鏈接器/加載器
modules:用于存儲內核模塊的目錄
/lib64:64位系統特有的存放64位共享庫的路徑;
/media:便攜式掛載點(floppy、cdrom等)
/mnt:其他文件系統的臨時掛載點
/opt:附加應用程序的安裝位置
/srv:當前主機為服務提供的數據;
/tmp:臨時文件
為產生臨時文件的程序提供的用于存儲臨時我文件的目錄;可供所有用戶執行寫入操作;有特殊權限;
/usr:Universal Shareable, read-only data 全局共享的只讀數據路徑;
bin
sbin
include:C程序頭文件;
lib, lib64
share:命令手冊頁和自帶文檔等架構特有的文件的存儲位置;
/usr/local:Local hierarchy, 讓系統管理員安裝本地應用程序;也通常用于安裝第三方程序;
bin,sbin,etc,lib,share,src,include,man,games
src
x11R6 (Window Systemm, version 11 release 6)
/var:/var hierarchy,經常變化的目錄文件
cache Application cache data
lib Variable state information
local Variable data for /usr/local
lock Lock files
log Log files and directories
opt Variable data for /opt
run Data relevant to running processes
spool Application spool data
tmp Temporary files preserved between system reboots
/proc:基于內存的文件系統的虛擬文件系統,用于為內核及進程存儲其相關信息;內核和進程存儲其相關信息;他們多為內核參數,例如:net.ipv4.ip_forward,虛擬為net/ipv4/ip_forward,存儲于/proc/sys/, 因此其完整路徑為/proc/sys/net/ipv4/ip_foward
/sys:虛擬文件系統提供了一種比proc更為理想的訪問內核數據的途徑
其主要作用在與為管理Linux設備提供一種統一模型的接口;
原創文章,作者:rainbow,如若轉載,請注明出處:http://www.www58058.com/47701
可以在每個選項下面用一個例子來解釋一下,加油