多測師課堂002_linux命令_(上)高級講師肖sir


一、linux 介紹
os 操作系統:
windows,dos,android ,ios,unix ,linux

linux系統:是一個免費,開源的操作系統,能多cpu,多用戶,多線程的操作系統,比windows更穩定,是在UNIx系統的基礎上開發的新系統

linux主流發型版:
centos 免費
redhat 紅帽子
ubuntu 烏班圖
gentoo
dibian
opensuse

linx操作系統的優點:
1、系統穩定,
2、開源作為服務器來使用

為什么學Linux系統?
1、作為服務器,用於部署系統,企業中開發的系統都會部署在linux系統
LNMP= linux+nginx+MySQL+php 論壇
LAMP=linux+apache+mysql+php 多有米,cms

(2) 嵌入式的系統領域

 

二、linux的搭建

方式有兩種:

方式一:linux和ios系統同時安裝

 

 

方式二:先linux----稍后安裝ios系統同時安裝

 

 

 

 

 

三、linux命令

 

 

ifconfig 查看虛擬機ip地址 ,注意點:就是看左上角的網絡斷開情況

liunx 鏈接xshell方法:
(1)新建,添加ip,輸入賬號,密碼,勾選記住
(2)ssh +ip地址 輸入賬號 輸入密碼
我們學習期間用超級用戶:root 密碼:123456
快照功能:
快照是拍攝和恢復,刪除功能

方法:虛擬機-快照-拍攝快照 (備份系統)
恢復快照(還原系統)

pwd 查看當前路徑
/ 根目錄

cd / 進入根目錄
建議:在home文件,usr文件這兩個文件下面操作 ;
cd /home ,cd /usr

 

 


ls 橫向顯示目錄下所有的文件和目錄名稱
ll 是ls -1 的簡寫 ;表示縱向顯示當前目錄的所有文件和目錄的詳細信息
ls -a 顯示所有目錄下所有的文件和目錄,還有所有的隱藏文件

 

 

 

 

 

./ 表示當前目錄
.表示當前目錄
cd .. 返回上一級目錄
cd ../.. 返回上兩級目錄
cd ../../.. 返回上三級目錄
cd / 到根目錄

 

 

切換用戶:
su root 切換超級用戶 #
su 普通用戶名 切換普通用戶名 $
注意:普通用戶切換回root用戶,需要密碼;
root用戶切換普通用戶不需要輸入密碼;

service iptables restart 重啟防火牆
service iptables start 開啟防火牆
service iptables stop 關閉防火牆
service iptables status 查看防火牆擋牆狀態

service network restart 重啟網卡
service network start 開啟網卡
service network status 查看網卡的狀態
service network stop 停止網卡

 

 

ping 查看網絡是否通
例如:ping www.baidu.com 退出:ctrl+c或ctrl+z

 

 

 

mkdir + 目錄名 創建目錄
mkdir -p a/b/c 創建層級目錄
mkdir aa bb cc 同時創建多個目錄
rm 刪除命令

touch創建文件

 

 

rm 刪除文件前進行確認
rm -r 刪除目錄
rm -rf 強制刪除文件/目錄rm -rf * 刪除當前目錄下所有 文件和目錄

 

 

cp復制
cp 原文件 新文件 同一路徑
cp /路徑/原文件 /路徑 /新文件

cp -r 復制目錄
cp -r 原目錄 + 新目錄

clear 清屏

mv 移動,重命名

 

 

vim 或vi 編輯文件

vim +文件名
三種模式:
編輯模式 i鍵 ----輸入內容
命令模式 esc鍵 或ctrl+c鍵
底層命令模式 shift+: w 保存 q退出 !強制退出
wq q! wq! w

cat 查看文件的所有內容

cat 文件名|grep 查看的內容

head 查看文件前面指定行數

head 文件名 默認查詢文件前10行

head -n 行數 文件名 指定查詢文件的前多少行

tail 查看文件末尾指定的行數
tail -n 行數 文件名 查看指定的末尾行數
tail -f +文件名 查看實時日志


more 以百分比的形式查看文件
注意點:按回車向下查看

less 以上下翻頁的形式查詢文件
注意點:按上下鍵翻頁查看

find /路徑 -name 查找名字

find /路徑 -type 類型的分類(f 普通文件,d目錄,b塊設備, l鏈接,p管道)find /路徑 -siZe 按照文件大小查找

find /路徑 -ctime 根據時間查找

find /路徑 -user 用戶名 根據用戶查找

cat 文件|grep 字符串


三劍客(chmod,chown,chgrp)
chmod 修改權限

工作中出現文件沒有權限如何解決?
chown 修改文件擁有者也是屬主

