Linux知識彙總

来源:https://www.cnblogs.com/wjw9/archive/2019/08/09/11324928.html
-Advertisement-
Play Games

1 Linux介紹 1.1 常見的操作系統 Windows 它微軟公司開發的一款桌面操作系統(閉源系統)。版本有dos、win98、win NT、win XP、win 7、win vista、win 8、win 10。伺服器操作系統:win server 2003、win server 2008、w ...


1 Linux介紹

1.1 常見的操作系統

Windows

它微軟公司開發的一款桌面操作系統(閉源系統)。版本有dos、win98、win NT、win XP、win 7、win vista、win 8、win 10。伺服器操作系統:win server 2003、win server 2008、win server 2012。

Mac

蘋果公司開發的一款操作系統(閉源系統),目前最新的版本是IOS12。界面風格還是不錯。對於系統底層的優化也是很好。

Linux

Linux是一個開源的操作系統,目前是市面上占有率極高的伺服器操作系統。目前其分支有很多。安卓

Linux的開發作者,李納斯·托瓦茲。

Linux是開源的操作系統。所謂開源就是指開放源代碼。

1983年 GNU計劃 格奴計劃

Linux分支: 常見的有centos(社區企業網路操作系統)、RedHat、烏班圖、debian等等。

Unix

Unix是Linux操作系統的前身,Unix時間戳是指1970年1月1日0時0分0秒,1970年是Unix的時間元年,也就是Unix誕生的年份。

1.2 Linux操作系統好處

之所以大部分的公司開發的時候都是使用Linux操作系統,取決於兩個特性:

穩定性:取決於系統的底層架構,一般情況下Linux系統能做到很長時間不關機一點也不卡頓;

安全性:開源系統,所有人都可以貢獻自己的源代碼為Linux系統打補丁;

1.3 Linux目錄介紹

/: 表示根的意思

/bin: (binary)存放的是一些二進位文件, 但是在Linux中二進位文件是可以被執行的, 這個目錄中的命令是給普通用戶使用(非超級管理員用戶).

/etc: Linux下所有的配置文件都會放到etc目錄

/home: 是所有非root用戶家目錄的集合

/root: root用戶的家目錄

/sbin: sbin表示super bin(shell bin),裡面同樣也類似於bin目錄,也存放了一些二進位文件, 只不過這些命令只能讓超級管理員去運行

/usr: 存放著一些用戶自己安裝的軟體, 其實類似於windows下的Program File目錄

/var: (variable)存放著Linux下的一些日誌文件, 在實際開發的時候有一些公司習慣把Apache或者nginx的站點目錄也會放到這個目錄中

2 命令行

2.1 命令行(shell, 殼)

常見的shell, Csh, tcsh, zsh, bash等,

在Linux中打開命令行界面

在Linux中的任意一個空白的地方(不要點著圖標),右鍵然後選擇【在終端中打開】

在Linux中 #表示超級管理員身份, $符號表示普通用戶

2.2 基本命令

通用的語法格式: # 指令名稱 [選項] [操作的目標]

2.2.1 ls指令

#ls[路徑]

表示列出指定路徑下的文件夾和文件的名字, 如果路徑沒有指定則列出當前路徑下的(list)

#ls -l [路徑]

表示以列表的形式列出指定路徑下的文件夾和文件的名字

#ls -la [路徑]

表示以列表的形式列出指定路徑下的文件夾和文件名(包含隱藏文件, all)

隱藏文件(特點是'.'開頭的名字)

如果一個指令擁有多個選項, 一般情況下(95%)對於選項的順序沒有要求,隨意前後, 為了避免混淆按照筆記順序.

Linux嚴格區分大小寫

2.2.2 clear指令

清空當前屏幕中全部的命令(實質是沒有清空,只是頂到上面)

#clear 等效於ctrl+L

清楚Windows的cmd指令叫做: cls

2.2.3 su指令

切換用戶(switch user)

#su需要切換到的用戶名(用戶名可以不寫, 則表示切換到root用戶)

當切換到的用戶許可權比當前用戶的許可權低,可以直接切換,不需要密碼;反之,如果從低往高切換則要求輸入被切換到的賬戶對應的密碼(高級許可權賬戶密碼)。

2.2.4 cd指令

切換目錄 (change directory)

#cd 需要切換到的路徑(路徑可以是相對路徑或絕對路徑)

路徑可以寫也可以不寫,不寫則表示切換到當前用戶的家目錄

tab鍵可以自動補全命令路徑

