Linux基礎命令大全(詳細版)

##修改主機名:
hostname 主機名 (臨時更改)
hostnamectl set-hostname 主機名(永久更改)
##修改用戶密碼:
passwd 直接敲是修改當前用戶的密碼,修改其他用戶密碼在後面加用戶名
root用戶可以修改所有用戶的密碼 ,普通用戶只能修改自己的密碼
passwd -d 用戶名 刪除該用戶的密碼


##破解root密碼
1、重啓 reboot ,按e進入救援系統
2、在Linux16句末尾輸入 rd.break (以rd.break的方法重置密碼),ctrl+x繼續執行操作
3、mount -o remount,rw /sysroot (重新掛載根給/sysroot讀寫權限,給跟系統一個讀寫權限)
4、chroot /sysroot (切換到真實的根下面)
5、passwd root (修改密碼)
6、touch /.autorelabel (創建一個標籤文件)現在是在非正常的救援模式下,所以系統需要給你一個認可,這個標籤就是告訴系統我是好人別開槍。創建好之後就讓它帶着標籤和新密碼去啓動。
7、exit (退出,讓系統進行修改密碼)
8、exit


**##**切換用戶更改命令提示符的用戶名(switch user):su - 用戶名
查看當前的工作目錄(print work directory):pwd
-P:顯示出真實的路徑,而非鏈接路徑
在這裏插入圖片描述
切換目錄(change directory):cd

##絕對路徑:以 / 開始的路徑 ,例 cd /home/redhat
相對路徑:不是以 / 開始的路徑,例 cd home

##直接回到當前用戶的主目錄:cd ~
回到當前目錄的上一級目錄:cd …
回到當前目錄:cd .
切換到之前的目錄:cd -

##列出目錄裏的內容:ls(list)
ls -l 長列表列出=ll
ls -d 查看當前目錄
ls -a 列出隱藏文件,包括.和…
ls -A 列出隱藏文件,不包括.和…
ls -i 顯示文件的索引節點號(inode),一個索引節點號代表一個文件。


##通配符在這裏插入圖片描述
##查看和修改時間
date 查看系統時間
date -s “2020/2/5 12:00” 修改系統時間
clock 查看硬件時間
hwclock -w 系統時間附給硬件時間
hwclock -s 硬件時間附給系統時間
ntpdate time.windows.com 同步網絡時間

##查看日曆cal
cal 月 年 查看X年X月的日曆
cal -3 查看上月、本月、下月的日曆


##命令創建別名
臨時創建:
alias haha=‘cd’ 給cd命令創建別名haha
unalias haha 刪除別名
永久創建(保存別名到配置文件):
~/.bashrc文件
nano .bashrc
alias haha=‘cd’
ctrl+o 寫入
enter 確定
ctrl+x 離開
source .bashrc 讓文件生效


##文件類型
在這裏插入圖片描述
##文件系統層級標準(FHS)
在這裏插入圖片描述


##Vim文本編輯器
一般模式:
x:刪除光標所在位置內容
dd:刪除當前行
dgg:刪除光標至文檔首部
u:撤銷
yy:複製光標所在行;2yy複製光標行和下一行
p:粘貼到光標下一行
gg:跳轉到文檔首部行首
ctrl+r:重複上一個操作

插入模式:
i:在光標前插入
s:刪除光標所在位置並插入
o:在光標所在的下一行插入

末行模式:
:wq 保存退出
:wq!強制保存退出
:set nu 顯示行號
:set nonu 不顯示行號
:行號 跳轉到指定行號
:3,5 d 刪除3-5行
:%s /a/b/g 將a替換位b,全局修改
: /所查找內容 查找
:r 文件名1 將文件名1的內容讀到當前文件中
:w 文件名1 另存爲文件名1

塊選擇:
ctrl+v 塊選擇
y 將反白的地方複製
d 將反白的地方刪除


##文件
創建文件:touch
查看文件:cat 、more、less(比more高級,支持前後翻閱,上下鍵)、head默認打開文件頭部前十行、tail默認打開文件末尾後十行

##目錄
創建目錄:mkdir+目錄名
刪除目錄:rmdir+目錄名
rmdir -p :連同上一級空目錄一起刪除

##複製 cp
複製文件:cp+文件名
複製目錄:cp -r +目錄名
保留源文件屬性:cp -p +文件名 (所屬主、屬組、權限、時間)

##移動 mv
mv+文件名+目標位置 :移動文件
mv aa bb 重命名文件aa

##文本切割 cut
cut -d -f 文件名
-d:指定分隔符
-f:指定截取的列數

##文本排序 sort
sort -n 文件名 按照數字大小排序
sort -n -u 文件名 排序並去重
sort -r 逆序排序

##文本統計 wc
統計指定文件中的字節數、字數、行數
wc -l 統計行數
wc -w 統計單詞數
wc -c 統計字節數

##tee
tee命令會從輸入設備讀取數據,將其內容輸出到標準輸出設備,同時保存成文件。
cat haha | tee xixi 將haha文件的內容保存至xixi同時創建xixi文件。