chgrp 修改擁有文件屬組


cat /etc/passwd 查看所用的用戶
cat /etc /group 查看所用的用戶組

useradd 添加用戶 (用戶名和用戶組相同)

useradd 用戶名 -g 組名 (用戶名和組名可以不同)

tar -cvf 打包名.tar 打包的內容

tar -xvf 解壓包名

zip 打包名.zip 打包的文件名和目錄

unzip 解壓zip包

yum install 包名 在線安裝

yum remove 包名 在線卸載


yum install lrzsz 傳輸文件工具

rz 本地windows 傳輸到linux中
rz ,回車 ,選擇windows中的文件傳輸到linux中
sz linux 中的文件傳輸到windows
sz 文件名 ,回車 選擇windows 的保存路徑

rpm 包

rpm -ivh 包名 在線解壓


xftp工具的使用
xftp工具 下載xftp工具,安裝后打開xshell,可以直接在xshell中直接啟動xftp工具 windows文件傳輸到linux環境 左邊的文件拖動到右邊 linux文件傳輸到windows環境 右邊的文件拖動到左邊


scp 超復制
第一種:從另一台服務器上那文件到本地
scp 用戶名 @ 對方的IP地址 :路徑 本地路徑
scp root@192.168.180.132:/home/baoan2 aa /home
第二種:把文件 放到另外一台服務器上

scp 本地路徑 用戶名@對方ip地址:路徑

scp ./luofang_129 root@192.168.180.132:/home
輸入密碼

 

 

sftp 加密的文件傳輸 (更安全,在同一個局域網內)

sftp +ip (對方的ip)

put

put 本地傳輸文件路徑和包名 另一台服務區的存放路徑
put /home/xlh/gg /home/xlh

get 另一台服務器的路徑和文件 本地存放路徑
例如get /home/xlh/po /home/xlh/

 

 

 

重定向符號 1. > 覆蓋 2. >> 追加 > 覆蓋 例如:把file1 文件中的內容覆蓋到file2 cat file1 >file2 >> 追加 例如:把file1文件中的內容追加到file2文件末尾 cat file1 >>file2 注意點 記得時候,1覆蓋2追加(1個>覆蓋,2個>追加)
系統命令:

 

系統命令:

df 查看磁盤使用情況

 

 

 

 

Filesystem:代表該文件系統時哪個分區,所以列出的是設備名稱。

1K-blocks:說明下面的數字單位是1KB,可利用-h或-m來改變單位大小,也可以用-B來設置。

Used:已經使用的空間大小。Available:剩余的空間大小。

Use%:磁盤使用率。如果使用率在90%以上時,就需要注意了,避免磁盤容量不足出現系統問題,尤其是對於文件內容增加較快的情況(如/home、/var/spool/mail等)。

Mounted on:磁盤掛載的目錄,即該磁盤掛載到了哪個目錄下面。

 

======

df -h  以人們易讀的GB、MB、KB等格式顯示

 

 

 

=============================

 

top 查看動態進程命令

詳解:

第一行:

10:01:23 — 當前系統時間

126 days, 14:29 — 系統已經運行了126天14小時29分鍾(在這期間沒有重啟過)

2 users — 當前有2個用戶登錄系統

load average: 1.15, 1.42, 1.44 — load average后面的三個數分別是1分鍾、5分鍾、15分鍾的負載情況。

load average數據是每隔5秒鍾檢查一次活躍的進程數,然后按特定算法計算出的數值。如果這個數除以邏輯CPU的數量,結果高於5的時候就表明系統在超負荷運轉了。

第二行:

Tasks — 任務(進程),系統現在共有183個進程,其中處於運行中的有1個,182個在休眠(sleep),stoped狀態的有0個,zombie狀態(僵屍)的有0個。

第三行:cpu狀態

6.7% us — 用戶空間占用CPU的百分比。

0.4% sy — 內核空間占用CPU的百分比。

0.0% ni — 改變過優先級的進程占用CPU的百分比

92.9% id — 空閑CPU百分比

0.0% wa — IO等待占用CPU的百分比

0.0% hi — 硬中斷(Hardware IRQ)占用CPU的百分比

0.0% si — 軟中斷(Software Interrupts)占用CPU的百分比

在這里CPU的使用比率和windows概念不同,如果你不理解用戶空間和內核空間,需要充充電了。

第四行:內存狀態

8306544k total — 物理內存總量(8GB)

7775876k used — 使用中的內存總量(7.7GB)

530668k free — 空閑內存總量(530M)

79236k buffers — 緩存的內存量 (79M)

第五行:swap交換分區

