1、描述計算機的組成及其功能。
所謂的計算機就是一種計算器,而計算器其實是:接受用戶輸入指令與數據,經由中央處理器的數學與邏輯單元運算處理后,以產生或儲存成有用的信息。
計算機系統由硬件系統和軟件系統兩個部分組成。
硬件系統由運算器、控制器、存儲器、輸入設備、輸出設備組成。
運算器
是計算機中進行算術運算和邏輯運算的主要部件是計算機的主體。
控制器
是計算機的指揮控制中心。
存儲器
是用來保存程序、數據、運算的中間結果及最后結果的記憶裝置。
輸入設備
是用來完成輸入功能的部件即向計算機送入程序、數據以及各種信息的設備。
輸出設備
是用來將計算機工作的中間結果及最后的處理結果從內存送出來的設備。
操作系統是管理者,亦服務者,它還是一個執行者
1、Unix:AIX,BSD,FreeBSD,openBSD,HP-UX,Solaris/OpenSolaris... 2、Linux:服務器常用系統內核,在Linux基礎上衍生出許多各有特色的發行版本,使用居多的宏觀看有 ,suse,redhat,centOS,debian,ubuntu 3、Windows:Windows server2008... 4、MacOS... 運行在系統之上的,具有特定功能的程序。
2、按系列羅列Linux的發行版,并描述不同發行版之間的聯系與區別。
Linux 主要作為Linux發行版(通常被稱為"distro")的一部分而使用。這些發行版由個人,松散組織的團隊,以及商業機構和志愿者組織編寫。它們通常包括了其他的系統軟件和應用軟件,以及一個用來簡化系統初始安裝的安裝工具,和讓軟件安裝升級的集成管理器。大多數系統還包括了像提供GUI界面的XFree86之類的曾經運行于BSD的程序。一個典型的Linux發行版包括:Linux內核,一些GNU程序庫和工具,命令行shell,圖形界面的X Window系統和相應的桌面環境,如KDE或GNOME,并包含數千種從辦公套件,編譯器,文本編輯器到科學工具的應用軟件。
Linux版本Debian,Red Hat,Ubuntu,SuSE,Mint,Gentoo,centos
由于Linux的內核源代碼和大量的Linux的應用程序都可以自由獲得,因此很多公司或組織開發了屬于自己的Linux發行版。目前共有100多種發行版。其中較知名的有Debian、Slackware、RedHat、Gentoo、ArchLinux、紅旗Linux等。
主要有三個分支:Debian、Slackware、RedHat。每一個分支都擁有一個最具代表性的商業服務器級的發行版,分別是Ubuntu Server,簡稱Ubuntu;SUSE Linux Enterprise;Red Hat Enterprise Linux.。同時,還有基于這三大分支和其他分支的一些社區發布版本,比如:基于RedHat的CentOS 、Fedora,基于Debian下的mimt Linux,knopix ,基于Slackware下的OpenSUSE,,以及Gentoo、ArchLinux、國內Linux紅旗、麒麟Linux等。
Linux發行版眾多,但是實際上只有一個內核,發行版只是給這個內核加上一些應用程序而組成的系統。而這些應用大部分都是來源于GNU社區,代碼基本都一樣,因此,各發行版之間差別不大。
不同的發行版細節上有一些差別,按軟件包管理系統的不同,分以Redhat的rmp包管理系統和Ubuntu的基于DPKG包管理系統。使用前者的發行版包括SLES、Fedora、openSUSE、centos、RHEL等,包文件以rpm為擴展名;使用后者的包括Ubuntu系列,Debian系列等,包文件以deb為擴展名。
3、描述Linux的哲學思想,并按照自己的理解對其進行解釋性描述。
Linux哲學思想:
1、一切皆文件;
-
小型,單一用途的程序;
-
連接程序,共同完成復雜功能;
-
避免令人困惑的用戶界面;
-
配置數據存儲在文本中;
解釋:
一切皆文件:是 Unix/Linux 的基本哲學之一。不僅普通的文件,目錄、字符設備、塊設備、 套接字等在 Unix/Linux 中都是以文件被對待;它們雖然類型不同,但是對其提供的卻是同一套操作界面。
小型,單一用途的程序:程序和可執行文件不要太復雜,這樣才能保證了linux內核的高效運行
連接程序,共同完成復雜功能:復雜的任務可以通過連接多個簡單的程序實現復雜的功能。對于復雜的功能linux通過許多簡單程序的組合等方式實現,在保證簡單功能的高效性的同時,復雜的程序也必然是高效性的
避免令人困惑的用戶界面:如windows那樣出了問題一般人選擇的會是重啟,實在是不行的話就是 重新 安裝系統了,因為對于windows那樣不是開源的,并且用戶界面比較 復雜操作系統出了問題,一般的人是根本沒有辦法解決的。但是linux就不一樣了,第一linux是開源的,無論什么問題都可以通過簡潔的命令行實現 排錯,修改系統的配置,一切都是簡潔明了為基礎。
配置數據存儲在文本中:linux所有的配置文件都存放在文本配置文件當中,無論什么配置修改都只需修改其配置文件即可,配置文件時文本形式的只需任意一款文本編輯器修改即可而不是類似于windows那樣將保存在注冊表中,并且windows的注冊表需要專門的二進制或十六進制的編輯器才可編輯,修改比較復雜
4、說明Linux系統上命令的使用格式;詳細介紹ifconfig、echo、tty、startx、export、pwd、history、shutdown、poweroff、reboot、hwclock、date命令的使用,并配合相應的示例來闡述。
ifconfig 是一個用來查看、配置、啟用或禁用網絡接口的工具,這個工具極為常用的。可以用這個工具來臨時性的配置網卡的IP地址、掩碼、廣播地址、網關等。也可以把 它寫入一個文件中(比如/etc/rc.d/rc.local),這樣系統引導后,會讀取這個文件,為網卡設置IP地址 語 法:ifconfig [網絡設備][down up -allmulti -arp -promisc][add<地址>][del<地址>][<hw<網絡設備類型><硬件地址>][io_addr<I/O地址>][irq<IRQ地址>][media<網絡媒介類型>][mem_start<內存地址>][metric<數目>][mtu<字節>][netmask<子網掩碼>][tunnel<地址>][-broadcast<地址>][-pointopoint<地址>][IP地址] 參數: up 啟動指定網絡設備/網卡 down 關閉指定網絡設備/網卡 -arp 設置指定網卡是否支持ARP協議 -promisc 設置是否支持網卡的promiscuous模式,如果選擇此參數,網卡將接收網絡中發給它所有的數據包 -allmulti 設置是否支持多播模式,如果選擇此參數,網卡將接收網絡中所有的多播數據包 -a 顯示全部接口信息 -s 顯示摘要信息(類似于 netstat -i) add 給指定網卡配置IPv6地址 del 刪除指定網卡的IPv6地址 <硬件地址> 配置網卡最大的傳輸單元 mtu<字節數> 設置網卡的最大傳輸單元 (bytes) netmask<子網掩碼> 設置網卡的子網掩碼 tunel 建立隧道 dstaddr 設定一個遠端地址,建立點對點通信 -broadcast<地址> 為指定網卡設置廣播協議 -pointtopoint<地址> 為網卡設置點對點通訊協議 multicast 為網卡設置組播標志 為網卡設置IPv4地址 txqueuelen<長度> 為網卡設置傳輸列隊的長度
echo - 顯示一行文本 允許在標準輸出上顯示STRING(s). -n 不輸出行尾的換行符. -e 允許對下面列出的加反斜線轉義的字符進行解釋. -E 禁止對在STRINGs中的那些序列進行解釋. --help 顯示幫助并退出(須單獨運行) --version 輸出版本信息并退出(須單獨運行) 在沒有 -E 的情況下,可承認并可以內置替換以下序列: \NNN 字符的ASCII代碼為NNN(八進制) \\ 反斜線 \a 報警符(BEL) \b 退格符 \c 禁止尾隨的換行符 \f 換頁符 \n 換行符 \r 回車符 \t 水平制表符 \v 縱向制表符
用法:tty [選項]... 顯示出連接到當前標準輸入的終端設備文件名。 -s, --silent, --quiet 什么也不顯示,只返回退出狀態值 --help 顯示此幫助信息并退出 --version 顯示版本信息并退出
startx 啟動圖形界面 export 顯示和設置環境變量值 -f 帶邊環境變量為函數名稱 -n 刪除指定的環境變量 -p 列出所有的環境變量
pwd 顯示當前目錄
-L, --logical 顯示當前目錄 -P, --physical 顯示當前目錄的實際物理地址 --help 幫助 --version 版本 history 命令可以用來顯示曾執行過的命令,也可以根據顯示的治療來重新執行需要的命令 n 顯示n個最近的記錄 -a 添加記錄 -r 讀取記錄,但不會添加內容記錄 -w 覆蓋原有的history 文件 -c 清除記錄 -d<編號>[n] 刪除指定n條記錄 -n<文件> 讀取指定文件 -r<文件> 讀取文件但不記錄 -w<文件> 覆蓋原有文件 shutdown 以一種安全的方式關閉系統。所有登陸用戶都可以看到關機信息提示,并且 login (1) 將被阻塞??梢灾付⒖剃P機,也可以指定系統在一定的延時后關機。所有進程都將接收到 SIGTERM 信號。這可以使 vi (1) 等程序有時間將處于編輯狀態的文件進行存儲,郵件和新聞程序進程則可以將所有緩沖池內的數據進行適當的清除等等。 shutdown 通過通知 init 進程,要求它改換運行級別來實現。運行級別 0 用來關閉系統,運行級別 6 用來重啟系統,運行級別 1 用來使系統進入執行系統管理任務狀態,如果沒有給出 -h 或 -r 標志時,這是 shutdown 命令的默認工作狀態。具體關機或重啟所執行的操作請查閱 /etc/inittab 文件中相應的運行級別欄。 選項 OPTIONS -a 使用 /etc/shutdown.allow 來驗證身份。 -t sec 通知 init(8) 在轉換到其它運行級別前,發送警告 (warning) 信號后延時 (sec) 秒數后再發送關閉 (kill) 信號。 -k 并非真正關機,只向所有人顯示警告信息。 -r 重啟。 -h 停機。 -n [DEPRECATED(不應再使用)] 不調用 init(8) 程序進行關機操作,而由自己進行。不建議用戶使用這種關機方式,它的結果一般也不是你希望的那樣。 -f 重啟時跳過磁盤檢測。 -F 重啟時強制磁盤檢測。 -c 取消運行中的 shutdown 進程。不可能為此選項指定 time 參數,但你可以在命令行輸入一條解釋消息來向所有用戶說明。(一般的shutdown指令可以用按“+”號來進行中斷) time 關機時間。 warning-message 發送給所有用戶的消息。 time 參數的格式可以有很多種。首先,可以是 hh:mm 格式的絕對時間,其中 hh 指的是小時(一到二位數),mm 指的是分鐘(二位數)。第二種是 +m 格式,其中 m 指的是等待的分鐘數。 now 是 +0 的別名。 如果 shutdown 在調用時使用了延時,它將自動創建一個咨詢 (advisory) 文件 /etc/nologin ,作用是禁止 login(1) 允許新用戶登陸,除非 shutdown 在向 init 發信號前意外中止 (就是說,它被取消或出了什么問題)。它會在調用 init 改變運行級之前刪除這個文件。 -f 標志意味著 `快速重啟'。這將創建一個咨詢 (advisory) 文件 /fastboot ,此文件在系統重啟時會被檢測到。啟動腳本 rc 會檢測是否存在這樣的文件,如果有,就不會再運行 fsck(1),因為系統是以正常方式關閉的。這之后,啟動進程會刪除 /fastboot。 -F 標志意味著 `強制 fsck'。這將創建一個咨詢 (advisory) 文件 /forcefsck,此文件在系統重啟時會被檢測到。啟動腳本 rc 會檢測是否存在這個文件,如果有,就運行 fsck(1) 并且加上一個特殊的 `force' 標志,以使得即使正常卸載的文件系統也被檢查。這之后,啟動進程會刪除 /forcefsck。 -n 標志導致 shutdown 不調用 init 程序進行關機,而是自己關閉所有運行中的進程。shutdown 接下來會關閉配額 (quota),記賬 (accounting) 和交換分區,卸載所有文件系統
poweroff命令用來關閉計算機操作系統并且切斷系統電源。 常用參數: -n:關閉操作系統時不執行sync操作; -w:不真正關閉操作系統,僅在日志文件“/var/log/wtmp”中; -d:關閉操作系統時,不將操作寫入日志文件“/var/log/wtmp”中添加相應的記錄; -f:強制關閉操作系統; -i:關閉操作系統之前關閉所有的網絡接口; -h:關閉操作系統之前將系統中所有的硬件設置為備用模式。
reboot 命令詳解 功能說明:重啟。 語 法:dreboot [-dfinw] 補充說明:執行reboot指令可讓系統停止運作,并重新開機。 參 數: -d 重新開機時不把數據寫入記錄文件/var/tmp/wtmp。本參數具有"-n"參數的效果。 -f 強制重新開機,不調用shutdown指令的功能。 -i 在重開機之前,先關閉所有網絡界面。 -n 重開機之前不檢查是否有未結束的程序。 -w 僅做測試,并不真的將系統重新開機,只會把重開機的數據寫入/var/log目錄下的wtmp記錄文件。
hwclock 命令:設置或者顯示硬件時間的近似值 必要參數 --adjust 自動調整硬件時鐘時間 --debug 運行時,輸出詳細的處理過程 --directisa 不通過設備文件/etc/rtc,直接對硬件時鐘進行存取 --getepoch 輸出硬件時鐘的數值到標準輸出 --hctosys 時鐘同步,使系統時鐘和硬件時鐘同步 --se--date 設置硬件時間 --show 顯示硬件時鐘到標準輸出 --systohc 系統時間寫入硬件時鐘 --test 進行測試 --utc 將硬件時鐘的時間設置為UTC 選擇參數 -setepoch-epoch=<年份> 設置硬件時鐘的年份 --version 顯示版本信息
date - 打印或設置系統日期和時間 根據指定格式顯示當前時間或設置系統時間. -d, --date=STRING 顯示由 STRING 指定的時間, 而不是當前時間 -f, --file=DATEFILE 顯示 DATEFILE 中每一行指定的時間, 如同將 DATEFILE 中的每行作為 --date 的參數一樣 -I, --iso-8601[=TIMESPEC] 按照 ISO-8601 的日期/時間格式輸出時間. TIMESPEC=`date' (或者不指定時)僅輸出日期,等于 `hours', `minutes', 或`seconds' 時按照指定精度輸出日期及時間. -r, --reference=FILE 顯示 FILE 的最后修改時間 -R, --rfc-822 根據 RFC-822 指定格式輸出日期 -s, --set=STRING 根據 STRING 設置時間 -u, --utc, --universal 顯示或設置全球時間(格林威治時間) --help 顯示本幫助文件并退出 --version 顯示版本信息并退出 格式 FORMAT 控制著輸出格式. 僅當選項指定為全球時間時本格式才有效。 分別解釋如下: %% 文本的 % %a 當前區域的星期幾的簡寫 (Sun..Sat) %A 當前區域的星期幾的全稱 (不同長度) (Sunday..Saturday) %b 當前區域的月份的簡寫 (Jan..Dec) %B 當前區域的月份的全稱(變長) (January..December) %c 當前區域的日期和時間 (Sat Nov 04 12:02:33 EST 1989) %d (月份中的)幾號(用兩位表示) (01..31) %D 日期(按照 月/日期/年 格式顯示) (mm/dd/yy) %e (月份中的)幾號(去零表示) ( 1..31) %h 同 %b %H 小時(按 24 小時制顯示,用兩位表示) (00..23) %I 小時(按 12 小時制顯示,用兩位表示) (01..12) %j (一年中的)第幾天(用三位表示) (001..366) %k 小時(按 24 小時制顯示,去零顯示) ( 0..23) %l 小時(按 12 小時制顯示,去零表示) ( 1..12) %m 月份(用兩位表示) (01..12) %M 分鐘數(用兩位表示) (00..59) %n 換行 %p 當前時間是上午 AM 還是下午 PM %r 時間,按 12 小時制顯示 (hh:mm:ss [A/P]M) %s 從 1970年1月1日0點0分0秒到現在歷經的秒數 (GNU擴充) %S 秒數(用兩位表示)(00..60) %t 水平方向的 tab 制表符 %T 時間,按 24 小時制顯示(hh:mm:ss) %U (一年中的)第幾個星期,以星期天作為一周的開始(用兩位表示) (00..53) %V (一年中的)第幾個星期,以星期一作為一周的開始(用兩位表示) (01..52) %w 用數字表示星期幾 (0..6); 0 代表星期天 %W (一年中的)第幾個星期,以星期一作為一周的開始(用兩位表示) (00..53) %x 按照 (mm/dd/yy) 格式顯示當前日期 %X 按照 (%H:%M:%S) 格式顯示當前時間 %y 年的后兩位數字 (00..99) %Y 年(用 4 位表示) (1970...) %z 按照 RFC-822 中指定的數字時區顯示(如, -0500) (為非標準擴充) %Z 時區(例如, EDT (美國東部時區)), 如果不能決定是哪個時區則為空 默認情況下,用 0 填充數據的空缺部分. GNU 的 date 命令能分辨在 `%'和數字指示之間的以下修改. `-' (連接號) 不進行填充 `_' (下劃線) 用空格進行填充
5、如何在Linux系統上獲取命令的幫助信息,請詳細列出,并描述man文檔的章節是如何劃分的。
一 、help Command
適用于內部命令
舉例:
代碼如下:
# type cd
cd is a shell builtin
# help cd
# type ls
ls is aliased to `ls –color=auto'
# help ls
-bash: help: no help topics match `ls'. Try `help help' or `man -k ls' or `info ls'.
二、Command –help/-h
適用于外部命令
例如:
代碼如下:
# ls –help
三、man Command
舉例:
復制代碼
代碼如下:
# man cd
注manual 手冊是分章節的;man # Command (#表示章節號)
1、所有用戶可以使用的命令
2、系統內核調用,不是每個命令都有系統調用(如:man 2 read)
3、庫調用
4、特殊文件,如:/dev/tty1
5、文件格式(命令配置文件的語法,如:man 5 passwd)
6、游戲相關
7、雜項
8、管理員命令,如:fdisk
man命令查詢操作參考《vi,vim用法》中的命令模式
看懂man命令語法
[]:可選內容
<>:必須給出內容
a|b|c:多選一
…:可以有多個
四、 info Command
有超鏈接穩文檔,info是信息頁,提供作者、版本,什么時候發布等更詳細信息,man手冊是告訴你怎么用
五、README
絕大多數程序都有相應的幫助文檔,保存在/usr/share/doc文件夾中
如:
# ls /usr/share/doc/ntp-4.2.4p8/
ChangeLog COPYRIGHT NEWS
六、Google
遇到問題,二話不說Google,優先參考項目官方文檔
Linux的man手冊共有以下幾個章節:
代號 | 代表內容 |
1 | 使用者在shell中可以操作的指令或可執行檔 |
2 | 系統核心可呼叫的函數與工具等 |
3 | 一些常用的函數(function)與函數庫(library),大部分是C的函數庫(libc) |
4 | 裝置檔案的說明,通常在/dev下的檔案 |
5 | 設定檔或者是某些檔案的格式 |
6 | 游戲(games) |
7 | 慣例與協定等,例如Linux檔案系統、網絡協定、ASCII code等等的說明 |
8 | 系統管理員可用的管理指令 |
9 | 跟kernel有關的文件 |
6、請羅列Linux發行版的基礎目錄名稱命名法則及功用規定
目錄描述
/主層次 的根,也是整個文件系統層次結構的根目錄
/bin存放在單用戶模式可用的必要命令二進制文件,所有用戶都可用,如 cat、ls、cp等等
/boot存放引導加載程序文件,例如kernels、initrd等
/dev存放必要的設備文件,例如/dev/null
/etc存放主機特定的系統級配置文件。其實這里有個關于它名字本身意義上的的爭議。在貝爾實驗室的UNIX實施文檔的早期版本中,/etc表示是“其他(etcetera)目錄”,因為從歷史上看,這個目錄是存放各種不屬于其他目錄的文件(然而,文件系統目錄標準 FSH 限定 /etc 用于存放靜態配置文件,這里不該存有二進制文件)。早期文檔出版后,這個目錄名又重新定義成不同的形式。近期的解釋中包含著諸如“可編輯文本配置”或者“額外的工具箱”這樣的重定義
/etc/opt存儲著新增包的配置文件 /opt/.
/etc/sgml存放配置文件,比如 catalogs,用于那些處理SGML(譯者注:標準通用標記語言)的軟件的配置文件
/etc/X11X Window 系統11版本的的配置文件
/etc/xml配置文件,比如catalogs,用于那些處理XML(譯者注:可擴展標記語言)的軟件的配置文件
/home用戶的主目錄,包括保存的文件,個人配置,等等
/lib/bin/ 和 /sbin/中的二進制文件的必需的庫文件
/lib<架構位數>備用格式的必要的庫文件。 這樣的目錄是可選的,但如果他們存在的話肯定是有需要用到它們的程序
/media可移動的多媒體(如CD-ROMs)的掛載點。(出現于 FHS-2.3)
/mnt臨時掛載的文件系統
/opt可選的應用程序軟件包
/proc以文件形式提供進程以及內核信息的虛擬文件系統,在Linux中,對應進程文件系統(procfs )的掛載點
/root根用戶的主目錄
/sbin必要的系統級二進制文件,比如, init, ip, mount
/srv系統提供的站點特定數據
/tmp臨時文件 (另見 /var/tmp). 通常在系統重啟后刪除
/usr二級層級存儲用戶的只讀數據; 包含(多)用戶主要的公共文件以及應用程序
wKioL1eqavDRRw_rAAfFeFt3QlY819.png-wh_500x0-wm_3-wmp_4-s_507933680.png
/usr/bin非必要的命令二進制文件 (在單用戶模式中不需要用到的);用于所有用戶
/usr/include標準的包含文件
/usr/lib庫文件,用于/usr/bin/ 和 /usr/sbin/中的二進制文件
/usr/lib<架構位數>備用格式庫(可選的)
/usr/local三級層次 用于本地數據,具體到該主機上的。通常會有下一個子目錄, 比如, bin/, lib/,share/.
/usr/local/sbin非必要系統的二進制文件,比如用于不同網絡服務的守護進程
/usr/share架構無關的 (共享) 數據.
/usr/src源代碼,比如內核源文件以及與它相關的頭文件
/usr/X11R6X Window系統,版本號:11,發行版本:6
/var各式各樣的變量(Variable)文件,一些隨著系統常規操作而持續改變的文件就放在這里,比如日志文件,脫機文件,還有臨時的電子郵件文件
/var/cache應用程序緩存數據. 這些數據是由耗時的I/O(輸入/輸出)的或者是運算本地生成的結果。這些應用程序是可以重新生成或者恢復數據的。當沒有數據丟失的時候,可以刪除緩存文件
/var/lib狀態信息。這些信息隨著程序的運行而不停地改變,比如,數據庫,軟件包系統的元數據等等
/var/lock鎖文件。這些文件用于跟蹤正在使用的資源
/var/log日志文件。包含各種日志。
/var/mail內含用戶郵箱的相關文件
/var/opt來自附加包的各種數據都會存儲在 /var/opt/.
/var/run存放當前系統上次啟動以來的相關信息,例如當前登入的用戶以及當前運行的daemons(守護進程).
/var/spool該spool主要用于存放將要被處理的任務,比如打印隊列以及郵件外發隊列
/var/mail過時的位置,用于放置用戶郵箱文件
/var/tmp存放重啟后保留的臨時文件
原創文章,作者:a279854458,如若轉載,請注明出處:http://www.www58058.com/66582
總結的很詳細,不求完全記憶,但相信這篇博客整理下來,在心里對整個知識結構會有一個大致的了解了。