linux學習
HKD
開始:20210306
前言隨筆:
本文為linux學習筆記(三),是在學習尚硅谷linux教程視頻時整理的學習筆記,其中資料知識點來源于尚硅谷課件,實操圖片均為本人在學習時手打命令實踐的截圖,整理以便后續鞏固復習,
文章目錄
- linux學習
- 前言隨筆:
- 組管理
- Linux組基本介紹
- 檔案目錄所有者
- 查看檔案的所有者
- 修改檔案所有者
- 組的創建
- 檔案/目錄所在組
- 查看檔案/目錄所在組
- 修改檔案所在的組
- 其他組
- 改變用戶所在組
- 權限管理
- 修改權限-chmod
- 第一種方式:+ 、-、= 變更權限
- **第二種方式:通過數字變更權限**
- 修改檔案所有者-chown
- 修改檔案所在組-chgrp
- crond 任務調度
- 概述
- 任務調度分類:
- 基本語法
- 常用選項
- 引數細節說明
- 5個占位符的說明
- 特殊符號的說明
- 案例
- crond 相關指令:
- linux磁區
- 磁區的方式:
- 原理介紹
- 示意圖:
- 硬碟說明
- 查看所有設備掛載情況
- 如何增加一塊硬碟
- 磁盤查詢實用指令
- 磁盤情況查詢
- 查詢系統整體磁盤使用情況
- 查詢指定目錄的磁盤占用情況 ?
- 磁盤情況-作業實用指令
- 網路配置
- 原理圖
- 查看網路IP和網關
- 查看虛擬網路編輯器
- 修改ip地址
- 查看網關
- 查看windows環境的中VMnet8網路配置 (ipconfig指令)
- linux網路環境配置
- 第一種方法(自動獲取):
- 第二種方法(指定固定的ip)
- 行程管理
- 基本介紹
- 顯示系統執行的行程
- ps -ef是以全格式顯示當前所有的行程
- 查看sshd的父行程
- 終止行程kill和killall
- 介紹:
- 基本語法:
- 常用選項:
- 查看行程樹pstree
- 基本語法:
- 常用選項:
- 應用實體:
- 服務管理
- 介紹:
- service管理指令:
- 使用案例:
- 細節討論:
- 查看服務名
- 服務的運行級別(runlevel):
- chkconfig指令
- 動態監控行程
- 介紹:
- 基本語法:
- 選項說明
- 互動操作說明
- 案例:
- 監控網路狀態
- 查看系統網路情況netstat
- 檢測主機連接命令ping
- RPM包管理
- 介紹:
- rpm包的簡單查詢指令
- rpm包的其它查詢指令
- rpm -qa :查詢所安裝的所有rpm軟體包
- rpm -q 軟體包名 :查詢軟體包是否安裝
- rpm -qi 軟體包名 :查詢軟體包資訊
- rpm -ql 軟體包名 :查詢軟體包中的檔案
- rpm -qf 檔案全路徑名 查詢檔案所屬的軟體包
- 卸載rpm包
- 基本語法
- 細節討論
- 安裝rpm包
- 基本語法
- 引數說明
- 安裝火狐瀏覽器案例
- yum管理
- yum的基本指令
- 查詢yum服務器是否有需要安裝的軟體
- 安裝指定的yum包
- 安裝rpm包
- 基本語法
- 引數說明
- 安裝火狐瀏覽器案例
- yum管理
- yum的基本指令
- 查詢yum服務器是否有需要安裝的軟體
- 安裝指定的yum包
組管理
Linux組基本介紹
在linux中的每個用戶必須屬于一個組,不能獨立于組外,在linux中每個檔案 有所有者、所在組、其它組的概念,
-
所有者
-
所在組
-
其它組
-
改變用戶所在的組-
檔案目錄所有者
一般為檔案的創建者,誰創建了該檔案,就自然的成為該檔案的所有者
查看檔案的所有者
指令:ls –ahl

修改檔案所有者
指令:chown 用戶名 檔案名