##文本查找
查找文件名 find
find -name
查找文件中的內容 grep
grep h haha 查找haha文件中帶h的字符串
grep h ./* 查找當前目錄下所有爲文件中的h字符,不包含目錄文件
grep -r h ./* 查找當前目錄下所有文件中的h字符,包含目錄文件
grep -w h haha 查找haha文件中帶h的完整單詞,不是單個的h字符


##文本壓縮
gz , bz2 , xz , zip

gzip 壓縮文件 .gz
gzip -d 解壓文件 = gunzip
zcat 查看壓縮過的文本內容

bzip2 壓縮文件 .bz2
bzip2 -d 解壓文件
-# 壓縮比爲1-9,默認爲6
bzcat 查看壓縮過的.bz2的文件內容

xz 壓縮文件 .xz
xz -d 解壓文件
-k 壓縮時保留源文件
xzcat 不解壓直接直接查看壓縮格式的文本文件

zip 壓縮文件
unzip 解壓文件


##tar 同時壓縮多個文件或目錄
語法:tar 【主選項+輔選項】文件名
主選項:
c - 壓縮文件-打包
x - 解壓文件-把文件提取出來
t - 不解壓查看壓縮文件
輔選項:
v- 過程中顯示文件
f- 輸出結果到文件,必須寫
j- 壓縮格式(.bz2)
J- 壓縮格式(.xz)
z- 壓縮內容(.gz)
p- 保留源文件的屬性
C- 解壓到指定的目錄

組合使用:
壓縮方式:jcvf ,zcvf ,Jcvf
解壓方式:xvf
查看方式:tf
例:tar zcvf text.tar.gz file1 file2 file3 將file1,file2,fiel3三個文件打包爲text.tar.gz


##文本傳輸 scp
scp [email protected]:/root/haha /maomoa 下載
scp /root/s [email protected]:/text 上傳

##查看進程 ps
ps -e 顯示後臺進程
ps -f 顯示詳細信息

進程的五種狀態碼:
D 不可中斷
R 運行中
S 中斷
T 停止
Z 僵死

幾種附加符號含義:
< 高優先級
N 低優先級
L有些頁被鎖進內存
s 包含子進程
+位於後臺的進程組
| 多線程,克隆線程


##用戶和組的管理
1、用戶
/etc/passwd 用戶管理配置文件
三種用戶:超級用戶root、系統用戶、普通用戶
在這裏插入圖片描述
useradd:添加用戶
usermod:修改用戶參數
-r 系統用戶
-G 添加附加組
userdel:刪除用戶
-r 代表同時刪除創建用戶時的主目錄和郵箱
不允許登陸:shell /sbin/nologin

2、組
/etc/group 組配置文件
在這裏插入圖片描述
基本組:創建一個用戶後,若沒有指定基本組,則會地洞爲自己分配一個同uid的基本組
附加組:除基本組之外,用戶還可以被分配到其他組

groupadd:創建組
newgrp :登陸組
groupmod:修改組
groupdel:只能刪除groupadd添加的組,基本組只能通過刪除用戶來實現
id+用戶名:查看用戶的分組情況

擴展:
gpasswd:給組設置密碼
gpasswd -a maomao group1 將maomao用戶添加組group1
gpasswd -M xixi, haha, maomao group1 指定多個用戶添加到組group1
gpasswd -d maomao group1 將maomao用戶從組group1移除
gpasswd -R group1 鎖定group1組,只有組內成員才能進入本組

手動創建用戶
(1)添加用戶信息,在/etc/passwd/輸入用戶配置信息
在這裏插入圖片描述在這裏插入圖片描述
(2)添加組信息
在這裏插入圖片描述
(3)創建用戶家目錄
在這裏插入圖片描述
(4)複製/etc/skel/的隱藏文件.bash和.mizilla到家目錄
在這裏插入圖片描述
在這裏插入圖片描述
3、用戶的密碼文件
/etc/shadow
在這裏插入圖片描述
參數:以 1天 爲單位
-n 最短使用時間
-x 最長使用時間
-w 警告時間
-i 寬限時間
例:passwd -n 2 -x 10 -w 1 -i 3 redhat 指定密碼最短使用時間2天,最長使用時間10天,警告時間1天,寬限時間3天
-e 精確時間 通過修改賬號
例 :usermod -e 2020-03-20 redhat


##更改文件的所屬關係 chown,chgrp
chown maomao /text/a 修改/text/a文件的屬主爲maomao
chown redhat:maomao haha 修改haha的屬主爲redhat,屬組爲maomao
chown redhat.maomao haha 修改haha的屬主爲redhat,屬組爲maomao
chown .maomao haha 修改haha的屬組爲maomao
chgrp 只能修改屬組
chgrp maomao haha 修改haha的屬組爲maomao
chgrp -R 遞歸,連同目錄下的所有文件、子目錄都更新爲新的屬組

##文件權限控制 chmod
文件詳細信息:
d r-xr-x–rwx. 16 root root 4096 Aug 26 09:47 root
權限:屬主的權限u 屬組的權限g 其他人的權限o
修改權限:
chmod 777 文件名
chmod u+r 文件名
一般權限:
對於普通文件:
r–可讀取此文件的實際內容(cat查看文件)
w–可編輯此文件的內容(vim,echo),但不具備刪除該文件的權限(刪除 文件由該文件的上層目錄控制,跟文件本身的權限無關)
x–該文件具有可以被系統執行的權限
對於目錄文件:
r–具有讀目錄結構列表的權限,可以查詢該目錄下的文件名數據(ls)
w–空
x–用戶能否進入該目錄(cd)
同時有w和x權限纔可以創建、刪除文件和目錄

特殊權限:
suid:u+s,讓進程不再屬於它的發起者,而是屬於程序文件本身(調用者執行該文件過程中,會暫時獲得該文件的所有者權限,只在程序執行過程中有效)
例:使用suid來實現普通用戶可以查看密碼文件
答:先找到查看命令的程序文件位置,which cat
在這裏插入圖片描述
發現其所屬者是root,現要實現普通用戶查看密碼文件,則要將其僞裝成root
在這裏插入圖片描述
即可實現普通用戶查看密碼文件

sgid:g+s,在此目錄下創建的所有文件的所屬組均是該目錄所在的屬組

sticky:o+t,不能夠刪除其他用戶在同目錄裏創建的文件,可刪除自己創建的文件

**ACL訪問控制列表:**可以對某個文件設置該文件具體的某些用戶的權限,意思就是通過ACL可以對一個文件權限做擴展,可以使不同的用戶對某個文件有不同的權限。
getfacl+文件名 獲取文件的訪問控制信息
setfacl 設置文件的acl
setfacl -m u:用戶名:權限 文件名/目錄名 ,修改文件的acl
setfacl -m g:組名:權限 文件名

權限掩碼控制創建文件的權限
查看權限掩碼:umask
修改權限掩碼:umask 022
普通文件的權限掩碼:666
目錄文件的權限掩碼:777


##網卡配置
1、圖形界面配置
2、修改網卡的配置文件
vim /etc/sysconfig/network-scripts/ifcfg-eno16777736
在這裏插入圖片描述
修改完成之後,重啓服務:systemctl restart network
網關配置文件:/etc/sysconfig/network
DNS配置文件:/etc/resolv.conf

3、命令行編輯
nmcli connection edit
e
go ipv4
set address 192.168.1.2/24
yes
set gateway 192.168.1.1
save
activate eno16777736

4、命令行編輯
nmcli connection modify eno16777736 ipv4.addresses 192.168.168.2/24
nmcli connection modify eno16777736 +ipv4.address 192.168.168.168/24
nmcli connection modify eno16777736 ipv4.gateway 192.168.168.1
nmcli connection modify eno16777736 ipv4.method manual
nmcli connection modify eno16777736 connection.autoconnect yes
nmcli connection up eno16777736


磁盤分區和文件系統
Linux裏面根據硬盤接口的不同來命名:
IDE-------hd (a-d)
SATA/SCSI--------sd(a-z)
一塊磁盤可以分爲4個分區,可以是4個主分區,也可以把某個分區作爲擴展分區,在擴展分區上可以創建多個邏輯分區。
磁盤分區步驟:
一、創建分區:
1、判斷磁盤是否有剩餘空間 df-h lsblk
2、fdisk /dev/sda
3、默認只能分爲4個主分區 擴展分區 +邏輯分區
4、新建分區 e p
5、起始點–結束點(+2G)
6、p打印
7、w 保存退出 q不保存退出
#partprobe(同步磁盤分區信息)


二、創建文件系統:
#mkfs.
ext2 ext3 ext4 xfs vfat nfs
#mkfs.xfs /dev/sda5


三、掛載使用
臨時掛載:
#mount 設備名稱 掛載目錄
#mount /dev/sda5 /sda5(新建的目錄)
卸載:umount +分區文件名或 umount+掛載點目錄
永久掛載:
#vim /etc/fstab
設備名稱(uuid) 掛載目錄(/sda5) 文件系統格式(xfs) defaults 開機是否備份 開機是否檢查
/dev/sda5 /sda5 xfs defaults 0 0
#mount -a 掛載所有設備–會檢測/etc/fstab文件信息,即重新讀取/etc/fstab下的文件命令


#fdisk /dev/sda
m (參數含義)
n 新建分區
p 打印分區
q 退出不保存
w 保存退出
d 刪除分區
>n
e 擴展分區
p 主分區


##軟件安裝
yum安裝:
首先需要有一個倉庫,來存放這些依賴關係,在需要的時候直接調用
1、掛載 mount /dev/sr0 /mnt
2、創建源配置文件
倉庫目錄/etc/yum.repos.d
定義配置文件:vim /etc/yum.repos.d/base.repo
yum.repos.d目錄下只認識.repo結尾的配置文件
本地源配置文件:
[base]
name=base
baseurl=file:///mnt
enable=1
gpgcheck=0
3、安裝:yum install+包名 -y
卸載:yum remove+包名 -y

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章