linux常用小命令
1、查看/調整/重設日期:
注:+%Y年,+%m月,+%d日,+%H時,+%M分,+%S秒,+%w周,+%F年月日,+%T時分秒,+%R時分
#date +"%F %T"
#date -s "yyyy-mm-dd HH:MM:SS" (date -s "2017-07-08 12:23")
#hwclock -s
2、硬鏈接和軟連接——一種文件共享的方式
1)硬鏈接——inode 都指向同一個文件在硬盤中的區塊,刪除源文件,鏈接文件還在;與普通文件沒不同,
2)軟連接——在硬盤上有獨立的區塊,訪問時替換自身路徑,刪除源文件,鏈接文件不在;
#ln yuanwenjian lianjiewenjian
#ls li
#ln -s yuanwenjian lianjiewenjian
3、定向輸出與管道和幫助
1)>或1>正確輸出覆蓋;2>錯誤輸出;&>全部輸出;>>追加,|管道:把前命令的結果交給後命令處理
2)#man 命令名 | #info 命令名 |#命令名 --help :簡短的幫助信息
4、history歷史命令和查找常用命令存儲位置
1)文件/etc/profile;ctrl+r開快捷鍵搜索功能,ESC退出
2)#which 命令 ——> #which find
5、創建文件或目錄
#mkdir -p 文件
#vim 目錄 :已有文件修改,沒有創建
#touch 文件 :用於測試的文件
6、vim編輯器的使用
1)a、i、o:進入插入模式行後新增空白行;ESC退出到普通模式,:進入到命令模式wq保存退出,!q廢棄退出
2)gg文件首行,G文件末行,nG移動至第n行;
3)^ | HOME鍵 | 數字0:行首,$ | END鍵:行尾
4)yy複製行,nyy複製n行,p光標後粘貼,P光標前粘貼,dd刪除行,ndd刪n行,d$光標至行尾
5)/查找詞,n下一個,N前一個
6)u撤銷上次操作,U撤銷行操作
7):w /文件路徑——>另存爲其它文件;:r /文件路徑——>讀入其它文件內容
8):s/old/new 、s/old/new/g ——>替換行第一個,當前行所有
:n,m s/old/new/g 、% s/old/new/g ——>替換n到m行的,替換文件所有的
9):set nu|nonu 顯示行號|不顯示
:set ai|noai 啓用|不啓用自動縮進
:set ignorecase 查找時忽略大小寫
10)分割窗口:命令模式下輸入split——>窗口切換Ctrl+w+h左、Ctrl+w+l右、Ctrl+w+j上、Ctrl+w+k下,命令模式下:close就關閉,split水平分割,vsplit垂直分割
11)執行shell命令:可以通過:!{命令}來實現,例如:!ls,按回車返回vim編輯器
12)自動補全:在文中出現過,輸入前幾個字母,按Ctrl+N自動補全
13)刪註釋#:光標在註釋前,ctrl+v下鍵 按x
加註釋#:Ctrl+v 下鍵,按”I“(大寫)進入行首輸入模式,輸入#或者//,按兩次ESC進行退出
7、命令行來管理Linux系統中的文檔
1)目錄查看和切換:pwd、cd、ls -ldAh 【通配符】
2)新建目錄或文件:mkdir -p、vim、touch
3)複製/刪除/移動:cp -rp、rm -rf、mv
4)搜索文件或目錄:find [選項] [路徑] -exec 處理命令 {} \;
選項:-empty 找空文件或目錄;-iname 按名稱找不區分大小寫;-mtime按修改的時間;-size按文件大小、-type按文檔的類型f文件d目錄b或c設備l鏈接,-user按用戶,-group按組
#find /home -type f -user student -exec cp -pf {} /root/findfiles \;
8、查看文件內容
1)查看文件內容:cat [選項-n顯示行號,-b空白行不顯行號] 文件
2)分頁看文件內容:more 文件 :空格鍵看下頁q退出 | less 文件 :空格下頁上下鍵回翻q退出
3)看文件頭尾部信息:head [選項-n前n行] 文件 | tail [選項-n,-f動態顯示常用於看日誌crtl+c退出] 文件
4)看文件行數、單詞和字節數 :wc [選項-l行數,-c字節信息,-w單詞信息] 文件
5)grep找關鍵詞過濾:grep [選項-i忽略大小寫,-v取反,--color顯顏色] 匹配模式^word$ 文件
6)echo輸出;read -p :echo [選項-n不換行,-e支持\轉義字符] 字符串
補充:\033[字體顏色m字符串\033[0m :30黑、31紅、32綠、33黃、34藍、35紫、36深綠、37白
#echo -e "\033[32mOK\033[0m" :顯示有顏色的OK
9、壓縮和解壓
1)壓縮:tar [選項-cfz | j | J] 壓縮文件.tar.gz|.bz2|xz 要壓縮文件
2)解壓:tar [選項-xfz | j | J] 壓縮文件.tar.gz|.bz2|xz -C指定解壓路徑 文件
10、重設root密碼
1)重啓,出現 GRUB 啓動菜單時按 e 鍵進入編輯狀態
2)在找到 linux16 行,末尾修改添加 rd.break console=tty0,按 Ctrl+x 鍵進恢復模式
3)可寫方式掛載硬盤中的根目錄,重設 root 密碼
#mount -o remount,rw /sysroot
#chroot /sysroot/
#echo "密碼" | passwd --stdin root
#touch /.autorelabel
#exit
#reboot
11、配置網絡參數
1)查看/設置IP地址:#ifconfig -a,# ifconfig [接口名] ,# ifconfig [接口名] IPV4地址/掩碼長度
2)查看/設置主機名:#hostname #vim /etc/hostname
3)DNS映射關係設置:# host 域名或地址 [DNS服務器地址]
4)指定本機DNS服務器: # vim /etc/resolv.conf-->nameserver DNS服務器地址
5)修改網絡連接配置:
#nmcli con modify “網卡連接名” ipv4.method manual ipv4.addresses “IP地址/掩碼長度 [默認網關]” ipv4.dns connection.autoconnect yes
6)激活|禁用|查看網絡連接:# nmcli con up|down|show “連接名”
7)圖形工具設置IP地址:# nm-connection-editor
12、軟件包yum源安裝管理
1)Yum配置及使用
#vim /etc/yum.repos.d/.repo
[rhel7] :倉庫名
baseurl=http://.......或file:// :軟件倉庫的訪問地址
enabled=1 :啓用此倉庫
gpgcheck=0 :不做簽名檢查
或
#yum-config-manager --add http://.../.repo或file://
#echo gpgcheck=0 >> /etc/yum.repos.d/...../repo*
2)yum命令管理軟件(#createrepo . :自定義yum源包操作,然後共享)
#yum repolist ;# yum list [軟件名];# yum clean all;# yum -y install|remove....
3)零散軟件管理
#wget 軟件包的URL網址 [-O /目錄路徑/新文件名]
4)用rpm命令管理軟件
#rpm -ivh 軟件包名 :i安裝;v顯示詳細信息;h顯示安裝進度
[選項:q查詢軟件是否安裝;qa查所有安裝軟件;ql查軟件的安裝路徑和文件列表;qc軟件配置文件]
13、管理用戶和組
1)用戶信息/etc/passwd;密碼/etc/shadow;組信息/etc/group;組成員/etc/shadow
2) 選項:-u用戶id;-d家目錄路徑;-s登陸Shell;-g基本組;-G附加組
3)用戶增刪改查
添加用戶 # useradd [選項]... 用戶名
設置密碼 # echo ‘密碼’ | passwd --stdin 用戶名
修改屬性 # usermod [選項]... 用戶名
檢查用戶 # id [用戶名]
刪除用戶 # userdel [-r] 用戶名
4)組增刪改查
添加組 #groupadd [-g 組ID] 組名
增刪組用戶 #gpasswd -a|-d 用戶名 組名 :增刪用戶
修改組屬性 #groupmod [-g 組ID] [-n 新組名] 組名
檢查組 #grep 組名 /etc/group
刪除組 #groupdel 組名
14、cron計劃任務
1)包crontabs;服務crond;日誌文件/var/log/crond;配置參考/etc/crontab;
2)編輯查看清除:#crontab -e | -l | -r [-u 用戶名]
3)編寫任務記錄:分 時 日 月 周 命令行(絕對路徑) 每;,分隔不連續時間點;-連續時間範圍;/n每n
#crontab -e -u natasha :#which echo :查絕對路徑
23 14 /bin/echo hiya
15、權限和歸屬
1)設置基本權限 :rwx
#chmod [-R] 歸屬關係+|-|=權限類別 文檔
2)設置文檔歸屬:ugo
#chown [-R] 屬主[:屬組] 文檔
3)設置訪問 acl訪問控制策略(更精細的控制)
#setfacl [-R] -m u|g:用戶名|組名:權限類別 文檔 #getfacl 文檔;#setfacl [-R] -b 文檔:清空策略
4)附加權限
屬主x位變s讓使用者具有組身份及部分權限;屬組的s使新增文件與父目錄有相同屬組
其它人的x位變t是阻止用戶有w權限條件下濫用w寫入權限(禁止操作被人的文檔)
5)例子
#mkdir -m u+rwx,go-rwx /dir1
#chmod u-w,go+rx /dir1
#chmod 755 /dir1 --->r4,w2,x1
#ls -ld /dir1
#chown :root /dir1
#chown lili:root /dir1
#ls -ld /dir1
#setfacl -m u:lili:rwx /dir1
#setfacl -m g:root:rwx /dir1
#getfacl /dir1
#setfacl -b /dir1
#chmod g+s /dir1
#chmod o+t /dir1/
16、fdisk硬盤分區格式化規劃及使用
1)擴展分區不能格式化,最大2.2TB磁盤
識別硬盤==>fdisk分區規劃==>mkfs格式化==>掛載使用
2)fdisk硬盤分區管理:m列出幫助,p查看現有分區,n新鍵分區,d刪除分區,q放棄退出,w保存退出
#fdisk 硬盤設備
#fdisk -l /dev/sda
#reboot
3)格式化分區:
#mkfs.ext3|ext4|xfs 分區設備路徑
#mkds.vfat -F 32 分區設備路徑
4)訪問文件系統:臨時掛載、開機自動掛載/etc/fstab
設備路徑 掛載點 類型 參數 備份標記 檢測順序
#vim /etc/fstab
增/dev/vdb1 /mnt/part3 xfs defaults 0 0
17、LVM邏輯卷
1)零散的空閒存儲-->整合的虛擬磁盤-->虛擬分區
利用物理卷組PV成卷組,再從卷組VG中劃分邏輯卷LV,將邏輯卷格式化賦予文件系統掛載使用文件系統是數據存放的規則,邏輯卷爲數據存放提供空間
2)卷組管理vg
Create創建 #vgcreate 卷組名 空閒分區...
Display顯示 #vgdisplay li |grep Free:查組剩空間
Remove刪除
Extend擴展 #vgextend 卷組名 空閒分區...
3)邏輯卷管理lv
Scan掃描 #lvscan | grep vo :找vo的大小和卷組名
Create創建 #lvcreate -n 名稱 -L 大小 卷組名
Extend擴展 #lvextend -L 新大小 /dev/卷組名/邏輯卷名
4)更新文件系統大小 格式化邏輯卷擴容後,刷新容量resize2fs EXT3/4設備 或 xfs_growfs XFS設備
5)附加:LVM卷組的PE大小
#vgcreate -s PE大小 卷組名 空閒分區... :創卷組時設置PE大小
#lvcreate -n 邏輯卷名 -l PE個數 卷組名 :創邏輯卷時指定PE個數
6)案例
#vgcreate lili /dev/vdb1
#lvcreate -n li -L 180M lili
#vgcreate -s PE 16M lili /dev/vdb1
#lvcreate -n li -l 50 lili
#vgdisplay lili | grep Free :檢查卷組剩餘空間,看是否需擴容
#lvscan | grep li :找到邏輯卷的大小和卷組名
#vgextend lili /dev/vdb2 :擴展卷組
#lvextend -L 300M /dev/lili/li :擴展邏輯卷
#resize2fs /dev/lili/li
#df -hT /li
18、GPT分區、RHEL6運行級別、sudo提權
1)GPT分區:128個分區
#parted /dev/vdc
(parted)mktable gpt :指定分區模式爲gpt
(parted)print
(parted)mkpart :劃分新分區
2)RHEL6運行級別
0關機,1單機破密碼模式,2字符模式不支持網絡,3字符模式支持網絡,4未定義,5圖形模式,6重啓
切換運行級別命令:# init 3|5
3)sudo提權
#visudo :進入提權配置文件
增haha ALL=(ALL) /user/bin/chmod
#sudo chmod o+x /opt/
19、SElinux系統安全保護
1)配置文件/etc/selinux/config;reboot重啓以切換模式
2)增強Linux系統安全的強制訪問控制體系,針對用戶、進程、目錄和文件提供預設保護策略以及管理工具。
3)運行模式:enforcing強制1、permiss寬鬆0、disabled徹底禁用
#getenforce :查看;#setenforce 1|0
20、alias別名配置用戶環境
1)別名:全局配置/etc/bashrc對所有用戶有效,用戶個性化~用戶名/.bashrc僅對用戶有效
2)定義新別名 #alias 別名名稱=‘實際執行的命令行’
3)查看已設置別名 #alias [別名名稱]
4)取消別名 #unalias [別名名稱]
21、IPV6配置高級連接
1)由128個二進制,冒號分隔的16進制數,每段前置0可省,簡化:
2)Team聚合連接:多塊網卡組成虛擬網卡即組隊;{ "runner":{ "name":"類型" } }
3)輪詢式roundrobin流量負載均衡;熱備份activebackup連接冗餘
4)實現聚合鏈路聚合:
①網絡接口準備:
#ifcongifg -a | grep ^eth
②聚合連接配置(類型、、連接名、運行器、IP地址)
#nmcli con add con-name team0 type team ifname team0 config '{ "runner":{ "name":"activebackup" }}'
#nmcli con modify team0 ipv4.method manual ipv4.addresses '172.16.3.20/24' connection.autoconnect yes
③爲成員網卡提供配置(類型、連接名、主連接)
#nmcli con add con-name team0-p1 type team-slave ifname eth1 master team0
#nmcli con add con-name team0-p2 type team-slave ifname eth2 master team0
④激活聚合連接
#nmcli connection up team0
#nmcli connection up team0-p1
#nmcli connection up team0-p2
⑤查看聚合連接運行狀態
#teamdctl team0 state
22、Firewalld防火牆策略管理
1)服務firewalld;管理工具firewall-cmd、firewalld-config
2)採取“默認全允許,僅拒絕個別”的防護策略,將默認區域設爲trusted
#firewall-cmd --set-default-zone=trusted
#firewall-cmd --get-default-zone
3)封鎖指定IP網段、網址和開服務(永久配置permanent;public開;block封)
--add-source=網段地址;--add-service=服務名;--permanent永久配置
#firewall-cmd --permanent --zone=block --add-source=172.34.0.0/24
#firewall-cmd --permanent --zone=block --add-source=172.34.4.1/24
#firewall-cmd --permanent --zone=public --add-service=ftp
#firewall-cmd --reload :重載生效
#firewall-cmd --list-all --zone=block :檢查運行時規則
4)防火牆實現本地端口轉發
#firewall-cmd --permanent --zone=trusted
--add-forward-port=port=5423:proto=tcp:toport=80 :5423-->80端口轉發
#firewall-cmd --reload :重載服務
#firewall-cmd --list-all :確認運行時規則
Linux基本小命令:https://wenku.baidu.com/view/60035c06a7c30c22590102020740be1e650ecc77.html