2031608k total — 交換區總量(2GB)

2556k used — 使用的交換區總量(2.5M)

2029052k free — 空閑交換區總量(2GB)

4231276k cached — 緩沖的交換區總量(4GB)

 

六行是空行

 

 

第七行以下:各進程(任務)的狀態監控

PID — 進程id

USER — 進程所有者

PR — 進程優先級

NI — nice值。負值表示高優先級,正值表示低優先級

VIRT — 進程使用的虛擬內存總量,單位kb。VIRT=SWAP+RES

RES — 進程使用的、未被換出的物理內存大小,單位kb。RES=CODE+DATA

SHR — 共享內存大小,單位kb

S — 進程狀態。D=不可中斷的睡眠狀態 R=運行 S=睡眠 T=跟蹤/停止 Z=僵屍進程

%CPU — 上次更新到現在的CPU時間占用百分比

%MEM — 進程使用的物理內存百分比

TIME+ — 進程使用的CPU時間總計,單位1/100秒

COMMAND — 進程名稱(命令名/命令行)

 

 

top -d +秒
設定間隔時間查看資源使用情況

===========================

free命令
查看內存使用情況
注意點
這是一個非常重要的命令

free從/proc/meninfo收集到以下信息:

Men:內存的使用情況

Swap:交換空間的使用情況

total:總內存

used:已經使用的內存

shared:共享內存(主要被tmpfs使用的內存)

buff/cache:buff和cache的和

available:啟動新進程時可用的內存

buffer 在操作系統中指 buffer cache, 中文一般翻譯為 "緩沖區"。

cache 在操作系統中指 page cache,中文一般翻譯為 "頁高速緩存"。頁高速緩存是內核實現的磁盤緩存。它主要用來減少對磁盤的 I/O 操作。

free 是真正尚未被使用的物理內存數量。

available 是從應用程序的角度看到的可用內存數量。Linux 內核為了提升磁盤操作的性能,會消耗一部分內存去緩存磁盤數據,就是我們介紹的 buffer 和 cache。所以對於內核來說,buffer 和 cache 都屬於已經被使用的內存。當應用程序需要內存時,如果沒有足夠的 free 內存可以用,內核就會從 buffer 和 cache 中回收內存來滿足應用程序的請求。所以從應用程序的角度來說,available  = free + buffer + cache。請注意,這只是一個很理想的計算方式,實際中的數據往往有較大的誤差。

 

===========

ps查看當前進程命令

ps命令就是最基本進程查看命令

  • -A :所有的進程均顯示出來,與 -e 具有同樣的效用;
  • -a : 顯示現行終端機下的所有進程,包括其他用戶的進程;
  • -u :以用戶為主的進程狀態 ;
  • x :通常與 a 這個參數一起使用,可列出較完整信息

 

ps aux 查看所有用戶的進程ps -ef|grep 服務名稱 (重點)

 

 

  • USER:該進程屬於那個使用者賬號。
  • PID :該進程的進程ID號。
  • %CPU:該進程使用掉的 CPU 資源百分比;
  • %MEM:該進程所占用的物理內存百分比;
  • VSZ :該進程使用掉的虛擬內存量 (Kbytes)
  • RSS :該進程占用的固定的內存量 (Kbytes)
  • TTY :該進程是在那個終端機上面運作,若與終端機無關,則顯示 ?。另外, tty1-tty6 是本機上面的登入者程序,若為 pts/0 等等的,則表示為由網絡連接進主機的程序。
  • STAT:該程序目前的狀態,主要的狀態有:
  1. R :該程序目前正在運作,或者是可被運作;
  2. S :該程序目前正在睡眠當中,但可被某些訊號(signal) 喚醒。
  3. T :該程序目前正在偵測或者是停止了;
  4. Z :該程序應該已經終止,但是其父程序卻無法正常的終止他,造成 zombie (疆屍) 程序的狀態
  • START:該進程被觸發啟動的時間;
  • TIME :該進程實際使用 CPU 運作的時間。
  •  COMMAND:該程序的實際指令。

 

ps -ef|grep 服務名稱 查看一個服務狀態

===============

kill命令 殺進程命令kill -9 +進程號 強制殺進程

1.命令格式:

kill[參數][進程號]

只有第9種信號(SIGKILL)才可以無條件終止進程,其他信號進程都有權利忽略。 下面是常用的信號:

HUP    1    終端斷線

INT     2    中斷(同 Ctrl + C)

QUIT    3    退出(同 Ctrl + \)

TERM   15    終止

KILL    9    強制終止

CONT   18    繼續(與STOP相反, fg/bg命令)

STOP    19    暫停(同 Ctrl + Z)

 

