2021韓順平圖解Linux課程(全面升級)定制篇


第16章 Linux 之 JavaEE 定制篇-搭建 JavaEE 環境

如果需要在 Linux 下進行JavaEE 的開發,我們需要安裝如下軟件

  • JDK
  • Tomcat
  • ideaIU
  • MySQL
  • 安裝 JDK
  • mkdir /opt/jdk
  • 通過 Xftp 6上傳 JDK 安裝包(jdk-8u261-linux-x64.tar.gz)到 /opt/jdk
  • cd /opt/jdk
  • 使用 tar -zxvf jdk-8u261-linux-x64.tar.gz 命令解壓 JDK 安裝包
  • mkdir /usr/local/java
  • mv jdk1.8.0_261/ /usr/local/java
  • 使用 echo $PATH 命令查看當前的環境變量,沒有JDK
  • 通過編輯 /etc/profile 文件配置 JDK 環境變量
    • 增加命令 export JAVA_HOME=/usr/local/java/jdk1.8.0_261
    • 增加命令 export PATH=$JAVA_HOME/bin:$PATH
    • 其中,第二條命令的 $PATH 是之前的環境變量,一定要寫上。否則,一些常用指令將無法使用。
  • 通過 source /etc/profile 命令讓新的環境變量生效
  • 再次使用 echo $PATH 命令查看當前的環境變量,JDK 環境變量添加成功
  • 通過運行 Java 程序測試是否安裝成功
  • 安裝 Tomcat
  • mkdir /opt/tomcat
  • 通過 Xftp 6上傳 Tomcat 安裝包(apache-tomcat-8.5.59.tar.gz)到 /opt/tomcat
  • cd /opt/tomcat
  • 使用 tar -zxvf apache-tomcat-8.5.59.tar.gz 命令解壓 Tomcat 安裝包
  • cd apache-tomcat-8.5.59/
  • cd /bin
  • ./startup.sh
  • 使用 firewall-cmd --permanent --add-port=8080/tcp 命令打開8080端口
  • 使用 firewall-cmd --reload 命令更新端口狀態
  • 使用 firewall-cmd --query-port=8080/tcp 命令查看端口是否打開
  • 通過瀏覽器訪問 IP地址:8080 來查看是否安裝成功
  • 安裝 ideaIU 2020
  • mkdir /opt/idea
  • 通過 Xftp 6上傳 ideaIU 安裝包(ideaIU-2020.2.3.tar.gz)到 /opt/idea
  • cd /opt/idea
  • 使用 tar -zxvf ideaIU-2020.2.3.tar.gz 命令解壓 ideaIU 安裝包
  • cd idea-IU-202.7660.26/
  • cd /bin
  • 在有圖形化界面的終端上運行 ./idea.sh
  • 圖形化界面下,按個人需要安裝即可
  • 點擊新建項目,ideaIU 會自動配置系統中已有的 JDK
  • 通過編寫 Java 程序來查看是否安裝成功
  • 安裝 MySQL 5.7
  • mkdir /opt/mysql
  • 通過 Xftp 6上傳 MySQL 安裝包(mysql-5.7.26-1.el7.x86_64.rpm-bundle.tar)到 /opt/mysql
  • cd /opt/mysql
  • 使用 tar -xvf mysql-5.7.26-1.el7.x86_64.rpm-bundle.tar 命令解壓 MySQL 安裝包
  • CentOS 7.6自帶的 MySQL 類數據庫是 mariadb,會和 MySQL 沖突,要先刪除
  • 使用 rpm -qa | grep mari 命令查看 mariadb 相關安裝包
  • 分別運行 rpm -e --nodeps mariadb-libs 以及 rpm -e --nodeps marisa 命令刪除
  • 再次使用 rpm -qa | grep mari 命令查詢 mariadb 相關安裝包,已刪除干凈
  • 開始真正安裝 MySQL,依次按順序運行以下命令
    • rpm -ivh mysql-community-common-5.7.26-1.el7.x86_64.rpm
    • rpm -ivh mysql-community-libs-5.7.26-1.el7.x86_64.rpm
    • rpm -ivh mysql-community-client-5.7.26-1.el7.x86_64.rpm
    • rpm -ivh mysql-community-server-5.7.26-1.el7.x86_64.rpm
  • 運行 systemctl start mysqld.service 命令,啟動 MySQL
  • 設置 root 用戶密碼
    • MySQL 自動給 root 用戶設置隨機密碼,通過 grep password /var/log/mysqld.log 來查看當前密碼
    • 運行 mysql -u root -p 命令登錄 root 用戶,輸入上面 root 用戶當前密碼,登錄進入 MySQL 命令行
    • 對於個人開發環境,如果設置較簡單的 root 用戶密碼,在 MySQL 命令行運行 set global validate_password_policy=0; 將密碼策略修改為0,即弱口令(默認情況為1)。對於生產環境,要設置復雜的 root 用戶密碼。
    • 修改 root 用戶密碼命令格式:set password for 用戶名@localhost = password('新密碼'); 比如在 MySQL 命令行里運行 set password for root@localhost = password('12345678');
    • 繼續在 MySQL 命令行里輸入 flush privileges; 使密碼設置生效
  • 在 MySQL 命令行里輸入 quit 退出
  • 用修改后的 root 用戶密碼登入 MySQL 查看是否修改成功