組的創建
**基本指令 **
groupadd 組名
檔案/目錄所在組
查看檔案/目錄所在組
基本指令 ls –ahl
修改檔案所在的組
基本指令
chgrp 組名 檔案名

其他組
除檔案的所有者和所在組的用戶外,系統的其它用戶都是檔案的其它組,
改變用戶所在組
在添加用戶時,可以指定將該用戶添加到哪個組中,同樣的用root的管理權限可以改變某 個用戶所在的組,
改變用戶所在組
-
usermod –g 組名 用戶名
-
usermod –d 目錄名 用戶名 改變該用戶登陸的初始目錄

權限管理

其中,藍色表示目錄,目錄的大小為4096
可用數字表示為: r=4,w=2,x=1 因此rwx=4+2+1=7
修改權限-chmod
第一種方式:+ 、-、= 變更權限
u:所有者 g:所有組 o:其他人 a:所有人(u、g、o的總和)
-
chmod u=rwx,g=rx,o=x 檔案目錄名
-
chmod o+w 檔案目錄名
-
chmod a-x 檔案目錄名
案例:1) 給test1檔案 的所有者讀寫執行的權限,給所在組讀執行權限,給其它組讀執行權限,

- 給text檔案的所有者除去執行的權限,增加組寫的權限

- 給test檔案的所有用戶添加讀的權限

第二種方式:通過數字變更權限
r=4 w=2 x=1
rwx=4+2+1=7 chmod u=rwx,g=rx,o=x 檔案目錄名
相當于 chmod 751 檔案目錄名
案例:將 /home/test1.txt 檔案的權限修改成 rwxr-xr-x, 使用給數字的方式實作:

修改檔案所有者-chown
基本介紹 chown newowner file 改變檔案的所有者
chown newowner:newgroup file 改變用戶的所有者和所有組
-R 如果是目錄 則使其下所有子檔案或目錄遞回生效
修改檔案所在組-chgrp
基本介紹 chgrp newgroup file 改變檔案的所有組

crond 任務調度
crontab 進行 定時任務的設定,,
概述
任務調度:是指系統在某個時間執行的特定的命令或程式,
任務調度分類:
1.系統作業:有些重要的作業必須周而復始地執行,如病毒掃描等
2.個別用戶作業:個別用戶可能希望執行某些程式,比如對mysql資料庫的備份,
基本語法
crontab [選項]
常用選項
-e 編輯crontab定時任務
-l 查詢crontab任務
-r 洗掉當前用戶所有的crontab任務
引數細節說明
5個占位符的說明

特殊符號的說明

案例
每隔1分鐘, 將當前日期和日歷都追加到 /tmp/mycal 檔案中
大致思路:
1.撰寫一個sh檔案,里面將日期和日歷都追加到 /tmp/mycal 檔案中
2.crontab -e 任務調度,每分鐘執行一次sh檔案即可
步驟:
1.撰寫一個sh檔案 /home/mytask2.sh

2.給檔案mytask2.sh一個可執行權限

3.crontab -e
4.每隔一分鐘執行一次sh檔案

- 成功

crond 相關指令:
-
conrtab –r:終止任務調度,
-
crontab –l:列出當前有那些任務調度
-
service crond restart [重啟任務調度]
linux磁區
磁區的方式:
- mbr磁區:
1.最多支持四個主磁區
2.系統只能安裝在主磁區
3.擴展磁區要占一個主磁區 4
.MBR最大只支持2TB,但擁有最好的兼容性
2) gpt磁區:
1.支持無限多個主磁區(但作業系統可能限制,比如 windows下最多128個磁區)
2.最大支持18EB的大容量(1EB=1024 PB,1PB=1024 TB ) 3.windows7 64位以后支持gtp
原理介紹
- Linux來說無論有幾個磁區,分給哪一目錄使用,它歸根結底就只有一個根目錄,一個獨立且唯一的檔案結構 , Linux中每個磁區都是用來組成整個檔案系統的一部分,
- Linux采用了一種叫**“載入”**的處理方法,它的整個檔案系統中包含了一整套的檔案和目錄,且將一個磁區和一個目錄聯系起來,這時要載入的一個磁區將使它的存盤空間在一 個目錄下獲得,
示意圖:

硬碟說明
- Linux硬碟分IDE硬碟和SCSI硬碟,目前基本上是SCSI硬碟
- 對于IDE硬碟,驅動器識別符號為“hdx~”,其中“hd”表明磁區所在設備的型別,這里是指 IDE硬碟了,“x”為盤號(a為基本盤,b為基本從屬盤,c為輔助主盤,d為輔助從屬 盤),“~”代表磁區,前四個磁區用數字1到4表示,它們是主磁區或擴展磁區,從5開始就 是邏輯磁區,例,hda3表示為第一個IDE硬碟上的第三個主磁區或擴展磁區,hdb2表示為 第二個IDE硬碟上的第二個主磁區或擴展磁區,
- 對于SCSI硬碟則標識為“sdx~”,SCSI硬碟是用“sd”來表示磁區所在設備的型別的,其余 則和IDE硬碟的表示方法一樣,
查看所有設備掛載情況
命令 :lsblk 或者 lsblk -f


如何增加一塊硬碟
-
虛擬機添加硬碟
-
磁區 : fdisk /dev/sdb
-
格式化 :mkfs -t ext4 /dev/sdb1
其中ext4是磁區型別
- 掛載
創建一個目錄 /home/newdisk ;
mount /dev/sdb1 /home/newdisk
若是需要卸載:
umount 設備名稱 或者 掛載目錄 ?
例如: umount /dev/sdb1 或者 umount /newdisk
- 設定可以自動掛載
永久掛載:
1.通過修改/etc/fstab實作掛載 添加完成后 執行mount –a 即刻生效

2.然后執行mount -a
磁盤查詢實用指令
磁盤情況查詢
查詢系統整體磁盤使用情況
基本語法
df -h

查詢指定目錄的磁盤占用情況 ?
基本語法 du -h /目錄
查詢指定目錄的磁盤占用情況,默認為當前目錄
-s 指定目錄占用大小匯總
-h 帶計量單位
-a 含檔案
–max-depth=1 子目錄深度
-c 列出明細的同時,增加匯總值

磁盤情況-作業實用指令
- 統計/home檔案夾下檔案的個數

-
統計/home檔案夾下目錄的個數

-
統計/home檔案夾下檔案的個數,包括子檔案夾里的(遞回查找 -R)

- 統計檔案夾下目錄的個數,包括子檔案夾里的

- 以樹狀顯示目錄結構
#安裝tree yum install tree

網路配置
原理圖

查看網路IP和網關
查看虛擬網路編輯器

修改ip地址

查看網關

查看windows環境的中VMnet8網路配置 (ipconfig指令)
linux網路環境配置
第一種方法(自動獲取):
系統 -首選項-網路連接

特點:linux啟動后會自動獲取IP,缺點是每次自動獲取的ip地址可能不一樣
第二種方法(指定固定的ip)
直接修改組態檔來指定IP,并可以連接到外網(程式員推薦),
編輯 vi /etc/sysconfig/network-scripts/ifcfg-eth0
行程管理
基本介紹
-
在LINUX中,每個執行的程式(代碼)都稱為一個行程,每一個行程都分配一 個ID號,
-
每一個行程,都會對應一個父行程,而這個父行程可以復制多個子行程,例 如www服務器,
-
每個行程都可能以兩種方式存在的,前臺與后臺,所謂前臺行程就是用戶目 前的螢屏上可以進行操作的,后臺行程則是實際在操作,但由于螢屏上無法 看到的行程,通常使用后臺方式執行,
-
一般系統的服務都是以后臺行程的方式存在,而且都會常駐在系統中,直到 關機才才結束,
顯示系統執行的行程
ps命令是用來查看目前系統中,有哪些正在執行,以及它們執行的狀況, 可以不加任何引數.



