一、計算機組成部分及其功能:硬件系統和軟件系統
1、計算機的硬件系統組成及其功能:
運算器:處理數據的算術運算及邏輯運算即數據加工處理;
控制器:根據接收到的指令,負責向各部件發送控制信號,保證各部件協調工作;
存儲器:計算機記憶貨暫存數據的部件,存放計算機程序及參與運算的各種數據;
輸入設備:實現計算機原始程序和數據的輸入;
輸出設備:實現計算機結果的輸出;
2、計算機的軟件系統組成及其功能:
系統軟件:控制計算機運行、管理計算機的各種資源、并為應用軟件提供支持和服務的一類軟件;
應用軟件:為某一專門的應用目的而開發的計算機軟件;
二、主流的Linux發行版本
1、Gentoo:Gentoo最初由Daniel Robbins(FreeBSD的開發者之一)創建,首個穩定版本發布于2002年。由于開發者對FreeBSD的熟識,所以Gentoo擁有媲美 FreeBSD的廣受美譽的ports系統 ——Portage包管理系統。Portage是基于源代碼分發的,必須編譯后才能運行,對于大型軟件而言比較慢,不過正因為所有軟件都是在本地機器編譯的,在經過各種定制的編譯參數優化后,能將機器的硬件性能發揮到極致。Gentoo是所有Linux 發行版本里安裝更復雜的,但是又是安裝完成后最便于管理的版本,也是在相同硬件環境下運行最快的版本。Gentoo的哲學是自由和選擇;
2、ArcLinux:Arch Linux(或稱Arch)是一種以輕量簡潔為設計理念的Linux發行版。其開發團隊秉承簡潔、優雅、正確和代碼最小化的設計宗旨。由 Judd Vinet 于2002年啟動。Arch Linux是起源于加拿大的一份致力于使用簡單、系統輕量、軟件更新速度快的GNU/Linux發行版。創始人Judd Vinet出于對Debian以及Red Hat的包管理器不滿,以及受CRUX影響而創立。最初針對i686,但是如今對x86_64也支持良好,而且還派生出了針對ARM平臺的Arch Linux ARM以及針對HURD內核的Arch Hurd(發展緩慢);
3、Debian:或者稱Debian系列,包括Debian、Ubuntu、Knoppix、Kali Linux等。Debian是社區類Linux的典范,是迄今為止最遵循GNU規范的Linux系統。Debian最早由Ian Murdock于1993年創建,分為三個版本分支(branch): stable, testing 和 unstable。其中,unstable為最新的測試版本,其中包括最新的軟件包,但是也有相對較多的bug,適合桌面用戶。testing的版本都經過unstable中的測試,相對較為穩定,也支持了不少新技術。而stable一般只用于服務器,上面的軟件包大部分都比較過時,但是穩定和安全性都非常的高。Debian最具特色的是apt-get/dpkg包管理方式,Redhat的YUM也是在模仿Debian的APT方式,但在二進制文件發行方式中,APT應該是最好的了;
4、Slackware:Slackware Linux是由Patrick Volkerding開發的GNU/Linux發行版。與很多其他的發行版不同,它堅持KISS(Keep It Simple Stupid)的原則。一開始,配置系統會有一些困難,但是更有經驗的用戶會喜歡這種方式的透明性和靈活性。 Slackware 很多特性體現出了KISS原則,最為有名的一些例子就是不依賴圖形界面的文本化系統配置、傳統的服務管理方式和不解決依賴的包管理方式。它的最大特點就是安裝靈活,目錄結構嚴謹,版本力求穩定而非追新。Slackware的軟件包都是通常的tgz(tar/gzip) 或者txz(xz) 格式文件再加上安裝腳本。Tgz/Txz 對于有經驗的用戶來說,比RPM更為靈活,并避免了APT 之類管理器可能帶來的的依賴地獄。這個系列包含SUSE、openSuSE等;
5、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哲學思想
1、一切皆文件:把幾乎所有的資源抽象成文件形式;包括硬件設備,通信接口等;
2、由總多功能單一的程序組成,并且組合小程序完成復雜的任務;
3、盡量避免與用戶進行交互,使用編程的方式實現自動化任務;
4、使用文本文件保存配置信息。
四、命令使用方法詳解(ifconfig,echo,tty,startx,export,pwd,history,shutdown,poweroff,reboot,hwclock,date)
1、ifconfig命令:用于配置和顯示Linux內核中網絡接口的網絡參數
對應的配置文件:/etc/sysconfig/network-scripts/ifcfg-eno16777736 (CentOS 7) /etc/sysconfig/network-scripts/ifcfg-eth0 (CentOS 6)
語法格式:ifconfig [OPTIONS]
參數:
1、a:顯示所有的網卡設備及其信息,其中包含非活動的;
2、up/down:開啟/關閉指定的網卡設備;
3、mtu N:設置網卡設備的MTU為N;
4、netmask:設置網口設備的子網掩碼;
5、hw<網絡設備類型><硬件地址>:設置網卡設備的類型與硬件地址;
6、-broadcast<地址>:將要送往指定地址的數據包當成廣播數據包來處理;
7、-pointopoint<地址>:與指定地址的網卡設備建立直接連線,此模式具有保密功能;
實例:
1、顯示所有的網卡設備(CentOS 7)
說明:
(1)、eno16777736是網卡的名稱,其中包含inet(ipv4地址)、netmask(子網掩碼)、broadcast(廣播地址)、inet6(ipv6地址)、ether(物理地址)等網卡設備相關信息;
lo是表示主機的回壞地址,這個一般是用來測試一個網絡程序,但又不想讓局域網或外網的用戶能夠查看,只能在此臺主機上運行和查看所用的網絡接口。其ipv4地址為127.0.0.1
(2)、啟動關閉指定網卡
~]# ifconfig eno16777736 up
~]# ifconfig eno16777736 down
(3)、ifconfig修改MAC地址
~]#ifconfig eno16777736 hw ether XX:XX:XX:XX:XX:XX
(4)、配置IP地址(此方法配置的IP地址僅當前有效,重啟后恢復)
[root@localhost ~]# ifconfig eth0 192.168.2.10
[root@localhost ~]# ifconfig eth0 192.168.2.10 netmask 255.255.255.0
[root@localhost ~]# ifconfig eth0 192.168.2.10 netmask 255.255.255.0 broadcast 192.168.2.255
(5)、設置最大傳輸單元:
ifconfig eth0 mtu 1500 #設置能通過的最大數據包大小為 1500 bytes
2、echo命令:用于在shell中打印shell變量的值,或者直接輸出指定的字符串
語法格式:echo (選項) (參數)
參數:
-e:激活轉義字符。
使用-e選項時,若字符串中出現以下字符,則特別加以處理,而不會將它當成一般文字輸出:
\a 發出警告聲;
\b 刪除前一個字符;
\c 最后不加上換行符號;
\f 換行但光標仍舊停留在原來的位置;
\n 換行且光標移至行首;
\r 光標移至行首,但不換行;
\t 插入tab; \v 與\f相同;
\\ 插入\字符;
\nnn 插入nnn(八進制)所代表的ASCII字符;
實例:
[root@localhost ~]# echo a\/b
輸出結果:a\/b
3、tty命令:顯示終端機連接標準輸入設備的文件名稱
語法格式:tty [OPTION]…
參數:
-s或–silent或–quiet 不顯示任何信息,只回傳狀態代碼。
實例:
[root@localhost ~]# tty
輸出結果:/dev/pts/3
說明:
Linux常見終端:(n為編號)
/dev/ttySn 串行端口終端[1,7]
/dev/pty 偽終端
/dev/ttyn 控制終端[1,6]
/dev/console 物理終端
pts(pseudo-terminal slave)是pty的實現方法
4、startx命令:用來啟動X Window,實際上啟動X Window的程序為xinit
5、export命令:用于將shell變量輸出為環境變量,或者將shell函數輸出為環境變量
6、pwd命令:顯示用戶當前工作目錄
7、history命令:是一條非常實用的shell命令,可以顯示出之前在shell中運行的命令
定制history的功能,可以通過環境變量實現;
HISTSIZE:shell進程可保留的命令歷史的條數;
HISTFILE:持久保持命令歷史的文件;
.bash_history
HISTFILESIZE:命令歷史文件的大??;
命令用法:
history [ -c ] [ -d 偏移量 ] [ n ]
或 history -anrw [ 文件名 ]
或 history -ps 參數 [ 參數… ]
-c:清空命令歷史;
-d offset:刪除指定命令歷史
-r:從文件讀取命令歷史至歷史列表中
-w:把歷史列表中的命令追加到歷史文件中
history n:顯示最近的n條命令;
調用命令歷史列表中的命令:
!#:再一次執行歷史命令列表中的第#條命令;
!!:再一次執行上一條命令;
!STRING:再次執行命令歷史列表中最近一次以STRING開頭的命令
注意:命令的重復執行有時候需要依賴于冪等性;
調用上一條命令的最后一個參數:
快捷鍵:Esc、. 或 符號組合:!$
控制命令歷史記錄的方式:
環境變量:HISTCONTROL
ignoredups:忽略重復的命令
ignorespace : 忽略空白字符開通的命令
ignoreboth:以上兩者同時生效
實例:
1、運行history命令:
[root@localhost ~]# history
2、顯示最近10條歷史命令
[root@localhost ~]# history 10
8、shutdown、poweroff、reboot命令
(1)shutdown命令:可以關閉所有程序,并依用戶的需要,進行重新開機或關機的動作。
選項:
-c:當執行“shutdown -h 11:50”指令時,使用"shutdown -c"就可以中斷關機的指令;
-f:重新啟動時不執行fsck;
-F:重新啟動時執行fsck;
-h:將系統關機;
-k:只是送出信息給所有用戶,但不會實際關機;
-n:不調用init程序進行關機,而由shutdown自己進行;
-r:shutdown之后重新啟動;
-t<秒數>:送出警告信息和刪除信息之間要延遲多少秒。
(2)poweroff命令:用來關閉計算機操作系統并且切斷系統電源
選項:
-n:關閉操作系統時不執行sync操作;
-w:不真正關閉操作系統,僅在日志文件“/var/log/wtmp”中;
-d:關閉操作系統時,不將操作寫入日志文件“/var/log/wtmp”中添加相應的記錄;
-f:強制關閉操作系統;
-i:關閉操作系統之前關閉所有的網絡接口;
-h:關閉操作系統之前將系統中所有的硬件設置為備用模式。
(3)reboot命令:重新啟動正在運行的Linux操作系統
選項:
-d:重新開機時不把數據寫入記錄文件/var/tmp/wtmp。本參數具有“-n”參數效果;
-f:強制重新開機,不調用shutdown指令的功能;
-i:在重開機之前,先關閉所有網絡界面;
-n:重開機之前不檢查是否有未結束的程序;
-w:僅做測試,并不真正將系統重新開機,只會把重開機的數據寫入/var/log目錄下的wtmp記錄文件。
9、hwclock命令:查詢或設置硬件時鐘
選項:
–adjust:hwclock每次更改硬件時鐘時,都會記錄在/etc/adjtime文件中。使用–adjust參數,可使hwclock根據先前的記錄來估算硬件時鐘的偏差,并用來校正目前的硬件時鐘;
–hctosys:將系統時鐘調整為與目前的硬件時鐘一致;
–set –date=<日期與時間>:設定硬件時鐘;
–show:顯示硬件時鐘的時間與日期;
–systohc:將硬件時鐘調整為與目前的系統時鐘一致;
–utc:若要使用格林威治時間,請加入此參數,hwclock會執行轉換的工作;
10、date命令:顯示或設置系統的日期時間
選項:
-d<字符串>:顯示字符串所指的日期與時間。字符串前后必須加上雙引號;
-s<字符串>:根據字符串來設置日期與時間。字符串前后必須加上雙引號;
常用時間格式字符串:
%H 小時,24小時制(00~23)
%I 小時,12小時制(01~12)
%M 分鐘(00~59)
%p 顯示出AM或PM
%r 顯示時間,12小時制(hh:mm:ss %p)
%s 從1970年1月1日00:00:00到目前經歷的秒數
%S 顯示秒(00~59)
%T 顯示時間,24小時制(hh:mm:ss)
%X 顯示時間的格式(%H:%M:%S)
%Z 顯示時區,日期域(CST)
%a 星期的簡稱(Sun~Sat)
%A 星期的全稱(Sunday~Saturday)
%h,%b 月的簡稱(Jan~Dec)
%B 月的全稱(January~December)
%c 日期和時間(Tue Nov 20 14:12:58 2012)
%y 年的最后兩個數字(1999則是99)
實例:
格式化輸出當前日期:
五、Linux系統上獲取命令的幫助信息
1、內嵌命令:help COMMAND
2、外部命令:
(1)命令自帶簡要格式的使用幫助
# COMMAND –help
(2)命令使用手冊:manual
默認情況下存于/usr/share/man目錄下,使用man命令進行查看
# man COMMAND
man手冊分為以下幾個章節:
1 用戶命令(User Commands)
2 系統調用(System Calls)
3 C庫調用(Library Calls)
4 特殊文件(usually found in /dev)
5 文件格式(File Formats)
6 游戲(Games)
7 其它(Miscellaneous)
8 系統管理命令(System Administrator Commands)
9 內核(Kernel)
(3)、info COMMAND:獲取命令的在線手冊
(4)、很多應用程序會自帶幫助文件
存儲于/usr/share/doc/APP-VERSION
(5)、主流發行版官方文檔
(6)、程序的官方文檔
(7)、搜索引擎
六、Linux目錄結構及其目錄說明
原創文章,作者:N22-江西-H隨風,如若轉載,請注明出處:http://www.www58058.com/34018
存在的問題:
計算機五大部件中關于存儲器的描述有錯別字
建議:
1、關于命令的使用可列舉一些例子,比如如何設置 系統時鐘,命令歷史中帶有操作時間戳,命令歷史日志等
2、建議排版使用markdown