ssh無密登錄_集群分發腳本xsync

来源:https://www.cnblogs.com/lisingshen/archive/2019/09/22/11569336.html
-Advertisement-
Play Games

1、ssh免密登錄 ssh ip地址 免密登錄配置 生成公鑰和私鑰 將公鑰拷貝到要免密登錄的目標機器上 .ssh文件夾下(~/.ssh)的文件功能解釋 (1)known_hosts :記錄ssh訪問過電腦的公鑰(public key) (2)id_rsa :生成的私鑰 (3)id_rsa.pub ...


1、ssh免密登錄

ssh ip地址

    [root@192 ~]# ssh 192.168.1.102
    [email protected]'s password: 
    Last login: Mon Feb 18 20:40:28 2019 from 192.168.1.101

免密登錄配置

生成公鑰和私鑰

    [root@192 ~]# ssh-keygen -t rsa 
    Generating public/private rsa key pair.
    Enter file in which to save the key (/root/.ssh/id_rsa): 
    Enter passphrase (empty for no passphrase): 
    Enter same passphrase again: 
    Your identification has been saved in /root/.ssh/id_rsa.
    Your public key has been saved in /root/.ssh/id_rsa.pub.
    The key fingerprint is:
    d4:95:6c:a8:21:9b:27:62:79:43:76:e8:4b:32:6c:fe [email protected]
    The key's randomart image is:
    +--[ RSA 2048]----+
    |       .   o..   |
    |      = o...+    |
    |   . = =.o..     |
    |    O O.o        |
    |   + * =S        |
    |    . .          |
    |     .           |
    |      E          |
    |                 |
    +-----------------+
    [root@192 ~]# ls /root/.ssh/
    id_rsa  id_rsa.pub

將公鑰拷貝到要免密登錄的目標機器上

.ssh文件夾下(~/.ssh)的文件功能解釋
(1)known_hosts :記錄ssh訪問過電腦的公鑰(public key)
(2)id_rsa :生成的私鑰
(3)id_rsa.pub :生成的公鑰
(4)authorized_keys :存放授權過得無密登錄伺服器公鑰

    [root@192 ~]# hostname 
    192.168.1.101
    [root@192 ~]# ssh-copy-id 192.168.1.102
    The authenticity of host '192.168.1.102 (192.168.1.102)' can't be established.
    RSA key fingerprint is 56:57:4c:81:94:e0:47:fe:1e:aa:8c:9c:2a:87:a6:dc.
    Are you sure you want to continue connecting (yes/no)? yes
    Warning: Permanently added '192.168.1.102' (RSA) to the list of known hosts.
    [email protected]'s password: 
    Now try logging into the machine, with "ssh '192.168.1.102'", and check in:
    
      .ssh/authorized_keys
    
    to make sure we haven't added extra keys that you weren't expecting.
    
    [root@192 ~]# ls /root/.ssh/
    id_rsa  id_rsa.pub  known_hosts
    [root@192 ~]# ssh 192.168.1.102
    Last login: Mon Feb 18 22:50:53 2019 from 192.168.1.101
    [root@192 ~]# ls /root/.ssh/
    authorized_keys

2、集群分發腳本xsync

伺服器與伺服器數據拷貝

rsync和scp區別:用rsync做文件的複製要比scp的速度快,rsync只對差異文件做更新。scp是把所有文件都複製過去。

scp

    [root@192 ~]# scp -r /tmp/1.txt  [email protected]:/tmp/
    1.txt   

rsync

選項 功能
-r 遞歸
-v 顯示覆制過程
-l 拷貝符號連接

    [root@192 ~]# rsync -rvl /tmp/2.txt [email protected]:/tmp/
    sending incremental file list
    2.txt
    
    sent 84 bytes  received 31 bytes  76.67 bytes/sec
    total size is 13  speedup is 0.11

集群分發腳本xsync

[root@192 ~]# mkdir bin
[root@192 ~]# cd bin/
[root@192 bin]# touch xsync
[root@192 bin]# vim xsync
[root@192 bin]# chmod 777 xsync 
    #!/bin/bash
    #1 獲取輸入參數個數,如果沒有參數,直接退出
    pcount=$#
    if((pcount==0)); then
    echo no args;
    exit;
    fi
    
    #2 獲取文件名稱
    p1=$1
    fname=`basename $p1`
    echo fname=$fname
    
    #3 獲取上級目錄到絕對路徑
    pdir=`cd -P $(dirname $p1); pwd`
    echo pdir=$pdir
    
    #4 獲取當前用戶名稱
    user=`whoami`
    
    #5 迴圈
    for((host=102; host<104; host++)); do
            echo --------------------- 192.168.1.$host ----------------
            rsync -rvl $pdir/$fname [email protected].$host:$pdir
            #echo  ------"rsync -rvl $pdir/$fname [email protected].$host:$pdir complete"------------
    
    
    done