第17章 Linux 之大數據定制篇-Shell 編程

  • 為什么要學習 Shell 編程
  • Linux 運維工程師在進行服務器集群管理時,需要編寫 Shell 程序來進行服務器管理。
  • 對於 JavaEE 和 Python 程序員來說,工作的需要,會要求你編寫一些 Shell 腳本進行程序或者是服務器的維護,比如編寫一個定時備份數據庫的腳本。
  • 對於大數據程序員來說,需要編寫 Shell 程序來管理集群。
  • Shell 是什么

Shell 是一個命令行解釋器,它為用戶提供了一個向 Linux 內核發送請求以便運行程序的界面系統級程序,用戶可以用 Shell 來啟動、掛起、停止甚至是編寫一些程序。

  • Shell 腳本的執行方式
  • 腳本格式要求
    • 腳本以#!/bin/bash 開頭
    • 腳本需要有可執行權限
  • 腳本的常用執行方式
    • 給要執行的腳本文件,添加可執行權限
    • 直接用 sh 腳本文件名 命令執行,不用賦予腳本可執行權限
  • Shell 變量介紹
  • Linux 中 Shell 的變量分為系統變量和用戶自定義變量。
  • 系統變量:$HOME、$PWD、$SHELL、$USER 等等,比如:echo $HOME 等等。
  • 顯示當前 Shell 中所有變量:set
  • Shell 變量定義
  • 定義變量:變量=值 (注意等號兩側沒有空格)
  • 撤銷變量:unset 變量
  • 聲明靜態變量:readonly 變量。注意:該變量不能 unset
  • 定義變量的規則
  • 變量名稱可以由字母、數字和下划線組成,但是不能以數字開頭。
  • 等號兩側不能有空格
  • 變量名稱一般習慣為大寫,這是一個規范,遵守即可
  • 將命令的返回值賦給變量
  • A=`date`,通過反引號,運行里面的命令,並把結果返回給變量 A
  • A=$(date)等於反引號的作用
  • 變量名稱一般習慣為大寫,這是一個規范,遵守即可
  • Shell 變量快速入門
#!/bin/bash
#案例1:定義變量 A
A=100
#輸出變量需要加上$
echo A=$A
echo "A=$A"
#案例2:撤銷變量 A
unset A
echo "A=$A"
#案例3:聲明靜態的變量 B=2,不能 unset
readonly B=2
echo "B=$B"
#執行 unset B 命令,會報錯
#案例 4:將指令返回的結果賦給變量
C=`date`
D=$(date)
echo "C=$C"
echo "D=$D"
  • 設置環境變量
  • 基本語法
    • export 變量名=變量值:將 Shell 變量輸出為環境變量
    • source 配置文件:讓修改后的配置文件立即生效
    • echo $變量名:查詢環境變量的值
  • 快速入門
#通過編輯 /etc/profile 文件配置 JDK 環境變量,要增加以下命令
export JAVA_HOME=/usr/local/java/jdk1.8.0_261
export PATH=$JAVA_HOME/bin:$PATH
#保存退出 /etc/profile 文件后,執行 source /etc/profile 命令使修改后的配置文件生效
  • Shell 腳本多行注釋
:<<!
需要注釋的第一行內容
需要注釋的第二行內容
!
  • 位置參數變量

