
我總是使用多個終端,但在使用前總是必須在每個終端機中輸入登入資訊。如何在 inittab 中指定僅提示 tty1 中的登入訊息,並在成功登入後自動在所有其他虛擬終端中使用相同使用者登入?
答案1
我必須同意第一個評論並使用螢幕。自動登入方法可以工作,但確實不安全。對於家庭來說可能沒問題,但對於生產系統來說,這是一個很大的安全禁忌,並且會讓任何安全警察陷入困境。使用 putty 或任何其他 ssh 用戶端的金鑰的其他答案也很好,但對於直接控制台登錄,我會使用螢幕。
答案2
如果你絕對想這樣做,這裡有一個想法。現在我沒有時間測試我的想法,但這樣的事情可能會起作用:
1)mingetty
如果尚未使用則安裝(它支援--autologin,所以類似的事情1:2345:respawn:/sbin/mingetty --autologin thiado --noclear tty2
應該是可能的
2)有一個正常的/etc/inittab另一個像/etc/inittab.自動登入可用的。對於您的自動登入 tty,請執行/etc/inittab.自動登入包含類似的東西
2:2345:respawn:/sbin/mingetty --autologin thiado --noclear tty2 3:2345:respawn:/sbin/mingetty --autologin thiado --noclear tty3 4:2345:respawn:/sbin/mingetty --autologin thiado --noclear tty4 5:2345:respawn:/sbin/mingetty --autologin thiado --noclear tty5 6:2345:respawn:/sbin/mingetty --autologin thiado --noclear tty6
3)在你的.bashrc或任何測試,如果 1) 目前 tty 是 tty1,如果是,2) 測試所有其他 tty 是否已在使用中。
4) 如果成功登入 tty1,請替換您的正常登入/etc/inittab和/etc/inittab.自動登入並發送 HUP 訊號至明蓋蒂使其重新載入配置。
5)利潤!這應該會使自動登入發生。
另一種替代/etc/inittab 的方法是讓tty1 以運行等級1、2 和3 啟動,而所有其他的則僅以4 啟動。等級 4 init 4
,然後 make ttys消失init 3
(或無論你的正常運作等級是什麼)。
但是,無論是最好還是最壞的情況下,這一切都是令人討厭的駭客行為。不要在家裡嘗試這個,尤其是在工作中。screen
這裡多次提到的是一種更好的方法。
答案3
對於 Windows 用戶端(也適用於 Linux,但過程更簡單,因為您只需複製金鑰即可完成)公鑰身份驗證可以讓您接近。
您使用 ssh-keygen 設定金鑰對,然後透過 putty-gen 執行私鑰,將金鑰檔案轉換為 putty 格式。然後,您使用所需的設定和主機名稱以及透過 putty-gen 運行的私鑰檔案來建立 putty 會話並儲存它。然後,您可以使用 PAgent 自動對您進行身份驗證。然後,您只需右鍵單擊膩子視窗並轉到“複製會話”,您就有一個經過身份驗證並準備就緒的新終端(或使用分頁圖示)。
http://www.ualberta.ca/CNS/RESEARCH/LinuxClusters/pka-putty.html
聽起來很痛苦,但實際上並非如此。大部分內容您只需設定一次(在關閉之間持續存在。)之後,您在啟動 PAgent 時輸入密碼一次,然後只需打開 putty 連接名稱(所有操作均透過時鐘旁的任務欄圖示完成。)
如果您真的喜歡自動化,您可以設定一個啟動任務來進一步自動化(系統會提示您一次輸入密碼):
http://hamisageek.blogspot.com/2009/01/pageant-with-your-ssh-provate-key-added.html
如果您的客戶端是 Linux,您可能會考慮設定一個控制主套接字。它將要求身份驗證一次,然後所有未來的連線都使用該套接字。它使連線時間縮短為幾毫秒,而不是首次登入後的約 2-3 秒。 http://www.linux.com/archive/feed/54498
答案4
使用 X 終端