Linux
0.目錄
文章目錄
- Linux
- 0.目錄
- 1.Linux簡介
- 1.1 Linux是什么
- 1.2 Linux發行版?
- 1.3 LInux應用領域?
- 1.4 Linux vs Windows?
- 2.Linux安裝
- 2.1 系統磁區
- 2.2 注意事項
- 3.常用目錄結構
- 4.常用命令
- 5.VI編輯器
- 5.1 編輯模式
- 5.1.1 模式切換
- 5.1.2 移動游標
- 5.1.3 編輯
- 5.1.4 退出
- 5.2 輸入模式
- 5.3 末行模式
- 6.軟體安裝
- 6.1 二進制包安裝
- 6.1.1 RPM包安裝
- 6.1.2 yum安裝
- 6.2 原始碼包安裝
- 7.用戶管理
- 7.1 用戶相關檔案
- 7.2 用戶管理命令
- 7.3 組管理命令
- 8.權限管理(缺)
- 9.檔案系統管理
- 9.1 硬碟(缺)
- 9.2 檔案系統
- 9.2.1 linux檔案系統特性
- 9.2.2 常見檔案系統
- 9.3 命令
- 9.4 手動創建磁區
- 9.4.1 MBR磁區
- 9.4.2 GPT磁區
- 9.4.3 swap磁區
- 9.5 磁盤配額
- 9.5.1 依賴
- 9.5.2 概念
- 9.5.3 配額步驟
- 9.6 LVM邏輯卷
- 9.6.1 步驟
- 10.啟動引導與修復
- 10.1 系統運行級別
- 10.1.1 開機執行檔案
- 10.2 啟動引導程式
- 10.2.1 grub引導程式
- 10.2.2 /boot/grub目錄
- 10.2.3 grub組態檔
- 10.2.4 grub加密
- 10.3 系統修復模式
- 10.3.1 單用戶模式
- 10.3.2 光碟修復模式
- 11.服務管理
- 11.1 服務分類
- 11.2 管理
- 11.2.1 RPM包獨立服務
- 11.2.2 基于xinetd服務
- 11.2.3 原始碼包服務
- 12.系統管理
- 12.1 行程管理
- 12.2 作業管理
- 12.3 資源查看
- 12.4 定時任務
- 13.日志管理(缺)
- 13.1 rsyslogd服務
- 13.2 日志輪替
1.Linux簡介
1.1 Linux是什么
-
Linux是一種自由和開放原始碼的類UNIX作業系統,1991年由林納斯托瓦茲創建,主要受Minix和UNIX思想啟發,
-
Linux遵循GNU通用公共許可證(GPL),所有人都可以自由使用源代碼,也可以自由修改并重新發部
-
Linux是基于POSIX和UNIX的多用戶、多任務、支持多執行緒和多CPU的作業系統
-
Linux能運行主要的UNIX工具軟體、應用程式和網路協議,繼承了UNIX以網路為核心的設計思想,
1.2 Linux發行版?
LInux發行版簡單的來說就是將Linux內核和應用軟體做封裝
市場上主流的發行版有:Ubuntu、RedHat、CentOS、Debian、Fedora、SuSE、OpenSUSE、Arch Linux、SolusOS 等
1.3 LInux應用領域?
從嵌入式設備到超級計算機、并到服務器領域確定了地位、通常服務器使用LAMP(Linux+Apache+Mysql+PHP)和LNMP(Linux+Nginx+Mysql+PHP)組合
目前,linux不僅在家庭中,企業中使用國家層面也在使用Linux
1.4 Linux vs Windows?
| 比較 | Windows | Linux |
|---|---|---|
| 界面 | 界面統一,外殼程式固定所有 Windows 程式選單幾乎一致,快捷鍵也幾乎相同 | 圖形界面風格依發布版不同而不同,可能互不兼容,GNU/Linux 的終端機是從 UNIX 傳承下來,基本命令和操作方法也幾乎一致, |
| 驅動程式 | 驅動程式豐富,版本更新頻繁,默認安裝程式里面一般包含有該版本發布時流行的硬體驅動程式,之后所出的新硬體驅動依賴于硬體廠商提供,對于一些老硬體,如果沒有了原配的驅動有時很難支持,另外,有時硬體廠商未提供所需版本的 Windows 下的驅動,也會比較頭痛, | 由志愿者開發,由 Linux 核心開發小組發布,很多硬體廠商基于著作權考慮并未提供驅動程式,盡管多數無需手動安裝,但是涉及安裝則相對復雜,使得新用戶面對驅動程式問題(是否存在和安裝方法)會一籌莫展,但是在開源開發模式下,許多老硬體盡管在Windows下很難支持的也容易找到驅動,HP、Intel、AMD 等硬體廠商逐步不同程度支持開源驅動,問題正在得到緩解, |
| 使用 | 使用比較簡單,容易入門,圖形化界面對沒有計算機背景知識的用戶使用十分有利, | 圖形界面使用簡單,容易入門,文字界面,需要學習才能掌握, |
| 學習 | 系統構造復雜、變化頻繁,且知識、技能淘汰快,深入學習困難, | 系統構造簡單、穩定,且知識、技能傳承性好,深入學習相對容易, |
| 軟體 | 每一種特定功能可能都需要商業軟體的支持,需要購買相應的授權, | 大部分軟體都可以自由獲取,同樣功能的軟體選擇較少, |
2.Linux安裝
VMware虛擬機:www.vmware.com
VMware特點:
- 不需要磁區和重啟即可同一PC上兩種作業系統
- 本機和虛擬機可以網路通信
- 可以隨時修改虛擬機配置
安裝步驟:
- 略
2.1 系統磁區
- 磁區表
- MBR磁區表
- 最大2.1TB,4磁區數
- 主磁區(最多四個)
- 擴展磁區(1個,不能寫資料)
- 邏輯磁區
- GPT磁區表
- 最大9.4ZB,沒有限制磁區數(理論)
- MBR磁區表
- 格式化
- 又稱邏輯格式化,是指用戶選定檔案系統(型別:ext4)
- 掛載
2.2 注意事項
-
linux嚴格區分大小寫
-
linux一切皆檔案
-
linux不靠擴展名區分檔案型別
-
linux所有存盤設備都不許掛載后才能使用
-
Windows程式不能直接在linux中使用
3.常用目錄結構
| 目錄 | 作用 |
|---|---|
| /bin | 存放系統命令的目錄 |
| /sbin | 存放系統命令的目錄 |
| /boot | 系統啟動目錄 |
| /dev | 設備檔案目錄 |
| /etc | 組態檔目錄 |
| /home | 普通用戶家目錄 |
| /lib | 系統呼叫的函式庫 |
| /mnt | 掛載目錄 |
| /opt | 軟體安裝目錄 |
| /proc | 虛擬檔案目錄(內核、行程、外部設備狀態、網路狀態) |
| /sys | 虛擬檔案目錄(內核相關) |
| /root | root家目錄 |
| /tmp | 臨時目錄 |
| /usr | 系統軟體資源目錄 |
| /var | 動態資料保存目錄(快取、日志、軟體運行檔案) |
4.常用命令
| 命令 | 作用 | |
|---|---|---|
| 目錄操作 | ls | 查看檔案 |
| cd | 切換目錄 | |
| pwd | 查看當前目錄 | |
| mkdir | 創建目錄 | |
| rmdir | 洗掉目錄 | |
| 檔案操作 | touch | 創建空檔案、修改元資料 |
| stat | 查看詳細資訊 | |
| cat | 查看檔案內容 | |
| more | 分屏查看檔案內容 | |
| less | 分行查看檔案內容 | |
| head | 查看檔案頭部 | |
| tail | 查看檔案尾部 | |
| ln | 軟連接 | |
| 目錄檔案都可操作 | rm | 洗掉 |
| cp | 復制 | |
| mv | 移動或者重命名 | |
| 權限控制 | chmod | 修改權限 |
| chown | 修改檔案所有者和所屬組 | |
| chgrp | 修改檔案所屬組 | |
| 幫助命令 | man | 顯示聯機幫助手冊 |
| info | 完整的幫助資訊 | |
| help | 查看內置命令資訊 | |
| 搜索命令 | whereis | 搜索系統命令(幫助檔案位置) |
| which | 搜索系統命令 | |
| locate | 搜索普通檔案 | |
| find | 在目錄中搜索檔案 | |
| grep | 顯示匹配的行 | |
| |管道 | 管道 | |
| 文本操作 | awk | 匹配截取 |
| grep | 匹配 | |
| cut | 截取 | |
| sed | 截取 | |
| 壓縮、解壓命令 | zip | 壓縮 |
| unzip | 解壓.zip | |
| gzip | 壓縮 | |
| gunzip | 解壓.gz | |
| bzip2 | 壓縮 | |
| bunzip2 | 解壓.bz2 | |
| tar -c | 壓縮 | |
| tar -x | 解壓.tar | |
| tar -z | .tar.gz | |
| tar -j | .tar.bz2 | |
| 關機重啟 | sync | 重繪檔案系統緩沖區(資料同步) |
| shutdown | 關機-h或重啟-r | |
| reboot | 重啟 | |
| halt | 關機(不安全) | |
| poweroff | 關機(不安全) | |
| init | 關機或重啟(不安全) | |
| 網路命令 | ifconfig | 配置網路介面 |
| ping | 通過ICMP網路探測 | |
| netstat | 查看網路狀態、查看埠 | |
| write | 向指定用戶發資訊 | |
| wall | 向所有用戶發資訊(包括自己) | |
| 給其他用戶發郵件 | ||
| 系統痕跡命令 | w | 顯示正在登陸的用戶資訊 |
| who | 顯示正在登陸的用戶資訊(簡單) | |
| last | 查看所有登陸過的用戶資訊 | |
| lastlog | 查看最后登陸過的用戶資訊 | |
| lastb | 查看登陸錯誤資訊 | |
| 掛載命令 | mount | 掛載 |
| umount | 卸載 |
5.VI編輯器
vi 、vim 打開檔案,進入編輯模式
三種模式:編輯模式、輸入模式、末行模式(有不同叫法)
5.1 編輯模式
5.1.1 模式切換
: 進入末行模式
i、a、o 進入輸入模式(前、后、下行)
I、A、O進入輸入模式(行首、行尾、上行)
5.1.2 移動游標
- 字符間
h: 左;j: 下;k: 上;l: 右 - 單詞
w: 移至下一個單詞的詞首
e: 跳至當前或下一個單詞的詞尾
b: 跳至當前或前一個單詞的詞首 - 行內
0: 絕對行首
^: 行首的第一個非空白字符
$: 絕對行尾 - 行間
G:文章末尾
3G:第3行
gg:文章開頭 - 翻屏
ctrl:f,b
5.1.3 編輯
- 洗掉&替換單個字符
x:洗掉游標位置字符
3x:洗掉游標開始3個字符
r:替換游標位置字符 - 洗掉命令 : d
dw,dd - 復制粘貼&剪切
yw,yy
p
P - 撤銷&重做
u 撤銷
ctrl+r 重做 撤銷的操作
. 重復上一步的操作
5.1.4 退出
-
直接退出
ZZ:沒修改退出
-
進入末行模式退出
wq:保存并退出
q!:不保存退出
5.2 輸入模式
-
標準輸入
-
模式切換
Esc進入編輯模式
5.3 末行模式
-
模式切換
Esc Esc 進入編輯模式
-
退出
:q 退出 沒有動過檔案
:wq 保存并退出 動過了,不后悔
:q! 不保存并退出 動過了,后悔了
:w 保存
:w! 強行保存
:wq --> :x -
高級操作
:set 設定 set nu 設定行數
/ 查找
s/// 查找并替換
6.軟體安裝
軟體包分為原始碼包和二進制包
6.1 二進制包安裝
6.1.1 RPM包安裝
-
命令
安裝命令:rpm -ivh 包全名
服務啟動:service 服務名 start
升級命令:rpm -Uvh 包全名
卸載命令:rpm -e 包名
-
默認安裝位置
/etc/ 組態檔
/usr/bin/ 可執行檔案
/usr/lib/ 函式庫
/usr/share/doc/ 使用手冊
/usr/share/man/ 幫助檔案
6.1.2 yum安裝
- 安裝yum
- 安裝軟體:yum -y install 軟體名
6.2 原始碼包安裝
安裝步驟
-
下載軟體包
-
解壓縮
-
進入解壓目錄
-
編譯前準備
./configure -
編譯
make -
編譯安裝
make install
卸載:洗掉檔案目錄即可
7.用戶管理
7.1 用戶相關檔案
| 目錄 | 作用 | 說明 |
|---|---|---|
| /etc/passwd | 用戶資訊檔案 | 用戶名:密碼:用戶ID:組ID:用戶說明:用戶家目錄:用戶命令列 |
| /etc/shadow | 影子檔案 | 用戶名:加密密碼:更改時間:更改間隔:有效期:到期前警告天數:過期后寬限天數:失效時間:保留 |
| /etc/group | 組資訊檔案 | 組名:組密碼位:組內其他用戶(組) |
| /etc/gshadow | 組影子檔案 | 保存組密碼 |
| /home/用戶名、/root | 用戶家目錄 | |
| /var/spool/mail/用戶名 | 郵箱目錄 | |
| /etc/skel | 用戶模版目錄 |
7.2 用戶管理命令
| 命令 | 作用 |
|---|---|
| useradd | 添加用戶 |
| passwd | 設定密碼 |
| usermod | 修改用戶 |
| userdel | 洗掉用戶 |
| su | 切換用戶 |
7.3 組管理命令
| 命令 | 作用 |
|---|---|
| groupadd | 添加用戶組 |
| groupdel | 洗掉用戶組 |
| gpasswd | 添加洗掉組成員 |
| newgrp | 改變有效組 |
8.權限管理(缺)
9.檔案系統管理
9.1 硬碟(缺)
9.2 檔案系統
9.2.1 linux檔案系統特性
super block(超級塊):記錄date block、inode的情況
date block(資料塊):資料實際存盤
inode(i節點):類似元資料
9.2.2 常見檔案系統
| 常見檔案系統 | 簡介 |
|---|---|
| ext | linux早期檔案系統 |
| ext2 | 升級版(更大磁區和檔案) |
| ext3 | 升級版(日志功能和可靠性) |
| ext4 | CentOS6.x默認檔案系統(顛覆性) |
| xfs | CentOS7.x默認檔案系統(XFS+LVM) |
| swap | 交換磁區檔案系統(暫時代替記憶體) |
| nfs | 網路檔案系統 |
| iso9660 | 光碟標準檔案系統 |
| fat | Windows的fat16 |
| vfat | Windows的fat32 |
| NTFS | Windows的NTFS |
| ufs | SunOS和Solaris |
| proc | 基于記憶體的虛擬檔案系統 |
| sysfs | 基于記憶體的虛擬檔案系統 |
| tmpfs | 基于記憶體的虛擬檔案系統 |
9.3 命令
| 命令 | 作用 |
|---|---|
| df | 統計空間大小 |
| du | 統計檔案大小 |
| fsck | 檔案系統修復命令 |
| dumpe2fs | 顯示磁盤狀態 |
| stat | 顯示檔案狀態 |
| file | 判斷檔案型別 |
| fdisk | 磁區命令 |
| parted | 磁區命令 |
| parkporbe | 強制重讀磁區檔案、重新掛載所有磁區(幾乎不用) |
| mkfs | 格式化(創建檔案系統) |
| free | 查看記憶體 |
| swapon | 增加swap磁區容量 |
9.4 手動創建磁區
9.4.1 MBR磁區
fdisk /dev/sdb #進入磁區互動界面
n #創建磁區
p #查看磁區
m #幫助
l #顯示檔案系統型別
w #保存退出
mkfs -t ext4 /dev/sdb1 #格式化
mkdir /disk1 #創建掛點
mount /dev/sdb1 /disk1 #掛載
vi /etc/fstab #自動掛載
#查看
mount
fdisk -l
df
#修復權限
mount -o remount,rw /
9.4.2 GPT磁區
parted /dev/sdb #進入磁區互動界面
mklabel gpt #修改型別
mkpart #創建磁區
mkfs #創建檔案系統
resize #修改磁區大小
re #洗掉磁區
print #查看磁區
#掛載……
9.4.3 swap磁區
fdisk /dev/sdb #進入磁區互動界面
mkswap /dev/sdb1 #創建swap磁區
swapon name #增加磁區
9.5 磁盤配額
9.5.1 依賴
- 內核支持磁盤配額
- grep CONFIG_QUOTA /boot/config-2.6.32-279.e16.i686
- 已安裝quota
- rpm -qa |grep quota
9.5.2 概念
- 用戶配額和組配額
- 磁盤容量限制和檔案個數限制
- 軟限制和硬限制
- 寬限時間
9.5.3 配額步驟
-
將磁區掛載到目錄上
-
用戶、用戶組、目錄(條件)
-
開啟磁盤配額功能
mount -o remount,usrquota /diskvi /etc/fstab-
defaults,usrquota
-
-
建立配額檔案(需關閉SELinux)
quotacheck -avug quotacheck -avugm(跟目錄) -
設定配額
edquota -u username(進入命令列) edquota -p user1 -u user2(配額復制) -
啟動關閉配額
quotaon -avug /disk/ quotaoff -avug /disk/ -
測驗
dd if=/dev/zero of=/disk/testfile bs=1M count=60 -
非互動式配額
setquota -u 用戶 容量軟限制 容量硬限制
9.6 LVM邏輯卷
9.6.1 步驟
-
將物理硬碟磁區(也可以整體磁區)
fdisk -
將磁區建立物理卷(PV)
pvcreate /dev/sdb pvscan pvdisplay pvremove -
將物理卷整合為卷組(VG)
vgcreate 選項 卷組名 物理卷名 vgscan -
把卷組劃分為邏輯卷(LV)
lvcreate 選項 卷組名
10.啟動引導與修復
10.1 系統運行級別
查看:runlevel
改變級別:init 級別
級別:
- 0:關機
- 1:單用戶模式
- 2:不完全的命令列模式(無NFS)
- 3:標準命令列模式
- 4:系統保留
- 5:圖形模式
- 6:重啟動
永久默認啟動級別設定:/etc/inittab
10.1.1 開機執行檔案
檔案:/etc/rc.d/rc.local
- /var/lock/subsys/local 開機觸摸
10.2 啟動引導程式
10.2.1 grub引導程式
優點:更多的檔案系統、查找內核檔案、啟動時修改啟動選項、動態配置grub組態檔
10.2.2 /boot/grub目錄
作用:
- 加載系統內核
- 選擇系統的選單
- 呼叫其他引導程式,實作多系統引導
10.2.3 grub組態檔
前四行:
- 默認啟動系統:0
- 等待選擇時間:5
- 背景檔案:
- 隱藏按鈕
后每四行:可用系統
- 標題
- 啟動目錄:
- 內核:
- 虛擬檔案系統:
10.2.4 grub加密
- grub-md5-crypt
- 將秘鑰放在grub組態檔背景檔案后
- 不能加lock
10.3 系統修復模式
10.3.1 單用戶模式
修改密碼:
- 啟動時按e,選中grub組態檔內核,按e
- 在grub組態檔內核加空格1,進入系統
- passwd root修改密碼
修改啟動級別:
- 修改/etc/inittab
10.3.2 光碟修復模式
- 光碟啟動
- chroot /mnt/sysimage
- 修復
11.服務管理
11.1 服務分類
- RPM包安裝服務
- 獨立服務
- 基于xinetd服務
- 原始碼包安裝服務
11.2 管理
11.2.1 RPM包獨立服務
-
啟動
-
使用/etc/init.d目錄下啟動腳本啟動
/etc/init.d/httpd start -
使用service命令啟動
service 獨立服務名 start|stop|restart
-
-
自啟動
-
chkconfig命令設定
chkconfig --level 級別 服務名 on|off -
/etc/rc.d/rc.local檔案配置
vi /etc/rc.d/rc.local -
ntsysv命令設定
ntsysv --level 級別
-
11.2.2 基于xinetd服務
-
啟動
- 配置/etc/xinetd.d/telnet
service 獨立服務名 start|stop|restart -
自啟動
-
chkconfig命令設定
chkconfig 服務名 on|off
-
11.2.3 原始碼包服務
-
啟動
-
使用/usr/local/服務/bin/…啟動腳本啟動
/usr/local/服務/bin/... start
-
-
自啟動
-
/etc/rc.d/rc.local檔案配置
vi /etc/rc.d/rc.local
-
-
配置命令識別
-
service命令識別:軟連接啟動腳本到/etc/init.d目錄下
-
chkconfig命令識別:啟動腳本前加入
#chkconfig: 運行級別 啟動順序 關閉 #description:說明chkconfig --add 服務名
-
12.系統管理
12.1 行程管理
ps 靜態查看行程
top 動態查看行程
pstree 查看行程樹
kill 殺死行程
killall 殺死行程
pkill 殺死行程
12.2 作業管理
轉入后臺:
- &
- ctrl+z
后臺命令:
- jobs -l 查看
- fg %作業號 恢復到前臺
- bg %作業號 后臺暫停>后臺執行
12.3 資源查看
vmstat 監控系統資源
dmesg 開機時內核檢查
free 記憶體使用情況
/proc/cpuinfo cpu資訊
w 已經登陸用戶資訊
who 已經登陸用戶資訊
uptime 系統啟動時間和平均負載
uname 查看系統與內核資訊
12.4 定時任務
at 一次性定時任務
crontab 回圈定時任務
anacron 關機情況定時任務
13.日志管理(缺)
常見日志檔案目錄:/var/log/
13.1 rsyslogd服務
組態檔:/etc/rsyslog.conf
13.2 日志輪替
@筆記分享
轉載請註明出處,本文鏈接:https://www.uj5u.com/qita/271503.html
標籤:其他