低級用戶沒有許可權訪問高級用戶相關的資源(許可權)

相對路徑是相對當前路徑的一種表現形式。

特點:只要不是以“/”開頭的就是相對路徑。

絕對路徑是直接從“根”開始的一種路徑形式。

特點:以“/”開頭的路徑稱之為絕對路徑。

2.2.5 pwd指令

列印當前的工作路徑(print working directory)。

#pwd

2.3 文檔操作命令

2.3.1 創建文件

#touch 路徑

2.3.2 創建文件夾

mkdir [-p] 文件夾路徑 [make directory]

-p表示遞歸創建(parent),可同時創建多級不存在的文件夾

不能以尾碼判斷是文件還是文件夾, ls -l指令看第一個字母, d文件夾,-表示普通文本文件,c字元設備文件, b:塊級設備文件, l:連接文件(快捷方式), s:套接字文件

系統不允許在同一路徑下存在同名的文檔

2.3.2 複製

#cp[-r] 需要賦值的文檔,需要保存的位置 copy

-r表示遞歸, 如果複製的是文件夾, -r是必須要加的.

2.3.3 移動/剪貼/重命名

剪貼+粘貼

#mv需要操作的文檔 新的文檔的位置 move

# mv /root/php2019. txt /root/

重命名

# mv /root/php2019. txt /root/php. doc

2.3.4 刪除

#rm [-rf] , 需要刪除的文檔

-r: 表示遞歸(當刪除的類型是文件夾時候就加-r)

-f: force, 表示強制, 沒有刪除確認提示

# rm -rf /

2.4 文檔查看命令

2.4.1 tail指令

#tail -n 文件的路徑 查看一個文件的末n行

-n 可以不寫, 不寫 預設末10行

# tail -5 /root/install.log

2.4.2 head指令

#head -n 文件的路徑 查看文件的頭n行

-n 可以不寫, 不寫 預設頭10行

2.4.3 cat指令

#cat 文件路徑1 文件路徑2 文件路徑3 …

查看某個文件的全部陣容(將內容全部輸出在命令行中[正序])

2.4.4 tac指令

#tac 文件路徑1 文件路徑2 文件路徑3 …

查看某個文件的全部陣容(將內容全部輸出在命令行中[倒敘])

2.4.5 vim指令

#vim 文件路徑 打開一個文件,顯示內容

推出 ':q '按下回車即可

2.5 關機重啟命令

2.5.1 reboot指令

#reboot 重啟電腦

除非自開機以來只有當前一個普通用戶登錄過

普通用戶無法執行reboot指令

2.5.2 shutdown指令

#shutdown -h 時間 關機

now:(shutdown -h now),表示立即關機

+m:(m表示minutes數字),+5,則表示五分鐘之後關機

2.5.3 halt指令

#halt 關機(關閉記憶體)

2.5.4 其他

init 0 關機 poweroff

init 6 重啟

2.6 補充

2.6.1 ctrl+a / ctrl+e

游標的快速定位行首ahead

游標的快速定位行末end

2.6.2 ↑和↓鍵

查看執行命令歷史

2.6.3 執行結果保存文件中(輸出重定向)

#需要執行有輸出結果的命令> 需要保存到的文件路徑 【覆蓋寫】

#需要執行有輸出結果的命令>> 需要保存到的文件路徑 【追加寫】

Windows中 tree 需要執行有輸出結果的命令> 需要保存到的文件路徑

2.7 進階指令

2.7.1 du指令

#du -sh 目錄路徑 目錄所占的磁碟空間大小情況(directory used)

-s:表示sumary,彙總統計

-h:表示以較高可讀性的形式顯示

2.7.2 df指令

#df -h 查看磁碟的剩餘空間情況(disk free)

-h:表示以較高可讀性單位進行查看。

2.7.3 free指令

free -m 查看記憶體的使用情況

-m:表示以mb為單位進行查看

第一行表示memory,是記憶體各項的數字。

2.7.4 find指令

#find 範圍路徑 選項 選項的值 [選項 選項的值...]

表示根據條件去查詢文檔的所在位置

-name:根據名字進行查詢,支持通配符(*),模糊查詢,表示任意長度的任意字元.

-type:根據文檔的類型進行查詢。[d表示文件夾,f表示普通文件,s表示套接字文件,l表示連接文件,c表示字元設備文件,b表示塊狀設備文件]

-user:根據所有者進行查詢

-group:根據所屬的用戶組進行查詢

-size:根據大小進行查詢

查詢磁碟中全部的.conf文件,#find / -name “*.conf” -type f