當我們執行一個 Shell 腳本時,如果希望獲取到命令行的參數信息,就可以使用到位置參數變量,比如 ./myshell.sh 100 200 , 這個就是一個執行 shell 的命令行,可以在 myshell 腳本中獲取到參數信息。

  • 基本語法
    • $n:n 為數字,$0 代表命令本身,$1-$9 代表第一到第九個參數,十以上的參數需要用大括號,如${10}
    • $*:代表命令行中所有的參數,$*把所有的參數看成一個整體
    • $@:代表命令行中所有的參數,不過該命令是把每個參數區分對待
    • $#:代表命令行中所有參數的個數
  • 快速入門
#!/bin/bash
echo "0=$0 1=$1 2=$2"
echo "命令行所有傳入的參數=$*"
echo "$@"
echo "參數的個數=$#"
  • 預定義變量

Shell 設計者事先已經定義好的變量,可以直接在 Shell 腳本中使用

  • 基本語法
    • $$:當前進程的進程號
    • $!:后台運行的最后一個進程的進程號
    • $?:最后一次執行的命令的返回狀態。如果這個變量的值為 0,證明上一個命令正確執行;如果這個變量的值為非 0(具體是哪個數,由命令自己來決定),則證明上一個命令執行不正確
  • 快速入門
#!/bin/bash
echo "當前進程號=$$"
#后台方式運行 myShell.sh
./myShell.sh &
echo "最后的的進程號=$!"
echo "執行的值=$?"
  • 運算符

在 Shell 中進行各種運算操作。

  • 基本語法
    • $((運算式))\或$[運算式]
    • 或 `expr m + n` 注意 expr 運算符間要有空格
    • expr \*,/, % 分別代表乘,除,取余
  • 快速入門
#!/bin/bash
#案例1:計算(2+3)X4 的值
#使用第一種方式
RES1=$(((2+3)*4))
echo "res1=$RES1"
#使用第二種方式
RES2=$[(2+3)*4]
echo "res2=$RES2"
#使用第三種方式
TEMP=`expr 2 + 3`
RES3=`expr $TEMP \* 4` 
echo "temp=$TEMP"
echo "res3=$RES3"
echo "執行的值=$?"
#案例2:請求出命令行的兩個參數[整數]的和
SUM=$[$1+$2]
echo "sum=$SUM"
  • 條件判斷
  • 判斷語句
    [ condition ](注意 condition 前后要有空格),非空返回 true,可使用$?驗證(0 為 true,>1 為 false)
  • 常用判斷條件
    • 字符串比較
選項 含義
= 字符串是否相等
  • 兩個整數的比較
選項 含義
-lt 小於
-le 小於等於
-eq 等於
-gt 大於
-ge 大於等於
-ne 不等於
  • 按照文件權限進行判斷
選項 含義
-r 有讀的權限
-w 有寫的權限
-x 有執行的權限
  • 按照文件類型進行判斷
選項 含義
-f 文件存在並且是一個常規的文件
-e 文件存在
-d 文件存在並是一個目錄
  • 快速入門
#!/bin/bash
#案例1:“ok”是否等於“ok”
#判斷語句:是否 =
if [ "ok" = "ok" ]
then
      echo "equal"
fi
#案例2:23是否大於等於22
#判斷語句:使用 -ge
if [ 23 -ge 22 ] 
then
      echo "大於"
fi
#案例3:/root/shcode/aaa.txt 目錄中的文件是否存在
#判斷語句:使用 -f
if [ -f /root/shcode/aaa.txt ]
then
      echo "存在"
fi
#其他案例
if [ edu ]
then
      echo "hello, edu"
fi
  • if 判斷
  • 基本語法
if [ 條件判斷式 ]
then
      程序
fi

或者

if [ 條件判斷式 ]
then
      程序
elif [ 條件判斷式 ]
then
      程序
fi
  • 注意事項
    [ 條件判斷式 ]中括號和條件判斷式之間必須有空格,if 與 [ 之間也有空格
  • 快速入門
#!/bin/bash
#案例:編寫一個 Shell 程序,如果輸入的參數,大於等於60,則輸出“及格了”,如果小於60,則輸出 “不及格”
if [ $1 -ge 60 ]
then
      echo "及格了"
elif [ $1 -lt 60 ]
then
      echo "不及格"
fi
  • case 語句
  • 基本語法
case $變量名 in
"值 1")
      如果變量的值等於值 1,則執行程序 1
