在前面的兩個章節(jié)中,我們主要介紹了Linux基本知識和虛擬機(jī)的安裝,從當(dāng)前章節(jié)開始,我們一起學(xué)習(xí)下Linux的基本命令,在當(dāng)前章節(jié),我們先簡單的學(xué)習(xí)下一些系統(tǒng)的基本命令,慢慢的由淺入深,在后面的章節(jié)中我們將學(xué)習(xí)其他的命令比如文件操作、備份壓縮等
創(chuàng)新互聯(lián)是一家專業(yè)提供雙江企業(yè)網(wǎng)站建設(shè),專注與成都網(wǎng)站制作、成都網(wǎng)站建設(shè)、外貿(mào)營銷網(wǎng)站建設(shè)、H5建站、小程序制作等業(yè)務(wù)。10年已為雙江眾多企業(yè)、政府機(jī)構(gòu)等服務(wù)。創(chuàng)新互聯(lián)專業(yè)網(wǎng)絡(luò)公司優(yōu)惠進(jìn)行中。
命令我們可以理解成在Windows中我們常常為了查看ip輸入的ipconfig,在Linux中也有很多的命令,比如操作目錄、文件、網(wǎng)絡(luò)、磁盤等等命令
使用者權(quán)限:管理員用戶
參數(shù)說明:
添加用戶czbk(傳智播客的首拼)執(zhí)行
我們使用useradd命令創(chuàng)建了一個用戶czbk
useradd 可用來建立用戶帳號。帳號建好之后,再用 passwd 設(shè)定帳號的密碼。
執(zhí)行如下
由上圖我們發(fā)現(xiàn),我們在使用useradd新增用戶的時候,出現(xiàn)了權(quán)限不足,也就是說我們使用用戶itcast沒有創(chuàng)建用戶的權(quán)限。
我們通過管理員賬號root進(jìn)行創(chuàng)建,首先我們從控制臺中切換到root
在 密碼的地方輸入我們的root密碼【root】即可進(jìn)入到root用戶下。
我們在root下繼續(xù)創(chuàng)建czbk用戶
以下是useradd常用選項(xiàng)
用戶管理的一項(xiàng)重要內(nèi)容是用戶口令的管理。用戶賬號剛創(chuàng)建時沒有口令,但是被系統(tǒng)鎖定,無法使用,必須為其指定口令后才可以使用
使用者權(quán)限:管理員用戶
指定和修改用戶口令的Shell命令是 passwd 。超級用戶可以為自己和其他用戶指定口令,普通用戶只能用它修改自己的口令。命令的格式為:
可使用的選項(xiàng):
設(shè)置當(dāng)前用戶的口令
此處我們設(shè)置密碼和itcast賬號密碼一致,為【Itheima888】
usermod 命令通過修改系統(tǒng)帳戶文件來修改用戶賬戶信息
修改用戶賬號就是根據(jù)實(shí)際情況更改用戶的有關(guān)屬性,如用戶號、主目錄、用戶組、登錄Shell等。
使用者權(quán)限:管理員用戶
修改已有用戶的信息使用 usermod 命令,其格式如下:
下面命令將用戶czbk用戶名修改成czbk2019
以下是usermod常用選項(xiàng)
假如我們其中一個用戶的賬號不再使用,可以從系統(tǒng)中刪除。刪除用戶賬號就是要將/etc/passwd等系統(tǒng)文件中的該用戶記錄刪除,必要時還刪除用戶的主目錄。
使用者權(quán)限:管理員用戶
刪除一個已有的用戶賬號使用 userdel 命令,其格式如下:
-f:強(qiáng)制刪除用戶,即使用戶當(dāng)前已登錄;
-r:刪除用戶的同時,刪除與用戶相關(guān)的所有文件
此命令刪除用戶czbk2019
成功刪除用戶czbk2019
以下是userdel常用選項(xiàng)
引子:
為了方便用戶管理, 提出了 組 的概念, 如下圖所示
比如新建賬戶【張三】,那么它默認(rèn)對應(yīng)的組就是張三
一個用戶可以有一個或者多個組
假如說(如上圖),我們在企業(yè)級開發(fā)過程中,我們有多個組,其中一個開發(fā)組對應(yīng)三個賬戶,張三、李四、王五、如果就像上面提到的,一個用戶默認(rèn)對應(yīng)一個組,那么三個賬戶張三、李四、王五就有了三個不同的組,如果大家都操做一個文件,在進(jìn)行權(quán)限分配的時候,就要對不同的三個組進(jìn)行授權(quán),顯然這樣是不合理的,因?yàn)樘^繁瑣。
所以,才有了組(新建組)的概念,我們把張三、李四、王五統(tǒng)一放到【開發(fā)組】,在對文件授權(quán)的時候,我們只對【開發(fā)組】進(jìn)行授權(quán)由此,這樣的話【張三、李四、王五】都有相等的權(quán)利操作了。
新增一個用戶組(組名可見名知意,符合規(guī)范即可),然后將用戶添加到組中
使用者權(quán)限:管理員用戶
使用的選項(xiàng)有:
新增用戶組czbk-it
上面的命令向系統(tǒng)中增加了一個新組czbk-it,新組的組標(biāo)識號是在當(dāng)前已有的最大組標(biāo)識號的基礎(chǔ)上加1
以下是groupadd常用選項(xiàng)
使用者權(quán)限:管理員用戶
常用的選項(xiàng)有:
上面的命令將組czbk-it的組名修改為czbk-it-2019。
以下是groupmod常用選項(xiàng)
在查詢用戶所屬的用戶組前,我們先增加一個用戶ituser-groups
要查詢一個用戶屬于哪個用戶組,使用groups命令,其格式如下
查詢用戶ituser-groups屬于某個用戶組,執(zhí)行g(shù)roups命令
由此可見,ituser-groups用戶屬于用戶組ituser-groups(用戶組默認(rèn)與用戶名一樣)
使用者權(quán)限:管理員用戶
要刪除一個已有的用戶組,使用groupdel命令,其格式如下
刪除czbk-it-2019用戶組
刪除成功
以下是groupdel常用選項(xiàng)
1、創(chuàng)建一個新的組,并添加組ID(需要切換到root用戶)
執(zhí)行效果如下
2、創(chuàng)建3個用戶(需要切換到root用戶)
3、將上面三個用戶添加到組itbj2020group
我們通過passwd命令將三個用戶添加到組
什么是gpasswd:
gpasswd 是 Linux 下工作組文件 /etc/group 和 /etc/gshadow 管理工具,用于將一個用戶添加到組或者從組中刪除。
語法
將上面的三個用戶使用gpasswd添加到組(需要切換到root用戶)
執(zhí)行如下
查看用戶組下所有用戶(所有用戶)
執(zhí)行效果如下(或者直接打開/etc/group文件都可以)
由上圖可知:三個用戶全部都加入到了itbj2020group組。
date 可以用來顯示或設(shè)定系統(tǒng)的日期與時間
使用者權(quán)限:所有用戶
語法如下:
參數(shù)
-d字符串:顯示字符串所指的日期與時間。字符串前后必須加上雙引號;
-s字符串:根據(jù)字符串來設(shè)置日期與時間。字符串前后必須加上雙引號;
-u:顯示GMT;
--help:在線幫助;
--version:顯示版本信息
1、設(shè)置時間
用 -s選項(xiàng)可以設(shè)置系統(tǒng)時間,如下:
2、顯示時間
協(xié)調(diào)世界時,又稱世界統(tǒng)一時間、世界標(biāo)準(zhǔn)時間、國際協(xié)調(diào)時間。由于英文(CUT)和法文(TUC)的縮寫不同,作為妥協(xié),簡稱UTC。。
(2)GMT
即 格林尼治 平太陽時間,是指格林尼治所在地的標(biāo)準(zhǔn)時間,也是表示地球自轉(zhuǎn)速率的一種形式
外文名: Universal Time
其他外文名 G.M.T.(Greenwich Mean Time)
(3)CST
北京時間 (中國國家標(biāo)準(zhǔn)時間) 北京時間是中國采用國際時區(qū)東八時區(qū)的區(qū)時作為標(biāo)準(zhǔn)時間 。 北京時間并不是北京(東經(jīng)116.4°)的地方時間,而是東經(jīng)120°的地方時間,故東經(jīng)120度地方時比北京的地方時早約14分半鐘。因?yàn)楸本┨幱趪H時區(qū)劃分中的東八區(qū),同格林尼治時間(世界時)整整相差8小時(即北京時間=世界時+8小時),故命名為“北京時間”。東八區(qū)包括的范圍從東經(jīng)112.5°到東經(jīng)127.5°,以東經(jīng)120°為中心線,東西各延伸7.5°,總寬度為15°的區(qū)域。 而中國幅員遼闊,東西相跨5個時區(qū)(即東五區(qū)、東六區(qū)、東七區(qū)、東八區(qū)、東九區(qū)5個時區(qū))授時臺必須建在地理中心地帶,從而也就產(chǎn)生了長短波授。“北京時間”與“北京當(dāng)?shù)貢r間”是兩個概念, “北京時間”的發(fā)播不在北京,而在陜西蒲城(處于東七區(qū))
(4)東八區(qū)
東八區(qū)( UTC / GMT +08:00)是比 世界協(xié)調(diào)時間 (UTC)/ 格林尼治時間 (GMT)快8小時的時區(qū),理論上的位置是位于 東經(jīng) 112.5度至127.5度之間,是東盟標(biāo)準(zhǔn)的其中一個候選時區(qū)。當(dāng)格林尼治標(biāo)準(zhǔn)時間為0:00時,東八區(qū)的標(biāo)準(zhǔn)時間為08:00
pre class="md-fences md-end-block ty-contain-cm modeLoaded" spellcheck="false" lang="" cid="n486" mdtype="fences" style="font-style: normal; font-variant-caps: normal; font-weight: normal; letter-spacing: normal; orphans: auto; text-indent: 0px; text-transform: none; widows: auto; word-spacing: 0px; -webkit-text-size-adjust: auto; -webkit-text-stroke-width: 0px; text-decoration: none; box-sizing: border-box; overflow: visible; font-family: var(--monospace); font-size: 0.9em; display: block; break-inside: avoid; text-align: left; white-space: normal; background-image: inherit; background-size: inherit; background-attachment: inherit; background-origin: inherit; background-clip: inherit; background-color: rgb(248, 248, 248); border: 1px solid rgb(231, 234, 237); border-top-left-radius: 3px; border-top-right-radius: 3px; border-bottom-right-radius: 3px; border-bottom-left-radius: 3px; padding: 8px 4px 6px; margin-bottom: 15px; margin-top: 15px; width: inherit; caret-color: rgb(51, 51, 51); color: rgb(51, 51, 51); position: relative !important; background-position: inherit; background-repeat: inherit;"總結(jié):
上面提到了很多知識:即UTC/GMT/CST/東八區(qū)
總結(jié)一下就是,北京時間(中國國家標(biāo)準(zhǔn)時間CST)采用東八區(qū)區(qū)時,即:
協(xié)調(diào)世界時(UTC)+8 / 格林尼治時間(GMT)+8
也就是說+8后的時間才是北京時間/pre
logname命令用于顯示用戶名稱。
執(zhí)行l(wèi)ogname指令,它會顯示目前用戶的名稱
語法為如下:
參數(shù) :
顯示登錄賬號的信息
su命令用于變更為其他使用者的身份,除 root 外,需要鍵入該使用者的密碼。
使用權(quán)限:所有使用者。
語法如下:
變更帳號為 root 并在執(zhí)行 ls 指令后退出返回原使用者
切換到root
這樣的話,我們就進(jìn)入到了root用戶下。
id命令用于顯示用戶的ID,以及所屬群組的ID。
id會顯示用戶以及所屬群組的實(shí)際與有效ID。若兩個ID相同,則僅顯示實(shí)際ID。若僅指定用戶名稱,則顯示目前用戶的ID。
使用者權(quán)限:所有用戶
語法
參數(shù)說明:
顯示當(dāng)前用戶信息
執(zhí)行效果如下
sudo:控制用戶對系統(tǒng)命令的使用權(quán)限,root允許的操作。
通過sudo可以提高普通用戶的操作權(quán)限
使用者權(quán)限:普通用戶
語法如下:
sudo -V
sudo -h
sudo -l
sudo -v
sudo -k
sudo -s
sudo -H
sudo [ -b ] [ -p prompt ] [ -u username/#uid] -s
sudo command
參數(shù)說明 :
sudo命令使用
指定root用戶執(zhí)行指令
修改網(wǎng)卡配置文件
比如,在下面的例子中,我們使用普通用戶修改網(wǎng)卡的配置文件,在進(jìn)行保存的時候,提示我們【無法打開并寫入文件】,那么此時,我們可以通過sudo命令來提升自己的寫入權(quán)限
執(zhí)行:
執(zhí)行效果如下(保存)
然后點(diǎn)擊回車
執(zhí)行效果如下(鍵入itcast密碼)
執(zhí)行保存
top命令用于實(shí)時顯示 process 的動態(tài)。
使用權(quán)限:所有使用者。
顯示進(jìn)程信息
執(zhí)行效果如下
顯示完整命令,與top命令不同的就是command屬性像是進(jìn)行了命令補(bǔ)全
執(zhí)行效果如下
執(zhí)行效果如下
Linux ps命令用于顯示當(dāng)前進(jìn)程 (process) 的狀態(tài)信息
使用者權(quán)限:所有用戶
語法如下:
顯示進(jìn)程信息
顯示指定用戶信息
顯示所有進(jìn)程信息
Linux kill命令用于刪除執(zhí)行中的程序或工作(可強(qiáng)制中斷)
使用者權(quán)限:所有用戶
語法如下:
參數(shù)說明 :
殺死一個進(jìn)程
強(qiáng)制殺死進(jìn)程
徹底殺死進(jìn)程
殺死指定用戶所有進(jìn)程
1.方法一 過濾出itcast用戶進(jìn)程
2.方法二,直接殺死
shutdown命令可以用來進(jìn)行關(guān)閉系統(tǒng),并且在關(guān)機(jī)以前傳送訊息給所有使用者正在執(zhí)行的程序,shutdown 也可以用來重開機(jī)
使用者權(quán)限:管理員用戶
語法如下:
參數(shù)說明 :
立即關(guān)機(jī)
指定1分鐘后關(guān)機(jī),1分鐘關(guān)機(jī)并顯示警告信息
指定1分鐘后重啟,并發(fā)出警告信息
reboot命令用于用來重新啟動計(jì)算機(jī)
使用者權(quán)限:管理員、普通(需要驗(yàn)證)用戶
語法如下:
參數(shù) :
開始重新啟動
重啟效果如下
who命令用于顯示系統(tǒng)中有哪些使用者正在上面,顯示的資料包含了使用者 ID、使用的終端機(jī)、從哪邊連上來的、上線時間、呆滯時間、CPU 使用量、動作等等
使用者權(quán)限:所有使用者都可使用。
語法如下:
參數(shù)說明 :
顯示當(dāng)前登錄系統(tǒng)的用戶
顯示明細(xì)(標(biāo)題)信息
由上圖可知,截止到現(xiàn)在只有itcast在線。
引子:
timedatectl是用于控制系統(tǒng)時間和日期??梢杂脕聿樵兒透南到y(tǒng)時鐘于設(shè)定,同時可以設(shè)定和修改時區(qū)信息。
在實(shí)際開發(fā)過程中,系統(tǒng)時間的顯示會和實(shí)際出現(xiàn)不同步;我們一般為了校正服務(wù)器時間、時區(qū)的時候會使用timedatectl命令/pre
使用者權(quán)限:所有使用者都可使用,設(shè)置時間需要管理員,下面會標(biāo)注。
幾個常見的概念,進(jìn)行總結(jié)如下:
顯示系統(tǒng)的當(dāng)前時間和日期,使用命令行中的timedatectl命令
執(zhí)行效果如下
上圖顯示中國時區(qū)
一、ifconfig
自ubuntu17起,已經(jīng)不提供這個命令了,要自動安裝
sudo apt install net-tools
ifconfig -a :查看當(dāng)前系統(tǒng)所有的網(wǎng)絡(luò)接口
ifconfig interface(PS:這里是網(wǎng)絡(luò)接口的名稱) down:禁用當(dāng)前網(wǎng)絡(luò)接口
ifconfig interface up :啟用網(wǎng)絡(luò)接口
二、ip命令
1、管理網(wǎng)絡(luò)接口
1)、ip link list 顯示網(wǎng)絡(luò)設(shè)備的運(yùn)行狀態(tài)
2)、ip -s link list 顯示更詳細(xì)的網(wǎng)絡(luò)設(shè)備運(yùn)行狀態(tài)
4)、ip link set dev ens33 mtu 1600: 改變網(wǎng)絡(luò)設(shè)備最大傳輸單元 MTU的值為1600
2、管理ip地址
1)、ip a show dev ens33 顯示指定網(wǎng)絡(luò)接口的ip
2)、ip addr ls ens33
5)、ip -4 addr flush ens33
通過id修改的ip地址重啟后會消失。如果要永久保存,則需要修改配置文件
3、管理路由表
1)、ip route show 顯示main 路由表的路由信息
每行定義一個路由表,前面的數(shù)字為路由編號,后面為路由名稱
以上的幾個路由表為默認(rèn)路由表,用戶不可以修改
默認(rèn)所有的路由表都會被插入到254的main表中。在進(jìn)行路由查詢時,內(nèi)核只使用路由表main
3)、ip route show table local 指定顯示路由表
4、管理策略路由
1)、ip route list 列出當(dāng)前系統(tǒng)的策略路由規(guī)則
2、添加一條到達(dá)網(wǎng)絡(luò)224.0.0.0/28的路由
route add -net 224.0.0.0/28 netmask 224.0.0.0 dev docker0
3、刪除指定的路由記錄224.0.0.0
route del -net 224.0.0.0 netmask 224.0.0.0
route -n 查看路由
5、刪除默認(rèn)網(wǎng)關(guān)
route del default gw 172.17.0.0 dev docker0
route -n
四、netstat命令
1、netstat(network status) 查看各種網(wǎng)絡(luò)信息的,包括網(wǎng)絡(luò)連接、路由表以及網(wǎng)絡(luò)接口的各種統(tǒng)計(jì)數(shù)據(jù)
netstat [options]
常用的幾個選項(xiàng):
-a :顯示所有處于活動狀態(tài)的套接字
-t :顯示TCP/IP協(xié)議的連接信息
-l:列出所有處于監(jiān)聽狀態(tài)的套接字
-n:直接顯示ip地址,不轉(zhuǎn)換成域名
-i :列出所有的網(wǎng)絡(luò)接口
-p:顯示使用套接字的進(jìn)程id和程序名
-r:顯示路由表信息
2、netstat -a
顯示所有的端口,包含未監(jiān)聽的和監(jiān)聽的
3、nestat -at
只顯示TCP/IP協(xié)議的連接
4、netstat -tl
只顯示處于監(jiān)聽狀態(tài)的TCP連接
5、netstat -tlanx
顯示數(shù)字形式的ip地址
6、netstat -anp | grep ":80"
排查處于某個端口被占用導(dǎo)致服務(wù)器無法啟動
7、netstat -i
列出當(dāng)前系統(tǒng)的所有網(wǎng)絡(luò)接口
8、netstat -r
查看路由表信息
該命令是向某臺主機(jī)( )發(fā)送ICMP數(shù)據(jù)包,并接收響應(yīng)
Ctrl+C退出ping 命令
通過配置文件配置LINUX的IP命令:vim /etc/sysconfig/network-scripts/ifcfg-eth0
配置文件如下:
ONBOOT=yes
BOOTPROTO=none:表示不使用dhcp服務(wù),如果是手動配置靜態(tài)的ip地址,BOOTPROTO的值可以為none或者static。
IPADDR=192.168.1.66:表示設(shè)置IP地址。
NETMASK=255.255.255.0:表示設(shè)置子網(wǎng)掩碼。
GATEWAY=192.168.1.1: 表示設(shè)置網(wǎng)關(guān)。
DNS1=192.168.1.1:表示設(shè)置首選DNS服務(wù)器,DNS有自己的配置文件/etc/resolv.conf,在這里設(shè)置DNS,就是把它寫入了DNS的配置文件/etc/resolv.conf。
然后,執(zhí)行service network restart,重啟網(wǎng)絡(luò)服務(wù)配置文件生效即可。
擴(kuò)展資料:
通過ifconfig命令配置LINUX的IP命令:
命令名稱:ifconfig
基本語法:ifconfig [網(wǎng)卡標(biāo)識] [IP地址]
英文原意:interface configuration
執(zhí)行權(quán)限:root
功能描述:查看或臨時配置網(wǎng)卡信息
說明: ifconfig 命令主要是用來查看網(wǎng)卡的配置信息,因?yàn)橛盟鼇砼渲镁W(wǎng)卡的IP地址時,只會臨時生效(Linux服務(wù)器重啟后就會失效)。
這種配置ip的方式只能設(shè)置IP和子網(wǎng)掩碼,估只適合內(nèi)網(wǎng)(局域網(wǎng))使用。
如果想連通外網(wǎng),還必須設(shè)置網(wǎng)關(guān)和DNS。
修改文件/etc/inittab。
[root@localhost ~]#vi /etc/inittab
# inittab is only used by upstart for the default runlevel.
#
# ADDING OTHER CONFIGURATION HERE WILL HAVE NO EFFECT ON YOUR SYSTEM.
#
# System initialization is started by /etc/init/rcS.conf
#
# Individual runlevels are started by /etc/init/rc.conf
#
# Ctrl-Alt-Delete is handled by /etc/init/control-alt-delete.conf
#
# Terminal gettys are handled by /etc/init/tty.conf and /etc/init/serial.conf,
# with configuration in /etc/sysconfig/init.
#
# For information on how to write upstart event handlers, or how
# upstart works, see init(5), init(8), and initctl(8).
#
# Default runlevel. The runlevels used are:
# ? 0 - halt (Do NOT set initdefault to this)
# ? 1 - Single user mode
# ? 2 - Multiuser, without NFS (The same as 3, if you do not have networking)
# ? 3 - Full multiuser mode
# ? 4 - unused
# ? 5 - X11
# ? 6 - reboot (Do NOT set initdefault to this)
#
id:5:initdefault:
默認(rèn)有如下7促啟動級別,文件中也有相應(yīng)的說明。如:
0表示關(guān)閉,6表示重啟,文件也說明了不要將initdefault設(shè)置為這兩個值。問題也可想而知。
1表示單用戶模式。
2表示沒有網(wǎng)絡(luò)的多用戶模式。
3表示多用戶模式。(楓竹夢推薦使用這個模式)
4不使用。
5圖形界面。(安裝有圖形界面的系統(tǒng)的默認(rèn)啟動級別)
0和6存在的意思是系統(tǒng)在關(guān)機(jī)和重啟是要切換到這個模式的。知道如上的內(nèi)容就很容易的可以做出相應(yīng)的修改。
這里將id:5:initdefault:修改為id:3:initdefault:保存文件并重啟即可。
當(dāng)然,也可以使用init 3直接進(jìn)行切換。
其實(shí)看這里的內(nèi)容,可以很容易的理解使用chkconfig命令進(jìn)行設(shè)置的服務(wù)在各個啟動級別當(dāng)中的on與off是什么意思了。
Ubuntu的設(shè)置
直接修改文件/etc/X11/default-display-manager的內(nèi)容并保存,重啟即可。