2.7.5 ps指令

#ps -ef (process show)查看進程

#ps aux BSD格式進行輸出

-e:等價於-A,all,表示全部

-f:表示full,顯示全部的列

UID:該進程的啟動用戶名;

PID:process id,進程的id號

PPID:parent process id,父級進程id號

C:表示的cpu的使用情況

STIME:start time,啟動時間

TTY:終端的設備編號,“?”表示該進程不是由終端發起的

TIME:持續運行的時間

CMD:command,顯示進程的名稱或者位置

結束進程的指令

#kill PID

top指令(查資源占用情況用top)

2.7.6 service指令

#service 服務名 start/stop/restart

#/etc/init.d/服務名 start/stop/restart

CentOS7中

#systemctl start/stop/restart 服務名

操作服務的(啟動/停止/重啟)

服務名必須要在/etc/init.d中可見

2.7.7 grep指令

#grep [選項] 關鍵詞 文件路徑/內容

搜索、過濾,主要用於對文件/內容進行篩選,選出需要的內容

-v:排除,取反

#grep -E/#egrep “關鍵詞1|關鍵詞2|…” 文件路徑或內容

-E表示extension,該語法表示多條件篩選,“|”表示or

2.7.8 wc指令

#wc -lwc 文檔的路徑 統計文件的各項數值(行、單詞數、位元組數)

-l:line,行數

-w:word,單詞數

-c:byte,位元組數

2.7.9 管道(|)

將多個指令合在一行上進行操作, 主要用在搜索過濾

# 必須在終端中有輸出內容的指令 | 有輸入的指令[要求有讀取文件內容的需求]

管道前面的指令的輸出其實就是管道後面指令的輸入。

3 vim編輯器

3.1 vi/vim介紹

Vi編輯器是所有Unix及Linux系統下標準的編輯器,

vi和vim都是Linux中的編輯器,不同的是,vim比較高級,可以視為vi的升級版本。vi使用於文本編輯,但是vim更適用於coding(寫代碼的)。

Vim重點是游標的移動,模式切換,刪除,查找,替換,複製,粘貼,撤銷命令的使用。

3.2 三種模式

命令模式:

在該模式下是不能對文件直接編輯,可以輸入快捷鍵(命令)進行一些操作(刪除行,複製行,移動游標,粘貼等等)【打開文件之後預設進入的模式】;

編輯模式(輸入模式):

在該模式下可以對文件的內容進行編輯;

末行模式(尾行模式)

可以在末行輸入命令來對文件進行操作(搜索、替換、保存、退出、撤銷、高亮等等);

3.3 Vim的打開文件的方式

#vim 文件路徑 作用:打開指定的文件(可以是不存在的)

#vim +數字 文件的路徑 作用:打開指定的文件,並且將游標移動到指定行

#vim +/關鍵詞 文件的路徑 作用:打開指定的文件,並且高亮顯示關鍵詞(搜索)

3.4 命令模式

該模式是打開文件的第一個看到的模式(打開文件即可進入)

3.4.1 游標移動
  1. 游標移動到行首 shift + 6 或 ^

  2. 游標移動到行尾 shift + 4 或 $

  3. 游標移動到首行行首 gg

  4. 游標移動到末行行首 G

  5. 翻屏 翻屏:按鍵ctrl + b/f 或PgUp/PgDn

  6. 快速定位到指定行 數字G

3.4.2 複製/剪切/刪除
  1. 複製游標所在行 yy 在想要粘貼的地方按下p鍵

  2. 向下複製指定的行數 數字yy

  3. 剪切/刪除 游標所在行 dd

  4. 向下刪除/剪切指定的行 數字dd

  5. 刪除之後下一行不上移 D

  6. 撤銷 :u

  7. 恢復:ctrl+r

3.4.3 模式間的切換

末行模式進入之後的特征:游標在最後一行上

編輯模式進入之後的特征:在最後一行有類似於“------插入(insert)-----"

末行模式和編輯模式之間是沒有辦法直接切換的,必須先走命令模式。

3.5 末行模式

進入方式:由命令模式進入,按下“:”或者“/(表示查找)”即可進入

退出方式:

a. 按下esc

b. 連按2次esc鍵