ps -ef是以全格式顯示當前所有的行程
-e 顯示所有行程,
-f 全格式,
ps -ef|grep xxx
查看sshd的父行程


終止行程kill和killall
介紹:
若是某個行程執行一半需要停止時,或是已消了很大的系統資源時,此時可以考慮停止該行程,使用kill命令來完成此項任務,
基本語法:
kill [選項] 行程號(功能描述:通過行程號殺死行程)
killall 行程名稱 (功能描述:通過行程名稱殺死行程,也支持通配符,這在系統因負 載過大而變得很慢時很有用)
常用選項:
-9 :表示強迫行程立即停止
最佳實踐:
案例1:踢掉某個非法登錄用戶
kill 行程號
案例2: 終止遠程登錄服務sshd, 在適當時候再次重啟sshd服務
ps -aux | grep sshd
kill sshd的行程號
案例3: 終止多個gedit 編輯器
killall gedit
案例4:強制殺掉一個終端
kill -9 行程號
查看行程樹pstree
基本語法:
pstree [選項] ,可以更加直觀的來看行程資訊
常用選項:
-p :顯示行程的PID
-u :顯示行程的所屬用戶
應用實體:
案例1:請你樹狀的形式顯示行程的pid
pstree -p
案例2:請你樹狀的形式行程的用戶id
pstree -u
服務管理
介紹:
服務(service) 本質就是行程,但是是運行在后臺的,通常都會監聽某個埠,等待其它程 序的請求,比如(mysql , sshd 防火墻等),因此我們又稱為守護行程,是Linux中非常重要的 知識點,
service管理指令:
service 服務名 [start | stop | restart | reload | status]
在CentOS7.0后 不再使用service ,而是 systemctl
使用案例:
service iptables stop
service iptables start
service iptables status
- 查看當前防火墻的狀況,關閉防火墻和重啟防火墻,


細節討論:
-
關倍訓者啟用防火墻后,立即生效,[telnet 測驗 某個埠即可]

-
這種方式只是臨時生效,當重啟系統后,還是回歸以前對服務的設定,
-
如果希望設定某個服務自啟動或關閉永久生效,要使用chkconfig指令
查看服務名
方式1:使用setup -> 系統服務
方式2: /etc/init.d/服務名稱

服務的運行級別(runlevel):

chkconfig指令
介紹
通過chkconfig 命令可以給每個服務的各個運行級別設定自啟動/關閉
基本語法
- 查看服務 chkconfig --list|grep xxx


- chkconfig 服務名 --list

- chkconfig --level 5 服務名 on/off
sshd在級別5 不要自啟動

應用實體 :
- 案例1: 請顯示當前系統所有服務的各個運行級別的運行狀態
chkconfig --list
- 案例2 :請查看sshd服務的運行狀態
chkconfig sshd --list
- 案例3: 將sshd 服務在運行級別5下設定為不自動啟動,看看有什么效果?
chkconfig --level 5 sshd off
- 案例4: 當運行級別為5時,關閉防火墻,
chkconfig --level 5 iptables off
- 案例5: 在所有運行級別下,關閉防火墻
chkconfig iptables off
- 案例6: 在所有運行級別下,開啟防火墻
chkconfig iptables on
? 使用細節
- chkconfig重新設定服務后自啟動或關閉,需要重啟機器reboot才能生效
動態監控行程
介紹:
top與ps命令很相似,它們都用來顯示正在執行的行程,Top與ps最大的不同之處,在于top 在執行一段時間可以更新正在運行的的行程,
基本語法:
top [選項]
選項說明

互動操作說明

