計算機的組成及其功能
什么是計算機?
計算機就是通過輸入設備(鍵盤、鼠標等),將用戶輸入的數據經過中央處理單元(即CPU)計算和處理之后,將結果通過輸出設備(顯示器)展現給用戶的設備
計算機組成?
由計算機的定義或者功能可知,計算機由三大部分組成:輸入設備、中央處理單元(即CPU)、輸出設備,為了提高計算機處理效率,計算機還需要內存作為數據暫時存放數據的空間,以提高數據處理效率;
- 輸入設備:將需要處理的數據輸入到計算機里的介質,常見的輸入設備有:鍵盤、鼠標等;
- 中央處理單元:即我們常說的計算機的CPU,CPU可看作計算機的大腦,一切的數據運算和管理均在CPU中進行,為計算機中最重要的部分;CPU根據功能可分為兩部分組成:
- 算數邏輯單元:主要負責所有數據運算;
- 控制單元:協調各組建和單元之間的工作;
- 內存:存放輸入數據:輸入設備將需要處理的數據暫存在內存中,以供CPU讀取處理;存放輸出數據:CPU處理完成的數據也暫時存放于內存中,再由內存傳輸到輸出單元
- 輸出設備:將按要求處理完成的數據呈現出來的介質。例如:屏幕,打印機等
認識Linux發行版
Linux發行版是指將GNU組織發布的源碼源文件進行編譯后的二進制文件,更具有普適性,目前Linux有三大主流發行版:
- Debian:是目前唯一由社區維護的Linux發行版,其中Ubuntu為大家所熟知,就是Debian的一個分支,這類發行版是沒有商業公司支持的,適合個人學習或者研究使用;
- Slackware:比較熟知的Liux發行版為S.U.S.E,其中SLES為企業版,S.U.S.E以界面華麗美觀著稱;
- redhat系列:CentOS、Fedora為其大家所熟知發行版本
Linux哲學思想
一切皆文件:
Linus系統幾乎把所有資源系統均抽象為文件形式,甚至包括硬件設備,通信接口等;
- Linux中硬件設備:幾乎所有硬件設備文件均在/dev目錄下,例如:/dev/disk、/dev/sda等
- Linux文件系統:Linux文件系統采用倒置樹狀結構,如下圖所示:
?例如:/dev/pts/ptmx :最左側/:表示倒置樹狀結構最高層,為根目錄;其他的/:表示Linux文件系統中路徑分隔符
文件路徑表示方法:絕對路徑:從根目錄/開始,例如:/etc/passwd/; 相對路徑:從當前位置開始表示出的路徑
文件使用法則: 1. 嚴格區分大小寫; 2. 目錄也是文件,在同一路徑下,不能出現同名文件; 3. 文件名使用除/以外的任意字符; 4. 最長不能超過255個字符
由眾多功能單一的程序組成
一個程序只用于做一件事,而Linux完成一件復雜工作需要組合很多個小程序;
Linux系統的目標是以編程的方式實現自動化任務,盡量避免跟用戶交互,故對于Linux系統來說,圖形化界面僅僅是Linux操作系統的一個應用程序而已;
Linus系統使用文本文件保存配置信息:一般的配置文件在/etc目錄下 例如:/etc/ntp.conf 即為與ntp服務相關的配置文件,使用文本文件保存該配置信息。
Linux系統命令使用
通用格式
COMMAND OPTIONS ARGUMENTS
其中:OPTIONS:指定命令的運行特性;ARGUMENTS:命令的生效對象
常用命令介紹
ifconfig
- 功能:用來查看或者設置網絡接口的ip地址
- 語法規則:
ifconfig [interface]
ifconfig interface [aftype] options | address ...
- 舉例:
ifconfig eth0/lo
:查看eth0/lo接口的ip地址及網卡其他屬性,如該網卡的最大傳輸單元MTU,該網卡發送和接收數據包情況等?
echo
回顯命令
例如:echo $?
可以回顯上一條命令的指令結果,0為正常執行echo $SHELL
可查看接口程序
tty:查看當前的終端設備
startx
啟動圖形化界面,圖形化界面為F7,使用ctrl+alt+F[1…6]切換終端
export
- 功能:設置或者顯示環境變量,在設置環境變量時,只對當前shell生效
- 語法規則:
export [-fnp][變量名稱]=[變量設置值]
- OPTIONS: -f 代表[變量名稱]中為函數名稱。
-n 刪除指定的變量。變量實際上并未刪除,只是不會輸出到后續指令的執行環境中。
-p 列出所有的shell賦予程序的環境變量。 - 舉例:
export PATH=$PATH:/tmp
使用回顯命令echo $PATH
可看到/tmp已被加入到當前shell的環境變量PATH中,而并未被加入其它shell中
pwd
- 功能:以絕對路徑的方式顯示當前工作目錄的名稱
- 語法規則:
pwd [OPTION]...
history
- 功能:記錄執行過的命令
- 語法規則:
history [-c] [-d offset] [n]
history -anrw [filename]
history -ps arg [arg...]
- OPTIONS
history [n]
n為數字,列出最近的n條命令;
-c:將目前shell中的所有history命令消除;
history [-raw] histfiles
:
-a 將目前新增的命令寫入histfiles, 默認寫入~/.bash_history;
-r 將histfiles內容讀入到目前shell的history記憶中;
-w 將目前history記憶的內容寫入到histfiles - 舉例:
- shell > history
- 34 14-10-28 16:19:24 ll
- 35 14-10-28 16:19:26 vim test
- 36 14-10-28 16:19:33 ll
- 37 14-10-28 16:19:34 ll
顯示3行:
- shell > history 3
- 1032 14-11-02 16:10:41 history
- 1033 14-11-02 16:10:46 history |more
- 1034 14-11-02 16:11:15 history 3
使用! 執行歷史命令。 ! number 執行第幾條命令 ! command 從最近的命令查到以command開頭的命令執行 !! 執行上一條
- shell > !1046
- history 3
- 1045 14-11-02 16:22:38 head ~/.bash_history
- 1046 14-11-02 16:35:37 history 3
- 1047 14-11-02 16:35:48 history 3
- shell > !!
- history 3
- 1046 14-11-02 16:35:37 history 3
- 1047 14-11-02 16:35:48 history 3
- 1048 14-11-02 16:35:52 history 3
- shell > !head
- head ~/.bash_history
- #1414484377
- cd update/
- #1414484377
shutdown
- 功能:關機或重啟系統
- 語法規則:
shutdown [OPTION]... TIME [MESSAGE]
- OPTIONS:
-r:在系統關閉之后重啟
-h:halt暫停
-c:取消關機
poweroff
- 功能:關機
- 語法規則:
poweroff [OPTION]...
- OPTIONS:
-f:–force,強制執行操作
-v:–verbose,輸出詳細信息
reboot
- 功能:重啟
- 語法規則: 同poweroff
日期時間相關命令:
在Linux系統中,系統啟動時從硬件讀取日期和時間信息,讀取完成后,就不再與硬件相關聯。與日期相關的命令如下:
date
- 功能:查看系統時鐘
- 語法規則:
date [OPTION]... [+FORMAT]
date [-u|--utc|--universal] [MMDDhhmm[[CC]YY][.ss]]
以給定的格式顯示當前時間,或是設置系統日期 - 舉例: 時間輸出:
- [root@root ~]# date “+%Y-%m-%d”
- 2018-01-14
- [root@root ~]# date “+%H:%M:%S”
- 13:13:59
- [root@root ~]# date “+%Y-%m-%d %H:%M:%S”
- 2018-01-14 13:14:19
- [root@root ~]# date “+%Y%m%d %H:%M:%S”
- 20180114 13:14:58
- [root@root ~]# date -d today
- Tue Feb 19 13:10:38 CST 2013
- [root@root ~]# date -d now
- Tue Feb 19 13:10:43 CST 2013
- [root@root ~]# date -d tomorrow
- Wed Feb 20 13:11:06 CST 2013
- [root@root ~]# date -d yesterday
- Mon Feb 18 13:11:58 CST 2013
時間設置: 我們一般使用“date -s”命令來修改系統時間, 比如將系統時間設定成2011年7月13日的命令:date -s 07/13/2011 將系統時間設定成11點12分0秒的命令:date -s 11:12:00
注意: 這里說的是系統時間,是linux由操作系統維護的。 在系統啟動時,Linux操作系統將時間從CMOS中讀到系統時間變量中,以后修改時間通過修改系統時間實現。為了保持系統時間與CMOS時間的一致性,Linux每隔一段時間會將系統時間寫入CMOS。由于該同步是每隔一段時間(大約是11分鐘)進行的,在我們執行date -s后,如果馬上重起機器,修改時間就有可能沒有被寫入CMOS,這就是問題的原因。
如果要確保修改生效可以執行如下命令。 clock –w
, 強制把系統時間寫入CMOS
clock,hwclock
- 功能:顯示與設定硬件時鐘
- 舉例: hwclock命令與clock命令是一個東西
[root@linuxidc.com~]# type -a hwclock
hwclock is /sbin/hwclock
hwclock is /usr/sbin/hwclock
[root@linuxidc.com~]# ls -l /sbin/hwclock /usr/sbin/hwclock
-rwxr-xr-x 1 root root 34096 2012-01-07 /sbin/hwclock
lrwxrwxrwx 1 root root 18 08-13 00:14 /usr/sbin/hwclock -> ../../sbin/hwclock[root@linuxidc.com~]# type -a clock
clock is /sbin/clock
[root@linuxidc.com~]# ls -l /sbin/clock
lrwxrwxrwx 1 root root 7 08-13 00:14 /sbin/clock -> hwclock
顯示硬件時鐘
[root@linuxidc.com~]# hwclock
2011年11月06日 星期日 21時09分28秒 -0.134840 seconds
[root@linuxidc.com~]# hwclock -r
2011年11月06日 星期日 21時09分33秒 -0.469123 seconds
[root@linuxidc.com~]# hwclock –show
2011年11月06日 星期日 21時09分45秒 -0.127548 seconds
修改日期并同步到硬件時鐘
[root@linuxidc.com~]# date
2011年 11月 06日 星期日 21:11:57 CST
[root@linuxidc.com~]# date 11062112 <== 格式 mmddHHMM,即 月日時分
2011年 11月 06日 星期日 21:12:00 CST
[root@linuxidc.com~]# hwclock -w
[root@linuxidc.com~]# hwclock
2011年11月06日 星期日 21時12分13秒 -0.648818 seconds
注:要使系統時間準確,最好還是使用ntp方式。 使用ntpdate命令從網絡同步時間,再同步到硬件時鐘
ntpdate命令是使用NTP協議來從網絡同步時間的命令。NTP=Network Time Protocol 網絡時間協議。
[root@linuxidc.com~]# ntpdate 0.rhel.pool.ntp.org
6 Nov 21:17:55 ntpdate[4829]: step time server 123.146.124.28 offset -1.025258 sec
[root@linuxidc.com~]# date
2011年 11月 06日 星期日 21:17:59 CST
[root@linuxidc.com~]# hwclock -w
獲取幫助
查看命令類型:
type COMMAND
:可查看內置或者外部命令。 要想獲取幫助,首先要弄清楚該命令為內部還是外部命令
內部命令:
help COMMAND
外部命令
- 命令自帶簡要格式的使用幫助:
COMMAND –help
- 使用手冊:man,manual的簡寫,位于
/usr/share/man
- 使用規則:
man COMMAND
- man page組成部分:NAME:簡短的命令、數據名稱說明;SYNOPSIS:簡短的命令執行語法簡介;DESCRIPTION:較為完整的說明
- man手冊章節說明:
man 1:用戶在shell環境中可以操作的命令或可執行文件;
man 2:系統內核可調用的函數與工具等;
man 3:常用的函數與函數庫,大部分為c函數庫
man 4:設備文件及特殊文件的說明
man 5:配置文件或者是某些文件的格式
man 6:游戲使用幫助
man 7:雜項,慣例與協議等,例如Linux文件系統、網絡協議等說明
man 8:管理工具及守護進程,系統管理員可用的管理命令
man 9:內核kernel有關的文件 - 查看:
whatis COMMAND
查看某個命令在哪些章節存在,前提是必需要創建whatis數據庫才行,因為其執行過程是查詢數據庫進行的。 - 創建或更新數據庫:
makewhatis
- 使用規則:
info COMMAND
:獲取命令的在線文檔- 參考自帶幫助文檔:
/usr/share/doc
其中
README:程序的相關信息
INSTALL:安裝幫助
CHANGES:版本迭代時的改動信息 - 主流發行版的官方文檔:http://www.redhat.com/doc等
- 程序的官方文檔:官方站點上的documents
- 搜索引擎
本文來自投稿,不代表Linux運維部落立場,如若轉載,請注明出處:http://www.www58058.com/91111