c. 刪除末行全部輸入字元

  1. 保存操作(write) :w 保存文件 輸入:“:w 路徑” 另存為

  2. 退出(quit)輸入:“:q” 退出文件

  3. 保存並退出 輸入:“:wq” 保存並且退出

  4. 強制(!) 輸入:“:q!” 表示強制退出,剛纔做的修改操作不做保存

  5. 搜索/查找 輸入:“/關鍵詞”,再按下回車

  6. 替換

    :s/搜索的關鍵詞/新的內容 替換游標所在行的第一處符合條件的內容

    :s/搜索的關鍵詞/新的內容/g 替換游標所在行的全部符合條件的內容

    :%s/搜索的關鍵詞/新的內容 替換整個文檔中每行第一個符合條件的內容

    :%s/搜索的關鍵詞/新的內容/g 替換整個文檔的符合條件的內容

    %表示整個文件(所有行)

    g表示全局(global)

  7. 顯示行號

    輸入:“:set nu” [number]

    如果想取消顯示,則輸入:“:set nonu”

  8. 要想永久顯示行號,需要進行對vim的配置。

    建議創建文件:“~/.vimrc”(該配置是針對用戶的,每個用戶自己家下有一個獨立.vimrc)

末行模式下的複製(yy)、剪切(dd)、刪除(dd)操作
複製語法:“:開始行號,結束行號y”,例如輸入“:1,10y”
剪切刪除語法:“:開始行號,結束行號d”,例如輸入“:1,10d”

一步到位的複製語法——“:開始行號,結束行號 co 粘貼到的行號”
剪切粘貼一步到位語法——“:開始行號,結束行號 m 粘貼到的行號

3.6 編輯模式

img

i(insert) a(after)。

退出方式:按下esc鍵

3.7 異常退出

編輯文件之後並沒有正常的去wq(保存退出)

刪除“.文件名.swp”文件即可解決上述問題。

3.8 別名機制

允許操作者對現有的指令/腳本進行重新的命名

允許用戶創建自己的指令。

~/.bashrc alias 別名=’原始名稱/路徑’

保存退出之後不會立即生效,需要當前用戶重新登錄到系統才會生效。

4 用戶與用戶組

Linux系統是一個多用戶、多任務的操作系統

每個用戶賬號都擁有一個唯一的用戶名和各自的密碼.

/etc/passwd 存儲用戶的關鍵信息

/etc/group 存儲用戶組的關鍵信息

/etc/shadow 存儲用戶的密碼信息

4.1 用戶管理

添加用戶

#useradd 選項 選項的值 …. 用戶名

-g:表示指定用戶的用戶主(主要)組,選項的值可以是用戶組的id,也可以是組名

-G:表示指定用戶的用戶附加(額外)組,選項的值可以是用戶組的id,也可以是組名

-u:uid,用戶的id(用戶的標識符),系統預設會從500之後按順序分配uid,如果不想使用系統分配的,可以通過該選項自定義

-c:comment,添加註釋(選擇是否添加)

-s:指定用戶登入後所使用的shell 解釋器

-d:指定用戶登入時的啟始目錄(家目錄位置)

-n:取消建立以用戶名稱為名的群組

passwd

用戶名:密碼:用戶ID:用戶組ID:註釋:家目錄:解釋器shell

用戶名:創建新用戶名稱,後期登錄的時候需要輸入;

密碼:此密碼位置一般情況都是“x”,表示密碼的占位;

用戶ID:用戶的識別符;【-u】

用戶組ID:該用戶所屬的主組ID;【-g】

註釋:解釋該用戶是做什麼用的;【-c】

家目錄:用戶登錄進入系統之後預設的位置;【-d】

解釋器shell:等待用戶進入系統之後,用戶輸入指令之後,該解釋器會收集用戶輸入的指令,傳遞給內核處理;【如果解釋器是/bin/bash表示用戶可以登錄到系統,/sbin/nologin表示該用戶不能登錄到系統】【-s】

註意

如果需要為一個用戶指定多個附加組,只需要將多個附件組的id通過英文逗號“,”分割即可。

主組只能有1個,附加組可以多個,也可以沒有附加組

文檔的屬組指的是主組

4.1.1 修改用戶

#usermod選項 選項的值 …. 用戶名

Usermod:user modify,用戶修改

-g:表示指定用戶的用戶主組,選項的值可以是用戶組的id,也可以是組名

-G:表示指定用戶的用戶附加組,選項的值可以是用戶組的id,也可以是組名

-u:uid,用戶的id(用戶的標識符),系統預設會從500之後按順序分配uid,如果不想使用系統分配的,可以通過該選項自定義

-l:修改用戶名

-c<備註>:修改用戶帳號的備註文字

-d<登入目錄>:修改用戶登入時的目錄

