遠(yuǎn)程linux執(zhí)行命令 Linux遠(yuǎn)程操作

遠(yuǎn)程登錄Linux服務(wù)器的命令是什么?

在命令行中輸入命令:

10年積累的網(wǎng)站設(shè)計、成都做網(wǎng)站經(jīng)驗,可以快速應(yīng)對客戶對網(wǎng)站的新想法和需求。提供各種問題對應(yīng)的解決方案。讓選擇我們的客戶得到更好、更有力的網(wǎng)絡(luò)服務(wù)。我雖然不認(rèn)識你,你也不認(rèn)識我。但先網(wǎng)站設(shè)計后付款的網(wǎng)站建設(shè)流程,更有雨湖免費網(wǎng)站建設(shè)讓你可以放心的選擇與我們合作。

ssh username@ip_address -p port

之后系統(tǒng)會提示輸入密碼,輸入后即可登錄

如果不添加-p選項,則默認(rèn)是22端口

還可以使用-l選項輸入用戶名:

ssh -l username ip_address -p port

更詳細(xì)Linux命令介紹請看下圖:

windows在linux遠(yuǎn)程執(zhí)行命令

Python實現(xiàn)linux/windows通用批量‘命令/上傳/下載’小工具 - 奮進的K

python telnet遠(yuǎn)程登錄端口交互執(zhí)行命令 - 玩蛇網(wǎng)

Python中調(diào)用PowerShell、遠(yuǎn)程執(zhí)行bat文件實例_PowerShell_腳本之家

Linux-兩種ssh遠(yuǎn)程執(zhí)行命令方式加載環(huán)境變量區(qū)別

最近在編寫腳本的時候發(fā)現(xiàn)一個問題,在執(zhí)行 kubectl -n kube-system get pods 這個命令的時候,通過 ssh root@ip command 和 ssh root@ip command 登錄后執(zhí)行得到了不同的結(jié)果,

從上面可以看到SSH遠(yuǎn)程執(zhí)行獲取pods失敗了,但是shell窗口執(zhí)行卻成功了,所以我們可以猜到兩者之間一定有什么區(qū)別導(dǎo)致結(jié)果的不同。那么區(qū)別在哪里呢?通過研究發(fā)現(xiàn)兩者的環(huán)境變量存在區(qū)別,通過執(zhí)行printenv可以查看所有設(shè)置的環(huán)境變量:

通過上面可以看到SSH遠(yuǎn)程執(zhí)行的時候是沒有KUBECONFIG這個環(huán)境變量,而Shell窗口是有的,為什么有這個區(qū)別呢?這就要從Linux的bash的四種模式說起。

bash的四種模式:

從上面可以看出不同方式下加載的配置文件不同,那么怎么知道我們是加載了那些配置文件呢? 這里有一個驗證的方法,就是在上面的每個配置文件中添加一句 echo $/etc/profile 這樣的命令,把每個文件的路徑打印出來。當(dāng)配置文件被加載時,會輸出相應(yīng)的文件名,本例中在兩個文件中加了該命令:/etc/pfoile, ~/.bashrc,然后使用不同SSH方式執(zhí)行命令的結(jié)果如下。

只加載了.bashrc文件,未加載/etc/profile。

從輸出可以看到兩個配置都加載了,而KUBECONFIG只定義在/etc/profile中,沒有定義在.bashrc文件中,所以通過 ssh root@ip command 執(zhí)行時沒有拿到KUBECONFIG這個環(huán)境變量從而導(dǎo)致報錯。知道原因后我們就可以將KUBECONFIG環(huán)境變量添加到.bashrc文件即可。

linux 遠(yuǎn)程主機后臺運行任務(wù) 掛起腳本

背景 :工作需要,需要遠(yuǎn)程控制主機使其斷開Xshell后也能一直運行。

關(guān)鍵字 : ,nohup,腳本掛起。

在應(yīng)用Unix/Linux時,我們一般想讓某個程序在后臺運行,于是我們將常會用 在程序結(jié)尾來讓程序自動運行。

鍵入Ctrl + C,發(fā)出SIGINT信號,程序會繼續(xù)運行

方法一、輸入命令:jobs

方法二:輸入命令:ps

fg、bg、jobs、、nohup、ctrl+z、ctrl+c 命令

加在一個命令的最后,可以把這個命令放到后臺執(zhí)行,如

可以將一個正在前臺執(zhí)行的命令放到后臺,并且處于暫停狀態(tài)。

查看當(dāng)前有多少在后臺運行的命令

jobs -l選項可顯示所有任務(wù)的PID,jobs的狀態(tài)可以是running, stopped, Terminated。但是如果任務(wù)被終止了(kill),shell 從當(dāng)前的shell環(huán)境已知的列表中刪除任務(wù)的進程標(biāo)識。

將后臺中的命令調(diào)至前臺繼續(xù)運行。如果后臺中有多個命令,可以用fg %jobnumber(是命令編號,不是進程號)將選中的命令調(diào)出。

將一個在后臺暫停的命令,變成在后臺繼續(xù)執(zhí)行。如果后臺中有多個命令,可以用bg %jobnumber將選中的命令調(diào)出。

法子1:通過jobs命令查看job號(假設(shè)為num),然后執(zhí)行kill %num

法子2:通過ps命令查看job的進程號(PID,假設(shè)為pid),然后執(zhí)行kill pid

前臺進程的終止:Ctrl+c

如果讓程序始終在后臺執(zhí)行,即使關(guān)閉當(dāng)前的終端也執(zhí)行(之前的做不到),這時候需要nohup。該命令可以在你退出帳戶/關(guān)閉終端之后繼續(xù)運行相應(yīng)的進程。

關(guān)閉中斷后,在另一個終端jobs已經(jīng)無法看到后臺跑得程序了,此時利用ps(進程查看命令)

如上所示:

nohup 和 組合了后臺運行程序。

可以輸出到 out.log保存程序輸出,也可以輸出到/dev/null 即空設(shè)備,不保存輸出。

上面三種方式無論在nohup.out 或test.out都看不到數(shù)據(jù)結(jié)果,這是因為python執(zhí)行有緩存輸出

解決

新的接口接入查看程序

使用后臺運行程序:

結(jié)果會輸出到終端

使用Ctrl + C發(fā)送SIGINT信號, 程序免疫

關(guān)閉session發(fā)送SIGHUP信號, 程序關(guān)閉

使用nohup運行程序:

結(jié)果默認(rèn)會輸出到nohup.out

使用Ctrl + C發(fā)送SIGINT信號, 程序關(guān)閉

關(guān)閉session發(fā)送SIGHUP信號, 程序免疫

平日線上經(jīng)常使用nohup和配合來啟動程序:

同時免疫SIGINT和SIGHUP信號

同時,還有一個最佳實踐:

不要將信息輸出到終端標(biāo)準(zhǔn)輸出,標(biāo)準(zhǔn)錯誤輸出,而要用日志組件將信息記錄到日志里

nohup和究竟有啥區(qū)別

網(wǎng)頁名稱:遠(yuǎn)程linux執(zhí)行命令 Linux遠(yuǎn)程操作
文章地址:http://muchs.cn/article8/doccjip.html

成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供Google、全網(wǎng)營銷推廣建站公司、虛擬主機、小程序開發(fā)軟件開發(fā)

廣告

聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶投稿、用戶轉(zhuǎn)載內(nèi)容為主,如果涉及侵權(quán)請盡快告知,我們將會在第一時間刪除。文章觀點不代表本網(wǎng)站立場,如需處理請聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時需注明來源: 創(chuàng)新互聯(lián)

成都網(wǎng)頁設(shè)計公司