一、linux操作系統初識
了解操作系統之前我們需要先了解一下計算機的硬件組成,因為操作系統都是運行在硬件之上。遵循馮諾依曼體系,計算機是由控制器、運算器、存儲器、輸入設備、輸出設備五部分組成。對應到我們現在使用計算機上硬件分別為:
運算器:對數據進行各種算術運算和邏輯運算,即對數據進行加工處理。
控制器:對輸入的指令進行分析,并統一控制計算機的各個部件完成一定任務的部件
控制器、運算器—-控制器和運算器已經完全集成到cpu中
存儲器:對信息進行存儲并在必要的時候提供給運算器和控制器進行使用。其有分為主存儲器(簡稱為主存或內存)和輔助存儲器(簡稱輔存或外存)。
輸入設備:將程序、原始數據、文字、字符、控制命令等信息輸入到計算機;常見的輸入設備有鍵盤、鼠標等。
輸出設備:把外算機的中間結果或最后結果、機內的各種數據符號及文字或各種控制信號等信息輸出出來?,F在最常使用的就是顯示器還有各種遠程連接工具,早期還會使用打印機。
二、linux的發行版本
在我們使用過程中直接面對硬件進行操作及其不友好,因此操作系統就誕生了。操作系統中又有不同的種類,linux、windows、unix。。?!,F在只對linux進行介紹。linux大體有兩種分類,一種是由商業公司維護的發行版本,以RedHat為主;一種是社區組織維護的發行版本,以Debian為主。
1、RedHat
RedHat是國內使用最多的linux版本,Redhat系列的包管理方式采用的是基于RPM包的YUM(以后可能會改成dnf)包管理方式,安裝簡單,可以自動解決包依賴關系。穩定性方面RHEL和CentOS的穩定性非常好,適合于服務器使用。
子版本包括: Redhat Enterprise Linux(紅帽官方發行的企業收費版本)
Fedora(有紅帽官方贊助的發行的免費版本,對于紅帽來說這是紅帽官方軟件或技術的測試版本,一些新技術會在這個版本上進行測試,穩定以后會應用到紅帽的收費版本中)
CentOS(RHEL的社區克隆版本,免費)基于RHEL的社區版本的源碼編譯,與原版有10%左右的差異。
2、Debian
Debian是社區發行版遵循GUN協議的典范,最具特色的就是dpkg包管理系統使用,前端使用apt-get工具。
子版本包括:Ubuntu (基于Debian的unstable衍生版本,更加專注于個人pc系統方面的使用)
3、Slockware
Slockware也是遵循GUN協議的發行版,因為它與其他的發行版不太一樣的是它堅持KISS(keep it simple stupid)原則,更力圖成為“UNIX”風格的linux發行版本,追求穩定性,只吸收穩定版本的應用程序,堅持BSD的啟動風格與當今盛行的systemd大行其道。包管理方式依然是rpm,前端工具是zypper
衍生版本:S.U.S.E—>OPEN S.U.S.E。
4、Gentoo
嚴格來說Gentoo并不是一個linux的發行版本,而是定制專屬自己的linux系統的技術,它幾乎所有的軟件都需要自己下載安裝。
三、linux的哲學思想
1、一切皆文件
對于linux來說所有的系統資源都是文件,包括硬件設備、接口等
2、有眾多功能單一的程序組成:一個程序只負責一件事情
組合眾多程序完成復雜任務
3、程序啟動后盡量避免與用戶交互
易于以編程方式實現自動化任務
4、使用文本文件保存配置信息
更易于修改和配置
四、linux的常用命令(ifconfig、echo、tty、startx、export、pwd、history、shutdown、poweroff、reboot、hwclock、date)
ifconfig
–用于顯示系統的網絡接口和網絡參數
常用參數
-a 用于查看所有處于啟用狀態的網絡接口信息(默認項)
-s eth0 簡要顯示eth0的網口信息(不加eth0顯示所有處于啟用狀態的網口信息)
eth0 arp| – arp 開啟或關閉端口eth0的arp
eth0 顯示指定網口eth0名稱的網絡信息
eth0 down|up
關閉網口eth0或啟用網口eth0(當前有效,重啟系統后失效)
eth0 192.168.10.1 netmask 255.255.255.0
設置指定網口eth0的IP地址是192.168.10.1 掩碼是255.255.255.0(當前有效重啟后失效)
echo
–用于將指定內容輸出出來
常用參數
-n 輸出內容時不換行顯示,默認輸出時換行顯示
-e 使轉義符生效,在輸出時遇到以下字符參數時特殊處理
\n: 換行
\table: 插入table
tty
–顯示當前時刻當前用戶登錄的終端
w
–顯示當前時刻登錄在系統中的用戶
startx
–啟動圖形化桌面(centos6以及一下版本還可以用 init5 進行圖形化桌面切換)
export
–查看環境變量以及將本地變量聲明成環境變量
export 查看環境變量
export aaa=123 將變量aaa聲明成環境變量
unset aaa 撤銷變量aaa
pwd
–顯示當前工作目錄的路徑
pwdx
–根據運行程序的pid顯示程序的家目錄
pwdx pid
basename <dir|file>
–顯示當前目錄或文件基名(基名指當前目錄的名稱)
history
–查看已命令的記錄
常用參數
-c 清除歷史記錄
-r filename 從文件中讀取命令到歷史記錄中
-w filename 將歷史命令保存到文件中
歷史命令記錄中的命令可以再次被調用
!# 再次執行第#號命令。#指命令歷史中的編號
??! 再次執行最近一次的命令
!STRING 再次執行最近一次以STRING開頭的文件
調用上一個命令的一個參數
ESC . esc按鍵加上.
!$
shutdown
–關機命令
常用參數
-h now|+#| hh:mm 立刻關機|在#分鐘后關機|在hh:mm時間關機(24小時制);優先停止系統服務。
-r 停止系統服務后重啟
-k “message” 向所有登錄用戶發送message信息
-c 在關閉系統服務過程中,新開終端輸入會停止關機
poweroff、halt、init 0(centos6以及以下系統)
–關機命令
reboot、init 6(centos6以及以下系統)
–重啟命令
hwclock
–硬件時間
常用參數
-set time 將time設置為硬件時間
-s 將硬件時間設置為系統時間
-w 將系統時間設置為硬件時間
date
–顯示和設置系統時間
常用參數
-s time 設置系統時間
-d time 顯示輸入的time 并不修改
+%F 顯示當前年月日,年月日中間連接符為-
+%Y 顯示當前年份
+%y 顯示當前年份后兩位
+%d 顯示當前日期
+%D 顯示日月年,日月年的連接符是/,年份顯示后兩位
+%m 顯示當前月份數字顯示
+%M 顯示當前分鐘數
+%H 顯示當前小時
+%h 顯示當前月份英文縮寫
+%T 顯示當前時間格式hh:mm:ss
+%S 顯示當前秒數
+%s 顯示當前時間戳
+%w 顯示當前星期(周一到周日 1、2、3、4、5、6、0)
+%W 顯示本周是今年第幾周
注:date命令的顯示時間命令可以連接起來使用
五、linux的命令幫助信息使用
linux的命令分為內部命令和外部命令,在不確定想要查詢幫助信息的命令是內部命令和外部命令,可以使用type命令來進行分別。
type command
顯示命令的使用路徑是外部命令,反之則是內部命令。
內部命令
內部命令使用help命令來獲取簡要幫助信息
help command
外部命令
外部命令使用–help參數或-h參數來獲取簡要幫助信息
command –help|-h
外部命令還可以使用man命令來進行詳細信息的查看
man command
man手冊的內容結構
NAME:功能性說明
SYNOPSIS:語法格式
DESCRIPTION:描述信息
OPTIONS:各選項的詳細說明
EXAMPLES:使用示例
AUTHOR:命令的作者
BUGS:報告程序bug的方式
在man手冊中還有一些特殊符號的功用說明
[] 表示被[]起來的參數是可選項
<> 表示被<>起來的參數是必選項
| 表示|的左右是可選內容
… 表示相同的內容可以出現多個
man手冊并不是只有一個,因查詢信息較多,man手冊中也被按照內容分為不同的章節
1、用戶命令:普通用戶和超級管理員能夠使用的命令
2、系統調用
3、C庫調用
4、設備和特殊文件
5、文件格式(配置文件)
6、游戲使用幫助
7、雜項(不屬于其他項的內容)
8、管理工具及守護進程
注:有時候一個命令在多個章節都有幫助信息
可以使用whatis 命令查詢命令的簡要信息和該命令的幫助信息存在man手冊的哪些章節中
whatis command
whatis的查詢到的內容是whatis的數據庫中的內容,該數據庫是系統在空閑時后自動更新,也可使用makewhatis來進行更新(在有些情況下不能查到信息而自己確定該信息存在系統中是可以手動更新)。
man手冊打開后可以使用一下方法來進行操作查找想要查詢的信息
翻屏:
空格鍵:向文件尾部翻一屏
b:向文件首部翻一屏
crtl+d:向文件尾部翻半屏
crtl+u:項文件首部翻半屏
回車鍵:向文件尾部翻一行
k:向文件首部翻一行
G:跳轉至最后一行
#G:跳轉至第#行
1G:跳轉至文件首部
文本搜索:
/keyword 從文件首部向尾部搜索指定keyword
?keyword 從文件尾部向首部搜索指定keyword
N: 按照命令順序查找下一個keyword
n: 按照命令順序查找上一個keyword
退出:
q:退出
六、linux系統的基本目錄
在linux系統中有一些基本目錄各有各的定義和功能
/bin :bin是binary的縮寫。這個目錄存放著最常使用的命令
/sbin :s是super user的意思,這里存放的是超級管理員才能使用的系統管理命令和程序
/boot :存放linux啟動時使用的一些文件(kernel、grub等)
/dev :dev是設備(Device)的縮寫。該目錄中存放的是linux的硬件設備文件。
/etc : 存放所有的系統管理所需要的配置文件和子目錄
/home :用戶的主目錄,除了root外其他用戶在創建時家目錄默認創建在該目錄下
/root :root用戶的家目錄
/lib : 存放系統中使用到的庫文件
/lib64 :64位系統特有的存放64位庫文件目錄
/lost+ found :一般為空,在系統非法關機后可能會保存一些文件在這里。
/media :系統自動識別一些設備移動設備后會自動將該設備掛載在該目錄下
/mnt : 系統預留讓用戶來進行移動設備掛載時的目錄
/opt : 系統預留給用戶存放安裝文件的目錄
/selinux :Redhat/Centos系統特有的目錄,存放有關SElinux的配置文件
/srv : 存放某些服務啟動后需要提取使用的數據
/sys: 存放內核一些信息映射的目錄文件
/tmp :臨時文件目錄,所有人可讀寫
/usr :安裝文件存放目錄類似windows的program files
/usr/bin:存放系統用戶使用的命令或程序
/usr/sbin:存放超級管理員使用的命令或程序
/usr/src :在安裝文件時源代碼的默認存放目錄
/usr/local :通常用來安裝第三方程序
/var :通常用來存放日志文件
/proc: 系統硬件和內存中的信息的映射文件
多數系統命令文件都存放在:/bin,/sbin,/usr/bin,/usr/sbin./usr/local/bin,/usr/local/sbin
普通命令:/bin,/usr/bin,/usr/local/bin
管理命令:/sbin,/usr/sbin,/usr/local/sbin
共享庫:/lib,/lib64,/usr/lib,/usr/lib64,/usr/local/lib,/usr/local/lib64
原創文章,作者:胡安慧,如若轉載,請注明出處:http://www.www58058.com/64723
總結的很好,如能在相關命令后附上使用樣例就–完美了