-s<shell>:修改用戶登入後所使用的shell

4.1.2 設置密碼
  1. 該指令普通用戶也可以執行

  2. 只有root用戶才可以指定用戶名

Linux不允許沒有密碼的用戶登錄到系統

#passwd[用戶名]

  1. 從root往普通用戶切換不需要密碼,反之需要root密碼;

  2. 切換用戶之後前後的工作路徑是不變的;

  3. 普通用戶沒有辦法訪問root用戶家目錄,反之可以;

4.1.3 刪除用戶

#userdel 選項 用戶名

Userdel:user delete(用戶刪除)

-r:表示刪除用戶的同時,刪除其家目錄;

kill對應用戶的全部進程

在登錄需要刪除的用戶之後,按下快捷鍵“ctrl+d”進行對當前用戶的註銷,隨後退回到上一個用戶(root)此時就可以對需要刪除的用戶進行刪除操作。

4.2 用戶組管理

每個用戶都有一個用戶組,系統可以對一個用戶組中的所有用戶進行集中管理。

文件結構

用戶組名:密碼:用戶組ID:組內用戶名[看附加組的]

密碼:X表示占位符,雖然用戶組可以設置密碼,但是絕大部分的情況下不設置密碼;

組內用戶名:表示附加組是該組的用戶名稱;

4.2.1 用戶組添加

#groupadd 選項 選項的值 …. 用戶組名

-g:類似用戶添加里的“-u”,

-g表示選擇自己設置一個自定義的用戶組ID數字,如果自己不指定,則預設從500之後遞增;

4.2.2 用戶組編輯

#groupmod 選項 選項的值 … 用戶組名

-g:類似用戶修改里的“-u”,-g表示選擇自己設置一個自定義的用戶組ID數字

-n:類似於用戶修改“-l”,表示設置新的用戶組的名稱

4.2.3 用戶組刪除

#groupdel 用戶組名

當需要刪除一個組,但是這個組是某個用戶的主組時,則不允許刪除(附加組是可以的);如果確實需要刪除,則先從組內移出所有用戶。

5 許可權管理

5.1 許可權介紹

在Linux中分別有讀、寫、執行許可權:

讀許可權

對於文件夾來說,讀許可權影響用戶是否能夠列出目錄結構

對於文件來說,讀許可權影響用戶是否可以查看文件內容

寫許可權

對文件夾來說,寫許可權影響用戶是否可以在文件夾下“創建/刪除/複製到/移動到”文檔

對於文件來說,寫許可權影響用戶是否可以編輯文件內容,

執行許可權

一般都是對於文件來說,特彆腳本文件。

對於文件來說,執行許可權影響文件是否可以運行。

對於文件夾來說,執行許可權影響對應的用戶是否可以在文件夾內執行指令。

5.2 身份介紹

Owner身份 (文檔所有者,預設為文檔的創建者) 除本人(文件所有者)之外的用戶無法查看文件內容

Group身份(與文檔所有者同組的用戶) 能互相修改對方的數據

Others身份(其他人,相對於所有者與同組用戶)

Root用戶(超級用戶) 神一樣存在 設置文檔的許可權的時候不必考慮root用戶

5.3 Linux許可權查看

Linux中存在用戶(owner)、用戶組(group)和其他人(others)概念

img

第1位:表示文檔類型,取值常見的有“d表示文件夾”、“-表示文件”、“l表示軟連接”、“s表示套接字”、“c表示字元設備”、“b表示塊狀設備”等等;

第2-4位:表示文檔所有者的許可權情況,第2位表示讀許可權的情況,取值有r、-;第3位表示寫許可權的情況,w表示可寫,-表示不可寫,第4位表示執行許可權的情況,取值有x、-。

第5-7位:表示與所有者同在一個組的用戶的許可權情況,第5位表示讀許可權的情況,取值有r、-;第6位表示寫許可權的情況,w表示可寫,-表示不可寫,第7位表示執行許可權的情況,取值有x、-。

第8-10位:表示除了上面的前2部分的用戶之外的其他用戶的許可權情況,第8位表示讀許可權的情況,取值有r、-;第9位表示寫許可權的情況,w表示可寫,-表示不可寫,第10位表示執行許可權的情況,取值有x、-。

許可權分配中,均是rwx的三個參數組合,且位置順序不會變化。沒有對應許可權就用 – 代替。

5.4 許可權設置

#chmod [選項] 許可權模式 文檔路徑

-R:遞歸設置許可權 (當文檔類型為文件夾的時候)

許可權模式:就是該文檔需要設置的許可權信息

文檔:可以是文件,也可以是文件夾,可以是相對路徑也可以是絕對路徑。

想要給文檔設置許可權,操作者要麼是root用戶,要麼就是文檔的所有者

5.4.1 字母形式

img

給誰設置:

u:表示所有者身份owner(user)

g:表示給所有者同組用戶設置(group)

o:表示others,給其他用戶設置許可權

a:表示all,給所有人(包含ugo部分)設置許可權

如果在設置許可權的時候不指定給誰設置,則預設給所有用戶設置

許可權字元:

r:讀

w:寫

x:表示執行

-:表示沒有許可權

許可權分配方式

+:表示給具體的用戶新增許可權(相對當前)

-:表示刪除用戶的許可權(相對當前)

=:表示將許可權設置成具體的值(註重結果)【賦值】

設置多個身份的許可權時候,每個身份之間需要通過英文逗號分開。

如果有兩部分許可權一樣則可以合在一起寫

5.4.2 數字形式

讀:r 4

寫:w 2

執行:x 1

img

組合許可權數字的時候遵循,最短路徑要求,並且最多只能出現一次。

如果一個許可權數字中但凡出現2與3的數字,則該許可權有不合理的情況。

5.5 註意事項

在Linux系統中,創建文檔的許可權有一個預設值,以當前的系統為例,其創建文件夾之後的預設許可權是755,創建文件之後的許可權是644。

之所以會這樣是受到了系統中umask(掩碼)的值的影響,其是用於指定文檔創建好之後的許可權,umask預設為022。

計算方式:

對於文件:文件的許可權 = 666 – umask掩碼

對於文件夾:文件夾的許可權 = 777 - umask掩碼

在Linux中,如果要刪除一個文件,不是看文件有沒有對應的許可權,而是看文件所在的目錄是否有寫許可權、執行許可權,如果有才可以刪除。

5.6 屬主與屬組

屬主:所屬的用戶(文件的主人),文檔所有者

屬組:所屬的用戶組(同組用戶的組名稱)

前面的那個root就是屬主

後面的那個roo就是屬組

這兩項信息在文檔創建的時候會使用創建者的信息(用戶名、用戶所屬的主組名稱)。

之所以需要設置這個:如果有時候去刪除某個用戶,則該用戶對應的文檔的屬主和屬組信息就需要去修改

5.7 chown/chgrp/sudo

5.7.1 chown

#chown [-R] 新的username 文檔路徑

更改文檔的所屬用戶(change owner)

修改所有者的人必須是root或者所有者自己(也可能出現沒有許可權的情況),其他人無權修改所有者。

5.7.2 charp

#chgrp [-R] groupname 文檔的路徑

更改文檔的所屬用戶組(change group)

5.7.3 sudo

