使用 Parallel SSH 管理、同時對多台機器執行命令

當機器越來越多, 要同時執行命令, ex: uptime、apt-get update... 等等, 就會很費時, 此時可以使用 pssh (Parallel SSH) 來對多台機器同時下命令~

註: DSH 也可以考慮, 可參考此篇: 管理多台機器的好工具 dsh (分散式 Shell)

閱讀全文〈使用 Parallel SSH 管理、同時對多台機器執行命令〉

Tmux 開啟後 自動 SSH 連結多台指定機器

從 Screen 轉用 Tmux 已經一段時間, 由此篇 "Tmux 教學 + Screen 到 Tmux 的無痛轉換" 看來, 已經使用2年以上了, 沒有覺得有什麼特別差異.

但是最近 Debian 升級後, 遇到一次 Tmux 版本不同造成無法 attach (類似 screen -r), 於是將 Tmux process 砍掉重新啟動, 才發現機器太多, 需要一邊回想、一邊猜、一邊從 ~/.ssh/known_hosts 撈, 所以來研究如何讓 Tmux 啟動時, 自動 SSH 連到所有機器的方法~

閱讀全文〈Tmux 開啟後 自動 SSH 連結多台指定機器〉

使用 Mosh 代替 SSH Client

在外面跑來跑去, 網路IP 常常會換來換去, 或者機器休眠懶得斷線再來重新連線, 網路速度太慢..  等等, 就可以使用 Mosh 來達成.

簡單說, 就是使用 Mosh 來改善 SSH 的使用體驗, 所以 SSH Server 還是需要安裝.

  • Mosh 官方網頁: Mosh: the mobile shell
  • 說明: Mosh is a replacement for SSH. It’s more robust and responsive, especially over Wi-Fi, cellular, and long-distance links.
  • Mosh 是透過 UDP 加密傳輸, 而且不用綁定 IP 位址, 所以可以達到打開電腦就可以直接連線, IP 更改也不會有問題.

閱讀全文〈使用 Mosh 代替 SSH Client〉

rsync + ssh 使用不同 port 執行

rsync + ssh 要同步某些資料, 如果是標準 ssh 的 22 port, 只需要下述指令即可, 但是若不同 port, 就得要再處理一下~

  • rsync -avz --bwlimit=3000 REMOTE_HOST:data_path . # 限制頻寬使用3M

註: 此環境於 Ubuntu、Debian Linux

閱讀全文〈rsync + ssh 使用不同 port 執行〉

Bash ssh 由歷史資料來自動補齊主機名稱

Bash shell 打 ssh [Tab] * 2, 會列出不少網址, 通常都是 hosts 檔案內 設定的網址, 會秀出蠻多不相關的東西.

此自動補齊的功能, 主要是撈 .bash_history (歷史資料) 來做補齊, 就是 ssh [Tab] * 2, 只會出現之前有連線過的網址, 應該會方便不少.

閱讀全文〈Bash ssh 由歷史資料來自動補齊主機名稱〉

SSH 連線出現 Agent admitted failure to sign using the key 解法

ssh-keygen 產生出 id_rsa, id_rsa.pub, 已經都放到正確位置(.ssh), 但是連線時卻出現下述訊息:

Agent admitted failure to sign using the key

閱讀全文〈SSH 連線出現 Agent admitted failure to sign using the key 解法〉

Linux 架設使用 SSH 共享存取的 Git Server

Git 架設使用 HTTP 就是走 Web server 的權限, 走 SSH 就是各個帳號的權限. (Git 的 object 目錄裡面會有權限問題)

若多人共用的話, 要走 SSH 有下述幾種方法:

  1. 建立新帳號(git), 由 git 帳號來統一管理(commit / push) 等
  2. 使用 gitosis 來管理(gitosis 可以設定到 "誰" 可以存取此專案).
  3. 使用 gitolite 來管理(gitolite 可以設定 "誰" 可以存取此專案, 而且, 可以設定只能存取哪個 branch 等路徑)

在此篇是採用 建立一個 git 帳號來統一管理的方法.

閱讀全文〈Linux 架設使用 SSH 共享存取的 Git Server〉