權(quán)限管理命令 chmod
為金鄉(xiāng)等地區(qū)用戶提供了全套網(wǎng)頁設(shè)計(jì)制作服務(wù),及金鄉(xiāng)網(wǎng)站建設(shè)行業(yè)解決方案。主營(yíng)業(yè)務(wù)為網(wǎng)站建設(shè)、成都網(wǎng)站制作、金鄉(xiāng)網(wǎng)站設(shè)計(jì),以傳統(tǒng)方式定制建設(shè)網(wǎng)站,并提供域名空間備案等一條龍服務(wù),秉承以專業(yè)、用心的態(tài)度為用戶提供真誠的服務(wù)。我們深信只要達(dá)到每一位用戶的要求,就會(huì)得到認(rèn)可,從而選擇與我們長(zhǎng)期合作。這樣,我們也可以走得更遠(yuǎn)!
英文愿意: change the permissions mode of a file
語法: chmod[{ugoa}{+-=}{rwx}] [文件或目錄]
[mide = 421] [文件或目錄]
-R 遞歸修改
權(quán)限的數(shù)字表示
r -- 4
w -- 2
x -- 1
rwxrw-r-- (4+2+1 = 7)
7 6 4
例子:mkdir /temp 創(chuàng)建了一個(gè)目錄
touch /temp/testfile 在該目錄下創(chuàng)建了一個(gè)test file文件
chmod 777 /temp 改變了一下該目錄的權(quán)限
名稱: chgrp
英文原意:change file group ownership
語法:chgrp [用戶][文件或目錄]
功能: 改變文件或目錄的所屬租
例子: useradd hl // 添加所有者
groupadd brother // 添加所有組
charp brother text // brother變成了text文件的所屬組
注意:
1、所屬組就是創(chuàng)建這的所屬者的缺省組
2、linux中創(chuàng)建的文件缺少x(可執(zhí)行)為了使系統(tǒng)更加安全
mask
0022
0特殊權(quán)限
022 ugo --- -w- -w-
1、文件搜索命令find
執(zhí)行權(quán)限:find
語法:find[搜索范圍][匹配條件]
功能描述:文件搜索
例子:
find /etc -name init (-iname 不區(qū)分大小寫)
find /home -user(-group) hl
在根目錄下查找所有者(所有組)為hl的文件
在目錄/etc中查找文件init
init init init // 通配符
?init (?匹配單個(gè)字符)
find / -size +204800
在跟目錄下查找大于100MB的文件 (100MB = 102400KB = 204800)
+n 大于 -n小于 n等于
find /etc -cmin -5
例子2:
find /etc -size + 163840 -a size -204800
在/etc下查找大于80MB小于100MB的文件
-a兩個(gè)條件同時(shí)滿足
-o兩個(gè)條件滿足任意一個(gè)即可
在/etc下查找5分鐘內(nèi)被修改的屬性的文件和目錄
-amin 訪問時(shí)間 access
-cmin 文件屬性 change
-mmin 文件內(nèi)容 modify
2、文件搜索指令 locate
命名名稱:locate
執(zhí)行權(quán)限:所有用戶
語法:locate 文件名
功能描述:在文件資料庫中查找文件
例子: $ locate inittab
輸出文件所在位置
locate和find的區(qū)別:
locate的查找速度很快,因?yàn)閒ind是在分區(qū)和磁盤上查找,而locate是在資料庫中查找
注意:如果資料庫沒有實(shí)時(shí)更新,所以locate可能會(huì)查不到要查詢的文件。
即:
updatedb (升級(jí)文件的資料庫)
loocate -i 文件名 (-i 不區(qū)分大小寫)
3、文件搜索命令:which (更精確呦)
執(zhí)行權(quán)限:所有用戶
功能描述:搜索命令所在目錄及別名信息
例子: which ls
alias(別名)
4、whiereis
執(zhí)行權(quán)限:所有用戶
語法: whereis[命令名稱]
功能描述:搜索命令所在目錄及幫助文檔路徑
例子: whereis ls
5、grep
執(zhí)行權(quán)限:所有用戶
語法:grep -iv[指定字串][文件]
功能描述:在文件中搜索字符串匹配的行并輸出
-i 不區(qū)分大小寫
-v 排除指定字符串
例子 grep mysql /root/install.log
補(bǔ)充: linux中 # 表示注釋
命名名稱:man
英文原意:manual
執(zhí)行權(quán)限:所有用戶
語法:man[命令或配置文件]
功能描述:獲取幫助信息
例子: man ls # 查看ls命令的幫助信息
man services 查看配置文件sevices的幫助信息
補(bǔ)充:man 。。。。后
/-g :查詢與g有關(guān)的信息
空格進(jìn)行翻頁
回車進(jìn)行換行
按n繼續(xù)查找
命令名稱:useradd
執(zhí)行權(quán)限:root
語法:useradd 用戶名
功能描述: 添加新用戶
例子: useradd HF
命令名稱:passwd
執(zhí)行權(quán)限:所有用戶
語法:passwd 用戶名
功能描述: 設(shè)置用戶密碼
例子: passwd HF
命令名稱:who
執(zhí)行權(quán)限:所有用戶
語法:who
功能描述: 查看登錄用戶信息
例子: who
輸出內(nèi)容含義:
登錄用戶名 登錄終端(tty本地登錄、pds表述遠(yuǎn)程終端) 登錄時(shí)間 登錄主機(jī)ip地址
命令名稱:w
執(zhí)行權(quán)限:所有用戶
語法:w
功能描述: 查看登錄用戶詳細(xì)信息
例子: w
命令名稱:gzip
英文原意:GNU zip
執(zhí)行權(quán)限:所有用戶
語法:gzip[文件]
功能描述: 壓縮文件
壓縮后文件格式:.gz
解壓縮:gunzip 壓縮文件
注意:gizp只能壓縮文件,不能壓縮目錄
命令名稱:tar
執(zhí)行權(quán)限:所有用戶
語法:tar 選項(xiàng) [-zcf] [壓縮文件名] [目錄]
-c 打包
-v 顯示詳細(xì)文件
-f 指定文件名
-z 打包同時(shí)壓縮
功能描述: 打包目錄
壓縮后文件格式:.tar.gz
命令名稱:zip
執(zhí)行權(quán)限:所有用戶
語法:zip 選項(xiàng)[-r][壓縮后文件名][文件或目錄]
-r 壓縮目錄
功能描述: 壓縮文件或目錄
壓縮后文件格式: zip
注意:zip是window和linux系統(tǒng)中通過用的壓縮格式
命令名稱:bzip2
執(zhí)行權(quán)限:所有用戶
語法:bzip2 選項(xiàng) [-k] [文件]
-k 產(chǎn)生壓縮文件后保留有源文件
功能描述: 壓縮文件
壓縮后文件格式: .bz2
注意: bzip2的壓縮比例大,適用于壓縮較大的文件
bunzip2解壓縮
對(duì)目錄壓縮:tar.bz2
指令名稱:write
指令權(quán)限:所有用戶
語法:write 用戶名
功能描述:給用戶發(fā)消息 ,以ctrl + D保存
例子: write YX
命令名稱:wall
英文原意:write all
執(zhí)行權(quán)限:所有用戶
語法:wall [message]
功能描述: 發(fā)廣播信息
命令名稱:ping
執(zhí)行權(quán)限:所有用戶
語法:ping 選項(xiàng)IP地址
-c 指定發(fā)送次數(shù)
功能描述: 測(cè)試網(wǎng)絡(luò)連通性
例子: ping 192.168.1.156
命令名稱:ifcongig
英文原意:interface configure
執(zhí)行權(quán)限:root
語法:ifconfig 網(wǎng)卡名稱 IP地址
功能描述:查看和設(shè)置網(wǎng)卡信息(設(shè)立之臨時(shí)IP)
例子: ifconfig etho 192.168.1.156
etch0 本地真實(shí)網(wǎng)卡
lo 回環(huán)網(wǎng)卡 (用來本機(jī)通信個(gè)測(cè)試的)
cncap:。。網(wǎng)絡(luò)名稱是以太網(wǎng)
HWaddr: 16進(jìn)制表示的 48位的 網(wǎng)卡的物理地址
addr:當(dāng)前計(jì)算機(jī)IP地址
Bcast:當(dāng)前網(wǎng)絡(luò)地址
Mask:子網(wǎng)掩碼
inet6 addr: 表示的是IPv6的地址信息
RX packets:接受數(shù)據(jù)包的總數(shù)量
TX packets:發(fā)送數(shù)據(jù)包的總數(shù)量
Base addtess: 網(wǎng)卡當(dāng)中的物理位置
命令名稱:mail (郵件命令)
執(zhí)行權(quán)限:所有用戶
語法:mail [用戶名]
功能描述:查看發(fā)送電子郵件
發(fā)送:ctrl + D
查詢: mail
例子: mail root
[圖片上傳中...(-d00bb9-1591253201012-0)]
命令名稱:last
執(zhí)行權(quán)限:所有用戶
語法:last
功能描述:列出目前和過去登入系統(tǒng)的用戶信息
命令名稱:traceroute
執(zhí)行權(quán)限:所有用戶
語法:traceroute
功能描述:顯示數(shù)據(jù)包到主機(jī)的路徑
例子: traceroute
命令名稱:netstat
執(zhí)行權(quán)限:所有用戶
語法:netstat [選項(xiàng)]
功能描述:顯示網(wǎng)絡(luò)相關(guān)信息
選項(xiàng):
-t : TCP協(xié)議
-u : UDP協(xié)議
-l : 監(jiān)聽
-r : 路由
-n : 顯示IP地址和端口號(hào)
例子:
netstat -tlun 查看本機(jī)監(jiān)聽的端口
netstat -an 查看本機(jī)所有網(wǎng)絡(luò)鏈接
netstat -rn 查看本屆路由表
命令名稱:setup
執(zhí)行權(quán)限:root
語法:setup
功能描述:配置網(wǎng)絡(luò)(永久生效)
例子: setup
注意:配置網(wǎng)絡(luò)結(jié)束后要重啟網(wǎng)絡(luò)服務(wù)
service network restart
掛在命令
命令名稱:mount
執(zhí)行權(quán)限:所有用戶
語法:mount[-t 文件系統(tǒng)] 設(shè)備文件
例子: mount -t iso9660/dev/sr0/mnt/cdrom
命令名稱:shutdown
[root@localhost~]#shutdown [選項(xiàng)] 時(shí)間
選項(xiàng):- c : 取消前一個(gè)關(guān)機(jī)命令
- h:關(guān)機(jī)
- r :重啟
特點(diǎn):可以正確的關(guān)閉和保存服務(wù),建議實(shí)用
其他關(guān)機(jī)命令
halt
poweroff (直接斷電)
init 0
重啟命令
reboot
init6
補(bǔ)充:init _ 的數(shù)字含義
init0 關(guān)機(jī)
init1 單用戶(啟動(dòng)最小最核心的服務(wù))
init2 不完全多用戶,不含NFS服務(wù)(network file system 網(wǎng)絡(luò)文件系統(tǒng))
init3 完全多用戶
init4 未分配
init5 圖形界面
init6 重啟
查詢系統(tǒng)運(yùn)行級(jí)別
runlevel
退出登錄命令
logout
查看CPU信息可以使用lscpu命令
從命令的輸出結(jié)果可以看得出來CPU的型號(hào)是 Intel(R) Core(TM) i9-8950HK CPU @ 2.90GHz,CPU(s)是4表示同時(shí)可以執(zhí)行四個(gè)任務(wù)。
如果想要同時(shí)執(zhí)行更多的任務(wù),可以在VMware WorkStation中修改,修改完成以后會(huì)立即生效。
除了lscpu以外,還可以使用cat /proc/cpuinfo命令查看CPU信息,不過它是以每核分開顯示的。
使用free或者是cat /proc/meminfo可以查看當(dāng)前系統(tǒng)的內(nèi)存信息,包括總內(nèi)存、已經(jīng)使用內(nèi)存以及可用內(nèi)存信息
Linux和Windows不同的是Linux的圖形界面只是它的一個(gè)程序,而不是必備組件。我們之前安裝CentOS8.4選擇的Server With GUI包含GNOME桌面的圖形環(huán)境,我們可以使用init 3命令關(guān)閉圖形,CentOS8會(huì)出現(xiàn)一個(gè)字符登錄界面。
然后再使用free -h觀察已經(jīng)使用的內(nèi)存只有334M,相比圖形界面的730M 減少了接近400M內(nèi)存,為了節(jié)省內(nèi)存,生產(chǎn)環(huán)境一般不會(huì)安裝和使用圖形界面。
想要再切回圖形界面使用init 5命令即可。
還可以使用runlevel命令查看當(dāng)前系統(tǒng)運(yùn)行的模式,其中輸出結(jié)果的3表示之前是字符界面,5表示當(dāng)前系統(tǒng)運(yùn)行的是圖形界面
使用lsblk命令可以查看磁盤信息,包括有幾塊磁盤以及每塊磁盤的分區(qū)、容量信息
通過命令的執(zhí)行結(jié)果可以得知目前CentOS8系統(tǒng)上有三塊磁盤,分別是sda,sdb,sdc,其中sdb和sdc沒有分區(qū),
而sda磁盤是在安裝系統(tǒng)時(shí)創(chuàng)建了四個(gè)分區(qū),具體信息如下表格所示
除此以外還可以使用 cat /proc/partitions命令查看磁盤信息,從命令的執(zhí)行結(jié)果可以看出容量還是以KB為單位。
通過arch命令可以查看當(dāng)前系統(tǒng)架構(gòu)為x86_64,這也是目前主流的系統(tǒng)架構(gòu)。
不同的Linux發(fā)行版使用的Linux內(nèi)核版本不同,通過uname -r可以查看Linux系統(tǒng)的內(nèi)核版本
通過 cat /etc/os-release 命令或者是lsb_release -a命令可以查看操作系統(tǒng)的版本,后期在開發(fā)程序時(shí)不同的操作系統(tǒng)版本需要做不同的處理。
查看Ubuntu Server的版本
查看CentOS8的版本
CentOS還可以使用 cat /etc/redhat-release版本
Linux中的時(shí)間有系統(tǒng)時(shí)間和硬件時(shí)間兩種
date和clock可以使用分號(hào)隔開后同時(shí)執(zhí)行看系統(tǒng)時(shí)間和硬件時(shí)間
目前我的系統(tǒng)時(shí)間和硬件時(shí)間相差了18秒
如果硬件時(shí)間是準(zhǔn)確的,那么就通過命令clock -s以硬件時(shí)間為準(zhǔn),同步校正系統(tǒng)時(shí)間。
如果系統(tǒng)時(shí)間是準(zhǔn)確的,那么通過clock -w命令以系統(tǒng)時(shí)間為準(zhǔn),同步校正硬件時(shí)間
不同的國家在同一時(shí)刻所處的時(shí)間是不同的,因?yàn)闀r(shí)區(qū)不同。
例如中國就是東八區(qū),東八區(qū)和格林威治的時(shí)區(qū)相比相差8個(gè)小時(shí)(也就是比北京時(shí)間慢了8個(gè)小時(shí)),之前在安裝操作系統(tǒng)的時(shí)候設(shè)置的時(shí)區(qū)就是Asia/Shanghai,,通過timedatectl status查看當(dāng)前時(shí)間狀態(tài),其中 Universal time就是格林威治時(shí)間,而Local Time就是系統(tǒng)設(shè)置時(shí)區(qū)(Asia/Shanghai)的時(shí)間,它們兩者剛好相差了8個(gè)小時(shí)。 Time zone: Asia/Shanghai (CST, +0800) 表示當(dāng)前的時(shí)區(qū)是亞洲上海。
如果現(xiàn)在你去了法國巴黎,可以通過timectl set-timezone 設(shè)置時(shí)區(qū)為歐洲巴黎,當(dāng)修改時(shí)區(qū)后使用date命令查看系統(tǒng)時(shí)間顯示的就是當(dāng)前法國的巴黎時(shí)間,相比北京時(shí)間慢了6個(gè)小時(shí)。
修改時(shí)區(qū)最終影響的是 /etc/localtime文件
不過目前我在中國,因此還是改回亞洲上海
timedatectl list-timezones可以查看所有時(shí)區(qū)
cal命令可以查看當(dāng)前月份的日歷,例如今天是2021年10月5號(hào)
查看指定月份的日歷
還可以查看指定年份的日歷
生產(chǎn)環(huán)境不能隨便關(guān)機(jī)和重啟!!! 因?yàn)榉?wù)器基本都是 7*24 對(duì)外提供服務(wù)
測(cè)試環(huán)境或者是本地虛擬機(jī)安裝的Linux服務(wù)器可以按需求關(guān)機(jī)或者重啟
關(guān)機(jī)可以使用halt或者poweroff命令
而shutdown可以實(shí)現(xiàn)關(guān)機(jī)或者重啟,shutdown -r表示重啟,即reboot,shutdown -h表示關(guān)機(jī),即halt。 -c表示取消關(guān)機(jī)或重啟。
除此以外shutdown 還可以指定時(shí)間來關(guān)機(jī)或重啟,默認(rèn)是1分鐘后執(zhí)行。
關(guān)機(jī)和重啟命令的常見用法
Linux下有nano和vim等文本編輯器,目前我們先使用nano來編輯文本。
如果系統(tǒng)上沒有安裝nano文本編輯器,那么在使用之前首先需要使用yum install -y nano命令來安裝nano文本編輯器
在使用nano進(jìn)行文本編輯時(shí),nano后面跟文件路徑即可打開文件,然后可以直接修改文件,類似于windows的記事本,修改完成后然后按Ctrl+x退出,接著按y保存修改,回車后退出nano。
然后使用nano /etc/motd來修改該文件,motd文件是用戶登錄之后提示的內(nèi)容
然后輸入Welcome to my class
之后按Ctrl+x退出nano編輯器,按y保存到文件匯中,然后按回車鍵確認(rèn)修改。
再重新登錄CentOS8.4
登錄成功之后就會(huì)看到/etc/motd文件內(nèi)容顯示在終端上
我這里準(zhǔn)備了一個(gè)motd文件,首先使用MobaXterm終端上傳到/etc目錄下覆蓋現(xiàn)有的motd文件,在使用MobaXterm終端登錄CentOS8.4-1后,首先將SSH Broswer的路徑切換到/etc目錄下
然后點(diǎn)擊上傳文件的按鈕
選擇提前準(zhǔn)備好的motd文件上傳到/etc目錄下
然后再次重新登錄系統(tǒng)就會(huì)看到一個(gè)大佛
大家可以自行訪問 在線生成ASCII(圖)藝術(shù)字,然后將內(nèi)容復(fù)制到motd文件即可。
當(dāng)我們登錄Linux打開一個(gè)終端窗口,然后輸入命令,用戶與計(jì)算機(jī)的這種臨時(shí)交互被稱為一次會(huì)話(Session)、會(huì)話的一個(gè)重要的特點(diǎn)就是窗口與其中啟動(dòng)的進(jìn)程是連接在一起的,打開窗口則會(huì)話開始,關(guān)閉窗口則會(huì)話結(jié)束,而且會(huì)話內(nèi)部的進(jìn)程也會(huì)隨之而終止,不管有沒有運(yùn)行完成。
這里舉一個(gè)例子,我們首先使用XShell遠(yuǎn)程登錄CentOS8.4-1,然后使用ping 10.0.0.103命令檢測(cè)是否能夠連接10.0.0.103,也就是Ubuntu Server 20.04.3-1那臺(tái)機(jī)器
命令執(zhí)行的結(jié)果顯示能夠連接,而且只要你不關(guān)閉窗口會(huì)一直顯示收到數(shù)據(jù)以及耗時(shí)。
然后我們復(fù)制一個(gè)會(huì)話
然后使用ps aux|grep ping 查看ping的進(jìn)程信息,因?yàn)闆]有關(guān)閉會(huì)話窗口所以進(jìn)程還在
當(dāng)我們關(guān)閉之前開啟的會(huì)話窗口之后
再次使用ps aux|grep ping查看進(jìn)程會(huì)發(fā)現(xiàn)ping進(jìn)程不存在了
為了解決上述的問題,我們就可以將會(huì)話與窗口解綁,也就是窗口關(guān)閉時(shí)會(huì)話并不會(huì)終止,而是繼續(xù)運(yùn)行,等到以后需要的時(shí)候,再讓會(huì)話綁定其他窗口。
而終端復(fù)用器程序(例如screen,tmux)就是將會(huì)話與窗口的解綁工具,將它們徹底分離。
首次運(yùn)行screen時(shí)會(huì)發(fā)現(xiàn)Shell提示command not found
我們需要使用yum install -y screen 來安裝screen,但是執(zhí)行之后發(fā)現(xiàn)提示錯(cuò)誤:: Unable to find a match: screen
Centos8安裝screen需要使用epel來安裝,安裝epel后,再安裝screen,解決centos8無法安裝screen的問題
然后再執(zhí)行yum install -y screen 便可安裝成功
Screen安裝成功
在安裝完screen后就可以使用了,首先在終端輸入screen,然后你就會(huì)看到屏幕好像是刷新了一下,本質(zhì)就是一個(gè)會(huì)話
然后再次運(yùn)行ping 10.0.0.103
由于開啟了screen,即使關(guān)閉了所有的會(huì)話窗口,你會(huì)發(fā)現(xiàn)使用ps aux |grep ping 命令查看ping命令的進(jìn)程也還在。
如果后期在做運(yùn)維工作,有些命令很耗時(shí)又怕誤操作關(guān)閉會(huì)話導(dǎo)致命令的進(jìn)程關(guān)閉就可以使用screen。
screen除了創(chuàng)建會(huì)話,能讓命令關(guān)閉窗口后繼續(xù)在后臺(tái)執(zhí)行的功能以外,還能夠?qū)崿F(xiàn)遠(yuǎn)程桌面共享,從而實(shí)現(xiàn)遠(yuǎn)程協(xié)助的功能。
實(shí)現(xiàn)該功能必須滿足兩個(gè)條件,兩個(gè)用戶必須使用同一個(gè)賬號(hào)登錄同一臺(tái)機(jī)器。
例如這里小紅和小明同時(shí)使用root賬號(hào)登錄了CentOS8.4,其中左邊的窗口是小紅,右邊的窗口是小明
然后小紅使用screen -S help開啟一個(gè)遠(yuǎn)程會(huì)話,會(huì)話的名稱叫help
然后小明使用screen -x help加入小紅開啟的會(huì)話
此時(shí)小明可以看到小紅窗口的內(nèi)容
當(dāng)小明解決小紅的問題后,可以使用ctrl a,d退出當(dāng)前會(huì)話
如果小明不知道小紅的會(huì)話名稱,可以使用screen -ls獲取當(dāng)前會(huì)話
echo就是用于輸出信息
echo輸出固定字符串
echo輸出變量值
echo輸出轉(zhuǎn)義字符
echo 默認(rèn)可以實(shí)現(xiàn)換行
echo輸出信息還可以帶顏色
echo還可以清除屏幕,等價(jià)于clear命令或者是快捷鍵Ctrl+l
快照功能:記錄當(dāng)前的硬盤的狀態(tài)。剛建快照時(shí)快照占用內(nèi)存為0,標(biāo)記了當(dāng)前硬盤的存儲(chǔ)狀態(tài)。當(dāng)虛擬機(jī)對(duì)快照標(biāo)記的內(nèi)容改寫時(shí),會(huì)將改寫的內(nèi)容存儲(chǔ)進(jìn)快照,與未改寫的部分整合得到完整的快照。當(dāng)快照標(biāo)記的部分被完全改寫,那么快照存儲(chǔ)空間完整記錄了當(dāng)時(shí)拍攝時(shí)的內(nèi)存狀態(tài)。
參數(shù)形式
第一種:參數(shù)用一橫的說明后面的參數(shù)是字符形式。
第二種:參數(shù)用兩橫的說明后面的參數(shù)是單詞形式。
第三種:參數(shù)前有橫的是 System V風(fēng)格。
第四種:參數(shù)前沒有橫的是 BSD風(fēng)格。
cat、more、less、head、tail命令的比較:
cat命令可以一次顯示整個(gè)文件,如果文件比較大,使用不是很方便;
more命令可以讓屏幕在顯示滿一屏幕時(shí)暫停,按空格往前翻頁,按b往后翻頁。
less命令也可以分頁顯示文件,和more命令的區(qū)別就在于: 支持上下鍵卷動(dòng)屏幕、查找;不需要在一開始就讀取整個(gè)文件,打開大文件時(shí)比more、vim更快。
head命令用于查看文件的前n行。
tail命令用于查看文件的后n行,加上-f命令,查看在線日志非常方便,可以打印最新增加的日志。
一般模式:
編輯模式:
命令模式:
編碼
多行操作(列編輯模式)
插入:ctrl+v進(jìn)入列編輯模式,上下移動(dòng)光標(biāo)選擇需要插入的位置,然后輸入大寫I,輸入需要文本,最后按esc鍵退出,就會(huì)發(fā)現(xiàn)文本會(huì)在選擇的多行中插入。
刪除:ctrl+v進(jìn)入列編輯模式,上下移動(dòng)光標(biāo)選中需要?jiǎng)h除的部分,然后按d,就會(huì)刪除選中的內(nèi)容。
①head:顯示文件頭部?jī)?nèi)容
②tail:輸出文件尾部?jī)?nèi)容
注意:用vim和vi修改內(nèi)容會(huì)刪除源文件并生成新文件,所以tail -f會(huì)失效。需要用到
追加和覆蓋語句(或),才能被tail -f監(jiān)視到。
一般用于查看小文件
查看壓縮文件中的文本內(nèi)容
例:
①more:文件內(nèi)容分屏查看器
②less:分屏顯示文件內(nèi)容,效率比more高
1、簡(jiǎn)單讀取
運(yùn)行腳本如下
測(cè)試結(jié)果為:
2、-p 參數(shù),允許在 read 命令行中直接指定一個(gè)提示。
運(yùn)行腳本如下
測(cè)試結(jié)果為:
echo [選項(xiàng)] [輸出內(nèi)容] (輸出內(nèi)容到控制臺(tái))
輸出給定文本的sha256加密后的內(nèi)容
①顯示當(dāng)前時(shí)間信息
②顯示當(dāng)前時(shí)間年月日
③顯示當(dāng)前時(shí)間年月日時(shí)分秒
④顯示昨天
⑤顯示明天時(shí)間
⑥顯示上個(gè)月時(shí)間
需要注意的是取下個(gè)月的命令存在bug,執(zhí)行如下命令會(huì)得到21-10,但是正常應(yīng)該得到21-09,需要注意
date -d "2021-08-31 +1 month" +%y-%m
⑦修改系統(tǒng)時(shí)間
⑧獲取當(dāng)前時(shí)間戳
獲取秒時(shí)間戳: date +%s
獲取毫秒時(shí)間戳:$[ (date +%s%N) /1000000]
查看日歷
(1)查看當(dāng)前月的日歷
(2)查看2017年的日歷
例:
對(duì)比gzip/gunzip,zip/unzip可以壓縮文件和目錄且保留源文件。
①zip:壓縮
②unzip:解壓縮
只能壓縮文件不能壓縮目錄,不保留原來的文件。
gzip 文件 (只能將文件壓縮為*.gz文件)
gunzip 文件.gz (解壓縮文件命令)
例: crontab -e
(1)進(jìn)入crontab編輯界面。會(huì)打開vim編輯你的工作。
(2)每隔1分鐘,向/root/bailongma.txt文件中添加一個(gè)11的數(shù)字
*/1 * * * * /bin/echo ”11” /root/bailongma.txt
(3)可以用tail -f 目標(biāo)文件來實(shí)施監(jiān)控追加的內(nèi)容
查看日志
可以用tail -f /var/log/cron.log觀察
Cron表達(dá)式見文章:
ls [選項(xiàng)] [目錄或是文件]
cd [參數(shù)]
例: cd -P $(dirname $p1) ; pwd 先跳轉(zhuǎn)到文件的所在目錄,再打印$p1文件的實(shí)際路徑
概述
①cp(copy):只能在本機(jī)中復(fù)制
②scp(secure copy):可以復(fù)制文件給遠(yuǎn)程主機(jī)
scp -r test.sh hxr@hadoop102:/root
③rsync(remote sync):功能與scp相同,但是不會(huì)改文件屬性
rsync -av test.sh test.sh hxr@hadoop102:/root
④nc(netcat):監(jiān)聽端口,可以實(shí)現(xiàn)機(jī)器之間傳輸文件。
nc -lk 7777 (-l表示listen,-k表示keep)
強(qiáng)制覆蓋不提示的方法:\cp
例:scp -r test.sh hxr@bigdata1:/root
例:rsync -av test.sh hxr@bigdata1:/root
例:
nc -lp 10000 nc_test.txt
nc -w 1 hadoop102 nc_test.txt
遠(yuǎn)程登錄時(shí)默認(rèn)使用的私鑰為~/.ssh/id_rsa
生成密鑰對(duì)
將公鑰發(fā)送到本機(jī)
將密鑰發(fā)送到需要登錄到本機(jī)的服務(wù)器上
修改密鑰的權(quán)限
遠(yuǎn)程登陸
如果有多個(gè)節(jié)點(diǎn)需要遠(yuǎn)程登陸,可以在.ssh下創(chuàng)建config并輸入
再次登陸
①正向代理:
②反向代理:
所謂“反向代理”就是讓遠(yuǎn)端啟動(dòng)端口,把遠(yuǎn)端端口數(shù)據(jù)轉(zhuǎn)發(fā)到本地。
HostA 將自己可以訪問的 HostB:PortB 暴露給外網(wǎng)服務(wù)器 HostC:PortC,在 HostA 上運(yùn)行:
那么鏈接 HostC:PortC 就相當(dāng)于鏈接 HostB:PortB。
使用時(shí)需修改 HostC 的 /etc/ssh/sshd_config 的一條配置如下,不然啟動(dòng)的進(jìn)程監(jiān)聽的ip地址為127.0.0.1,即只有本機(jī)可以訪問該端口。
相當(dāng)于內(nèi)網(wǎng)穿透,比如 HostA 和 HostB 是同一個(gè)內(nèi)網(wǎng)下的兩臺(tái)可以互相訪問的機(jī)器,HostC是外網(wǎng)跳板機(jī),HostC不能訪問 HostA,但是 HostA 可以訪問 HostC。
那么通過在內(nèi)網(wǎng) HostA 上運(yùn)行 ssh -R 告訴 HostC,創(chuàng)建 PortC 端口監(jiān)聽,把該端口所有數(shù)據(jù)轉(zhuǎn)發(fā)給我(HostA),我會(huì)再轉(zhuǎn)發(fā)給同一個(gè)內(nèi)網(wǎng)下的 HostB:PortB。
同內(nèi)網(wǎng)下的 HostA/HostB 也可以是同一臺(tái)機(jī)器,換句話說就是 內(nèi)網(wǎng) HostA 把自己可以訪問的端口暴露給了外網(wǎng) HostC。
例: 比如在我的內(nèi)網(wǎng)機(jī)192.168.32.244上有一個(gè)RabbitMQ的客戶端,端口號(hào)為15672?,F(xiàn)在我希望在外網(wǎng)上訪問固定ip的云服務(wù)器chenjie.asia的6009端口,通過跳板機(jī)192.168.32.243來轉(zhuǎn)發(fā)請(qǐng)求到192.168.32.244:15672,從而實(shí)現(xiàn)在外網(wǎng)訪問內(nèi)網(wǎng)服務(wù)的功能,即內(nèi)網(wǎng)穿透。
①在192.168.32.244上啟動(dòng)RabbitMQ服務(wù)
②將chenjie.asia云服務(wù)器的私鑰復(fù)制到跳板機(jī)192.168.32.243的~/.ssh下,并重命名為id_rsa。通過如下命令看是否可以遠(yuǎn)程登陸到云服務(wù),可以登陸則進(jìn)行下一步。
③修改chenjie.asia服務(wù)器的ssh配置文件 /etc/ssh/sshd_config ,允許其他節(jié)點(diǎn)訪問
然后重啟sshd服務(wù)
④在跳板機(jī)192.168.32.243啟動(dòng)ssh反向代理
這個(gè)進(jìn)程在關(guān)閉session時(shí)會(huì)停止,可以添加啟動(dòng)參數(shù) -CPfN
例:
以 root 身份執(zhí)行的程序有了所有特權(quán),這會(huì)帶來安全風(fēng)險(xiǎn)。Kernel 從 2.2 版本開始,提供了 Capabilities 功能,它把特權(quán)劃分成不同單元,可以只授權(quán)程序所需的權(quán)限,而非所有特權(quán)。
例如:linux不允許非root賬號(hào)只用1024以下的端口,使用root啟動(dòng)命令nginx,會(huì)導(dǎo)致nginx權(quán)限過高太危險(xiǎn)。所以用setcap命令
sudo setcap cap_net_bind_service=+eip /bigdata/nginx/sbin/nginx
正確的關(guān)機(jī)流程為 :sync shutdown reboot halt
(1)sync (功能描述:將數(shù)據(jù)由內(nèi)存同步到硬盤中)
(2)halt (功能描述:關(guān)閉系統(tǒng),等同于shutdown -h now 和 poweroff)
(3)reboot (功能描述:就是重啟,等同于 shutdown -r now)
(4)shutdown [選項(xiàng)] [時(shí)間]
安裝
yum install -y telnet-server telnet
ls -i 顯示文件的節(jié)點(diǎn)號(hào)
find -inum 節(jié)點(diǎn)號(hào) -delete 刪除指定的節(jié)點(diǎn)即可刪除對(duì)應(yīng)的文件
啟動(dòng)一個(gè)服務(wù): systemctl start postfix.service
關(guān)閉一個(gè)服務(wù): systemctl stop postfix.service
重啟一個(gè)服務(wù): systemctl restart postfix.service
顯示一個(gè)服務(wù)的狀態(tài): systemctl status postfix.service
在開機(jī)時(shí)啟用一個(gè)服務(wù): systemctl enable postfix.service
在開機(jī)時(shí)禁用一個(gè)服務(wù): systemctl disable postfix.service
注:在enable的時(shí)候會(huì)打印出來該啟動(dòng)文件的位置
列出所有已經(jīng)安裝的服務(wù)及狀態(tài):
systemctl list-units
systemctl list-unit-files
查看服務(wù)列表狀態(tài):
systemctl list-units --type=service
查看服務(wù)是否開機(jī)啟動(dòng): systemctl is-enabled postfix.service
查看已啟動(dòng)的服務(wù)列表: systemctl list-unit-files | grep enabled
查看啟動(dòng)失敗的服務(wù)列表: systemctl --failed
查看服務(wù)日志: journalctl -u postfix -n 10 -f
命令類似systemctl,用于操作native service。
添加腳本為服務(wù)(需要指定啟動(dòng)級(jí)別和優(yōu)先級(jí)): chkconfig --add [腳本]
刪除服務(wù): chkconfig --del [腳本]
單獨(dú)查看某一服務(wù)是否開機(jī)啟動(dòng)的命令 : chkconfig --list [服務(wù)名]
單獨(dú)開啟某一服務(wù)的命令 : chkconfig [服務(wù)名] on
單獨(dú)關(guān)閉某一服務(wù)的命令: chkconfig [服務(wù)名] off
查看某一服務(wù)的狀態(tài): /etc/intd.d/[服務(wù)名] status
啟用服務(wù)就是在當(dāng)前"runlevel"的配置文件目錄 /etc/systemd/system/multi-user.target.wants 里,建立 /usr/lib/systemd/system 里面對(duì)應(yīng)服務(wù)配置文件的軟鏈接;禁用服務(wù)就是刪除此軟鏈接,添加服務(wù)就是添加軟連接。
su 用戶名稱 (切換用戶,只能獲得用戶的執(zhí)行權(quán)限,不能獲得環(huán)境變量)
su - 用戶名稱 (切換到用戶并獲得該用戶的環(huán)境變量及執(zhí)行權(quán)限)
echo $PATH 打印環(huán)境變量
設(shè)置普通用戶具有root權(quán)限
修改 /etc/sudoers 文件,找到下面一行(91行),在root下面添加一行,如下 所示:
或者配置成采用sudo命令時(shí),不需要輸入密碼
修改完畢,現(xiàn)在可以用hxr 帳號(hào)登錄,然后用命令 sudo ,即可獲得root權(quán)限進(jìn)行操作。
以azkaban用戶執(zhí)行引號(hào)中的命令
gpasswd -d [username] [groupname] 將用戶從組中刪除
gpasswd -a [username] [groupname] 將用戶加入到組中
用戶組的管理涉及用戶組的添加、刪除和修改。組的增加、刪除和修改實(shí)際上就是對(duì) /etc/group文件的更新。
0首位表示類型 - 代表文件 d 代表目錄 l 鏈接文檔(link file)
三種特殊權(quán)限suid、sgid、sticky
例子:
變更文件權(quán)限方式一
例:chmod u-x,o+x houge.txt
變更文件權(quán)限方式二
例:chmod -R 777 /mnt/ 修改整個(gè)文件夾的文件權(quán)限
在linux中創(chuàng)建文件或者目錄會(huì)有一個(gè)默認(rèn)權(quán)限的,這個(gè)默認(rèn)權(quán)限是由umask決定的(默認(rèn)為0022)。umask設(shè)置的是權(quán)限的“補(bǔ)碼”,而我們常用chmod設(shè)置的是文件權(quán)限碼。一般在/etc/profile 、~/.bashprofile 或者 ~/.profile中設(shè)置umask值。
umask計(jì)算
如root用戶的默認(rèn)umask為0022(第一個(gè)0 代表特殊權(quán)限位,這里先不考慮),創(chuàng)建的文件默認(rèn)權(quán)限是644(即默認(rèn)666掩上umask的022),創(chuàng)建的目錄是755(即默認(rèn)777掩上umask的022)。
對(duì)于root用戶的umask=022這個(gè)來說,777權(quán)限二進(jìn)制碼就是(111)(111)(111),022權(quán)限二進(jìn)制碼為(000)(010)(010)。
上面就是一個(gè)umask的正常計(jì)算過程,但是這樣實(shí)在是太麻煩了。我們使用如下的簡(jiǎn)單的方法快速計(jì)算。
上面的這個(gè)方法計(jì)算是非常方便的, 為何得到奇數(shù)要+1呢?
文件的最大權(quán)限是666,都是偶數(shù),你得到奇數(shù),說明你的umask有奇數(shù)啊,讀為4,寫為2,都是偶數(shù),說明你有執(zhí)行權(quán)限的。
就按照上面的umask=023為例,在計(jì)算其他用戶權(quán)限的時(shí)候6-3=3 ,6是讀寫,3是寫和執(zhí)行,其實(shí)應(yīng)該是讀寫權(quán)限減去讀權(quán)限的得到寫權(quán)限的,相當(dāng)于我們多減去了一個(gè)執(zhí)行權(quán)限。所以結(jié)果加1。
umask修改
如果想單獨(dú)修改某個(gè)文件夾的新建文件的權(quán)限,可以使用setfacl命令。
例:遞歸改變文件所有者和所有組 chown -R hxr:hxr /mnt
例:
1、作用at命令用來在指定時(shí)刻執(zhí)行指定的命令序列。
2、格式at[-V][-qx][-ffile][-m]time。
3、主要參數(shù)
-V:顯示標(biāo)準(zhǔn)錯(cuò)誤輸出。
-q:許多隊(duì)列輸出。
-f:從文件中讀取作業(yè)。
-m:執(zhí)行完作業(yè)后發(fā)送電子郵件到用戶。
time:設(shè)定作業(yè)執(zhí)行的時(shí)間。time格式有嚴(yán)格的要求,由小時(shí)、分鐘、日期和時(shí)間的偏移量組成,其中日期的格式為MM。DD。YY,MM是分鐘,DD是日期,YY是指年份。偏移量的格式為時(shí)間+偏移量,單位是minutes、hours和days。
擴(kuò)展資料:
學(xué)習(xí)linux注意事項(xiàng)
1、Linux嚴(yán)格區(qū)分大小寫。
2、Linux所有的存儲(chǔ)設(shè)備都必須掛載之后用戶才能使用,包括硬盤、U盤和光盤。
3、Windows下的程序不能直接在Linux中安裝和運(yùn)行。
;?????linux系統(tǒng)下圖形化界面命令是什么呢?下面是具體介紹:
從控制臺(tái)轉(zhuǎn)換到圖形化界面的命令是:Alt+F7
從圖形界面到linux控制臺(tái)的命令是:Ctr+Alt+Fn(n=1,2,3,4,5,6)
各控制臺(tái)之間切換:Alt+Fn(n=1,2,3,4,5,6),還可以輸入startx進(jìn)入圖形化界面。
拓展資料:
安裝linux的圖形化界面:
yumgroupinstall"GNOMEDesktop""GraphicalAdministrationTools"
如果沒有網(wǎng)絡(luò)的情況下會(huì)報(bào)無法連接的錯(cuò)誤,這里就需要打通網(wǎng)絡(luò),之前我們沒有設(shè)置,這里需要修改相關(guān)配置.
鍵入命令:vi/etc/sysconfig/network-scripts/ifcfg-ens33
把文件里的ONBOOT=no改為yes
然后重啟網(wǎng)絡(luò):systemctlrestartnetwork
然后就是輸入安裝linux圖行化界面的命令了.中間需要輸入兩次y,表示確認(rèn)安裝。
安裝完后鍵入命令:startx就可以重啟進(jìn)入Linux系統(tǒng)的圖形化界面了。
linux啟動(dòng)后還可能是命令行模式的,這里需要修改一下默認(rèn)啟動(dòng)界面:
查看默認(rèn)啟動(dòng)界面:systemctlget-default
然后設(shè)置啟動(dòng)界面為圖形化界面:systemctlset-defaultgraphical.target
以上就是今天的分享了,希望可以幫助到大家。
當(dāng)前文章:linux界面輸出命令,linux 輸出
文章位置:http://aaarwkj.com/article34/dsshope.html
成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供商城網(wǎng)站、搜索引擎優(yōu)化、建站公司、網(wǎng)站排名、做網(wǎng)站、電子商務(wù)
聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶投稿、用戶轉(zhuǎn)載內(nèi)容為主,如果涉及侵權(quán)請(qǐng)盡快告知,我們將會(huì)在第一時(shí)間刪除。文章觀點(diǎn)不代表本網(wǎng)站立場(chǎng),如需處理請(qǐng)聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時(shí)需注明來源: 創(chuàng)新互聯(lián)