如何在Linux中不使用功能鍵在TTY之間切換
本簡要指南介紹了在類 Unix 操作系統(tǒng)中如何在不使用功能鍵的情況下切換 TTY。在進(jìn)一步討論之前,我們將了解 TTY 是什么。正如在 AskUbuntu 論壇的一個答案中所提到的,TTY這個詞來自 TeleTYpewriter(電傳打字機(jī))。在 Unix 的早期,連接到計算機(jī)的用戶終端就是機(jī)電的電傳機(jī)或電傳打字機(jī)(簡稱 tty)。從那時起,TTY 這個名稱繼續(xù)用于純文本控制臺。如今,所有文本控制臺都代表虛擬控制臺,而不是物理控制臺。TTY 命令打印連接到標(biāo)準(zhǔn)輸入的終端的文件名。
在 Linux 中切換 TTY
默認(rèn)情況下,Linux 中有 7 個 tty。它們被稱為 tty1、tty2……tty7。1 到 6 的 tty 只是命令行。第 7 個 tty 是 GUI(你的 X 桌面會話)。你可以使用 CTRL+ALT+Fn 鍵在不同的 TTY 之間切換。例如,要切換到 tty1,我們按下 CTRL+ALT+F1。這就是 tty1 在 Ubuntu 18.04 LTS 服務(wù)器中的樣子。

如果你的系統(tǒng)沒有 X 會話, 只需要按下 Alt+Fn 鍵,不需要按下 CTRL。
在某些 Linux 版本中(例如,從 Ubuntu 17.10 開始),登錄屏開始使用 1 號虛擬控制臺。因此,你需要按 CTRL+ALT+F3 到 CTRL+ALT+F6 來訪問虛擬控制臺。要返回桌面環(huán)境,請在 Ubuntu 17.10 及更高版本上按下 CTRL+ALT+F2 或 CTRL+ALT+F7。
目前為止我們看到我們可以使用 CTRL+ALT+Fn(F1 - F7)在 TTY 之間輕松切換。但是,如果出于任何原因你不想使用功能鍵,那么在 Linux 中有一個名為 chvt 的簡單命令。
chvt N 命令讓你切換到前臺終端 N,這與按 CTRL+ALT+Fn 相同。如果它不存在,則創(chuàng)建相應(yīng)的屏幕。
讓我們試試顯示當(dāng)前的 tty:
$ tty
我的 Ubuntu 18.04 LTS 服務(wù)器的示例輸出。

現(xiàn)在讓我們切換到 tty2。為此,請輸入:
$ sudo chvt 2
記住你需要在 chvt 命令一同使用 sudo。
現(xiàn)在,使用命令檢查當(dāng)前的 tty:
$ tty
你會看到 tty 現(xiàn)在已經(jīng)改變了。
同樣,你可以使用 sudo chvt 3 切換到 tty3,使用 sudo chvt 4 切換到 tty4 等等。
當(dāng)任何一個功能鍵不起作用時,chvt 命令會很有用。
要查看活動虛擬控制臺的總數(shù),請運(yùn)行:
$ fgconsole2
如你所見,我的系統(tǒng)中有兩個活動的虛擬終端。
你可以使用以下命令查看下一個未分配的虛擬終端:
$ fgconsole --next-available3
如果虛擬控制臺不是前臺控制臺,并且它沒有打開任何進(jìn)程來讀取或?qū)懭?,并且未在其屏幕上選擇任何文本,則它是未使用的。
要移除未使用的虛擬終端,只需鍵入:
$ deallocvt
上面的命令為所有未使用的虛擬控制臺釋放內(nèi)核內(nèi)存和數(shù)據(jù)結(jié)構(gòu)。簡單地說,此命令將釋放連接到未使用的虛擬控制臺的所有資源。
有關(guān)更多詳細(xì)信息,請參閱相應(yīng)命令的手冊頁。
$ man tty$ man chvt$ man fgconsole$ man deallocvt
就是這些了。希望這很有用。還有更多的好東西。敬請關(guān)注!


























