最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

Ubuntu向多臺(tái)主機(jī)批量傳輸文件的流程步驟

 更新時(shí)間:2025年09月25日 10:17:36   作者:Tangineer  
這篇文章主要介紹了在Ubuntu中批量傳輸文件到多臺(tái)主機(jī)的方法,需確保主機(jī)互通、用戶名密碼統(tǒng)一及端口開(kāi)放,通過(guò)安裝sshpass工具,準(zhǔn)備包含目標(biāo)主機(jī)信息的hosts.txt文件,并編寫批處理腳本實(shí)現(xiàn)自動(dòng)化傳輸,需要的朋友可以參考下

ubuntu 向多臺(tái)主機(jī)批量傳輸文件

前提:

  • 主機(jī)之間可以相互通信
  • 所有主機(jī)用戶名相同,或開(kāi)放 ssh root 用戶遠(yuǎn)程連接權(quán)限
  • 所有主機(jī)密碼相同,或 root 用戶密碼相同
  • 所有主機(jī)開(kāi)放22端口,或者指定端口

1.安裝 sshpass

sudo apt update
sudo apt install sshpass

2.準(zhǔn)備主機(jī)列表文件

創(chuàng)建一個(gè)名為 hosts.txt 的文件:

vim hosts.txt

格式如下:

root@10.80.14.10
root@10.80.14.13
root@10.80.14.25
root@10.80.14.28
root@10.80.14.34
root@10.80.14.37
root@10.80.14.40
root@10.80.14.43
root@10.80.14.68
root@10.80.14.72
root@10.80.14.75
root@10.80.14.78
root@10.80.14.81
root@10.80.14.87
root@10.80.14.106
root@10.80.14.110
root@10.80.14.113
root@10.80.14.116
root@10.80.14.122
root@10.80.14.125
root@10.80.14.131
root@10.80.14.140
root@10.80.14.143
root@10.80.14.146

如果沒(méi)有指定用戶名,下面的腳本會(huì)默認(rèn)使用 root 用戶。

3.創(chuàng)建一個(gè)批處理腳本

#!/bin/bash

# 配置參數(shù)
SOURCE_PATH="./talimu/bak_run_docker.sh"      # 要傳輸?shù)脑次募?文件夾
DEST_PATH="/home/yy/talimu/talimu"            # 目標(biāo)路徑
HOSTS_FILE="hosts.txt"                        # 主機(jī)列表文件(格式:username@host)
PASSWORD="你的密碼"                          # SSH密碼
SSH_PORT="22"                                 # SSH端口號(hào),默認(rèn)開(kāi)放22
LOG_DIR="transfer_logs_$(date +%Y%m%d_%H%M%S)"

# 創(chuàng)建日志目錄
mkdir -p $LOG_DIR

# 檢查文件是否存在
if [ ! -e "$SOURCE_PATH" ]; then
    echo "錯(cuò)誤:源文件/文件夾不存在"
    exit 1
fi

if [ ! -f "$HOSTS_FILE" ]; then
    echo "錯(cuò)誤:主機(jī)列表文件不存在"
    exit 1
fi

# 統(tǒng)計(jì)總主機(jī)數(shù)
total=$(wc -l < "$HOSTS_FILE")
current=0
success=0
failed=0

echo "開(kāi)始傳輸,總計(jì) $total 臺(tái)主機(jī)..."
echo "使用端口: $SSH_PORT"

# 讀取主機(jī)列表并傳輸
while IFS= read -r line; do
    current=$((current + 1))
    
    # 如果行包含@,則分割用戶名和主機(jī)地址
    if [[ $line == *"@"* ]]; then
        username=$(echo $line | cut -d'@' -f1)
        host=$(echo $line | cut -d'@' -f2)
    else
        # 如果沒(méi)有指定用戶名,使用默認(rèn)用戶root
        username="root"
        host=$line
    fi
    
    echo "[$current/$total] 正在傳輸?shù)?$username@$host..."
    
    if [ -d "$SOURCE_PATH" ]; then
        sshpass -p "$PASSWORD" scp -P $SSH_PORT -r -o StrictHostKeyChecking=no \
            "$SOURCE_PATH" "$username@$host:$DEST_PATH" \
            >> "$LOG_DIR/success.log" 2>> "$LOG_DIR/errors.log"
    else
        sshpass -p "$PASSWORD" scp -P $SSH_PORT -o StrictHostKeyChecking=no \
            "$SOURCE_PATH" "$username@$host:$DEST_PATH" \
            >> "$LOG_DIR/success.log" 2>> "$LOG_DIR/errors.log"
    fi
    
    if [ $? -eq 0 ]; then
        echo "? $username@$host 傳輸成功"
        success=$((success + 1))
    else
        echo "? $username@$host 傳輸失敗"
        failed=$((failed + 1))
    fi
    
    echo "----------------------------------------"
done < "$HOSTS_FILE"

# 顯示傳輸結(jié)果統(tǒng)計(jì)
echo -e "\n傳輸完成!"
echo "成功:$success"
echo "失?。?failed"
echo "詳細(xì)日志保存在:$LOG_DIR/"

到此這篇關(guān)于Ubuntu向多臺(tái)主機(jī)批量傳輸文件的流程步驟的文章就介紹到這了,更多相關(guān)Ubuntu向多臺(tái)主機(jī)批量傳輸文件內(nèi)容請(qǐng)搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!

相關(guān)文章

  • Linux下Makefile的編寫與使用詳解

    Linux下Makefile的編寫與使用詳解

    大家好,本篇文章主要講的是Linux下Makefile的編寫與使用詳解,感興趣的同學(xué)趕快來(lái)看一看吧,對(duì)你有幫助的話記得收藏一下,方便下次瀏覽
    2021-12-12
  • Ubuntu22.04系統(tǒng):fatal:?無(wú)法連接到?github.com

    Ubuntu22.04系統(tǒng):fatal:?無(wú)法連接到?github.com

    這篇文章主要介紹了Ubuntu22.04系統(tǒng):fatal:?無(wú)法連接到?github.com的相關(guān)資料,需要的朋友可以參考下
    2024-03-03
  • Centos7設(shè)置postgresql數(shù)據(jù)庫(kù)開(kāi)機(jī)自啟動(dòng)方式

    Centos7設(shè)置postgresql數(shù)據(jù)庫(kù)開(kāi)機(jī)自啟動(dòng)方式

    本文介紹了在Linux系統(tǒng)上配置PostgreSQL開(kāi)機(jī)自啟動(dòng)的方法,包括復(fù)制啟動(dòng)腳本、修改環(huán)境變量以及設(shè)置開(kāi)機(jī)啟動(dòng)等步驟
    2026-05-05
  • ubuntu無(wú)法ssh遠(yuǎn)程,提示'Permission denied (publickey)'的解決方法

    ubuntu無(wú)法ssh遠(yuǎn)程,提示'Permission denied (publickey

    SSH(Secure Shell)是一種加密的網(wǎng)絡(luò)協(xié)議,用于在網(wǎng)絡(luò)上安全地傳輸數(shù)據(jù),它被廣泛用于遠(yuǎn)程登錄和執(zhí)行命令,有時(shí)候使用SSH登錄時(shí),可能會(huì)遇到錯(cuò)誤消息Permission denied (publickey)導(dǎo)致登錄失敗,這種情況可能由多種原因引起,將探討導(dǎo)致SSH登錄失敗的可能性,并提供解決方案
    2025-04-04
  • Ubuntu14.04搭建Caffe(僅CPU)詳解教程

    Ubuntu14.04搭建Caffe(僅CPU)詳解教程

    這篇文章主要介紹了Ubuntu14.04搭建Caffe(僅CPU)詳解教程,操作系統(tǒng)是Ubuntu 14.04,本文分步驟給大家介紹的非常詳細(xì),具有參考借鑒價(jià)值,需要的朋友可以參考下
    2016-11-11
  • Linux實(shí)現(xiàn)搭建ssh并允許使用root遠(yuǎn)程

    Linux實(shí)現(xiàn)搭建ssh并允許使用root遠(yuǎn)程

    這篇文章主要介紹了Linux實(shí)現(xiàn)搭建ssh并允許使用root遠(yuǎn)程方式,具有很好的參考價(jià)值,希望對(duì)大家有所幫助,如有錯(cuò)誤或未考慮完全的地方,望不吝賜教
    2024-02-02
  • 快速解決linux下中文輸入法問(wèn)題

    快速解決linux下中文輸入法問(wèn)題

    這篇文章主要介紹了linux下中文輸入法問(wèn)題及解決方案,本文給大家介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或工作具有一定的參考借鑒價(jià)值,需要的朋友可以參考下
    2020-07-07
  • linux環(huán)境不使用hadoop安裝單機(jī)版spark的方法

    linux環(huán)境不使用hadoop安裝單機(jī)版spark的方法

    今天小編就為大家分享一篇關(guān)于linux環(huán)境不使用hadoop安裝單機(jī)版spark的方法,小編覺(jué)得內(nèi)容挺不錯(cuò)的,現(xiàn)在分享給大家,具有很好的參考價(jià)值,需要的朋友一起跟隨小編來(lái)看看吧
    2019-04-04
  • 詳解Linux如何生成隨機(jī)數(shù)字和字符串

    詳解Linux如何生成隨機(jī)數(shù)字和字符串

    本篇文章主要介紹了詳解Linux如何生成隨機(jī)數(shù)字和字符串,小編覺(jué)得挺不錯(cuò)的,現(xiàn)在分享給大家,也給大家做個(gè)參考。一起跟隨小編過(guò)來(lái)看看吧
    2018-08-08
  • Ubuntu 20.04 CUDA&cuDNN安裝方法(圖文教程)

    Ubuntu 20.04 CUDA&cuDNN安裝方法(圖文教程)

    這篇文章主要介紹了Ubuntu 20.04 CUDA&cuDNN安裝方法(圖文教程),文中通過(guò)圖文代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來(lái)一起學(xué)習(xí)學(xué)習(xí)吧
    2020-07-07

最新評(píng)論

宽城| 琼结县| 金平| 攀枝花市| 华坪县| 电白县| 鸡东县| 延寿县| 贵州省| 延寿县| 双江| 洱源县| 乌苏市| 福安市| 天台县| 陇川县| 乌鲁木齐县| 阳泉市| 正阳县| 铜梁县| 伊春市| 淮滨县| 伊宁县| 沙湾县| 临泽县| 大庆市| 福安市| 星座| 建湖县| 锡林郭勒盟| 东台市| 道真| 夏邑县| 尉氏县| 福海县| 全州县| 新竹市| 都安| 青浦区| 布尔津县| 会理县|