===============

 

 


netstat -ntlp命令 查看所有已經開啟的端口

hostname命令 查看主機名稱whoami命令 查看當前操作用戶 who命令 查看在線登錄用戶getconf LONG_BIT 查看系統位數


du -sh +文件/目錄 查看某個文件/目錄的大小du -sh 查看當前目錄的大小

du [選項][文件]

說明:

-a 顯示所有目錄或文件的大小

-b 以byte為單位,顯示目錄或文件的大小

-c 顯示目錄或文件的總和

-k 以KB為單位輸出

-m 以MB為單位輸出

-s 僅顯示目錄或文件的總計數值

-h 以K,M,G為單位,提高信息可讀性

-x 跳過不同的文件系統目錄

-S 顯示目錄的大小,但不含子目錄大小。

-D 顯示指定符號鏈接的源文件大小

————————————————

 

==========================
reboot 重啟

 

=========================
重啟linux系統 shutdown命令
shutdown now 現在關機
halt 關機
init0 關機 init 6 重啟uname 顯示當前的操作系統的名稱
history 顯示歷史操作記錄
history -c 刪除歷史操作記錄
date 顯示當前時間
date -s 修改系統時間 date -s '2020-07-13 09:45:00'

===================
fdisk -l 查看硬盤和分區信息

fdisk [必要參數][選擇參數]

必要參數:

  • -l 列出素所有分區表
  • -u 與”-l”搭配使用,顯示分區數目

選擇參數:

  • -s<分區編號> 指定分區
  • -v 版本信息

菜單操作說明

  • m :顯示菜單和幫助信息
  • a :活動分區標記/引導分區
  • d :刪除分區
  • l :顯示分區類型
  • n :新建分區
  • p :顯示分區信息
  • q :退出不保存
  • t :設置分區號
  • v :進行分區檢查
  • w :保存修改
  • x :擴展應用,高級功能

 =====================

 

netstat -ntlp命令
查看所有已經開啟的端口
 
====================
 
lsof -i :端口號
例子:
lsof -i :8080
查看占用8080端口的服務
 
 
 
 

====================

ifcongig eth0 修改的ip 修改ip地址 例如:ifconfig eth0 192.168.111.111
route 查看路由表
alias 別名 alias 別名=原命令 創建別名
unlias 別名 取消別名
tab 鍵 聯想鍵
上下鍵 ,對使用的命令可以上下查找
cat /etc/shadow 存儲用戶賬號的密碼
cat /etc /gshadow 存儲用戶組的賬號的密碼
uptime 顯示系統運行了多長時間
pstree 以樹狀的方式顯示所有進程
vim /etc/profile 環境變量

 

 

 

案例圖:

df

 

 

 top   -d   5s
 

 

 free

 

ps  -ef|grep   服務名稱

 

 

 top

 

 

 

 

 

 

第一行:
10:01:23 — 當前系統時間
126 days, 14:29 — 系統已經運行了126天14小時29分鍾(在這期間沒有重啟過)
2 users — 當前有2個用戶登錄系統
load average: 1.15, 1.42, 1.44 — load average后面的三個數分別是1分鍾、5分鍾、15分鍾的負載情況。

load average數據是每隔5秒鍾檢查一次活躍的進程數,然后按特定算法計算出的數值。如果這個數除以邏輯CPU的數量,結果高於5的時候就表明系統在超負荷運轉了。

第二行:
Tasks — 任務(進程),系統現在共有183個進程,其中處於運行中的有1個,182個在休眠(sleep),stoped狀態的有0個,zombie狀態(僵屍)的有0個。

第三行:cpu狀態
6.7% us — 用戶空間占用CPU的百分比。
0.4% sy — 內核空間占用CPU的百分比。
0.0% ni — 改變過優先級的進程占用CPU的百分比
92.9% id — 空閑CPU百分比
0.0% wa — IO等待占用CPU的百分比
0.0% hi — 硬中斷(Hardware IRQ)占用CPU的百分比
0.0% si — 軟中斷(Software Interrupts)占用CPU的百分比

在這里CPU的使用比率和windows概念不同,如果你不理解用戶空間和內核空間,需要充充電了。

第四行:內存狀態
8306544k total — 物理內存總量(8GB)
7775876k used — 使用中的內存總量(7.7GB)
530668k free — 空閑內存總量(530M)
79236k buffers — 緩存的內存量 (79M)

第五行:swap交換分區
2031608k total — 交換區總量(2GB)
2556k used — 使用的交換區總量(2.5M)
2029052k free — 空閑交換區總量(2GB)
4231276k cached — 緩沖的交換區總量(4GB)


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM