Linux教程
Linux系統簡介
內核版本:Linux內核
發行版本:redhat centos ubuntu debian opensuse
最常用的5個Linux發行版系統
skip 跳過
next 下一步
硬盤可以有四個主分區,通常把第四個主分區替換成擴展分區,擴展分區中包含了很多的邏輯分區
Linux系統中第一個邏輯分區是sda5
sda1 sda2 sda3 sda4 通常表示主分區
Linux分區格式化,就是創建一種文件系統,
swap:虛擬內存
物理內存:4,4-16,16-64,64-256
swap:2,4,8,16
=========================================
Linux中的幫助命令:man
manual
man who
name 表示命令的名稱和簡單用途的說明
synopsis 表示命令使用方法概要,和命令的一些語法
description 表示命令的詳細說明
author 表示命令的作者
copyright 表示命令的版權協議
see also 表示命令還可以參考的文檔
在man命令中搜索需要的匹配項
上下方向鍵,來上下滾動一行
page up ,page down 來向上和下翻頁
/字符串 從光標處開始向下查找需要的匹配項,n跳轉到下一個匹配處,N跳轉到上一個匹配處,q退出當前的man命令
Linux中的幫助文檔:9個man命令的部分
1 存放的是shell中可以運行的指令,可執行文件的幫助文檔
2 系統核心可使用的函數和工具的幫助文檔
3 存放常用函數與庫的幫助文檔
4 放置的是設備文件的說明
5 放置的是配置文件或是某些文件的格式的說明
6 存放的是游戲程序的幫助文檔
7 放置的是一些慣例,協議的幫助文檔
8 放置的是系統管理員可以使用的命令的幫助文檔
9 存放的是跟系統核心相關的幫助文檔
man 1 read
man 9 read
===============================
Linux中的關機命令
shutdown -h 10 表示10分鍾后關機
shutdown -now 表示讓系統立即執行關機
Ctrl+C 表示取消當前命令的執行
shutdown -r 表示重啟系統
shutdown -c 取消關機指令
reboot =shutdown -r now
halt = shutdown -h now
poweroff =halt +切斷電源指令
reboot,halt,poweroff 是在關機的時候執行刪除所用用戶進程的操作,通常使用shutdown命令來關機
==============================
圖形界面:讓簡單任務易執行,命令界面:讓艱難任務可執行
Linux是一個基於文本驅動的操作系統,Linux中一切皆文件
bash
命令提示符:[xxx@localhost~]$
xxx 表示當前登錄主機的用戶名
localhost 表示當前登錄的主機的主機名
~ 表示用戶當前所處的目錄,~ 表示當前登錄用戶的私有目錄家目錄
$ 表示當前登錄用戶的類型,是普通用戶還是管理員用戶,#管理員的表示
Linux中常用的一些命令:Linux中命令嚴格的區分大小寫
whoami 當前登錄用戶的用戶名
echo 哎叩 打印輸出命令
Tab鍵,補齊Linux中命令的快捷鍵
history 查看輸入歷史的命令
==============================
Linux中的文本編輯器vim
vim的使用
gg 將光標快速移動到第一行
G 將光標快速移動到最后一行
0 將光標移動到當前行的開頭
$ 將光標移動到當前行的行尾
3G 表示將光標移動到第三行開頭
10$ 表示將光標向下移動10行,並定位到行尾
n 向下查找需要的匹配字符串
N 向上查找需要的匹配字符串
yy 復制光標所在行
nyy 復制光標所在行開始的向下n行
y 復制
p 粘貼
dd 刪除光標所在行
ndd 刪除從光標所在行開始的向下n行
x刪除光標所在的字符
nx刪除從光標所在位置的n個字符
u撤銷上一步操作
:e! 撤銷所有的操作
Ctrl+r 返回撤銷
Ctrl+V 進入可視模式,進行文本的選擇
Linux中的文本編輯器vim
vim是一種模式編輯器:
一般模式:移動光標,刪除,復制,粘貼
插入模式:輸入字符
命令行模式:打開文件,保存文件,在文件中查找內容,替換文本中的內容
hjkl 上下左右移動光標的鍵
:wq 保存后退出
:q! 退出不保存
Linux中切換,創建和刪除目錄
bin 目錄,可執行的命令文件
boot目錄放置着系統的核心文件和啟動所需要的文件
dev 放置着系統設備相關的文件
etc 放置着系統的主要的配置文件
home存放着用戶的家目錄文件,每個系統用戶都在home中有一個自己的私人目錄
lib 放置着系統和程序調用所需要的庫文件
root放置着root用戶的家目錄
sbin放置着管理員或根用戶才能執行的命令文件
tmp 存放臨時文件的目錄,任何用戶都可以訪問
opt 第三方軟件建議安裝目錄類似於windows中的program files或者program files(x86)目錄
media 放置移動設備相關文件的目錄:光驅,U盤相關的數據
用戶登錄到系統后默認的初始工作目錄就是當前登錄用戶的家目錄,也就是當前登錄用戶的私人目錄
pwd 命令用來顯示當前所在的完整的工作目錄
cd 命令用來切換目錄,change directory變化目錄
. 表示當前工作目錄
.. 表示工作目錄的上層目錄
~ 表示用戶的家目錄
cd ~ 表示切換到當前登陸用戶的家目錄
- 表示返回到上一次的工作目錄中
cd - 表示返回到上一次的工作目錄中
mkdir 命令用於創建一個目錄,make directory
mkdir -p 用於創建嵌套關系的目錄,一次創建多級目錄
rmdir 命令用於刪除一個空目錄,remove directory
絕對路徑需要從根目錄開始寫/
相對路徑,是從當前工作的目錄開始寫
查看Linux中文本文件的內容與屬性
Linux中的配置文件和系統的日志文件都是存放在純文本文件中的
cat命令:concatenate 查看文件的意思,cat命令只能查看較小的文件。因為cat不支持翻頁和查找功能
cat 需要查看的文件名
less 常用語查看較大的文件內容,less命令支持上下翻頁和文本查找功能
/關鍵字 用於查找文本中匹配的關鍵字,n用戶跳轉到下一個匹配的關鍵字位置,N用於跳轉到上一個匹配的關鍵字位置
q 退出當前命令
head 命令用於查看一個文件的前幾行的內容,默認顯示文件的前10行
head -n 20 需要查看的文件名,用於查看一個文件的前20行
tail 命令用於查看一個文件的后幾行的內容,默認顯示文件的后10行
tail -n 20 需要查看的文件名,用於查看一個文件的后20行
head和tail命令常用於查看日志文件的內容,
列出Linux系統中的文件
ls 命令用於列出Linux系統中的文件,list
ls 列出當前工作路徑下的文件
ls 目錄,列出目錄中的文件
ls -a 列出的文件包含了隱藏文件
ls -l 列出文件及文件的詳細屬性信息
ls -al 列出目錄中的所有文件及文件的詳細信息
文件的硬鏈接數目,文件最新修改的日期時間,文件名
文件的訪問權限:File access permission :文件的類型和權限,文件的擁有者,文件所屬的用戶組,
文件的擁有者,文件所屬組,其他用戶之間的關系,如圖所示
Linux中文件的權限
r讀權限,表示可以查看文件的內容,
w 表示可以修改文件內容或者刪除文件
x 表示可以運行這個文件
- 表示無任何權限
rwx- 權限與二進制01之間的相互轉化關系:將英文字母替換成1將 一 替換成0
chmod 命令用於修改一個文件的屬性
chown 命令用於修改一個文件的擁有者和所屬組
chown :新組名 表示單獨修改一個文件的所屬組
chown 新用戶名,表示單獨修改一個文件的所有者
Linux中文件的類型
d 表示目錄文件
- 表示普通文件
c 表示字符設備文件
b 表示塊設備文件
l 表示鏈接文件,即快捷方式文件
怎樣在Linux中打包和壓縮文件
打包文件:將多個文件或將一個目錄打包成一個文件 ,用命令tar
tar 是tape archive 的縮寫,常用於文件的備份,tar只對文件進行打包並不會對文件進行壓縮
tar -cf 包文件名 需要打包的文件或目錄
c 表示創建打包文件
f 表示指定打包后的包文件的名字
查看一個打包中的所有文件的文件名
tar -tf xxx.tar
刪除一個包中的特定文件
tar -f xxx.tar --delete 需要刪除的包中的文件名
將兩個打包的文件合並成一個包文件
tar -f xxx.tar -A yyy.tar
向包文件中添加一個新的文件
tar -f xxx.tar -r aaa.txt
解壓包,將包解壓到指定的目錄中
tar -xf xxx.tar -C /temp
gzip 需要壓縮的文件,壓縮后的文件將會替換原文件,gzip壓縮后的文件后綴是.gz
gzip -d 需要解壓的文件,解壓后的文件替換了壓縮文件
gzip 默認使用6級別的壓縮比率
gzip -9 使用最高壓縮比,最慢,文件最小
gzip -1 使用最低壓縮比,最快,文件最大
tar -czf 用於將文件打包后壓縮成gzip的文件包
tar -xzf 用於解壓gzip打包壓縮的文件包
怎樣在Linux中復制,移動,刪除和創建文件
cp 命令用於復制文件,copy
cp -r 復制一個目錄
cp -p 復制文件的時候將文件原來的權限也復制,復制文件的時候不修改原來文件的權限
移動文件
mv 命令用於移動一個文件,move
在同一個目錄中移動文件就是重命名,Linux中沒有專門用於重命名的命令,mv常用於做Linux中文件的重命名
刪除文件
rm 命令用於刪除一個文件,remove
rm -R 刪除目錄
rm -fR 強制刪除目錄
創建文件
touch 命令用於創建一個空白文件,或修改一個已存在文件的時間屬性
怎樣在Linux中查找文件
locate 查找速度很快,是從/var/lib/mlocate數據庫中查找的,新建的和已經刪除的文件locate有時候會出現找不到問題。mlocate數據庫默認每天更新一次,updatedb 用於手動更新mlocate數據庫
find命令:在系統中進行真實的查找,功能強大
根據文件的類型進行查找
find -type l 查找鏈接文件
d 目錄文件
f 普通文件
c 字符設備文件
b 塊設備文件
根據文件的時間進行查找
mtime mmin
ctime cmin
atime amin
find /tmp -mtime -3 -ls 表示列出最近三天之內時間發生變化的文件
find /tmp -mtime +3 -ls 表示3天前時間發生改變的文件
find /tmp -mtime 3 -ls 表示3天前的第3天時間發生變化的文件
find /tmp -mmin -60 -ls 表示在tmp目錄中一個小時之內時間發生變化的文件
-amin -atime 表示 文件被讀取或執行的時間
-cmin -ctime 表示文件屬性修改的時間
-mmin -mtime 表示文件修改時間
根據文件大小進行查找
find /tmp -size -3k -ls 表示在tmp目錄中查找比3k小的文件
find /tmp -size +3k -ls 表示在tmp目錄中查找比3k大的文件
find /tmp -size 10M -ls 表示在tmp目錄中查找10M的文件
size的單位
根據文件的所有者和所在組進行查找
-user -uid
-group -gid
find /tmp -user root -ls 表示在tmp目錄中查找擁有者是root用戶的文件
find /tmp -uid 1000 -ls 表示在tmp目錄中查找擁有者是的uid是1000的文件
find /tmp -group root -ls 表示在tmp目錄中查找用戶組是root的文件
find /tmp -gid 0 -ls 表示在tmp目錄中查找用戶組gid是0的文件
根據文件的權限進行查找
-perm
find /tmp -perm 755 -ls 表示在tmp目錄中查找755權限的文件
find和邏輯運算符
-a 與,and
-o 或,或者
! 非,不是
Linux中
-ok可以替換-exec
\ 反斜杠表示轉義
在Linux中創建鏈接文件
ln -s
-s是symbolic 符號鏈接文件
硬鏈接
符號鏈接
Linux中文件的存儲形式
Linux中目錄的組成
ln
ls -il 文件名 可以列出一個文件的inode-number
硬鏈接不能跨硬盤分區,因為不同的硬盤inode-number不是唯一的