;;
"值 2")
      如果變量的值等於值 2,則執行程序 2
;;
      省略其他分支
*)
      如果變量的值都不是以上的值,則執行此程序 
;;
esac
  • 快速入門
#!/bin/bash
#案例:當命令行參數是1時,輸出“周一”,是2時,就輸出“周二”,其它情況輸出“other”
case $1 in
"1")
      echo "周一"
;;
"2")
      echo "周二"
;;
*)
      echo "other" 
;;
esac
  • for 語句
  • 基本語法1
for 變量 in 值1 值2 值3 ...
do
      程序
done
  • 快速入門
#!/bin/bash
#案例:打印命令行輸入的參數【可以看出$*和$@的區別】
#注意 $* 是把輸入的參數,當作一個整體,所以只會輸出一行
for i in "$*"
do
      echo "num is $i"
done
#使用 $@ 是把輸入的參數,分別對待,所以有幾個參數,就會輸出幾行
for j in "$@"
do
      echo "num is $j"
done
  • 基本語法2
for (( 初始值;循環控制條件;變量變化 ))
do
      程序
done
  • 快速入門
#!/bin/bash
#案例:從1加到100的值輸出顯示
#定義一個變量 SUM
SUM=0
for (( i=1;i<=100;i++ ))
do
      SUM=$[$SUM+i]
done
echo "總和SUM=$SUM"
  • while 語句
  • 基本語法
while [ 條件判斷式 ]
do
      程序