Sudo可以讓管理員(root)事先定義某些特殊命令誰可以執行(事先放權規則。

預設sudo中是沒有除root之外用戶的規則,要想使用則先配置sudo。

Sudo配置文件:/etc/sudoers

該文件預設只讀,不允許修改,因此不能直接修改。

  1. 配置sudo文件請使用“#visudo”,

  2. 配置普通用戶的許可權

    Root表示用戶名,如果是用戶組,則可以寫成“%組名”

    ALL:表示允許登錄的主機(地址白名單)

    (ALL):表示以誰的身份執行,ALL表示root身份

    ALL:表示當前用戶可以執行的命令,多個命令可以使用“,”分割

    一般需要調整的就是用戶/用戶組名稱與可以執行的指令名。

# sudo 需要執行的指令(就是放權的指令名稱)

#sudo -l 表示list

6 運行級別

運行模式也可以稱之為運行級別(Running Level)

0 — 表示關機級別(不要將預設的運行級別設置成這個值)
1 — 單用戶模式(找回root密碼的)
2 — 多用戶模式,不帶NFS(Network File Syetem)
3 — 多用戶模式,完全的多用戶模式(不帶桌面的,純命令行模式)
4 — 沒有被使用的模式(被保留模式)
5 — X11,完整的圖形化界面模式
6 — 表示重啟級別(不要將預設的運行級別設置成這個值)

6.1 相關命令 / 網路設置

(臨時切換,立即生效):

#init 0 表示關機

#init 3 表示切換到不帶桌面的模式(CLI 命令行模式)

#init 5 切換到圖形界面(前提必須先確保已經安裝了圖形化界面)

#init 6 重啟電腦

註意:init指令需要超級管理員的許可權,普通用戶無法執行。

這些命令其實都是調用的init進程,將數字(運行級別)傳遞給進程,進程去讀配置文件執行對應的操作。

6.2 永久命令行模式

將/etc/inittab文件中的initdefault值設置成3,然後重啟操作系統。切換重啟之後預設即命令行模式:

6.3 網路設置

6.3.1 IP地址查看

遠程連接、配置相關軟體時(vpn)

#ifconfig

有2塊網卡,一個叫eth0,另一個lo(本地迴環網卡,本機ip)

ip地址是 inet addr那一項

6.3.2 網卡配置文件

/etc/sysconfig/network-scripts/ifcfg-*文件

ONBOOT:表示是否自動連接

BOOTPROTO(COL):網卡啟動之後使用的協議,一般情況下是DHCP

HWADDR:硬體地址(mac地址,物理地址),電腦之間的通信都是依賴於mac地址

#ln -s 原始路徑 快捷方式路徑

針對像網卡配置目錄層次比較深的文件,如果需要頻繁更改,可以將需要的文件設置一個快捷方式,將其放在經常操作的目錄,以簡化後續的打開文件操作。

6.3.3 網路服務操作

#service network start/stop/restart

通過service指令來對網路的服務進行重啟/停止/啟動等操作。

#ifdown 網卡名 停止某個網卡

#ifup 網卡名 啟動某個網卡

7 ssh

ssh(secure shell,安全外殼協議),該協議有2個常用的作用:遠程連接、遠程文件傳輸。

協議使用埠號:預設是22。

可以是被修改的,如果需要修改,則需要修改ssh服務的配置文件:

#/etc/ssh/ssh_config

服務啟動/停止/重啟 {服務名中的d全稱daemon,守護進程}

#service sshd start/stop/restart

#/etc/init.d/sshd start/stop/restart

7.1 遠程登錄

終端工具主要幫助運維人員連接遠程的伺服器,常見終端工具有:Xshell、secureCRT、Putty等

  1. 獲取伺服器ip地址,可以通過ifconfig命令進行查看,然後順手測試ip的連接相通性#ifconfig

  2. 打開putty,輸入相關的信息

  3. 在彈出key確認的時候點擊“是”,以後不會再提示

  4. 輸入登錄信息

虛擬機的centos中全部的指令在遠程終端中都是可以得到執行的

不藉助第三方工具實現遠程連接
①打開Windows的cmd黑視窗(前提是Windows必須安裝ssh服務,如果沒有而需要這個功能,則自行安裝openSSH)
②輸入“ssh 需要登錄的用戶名@遠程伺服器的連接地址”回車
③輸入密碼

7.2 sftp文件傳輸

可視化的界面傳輸工具:Filezilla

  1. 選擇“文件”- “站點管理器(Ctrl + S)”

您的分享是我們最大的動力!

-Advertisement-
Play Games
更多相關文章
  • 解決也很簡單,在執行 ssh 命令的時候,多加一個參數即可,如下: ssh -p 2200 -o ServerAliveInterval=60 [email protected] #伺服器 8.8.8.8 的遠程埠號為2200 ...
  • 在centos7中安裝好docker以後,啟動成功,運行命令 docker info ,報錯: [root@iz2ze2bn5x2wqxdeq65wlpz ~]# docker info Client: Debug Mode: false Server: Containers: 4 Ru... ...
  • 命令概要 該命令設計用於在沒有用戶交互的情況下工作。 curl 是一個工具,用於傳輸來自伺服器或者到伺服器的數據。「向伺服器傳輸數據或者獲取來自伺服器的數據」 可支持的協議有(DICT、FILE、FTP、FTPS、GOPHER、HTTP、HTTPS、IMAP、IMAPS、LDAP、LDAPS、POP ...
  • dd 工具使用: dd 也是我們經常使用到的磁碟測試工具,Linux伺服器裝好系統之後,想要知道硬碟的讀寫是否能滿足服務的需要,如果不滿足硬碟的IO就是服務的一個瓶頸。我們可以使用dd命令簡單進行測試,更為專業的測試可以使用上面描述的fio 工具: time有計時作用,dd用於複製,從if讀出,寫到 ...
  • crontab中的%是換行的意思,在使用時需要使用\做轉義。 ...
  • 0x00 事件 因為本地的伺服器硬體出現故障,導致一臺 Windows 系統的開發環境掛了,且無法短時間內恢復狀態。 應急方案是使用了雲上的系統重建了開發環境。 開發人員說需要掛了的那台 Windows 開發環境中的資料庫數據,因為一些數據只有那個環境裡面有。於是找了把螺絲刀把硬碟拆下來,用移動硬碟 ...
  • Linux 運行jar包命令如下: 方式一: 特點:當前ssh視窗被鎖定,可按CTRL + C打斷程式運行,或直接關閉視窗,程式退出 那如何讓視窗不鎖定? 方式二 java -jar shareniu.jar & java -jar shareniu.jar & &代表在後臺運行。 特定:當前ssh ...
  • I2C兩線式串列匯流排通訊協議,它是由飛利浦開發的,主要用於連接微控制器及其外圍設備之間,它是由數據線SDA和信號線SCL構成的,可發送和接收數據即在MUC和I2C設備之間,I2C和I2C之間進行全雙工信號傳輸,高速I2C匯流排一般可達到400kbps。一般我們也稱為TWI介面。 ...
一周排行
    -Advertisement-
    Play Games
  • 移動開發(一):使用.NET MAUI開發第一個安卓APP 對於工作多年的C#程式員來說,近來想嘗試開發一款安卓APP,考慮了很久最終選擇使用.NET MAUI這個微軟官方的框架來嘗試體驗開發安卓APP,畢竟是使用Visual Studio開發工具,使用起來也比較的順手,結合微軟官方的教程進行了安卓 ...
  • 前言 QuestPDF 是一個開源 .NET 庫,用於生成 PDF 文檔。使用了C# Fluent API方式可簡化開發、減少錯誤並提高工作效率。利用它可以輕鬆生成 PDF 報告、發票、導出文件等。 項目介紹 QuestPDF 是一個革命性的開源 .NET 庫,它徹底改變了我們生成 PDF 文檔的方 ...
  • 項目地址 項目後端地址: https://github.com/ZyPLJ/ZYTteeHole 項目前端頁面地址: ZyPLJ/TreeHoleVue (github.com) https://github.com/ZyPLJ/TreeHoleVue 目前項目測試訪問地址: http://tree ...
  • 話不多說,直接開乾 一.下載 1.官方鏈接下載: https://www.microsoft.com/zh-cn/sql-server/sql-server-downloads 2.在下載目錄中找到下麵這個小的安裝包 SQL2022-SSEI-Dev.exe,運行開始下載SQL server; 二. ...
  • 前言 隨著物聯網(IoT)技術的迅猛發展,MQTT(消息隊列遙測傳輸)協議憑藉其輕量級和高效性,已成為眾多物聯網應用的首選通信標準。 MQTTnet 作為一個高性能的 .NET 開源庫,為 .NET 平臺上的 MQTT 客戶端與伺服器開發提供了強大的支持。 本文將全面介紹 MQTTnet 的核心功能 ...
  • Serilog支持多種接收器用於日誌存儲,增強器用於添加屬性,LogContext管理動態屬性,支持多種輸出格式包括純文本、JSON及ExpressionTemplate。還提供了自定義格式化選項,適用於不同需求。 ...
  • 目錄簡介獲取 HTML 文檔解析 HTML 文檔測試參考文章 簡介 動態內容網站使用 JavaScript 腳本動態檢索和渲染數據,爬取信息時需要模擬瀏覽器行為,否則獲取到的源碼基本是空的。 本文使用的爬取步驟如下: 使用 Selenium 獲取渲染後的 HTML 文檔 使用 HtmlAgility ...
  • 1.前言 什麼是熱更新 游戲或者軟體更新時,無需重新下載客戶端進行安裝,而是在應用程式啟動的情況下,在內部進行資源或者代碼更新 Unity目前常用熱更新解決方案 HybridCLR,Xlua,ILRuntime等 Unity目前常用資源管理解決方案 AssetBundles,Addressable, ...
  • 本文章主要是在C# ASP.NET Core Web API框架實現向手機發送驗證碼簡訊功能。這裡我選擇是一個互億無線簡訊驗證碼平臺,其實像阿裡雲,騰訊雲上面也可以。 首先我們先去 互億無線 https://www.ihuyi.com/api/sms.html 去註冊一個賬號 註冊完成賬號後,它會送 ...
  • 通過以下方式可以高效,並保證數據同步的可靠性 1.API設計 使用RESTful設計,確保API端點明確,並使用適當的HTTP方法(如POST用於創建,PUT用於更新)。 設計清晰的請求和響應模型,以確保客戶端能夠理解預期格式。 2.數據驗證 在伺服器端進行嚴格的數據驗證,確保接收到的數據符合預期格 ...