Linux(centos7)基础操作
Linux(CentOS7)
CentOS7 進入單用戶修改root密碼方法:
1.重啟CentOS選擇界面 按 e 進入 grub 編輯界面,找到Linux16這行 把 ro (只讀readonly)修改成 rw init=sysroot/bin/sh
2.Ctrl+x 進入單用戶界面
3.輸入以下命令
- chroot /sysroot/ --------切換到原系統
- LANG=en----------設置顯示語言
- Passwd root -------修改root用戶密碼
- touch /.autorelabel
- reroot重啟
Centos7修改 運行級別:
1.runlevel ------查看上一個運行級別和當前運行級別
2.Init + 級別 ------修改運行級別
| 級別 | 說明 |
|---|---|
| 0 | 關機 |
| 1 | 單用戶 |
| 2 | 無網絡的多用戶 |
| 3 | 命令行模式 |
| 4 | 未用 |
| 5 | GUI(圖形桌面 模式) |
| 6 | 重啟 |
常用的運行級別是 3 和 5
打開22號端口
- setup 打開sshd服務
- ifconfig 查看當前ip地址
Linux根目錄下各文件的作用
| 目 錄 | 說明 | 備注 |
|---|---|---|
| bin | 存放普通用戶可執行的指令 | 即使在單用戶模式下也能夠執行處理 |
| boot | 開機引導目錄 | 包括Linux內核文件與開機所需要的文件 |
| dev | 設備目錄 | 所有的硬件設備及周邊均放置在這個設備目錄中 |
| etc | 各種配置文件目錄 | 大部分配置屬性均存放在這里 |
| lib/lib64 | 開機時常用的動態鏈接庫 | bin及sbin指令也會調用對應的lib庫 |
| media | 可移除設備掛載目錄 | 類似軟盤 U盤 光盤等臨時掛放目錄 |
| mnt | 用戶臨時掛載其他的文件系統 | 額外的設備可掛載在這里,相對臨時而言 |
| opt | 第三方軟件安裝目錄 | 現在習慣性的放置在/usr/local中 |
| proc | 虛擬文件系統 | 通常是內存中的映射,特別注意在誤刪除數據文件后,比如DB,只要系統不重啟,還是有很大幾率能將數據找回來 |
| root | 系統管理員主目錄 | 除root之外,其他用戶均放置在/home目錄下 |
| run | 系統運行是所需文件 | 以前防止在/var/run中,后來拆分成獨立的/run目錄。重啟后重新生成對應的目錄數據 |
| sbin | 只有root才能運行的管理指令 | 跟bin類似,但只屬于root管理員 |
| snap | ubunut全新軟件包管理方式 | snap軟件包一般在/snap這個目錄下 |
| srv | 服務啟動后需要訪問的數據目錄 | |
| sys | 跟proc一樣虛擬文件系統 | 記錄核心系統硬件信息 |
| tmp | 存放臨時文件目錄 | 所有用戶對該目錄均可讀寫 |
| usr | 應用程序放置目錄 | |
| var | 存放系統執行過程經常改變的文件 | |
| vmlinuz | 軟連接到boot下的vmlinuz-4.4.0-87-generic |
用戶管理
- useradd [選項] 用戶名
- useradd -d 用戶名 — 給新建的用戶指定家目錄
- userdel 用戶名 — 刪除用戶
- passwd 用戶名 — 更改密碼
- id 用戶名 — 查詢用戶信息
- su - 切換用戶名 — 切換用戶
- groupadd 組名 — 新建組
- groupdel 組名 — 刪除組
- useradd -g 組名 用戶名 — 給新建用戶指定組
- usermod -g 組名 用戶名 — 修改用戶所在組
1、文檔操作類
-
pwd—顯示當前工作位置 即當前所處文件
-
mkdir ----- 新建文件夾 mkdir dog mkdir /home/dog(最多創建兩級)
mkdir -p /home/animal/dog/xiaoming -------創建多級目錄下文件 -
rmdir ---- 刪除空文件 rmdir dog
rm -r(遞歸刪除整個文件) -f(強制刪除不提醒)
常用rm -rf — 強制刪除文件或目錄 -
touch — 新建文件
案例:touch a.txt -
ls ----- 顯示當前目錄下文件 ls-l----豎排列表顯示 ls-a ---- 顯示隱藏文件
-
cp----- 復制文件 cp /mojiao/zwj /mingjiao -----復制魔教下的張無忌到明教下邊
cp -r ------復制文件夾 cp /mojiao /mingjiao ------復制魔教到明教下(如果明教下存在魔教 便會提醒是否覆蓋
若要強制復制 用\cp -r 在cp -r 前加上\即可強制復制 -
yy — 用于文檔內復制,拷貝當前行 yy ,并粘貼 p
拷貝當前行向下5行—操作: yy5 p粘貼 -
dd — 刪除當前行 刪除向下5行 — dd5
-
mv-----移動、重命名文件
重命名:mv dog.txt cat.txt
移動: mv dog.txt /home/mojiao/-----移動dog.txt移動到mojiao下 -
cat ---- 以只讀的方式打開瀏覽文件
-n 顯示行數 -
more ------顯示文本文件內容 more /etc/profile 打開顯示 這個文本
打開文本后快捷鍵: -
空格鍵 --- 向下翻一頁 回車鍵 --- 向下翻一行 q --- 立刻離開當前文本 = --- 輸出當前行號 :f --- 輸出文件名及行號 Ctrl+f/b --- 向下/向上滾動一屏 -
">"">>"
“>” 覆蓋—將文本寫入并覆蓋到文件中 echo hello,World! > a.txt
">>"追加—將文本寫入到文件文本的末尾 echo HHHH >> a.txt
應用: -
將某一指令內容寫入到另一文件 ls -l > a.txt 將某一文件內容寫到 另一文件中 cat /etc/profile > b.txt 將文本直接寫入到文件 echo "hello world" > c.txt -
cal—當前日歷信息
-
***echo***輸出內容到控制臺
echo PATH???輸出PATH --- 輸出PATH???輸出PATH環境變量 -
head — 顯示文件開頭部分(默認查看文件前10行)
-n 例如-5 — 顯示文件前5行 -
tail — 輸出文件尾部內容 (默認后10行)
-n — 顯示文件后 n 行
-f — 實時追蹤文件的所有更新 工作常用-
tail -f a.txt --- 實時監控a.txt文件內容的變化
-
-
ln — 軟鏈接 也叫符號鏈接 類似Windows的快捷方式
ln -s [文件]【鏈接名稱】 ln -s /root linktoroot — 創建一個軟連接指向root目錄 -
history — 查看歷史執行過的命令 也可執行歷史命令
直接輸入 history 即可查看
輸入 !5 例如 !5 即為執行歷史命令的第五個
2、時間日期類
- date — 查詢當前日期
date +%y(m/n) — 查詢當前年份(月份/日) 加號不能少
date -s —設置系統當前時間 date -s 2011-11-11 - cal — 顯示當前月份日歷
cal 2022 —顯示2022全年日歷
3、搜索查找類
- find — 從指定目錄向下遞歸的遍歷其各個子目錄,將滿足條件的目錄顯示在終端
- find 【搜索范圍】【選項】
-
選項:-name --- find /root -name wx.jpg --- 查詢root目錄下名字為wx.jpg的文件,如果有通配符 * 必須用“” -user --- find /home -user Styx --- 按用戶查詢文件 -size --- find / -size +(-)20M --- 查找根目錄下 大于(小于)20M的文件 注意: CTRL+c 終止查詢 M必須大寫 k小寫 -type f --- 普通文件 d --- 查找目錄
-
- find 【搜索范圍】【選項】-exec commend {} \ ; — 將查詢到的文件執行commend操作,{}代表查詢到的集合,{} \ 之間有空格
- find 【搜索范圍】【選項】
- locate —快速定位文件路徑,原理是:利用系統實現建立的所有文件的名稱及路徑的數據庫查詢
- locate【查詢文件】 例如:locate wx.jpg
- |(豎杠) — 管道符 :表示將前一個命令的處理結果輸出傳遞給后面的命令處理
- grep — 查找內容
cat wei.txt | grep halou — 查詢halou-
grep -n --- 顯示所查詢內容所在行grep -i --- 所查詢的內容不區分大小寫
-
4、壓縮和解壓類
- gzip/gunzip — 壓縮/解壓文件
- gzip 【文件名】 —壓縮文件 (不會保留原文件)
gunzip 【文件名】 — 解壓文件
- gzip 【文件名】 —壓縮文件 (不會保留原文件)
- zip/unzip —壓縮/解壓文件
- zip 【選項】xxx.zip 要壓縮的內容 — zip z.zip wei.txt(將wei.txt壓縮z.zip)
-
-r 遞歸壓縮 即壓縮整個目錄 zip -r home.zip /home (壓縮home整個目錄) - unzip xxx.zip — unzip home.zip(解壓home)
-
-d 解壓到指定的文件夾 --- unzip -d /home/aaa home.zip (將home.zip解壓到home下的aaa文件夾)
- tar — 打包指令 文件格式為 .tar.gz
- tar 【選項】xxx.tar.gz 打包的內容
-
選項: -c 產生打包文件 -v 顯示詳細信息 -f 指定壓縮后的文件名 -z 打包同時壓縮 -x 解包tar文件 - 案例:
-
壓縮/打包:-zcvf tar -zcvf c.tar.gz a.txt b.txt --- 壓縮多個文件 tar -zcvf home.tar.gz /home/ --- 壓縮/home目錄 解壓:-zxvf tar -zxvf c.tar.gz --- 解壓到當前目錄 tar -zxvf c.tar.gz -C /home/ --- 解壓到home目錄下(-C后邊為要解壓到的目錄,目錄必須存在)
二、實操篇
1、組管理和權限管理
- 組管理
-
創建一個police組 在police組中創建 tom 用戶groupadd police -- 創建組user -g police tom --- 創建用戶id tom --查詢 tom 用戶的信息- 修改文件所有者
chown 用戶名 文件名 —chown Styx ok.txt(必須有root權限) - 修改文件所在組
chgrp 組名 文件名 ---- chgrp police wei.txt - 改變用戶所在組
usermod -g 組名 用戶名 — usermod -g police Styx
- 修改文件所有者
- 權限管理
- 權限的基本介紹
-
例如 :
-rwxrw-r- 1 root root 1213 Feb 2 09 12:00 ok.txt
0~9位說明:- 第0位確定文件類型(d:目錄 -:普通文件 l:軟鏈接 c:字符設備【鍵盤鼠標】 b:塊文件【硬盤】)
- 第1-3 位確定所有者(該文件的所有者)擁有該文件的權限。— User
- 第 4-6 位確定所屬組(同用戶組的)擁有的該文件的權限。 — Group
- 第 7-9 位確定其他用戶擁有該文件的權限。— Other
- 第一個數字 — 如果是文件表示硬鏈接數,如果是目錄表示該目錄的子目錄個數
- 用戶 組
- 第二個數字 — 文件大小 如果是目錄則為4096
- 最后修改的時間
-
rwx權限詳解
- rwx作用到文件
r — 可讀
w — 可寫,可修改但不可刪除,刪除必須是所在目錄具有該權限
x — 可執行 - rwx作用到目錄
r — 可讀,可以查看目錄內容
w — 可寫,目錄內創建+刪除+重命名
x — 可以進入該目錄
- rwx作用到文件
-
- 權限的基本介紹
- 修改權限-chmod — 通過 chmod 指令可修改文件或目錄的權限
- 第一種通過“+”“-”“=”變更權限
u:所有者 g:所在組 o:其他用戶 a:所有人
1)chmod u=rwx,g=rw,o=r 文件目錄名
2)chmod g+x 文件目錄名
3)chmod a-r 文件目錄名 - 第二種通過數字變更權限
規則:r=4,w=2,x=1;rwx=7
chmod u=rwx,g=rw,o=r 文件目錄名 等同于 chmod 751 文件目錄名
- 第一種通過“+”“-”“=”變更權限
- 修改文件所有者-chown
- chown newowner file — 改變文件所有者
chown newowner:newgroup file — 改變文件所有者所在組
-R 如果是目錄,則使其下所有子文件或目錄遞歸生效
- chown newowner file — 改變文件所有者
- 修改文件所在組-chgrp
- 語法:chgrp newgroup file 改變文件所在組
2、crond任務調度
-
基本語法 :crontab 【選項】
選 項 說 明 -e 編輯crontab定時任務 -l 查詢crontab任務 -r 刪除當前用戶所有的crontab任務 service crond restart 重啟任務調度 案例說明:
- crontab -e
- */1 * * * * ls -l /etc/ > /tmp/to.txt — 星號之間必須有空格
- 保存退出,便會立即執行
- 每一分鐘 便會將etc下面的目錄覆蓋到tmp下的to.txt
-
任務調度的應用案例
-
每隔一分鐘,就將當前的日期信息追加到/tmp/mydate文件中
1)先編寫一個文件 shell腳本 /home/mytask1.sh 寫入 date >>/tmp/mydate
2)給 mytask1.sh一個可執行權限 – chmod 744 mytask1.sh
3)crontab -e
4)編寫crontab定時任務 — */1 * * * * date >> /tmp/mydate
5)完成 -
總結: 創建一個可執行的腳本文件,在其中寫入要執行的指令,再通過crontab 任務調度設置時間以并執行腳本
-
3、Linux磁盤分區、掛載
- 使用 lsblk 指令查看當前系統分區情況
指令:lsblk -f — 記憶:老師不離開 - 如何增加一塊硬盤
- 虛擬機添加硬盤
- 分區命令 :fdisk /dev/sdb
開始對 /sdb 進行分區
m — 獲取幫助列表
p — 顯示磁盤分區
n — 新增分區
d — 刪除分區
w — 寫入并退出
具體操作:開始分區后輸入 n ,新增分區 , 然后選擇 p ,選擇主分區,按回車自動為默認值,輸入 w 保存退出。 - 格式化磁盤格式
命令:mkfs -t ext4 /dev/sdb1 — 分區類型位 ext4 ,命名為sdb1 - 掛載
- 臨時掛載:mount 設備名稱 掛載目錄
mount ??/dev/sdb1 ???/home/newdisk - 永久掛載:通過修改 /etc/fstab 實現掛載
vim /etc/fstab — 在fstab中寫入 掛載文件
mount -a 即刻生效
- 臨時掛載:mount 設備名稱 掛載目錄
- umount — 解除掛載
umount 設備名稱 或 掛載目錄
umount /dev/sdb1 或 umount /newdisk
- 磁盤查詢情況
-
查詢系統整體磁盤使用基本情況
語法 :df -h -
查詢指定目錄的磁盤使用情況
語法 : du -h 目錄 — 默認為當前目錄-s 指定目錄占用大小匯總 -h 帶計量單位 -a 含文件 –max-depth=1 子目錄深度 -c 列出明細的同時,增加匯總值 -
磁盤情況 - 實用指令
- 統計 /home 文件夾下文件的個數
ls -l /home | grep “^-” |wc -l - 統計 /home 文件夾下目錄的個數
ls -l /home | grep “^d” |wc -l - 統計 /home 文件夾下文件的個數,包括子文件夾下的
ls -lR /home | grep “^-” |wc -l - 以樹狀顯示目錄
yum install tree — 安裝tree指令 ,若已安裝不用執行此步驟
tree — 以樹狀圖顯示當前文件夾
- 統計 /home 文件夾下文件的個數
-
4、網絡配置
- 查看網絡配置
- Windows下:ipconfig
- Linux下: ifconfig
- 測試主機之間連通性
- ping 目的主機
例如:ping www.baidu.comm
- ping 目的主機
- Linux下網絡環境配置
- 自動獲取:通過界面完成
- 指定固定ip
- 直接修改配置文件
a. vim /etc/sysconfig/network-scripts/ifcfg-ens33 — ens33為網卡文件
b. 啟用 boot 配置成yes — ONBOOT=yes
c. 以靜態方式獲取IP — BOOTPORTO=static
d. 指定IP — IPADDR=192.168.81.130
f. 指定網關和域名解析器,(網關和DNS一樣)與Windows一致 — 網關/DNS:GATEWAY= DNS= - 修改完畢后,重啟服務
- service network restart — 重啟網絡服務
或 - reboot — 重啟
- service network restart — 重啟網絡服務
- 直接修改配置文件
5、進程管理
-
查看進程使用的指令: ps ,一般使用 ps -aux
ps顯示的信息選項字段 說明 PID 進程識別號 TTY 終端機號 TIME 此進程所消耗的CPU時間 CMD 正在執行的命令或進程名 ps -a : 顯示當前終端的所有進程信息
ps -u : 以用戶格式顯示進程信息
ps -x : 顯示后臺進程運行的參數 -
ps 指令詳解
字 段 說明 USER 用戶名稱 PID 進程號 %CPU 進程占用cpu的百分比 %MEM 進程占用物理內存的百分比 VSZ 進程占用虛擬內存大小 (KB) RSS 進程占用物理內存的的大小 (KB) TT 終端名稱,縮寫 STAT 進程狀態,其中S-睡眠,s-該進程是會話的先導進程,N-表示進程擁有比普通優先級更低的優先級,R-正在運行,D-短期等待,Z-僵死進程,T-被跟蹤或被停止 STARTED 進程啟動的時間 TIME cpu時間,即進程使用cpu的時間 COMMAND 啟動進程所用的命令和參數,如果過長會被截斷顯示 -
應用實例
- ps -ef — 以全格式顯示當前所有進程
-e 顯示所有進程,-f 全格式顯示
- ps -ef — 以全格式顯示當前所有進程
-
終止進程kill和killall
- kill [選項] 進程號 — 通過進程號來殺死進程
- killall 進程名稱 — 通過進程名稱殺死進程,支持通配符,可解決系統因負載過大而運行緩慢的問題
- -9 — 常用選項,強制進程立即停止
- 實例
- 踢掉某個非法用戶
ps -aux | grep sshd — 查找用戶對應的進程
kill 進程號 — 殺死該用戶進程 - 終止遠程登陸sshd
步驟同上 - 終止多個gedit編輯器
killall gedit
- 踢掉某個非法用戶
- 查看進程樹pstree
- pstree [選項]
- 常用選項
- -p — 顯示進程PID
- -u — 顯示進程所屬用戶
-
服務管理(Service/systematl)
- service/systemctl 服務名 [start | stop|restart | reload | status]
- service iptables status — 查看當前防火墻狀態
- systemctl status iptables — 同上
- 查看服務名
- setup
- ls -l /etc/init.d/
- chkconfig指令 — 給每個服務的各個運行級別設置自啟動/關閉
- 查看服務 — chkconfig --list
- 查看特定 — chkconfig --list|grep sshd
總結
以上是生活随笔為你收集整理的Linux(centos7)基础操作的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 全国计算机证件照要露耳朵吗,结婚证照片要
- 下一篇: 谷歌Chrome浏览器开发者工具教程—J