xsync調用

    [root@192 bin]# xsync /tmp/1.txt /tmp/
    fname=1.txt
    pdir=/tmp
    --------------------- 192.168.1.102 ----------------
    sending incremental file list
    1.txt
    
    sent 516 bytes  received 31 bytes  364.67 bytes/sec
    total size is 445  speedup is 0.81
    --------------------- 192.168.1.103 ----------------
    The authenticity of host '192.168.1.103 (192.168.1.103)' can't be established.
    RSA key fingerprint is 56:57:4c:81:94:e0:47:fe:1e:aa:8c:9c:2a:87:a6:dc.
    Are you sure you want to continue connecting (yes/no)? yes
    Warning: Permanently added '192.168.1.103' (RSA) to the list of known hosts.
    [email protected]'s password: 
    sending incremental file list
    1.txt
    
    sent 71 bytes  received 37 bytes  5.84 bytes/sec
    total size is 445  speedup is 4.12


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

-Advertisement-
Play Games
更多相關文章
  • 前言 越來越多的項目已經使用 "Java 8" 了,毫無疑問, "Java 8" 是Java自Java 5(發佈於2004年)之後的最重要的版本。這個版本包含語言、編譯器、庫、工具和 JVM 等方面的十多個新特性。在本文中我們將學習這些新特性,並用實際的例子說明在什麼場景下適合使用。 引用: 本文參 ...
  • R語言構建蛋白質網路並實現GN演算法 1.蛋白質網路的構建 我們使用與人類HIV相關的蛋白質互作數據hunam HIV PPI.csv來構建這個蛋白質互作網路。 在R中,我們可以從存儲在R環境外部的文件讀取數據。還可以將數據寫入由操作系統存儲和訪問的文件。 R可以讀取和寫入各種文件格式,如:csv,e ...
  • 面試題 如何保證消息的順序性? 面試官心理分析 其實這個也是用 MQ 的時候必問的話題,第一看看你了不瞭解順序這個事兒?第二看看你有沒有辦法保證消息是有順序的?這是生產系統中常見的問題。 面試題剖析 我舉個例子,我們以前做過一個 mysql 同步的系統,壓力還是非常大的,日同步數據要達到上億,就是說 ...
  • 發現模塊和集群的形成 目標 發現節點 Master選舉 組成集群,在Master信息發生變化時及時更新。 故障檢測 細分為幾個子模塊 Discovery發現模塊 Discover是在集群Master節點未知時,互相發現對方的過程,例如新節點的加入或是先前的主節點宕機,如果一個節點不滿足Master資 ...
  • JConsole(可視化工具) 運行 JConsole記憶體監控 測試代碼 這裡看到我們有倆個線程。 JPS(JVM Process status) JPS是使用的頻率最高的工具,和linux下的ps命令差不多(把J去掉就是一個ps)。 因為我這裡開啟了一個eclipse,所以運行結果如下所示: 如果 ...
  • 1. 概述 在本教程中,我們將探討如何使用兩種不同的策略改進客戶端重試:指數後退和抖動。 2. 重試 在分散式系統中,多個組件之間的網路通信隨時可能發生故障。 客戶端應用程式通過實現重試來處理這些失敗。 設想我們有一個調用遠程服務的客戶端應用程式—— PingPongService 。 如果 Pin ...
  • 0922自我總結 DJango錯誤日誌生成 setting.py設置 exception.py(拋錯設置) logging.py ...
  • 工作了兩個月了體會到了很多之前做外包小項目沒有的東西,不得不說大廠的還是有自己一套的完善的體制,不會像B站那樣泄露自己整個後臺的源碼這種事情發生。 電腦辦公 比如說在使用電腦辦公這方面,剛入職那天每個人都會領一臺電腦(MAC和Windows都有看工作需要),每個人領的電腦上都裝有 度管家 ,度管家是 ...
一周排行
    -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.數據驗證 在伺服器端進行嚴格的數據驗證,確保接收到的數據符合預期格 ...