案例:
案例1.監視特定用戶
top:輸入此命令,按回車鍵,查看執行的行程, u:然后輸入“u”回車,再輸入用戶名,即可
[外鏈圖片轉存失敗,源站可能有防盜鏈機制,建議將圖片保存下來直接上傳(img-CXyh1fk7-1617808461471)
案例2:終止指定的行程,
top:輸入此命令,按回車鍵,查看執行的行程, k:然后輸入“k”回車,再輸入要結束的行程ID號
案例3:指定系統狀態更新的時間(每隔10秒自動更新):默認是3秒一次重繪
top -d 10
監控網路狀態
查看系統網路情況netstat

請查看服務名為 sshd 的服務的資訊:

檢測主機連接命令ping
RPM包管理
介紹:
一種用于互聯網下載包的打包及安裝工具,它包含在某些Linux分發版中,它生成 具有.RPM擴展名的檔案,RPM是RedHat Package Manager(RedHat軟體包管理工 具)的縮寫,類似windows的setup.exe,這一檔案格式名稱雖然打上了RedHat的 標志,但理念是通用的,
rpm包的簡單查詢指令
查詢已安裝的rpm串列 rpm –qa|grep xx

rpm包的其它查詢指令
rpm -qa :查詢所安裝的所有rpm軟體包
rpm -qa | more
rpm -qa | grep X [rpm -qa | grep firefox ]
rpm -q 軟體包名 :查詢軟體包是否安裝
rpm -q firefox
rpm -qi 軟體包名 :查詢軟體包資訊
rpm -qi file
rpm -ql 軟體包名 :查詢軟體包中的檔案
rpm -ql firefox
rpm -qf 檔案全路徑名 查詢檔案所屬的軟體包
rpm -qf /etc/passwd rpm -qf /root/install.log
卸載rpm包
基本語法
rpm -e RPM包的名稱
細節討論
-
如果其它軟體包依賴于您要卸載的軟體包,卸載時則會產生錯誤資訊, 如: $ rpm -e foo removing these packages would break dependencies:foo is needed by bar-1.0-1
-
如果我們就是要洗掉 foo這個rpm 包,可以增加引數 --nodeps ,就可以強制洗掉,但是一 般不推薦這樣做,因為依賴于該軟體包的程式可能無法運行 如:$ rpm -e --nodeps foo
安裝rpm包
基本語法
rpm -ivh RPM包全路徑名稱
引數說明
i=install 安裝 v=verbose 提示 h=hash 進度條
安裝火狐瀏覽器案例
1.掛載centos的ios檔案,虛擬機桌面會出現centos檔案
2.進入/media/ CentOS_6.8_Final/Package


yum管理
Yum 是一個Shell前端軟體包管理器,基于RPM包管理,能夠從指定的服務器自動下載RPM包并且安裝,可以自動處理依賴性關系,并 且一次安裝所有依賴的軟體包,
yum的基本指令
查詢yum服務器是否有需要安裝的軟體
yum list|grep xx軟體串列
安裝指定的yum包
yum install xxx 下載安裝
果其它軟體包依賴于您要卸載的軟體包,卸載時則會產生錯誤資訊, 如: $ rpm -e foo removing these packages would break dependencies:foo is needed by bar-1.0-1
- 如果我們就是要洗掉 foo這個rpm 包,可以增加引數 --nodeps ,就可以強制洗掉,但是一 般不推薦這樣做,因為依賴于該軟體包的程式可能無法運行 如:$ rpm -e --nodeps foo
安裝rpm包
基本語法
rpm -ivh RPM包全路徑名稱
引數說明
i=install 安裝 v=verbose 提示 h=hash 進度條
安裝火狐瀏覽器案例
1.掛載centos的ios檔案,虛擬機桌面會出現centos檔案
2.進入/media/ CentOS_6.8_Final/Package
[外鏈圖片轉存中…(img-7WYFYni6-1617808461479)]
[外鏈圖片轉存中…(img-R7pulsfh-1617808461480)]
yum管理
Yum 是一個Shell前端軟體包管理器,基于RPM包管理,能夠從指定的服務器自動下載RPM包并且安裝,可以自動處理依賴性關系,并 且一次安裝所有依賴的軟體包,
yum的基本指令
查詢yum服務器是否有需要安裝的軟體
yum list|grep xx軟體串列
安裝指定的yum包
yum install xxx 下載安裝
轉載請註明出處,本文鏈接:https://www.uj5u.com/qita/274151.html
標籤:其他