done
  • 注意事項
    [ 條件判斷式 ]中括號和條件判斷式之間必須有空格,while 與 [ 之間也有空格
  • 快速入門
#!/bin/bash
#案例:從命令行輸入一個數 n,統計從 1+...+ n 的值
SUM=0
i=0
while [ $i -le $1 ]
do
      SUM=$[$i+$SUM]
      i=$[$i+1]
done
echo "總和SUM=$SUM"
  • read 讀取控制台輸入
  • 基本語法
    read [選項] [參數]
  • 選項
    -p:指定讀取值時的提示符;
    -t:指定讀取值時等待的時間(秒),如果沒有在指定的時間內輸入,就不再等待了。
  • 參數
    變量:指定讀取值的變量名
  • 快速入門
#!/bin/bash
#案例1:讀取控制台輸入一個 NUM1 值
read -p "請輸入一個數NUM1=" NUM1
echo "您輸入數NUM1=$NUM1"
#案例2:讀取控制台輸入一個 NUM2 值,在 10 秒內輸入
read -t 10 -p "請輸入一個數NUM2=" NUM2
echo "您輸入數NUM2=$NUM2"
  • 系統函數
  • basename 基本語法
    • basename [pathname] [suffix]:返回完整路徑最后 / 的部分,常用於獲取文件名。
    • basename [string] [suffix]:會刪掉所有的前綴包括最后一個(‘/’)字符,然后將字符串顯示出來。
  • 選項:
    suffix 為后綴,如果 suffix 被指定了,basename 會將 pathname 或 string 中的 suffix 去掉。
  • dirname 基本語法
    • 功能:返回完整路徑最后 / 的前面的部分,常用於返回路徑部分。
    • dirname 文件絕對路徑:從給定的包含絕對路徑的文件名中去除文件名(非目錄的部分),然后返回剩下的路徑(目錄的部分)。
  • 快速入門
    • 案例1:請返回 /home/aaa/test.txt 的 test.txt 部分
      basename /home/aaa/test.txt
    • 案例2:請返回 /home/aaa/test.txt 的 /home/aaa 部分
      dirname /home/aaa/test.txt
  • 自定義函數
  • 基本語法
[ function ] funname[()]
{
      Action;
      [return int;]
}

調用直接寫函數名:funname [值]

  • 快速入門
#!/bin/bash
#案例1:計算輸入兩個參數的和(動態獲取),getSum
#定義函數 getSum
function getSum()
{
      SUM=$[$NUM1+$NUM2] 
      echo "和是=$SUM"
}
#輸入兩個值
read -p "請輸入一個數NUM1=" NUM1
read -p "請輸入一個數NUM2=" NUM2
#調用自定義函數
getSum $NUM1 $NUM2
  • Shell 編程綜合案例
  • 需求分析
    • 每天凌晨2:10,備份數據庫 hspedu 到 /data/backup/db
    • 備份開始和備份結束能夠給出相應的提示信息
    • 備份后的文件要求以備份時間為文件名,並打包成 .tar.gz 的形式,比如:2018-03-12_230201.tar.gz
    • 在備份的同時,檢查是否有 10 天前備份的數據庫文件,如果有就將其刪除。
    • 編寫一個 Shell 腳本。
  • 思路分析
  • 代碼實現
#!/bin/bash
#完成數據庫的定時備份
#備份的路徑
BACKUP=/data/backup/db
#當前的時間作為文件名
DATETIME=$(date +%Y-%m-%d_%H%M%S)
#可以輸出變量調試
#echo ${DATETIME}
echo "======================開始備份=========================="
echo "========備份的路徑為 $BACKUP/$DATETIME.tar.gz =========="
#數據庫地址
HOST=localhost
#數據庫用戶名
DB_USER=root
#數據庫密碼
DB_PW=root
#備份數據庫名
DATABASE=hspedu
#創建備份的文件夾
#如果該備份的文件夾有則使用,沒有就重新創建一個。
#-p:表示遞歸創建目錄,或者說創建多級目錄。
[ ! -d "${BACKUP}/${DATETIME}"] && mkdir -p "${BACKUP}/${DATETIME}"
#執行 MySQL 備份數據庫的指令
mysqldump -u${DB_USER} -p${DB_PW} --host=${HOST} ${DATABASE} | gzip > ${BACKUP}/${DATETIME}/$DATETIME.sql.gz
#將文件處理成 tar.gz
cd ${BACKUP}
tar -zcvf $DATETIME.tar.gz ${DATETIME}
# 刪除對應的備份目錄
rm -rf ${BACKUP}/${DATETIME}
#刪除10天前的備份文件
find ${BACKUP} -atime +10 -name "*.tar.gz" -exec rm -rf {} \;
echo "=====================備份文件成功========================="

運行 crontab -e 指令,增加下面命令(結尾光標要停留在 h 上),用於定時調用上面的 Shell 腳本。

10 2 * * * /usr/sbin/mysql_db_backup.sh

第18章 Linux 之 Python 定制篇-Python 開發平台 Ubuntu

  • Ubuntu 的介紹
  • Ubuntu(烏班圖)是一個以桌面應用為主的開源 GNU/Linux 操作系統,Ubuntu 是基於 GNU/Linux,支持 x86、amd64(即 x64)和 ppc 架構,由全球化的專業開發團隊(Canonical Ltd) 打造的。
  • 專業的 Python 開發者一般會選擇 Ubuntu 這款 Linux 系統作為生產平台。
  • Ubuntu 和 Centos 都是基於 GNU/Linux 內核的,因此基本使用和 Centos 是幾乎一樣的,它們的各種指令可以通用。在學習和使用 Ubuntu 的過程中,會發現各種操作指令在前面學習 CentOS 都使用過,只是界面和預安裝的軟件有所差別。
  • Ubuntu 下載地址:http://cn.ubuntu.com/download/
  • 設置 Ubuntu 支持中文

默認安裝的 Ubuntu 中只有英文語言,因此是不能顯示漢字的。要正確顯示漢字,需要安裝中文語言包。

  • 安裝中文支持步驟
    • 單擊左側圖標欄打開 System Settings(系統設置)菜單,點擊打開 Language Support(語言支持)選項卡。
    • 點擊 Install / Remove Languages,在彈出的選項卡中下拉找到 Chinese(Simplified),即中文簡體, 在后面的選項框中打勾。然后點擊 Apply Changes 提交,系統會自動聯網下載中文語言包(保證 Ubuntu 是聯網的)。
    • 這時“漢語(中國)”在最后一位因為當前第一位是“English”,所以默認顯示都是英文。我們如果希望默認顯示用中文,則應該將“漢語(中國)”設置為第一位。設置方法是拖動,鼠標單擊“漢語(中國)”,當底色變化(表示選中了)后,按住鼠標左鍵不松手,向上拖動放置到第一位。
    • 設置后不會即刻生效,需要下一次登錄時才會生效。
  • Ubuntu 的 root 用戶
  • 介紹
    安裝 Ubuntu 成功后,都是普通用戶權限,並沒有最高 root 權限,如果需要使用 root 權限的時候, 通常都會在命令前面加上 sudo 。有的時候感覺很麻煩。
    一般使用 su 命令來直接切換到 root 用戶的,但是如果沒有給 root 設置初始密碼,就會拋出 su: Authentication failure 這樣的問題。所以,我們只要給 root 用戶設置一個初始密碼就好了。
  • 給 root 用戶設置密碼並使用
    • 輸入 sudo passwd 命令,設置 root 用戶密碼。
    • 設置 root 密碼成功后,執行 su root 命令,並輸入剛才設置的 root 密碼,就可以切換成 root 用戶。提示符 $ 代表普通用戶,提示符 # 代表 root 用戶。
    • 輸入 exit 命令,退出 root 用戶並返回普通用戶。
  • Ubuntu 下開發 Python
  • 說明
    安裝好 Ubuntu 后,默認就已經安裝好 Python 的開發環境 Python2.7 和 Python3.5。
  • 在 Ubuntu 下開發一個 Python 程序
    • 編寫 hello.py 文件
    • 執行 python3 hello.py 命令運行文件

第19章 Linux 之 Python 定制篇-APT 軟件管理和遠程登錄

  • APT 介紹

APT 是 Advanced Packaging Tool 的簡稱,是一款安裝包管理工具。在 Ubuntu 下,我們可以使用 apt 命令可用於軟件包的安裝、刪除、清理等,類似於 Windows 中的軟件管理工具。

  • Ubuntu 軟件操作的相關命令

sudo apt-get update 更新源
sudo apt-get install package 安裝包
sudo apt-get remove package 刪除包
sudo apt-cache show package 獲取包的相關信息,如說明、大小、版本等
sudo apt-get -f install 修復安裝
sudo apt-get upgrade 更新已安裝的包
sudo apt-get source package 下載該包的源代碼

  • 更新 Ubuntu 軟件下載地址
  • 尋找國內鏡像源
    https://mirrors.tuna.tsinghua.edu.cn/
    所謂的鏡像源:可以理解為提供下載軟件的地方,比如 Android 手機上可以下載軟件的安卓市場;iOS 手機上可以下載軟件的 AppStore
  • 備份 Ubuntu 默認的源地址
    sudo cp /etc/apt/sources.list /etc/apt/sources.list.backup
  • 更新源服務器列表
    • cd /etc/apt/v
    • echo '' > sources.list 清空 sources.list 文件內容
    • 復制鏡像網站地址,拷貝到 sources.list 中
    • sudo apt-get update 更新源地址
  • Ubuntu 安裝、卸載軟件
  • 使用 apt 完成安裝和卸載 Vim 軟件,並查詢 Vim 軟件的信息
    • sudo apt-get install vim
    • sudo apt-get remove vim
    • sudo apt-cache show vim
  • 遠程登錄 Ubuntu
  • SSH 介紹
    • SSH 為 Secure Shell 的縮寫,由 IETF 的網絡工作小組(Network Working Group)所制定;SSH 為建立在應用層和傳輸層基礎上的安全協議。
    • SSH 是目前較可靠,專為遠程登錄會話和其他網絡服務提供安全性的協議。常用於遠程登錄,以及用戶之間進行資料拷貝。幾乎所有 UNIX/Linux 平台,都可運行 SSH。
    • 使用 SSH 服務,需要安裝相應的服務器和客戶端。客戶端和服務器的關系:如果,A 機器想被 B 機器遠程控制,那么,A 機器需要安裝 SSH 服務器,B 機器需要安裝 SSH 客戶端。
    • 和 CentOS 不同,Ubuntu 默認沒有安裝 SSHD 服務(使用 netstat 指令查看:apt install net-tools)。因此,我們不能進行遠程登錄。
  • 安裝 SSH 和啟用
    • sudo apt-get install openssh-server
      執行上面指令后,在當前這台 Linux 上就安裝了 SSH 服務端和客戶端。
    • service sshd restart
      執行上面的指令,就啟動了 sshd 服務。監聽端口為22。
  • 從一台 Linux 系統遠程登陸另一台 Linux 系統
    在創建服務器集群時,會用到該技術。
    • 兩台 Linux 系統都要安裝 openssh-server
    • 基本語法:ssh 用戶名@IP 比如 ssh root@192.168.188.131
    • 可以使用 exit 或者 logout 命令退出當前賬戶
    • 使用 ssh 訪問,如訪問出現錯誤。可查看是否有該文件 ~/.ssh/known_ssh 嘗試刪除該文件解決。


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM