/dev/console
是做什麼用的?
從這個對Linux 的回答: /dev/console 、 /dev/tty 和 /dev/tty0 之間的區別
從 文件中:
/dev/tty Current TTY device /dev/console System console /dev/tty0 Current virtual console
在過去的美好時光
/dev/console
是系統管理員控制台。TTY 是使用者連接到伺服器的串列設備。現在/dev/console
和/dev/tty0
代表目前顯示和通常是一樣的。console=ttyS0
例如,您可以通過添加來覆蓋它grub.conf
。之後,您/dev/tty0
的是顯示器並且/dev/console
是/dev/ttyS0
。通過“系統控制台”,
/dev/console
看起來像是文本物理終端的設備文件,就像/dev/tty{1..63}
虛擬控制台的設備文件一樣。通過“
/dev/console
和/dev/tty0
代表目前顯示和通常相同”,/dev/console
在我看來它也可以是虛擬控制台的設備文件。/dev/console
看起來更像/dev/tty0
不是/dev/tty{1..63}
(/dev/tty0
是目前活動的虛擬控制台,可以是任何一個/dev/tty{1..63}
)。是什麼
/dev/console
?這有什麼用途?
/dev/console
Linux核心的作用與/dev/tty
程序的作用相同嗎?(/dev/tty
是程序的程序會話的控制終端,可以是一個pts,/dev/ttyn
在哪裡n
是1到63,或者更多?)另一個回复提到:
核心文件
/dev/console
將字元設備指定為編號為 5:1 的字元設備。打開這個字元設備會打開“主”控制台,它是控制台列表中的最後一個 tty。“控制台列表”是否意味著引導選項
console=
中的所有 ’ ?“
/dev/console
作為編號為 5:1 的字元設備”是否意味著這/dev/console
是物理文本終端(即係統控制台)的設備文件?(但同樣,我上面引用的第一個回复說/dev/console
可以與/dev/tty0
不是物理文本終端,而是虛擬控制台相同)謝謝。
/dev/console
存在主要是為了將核心的控制台暴露給使用者空間。Linux 核心的設備文件現在說控制台設備
/dev/console
是應該向其發送系統消息的設備,並且在單使用者模式下應該允許登錄。從 Linux 2.1.71 開始,/dev/console
由核心管理;對於以前的版本,它應該是指向/dev/tty0
特定虛擬控制台(如/dev/tty1
)或串列埠主(tty*
不是cu*
)設備的符號連結,具體取決於系統的配置。
/dev/console
,具有major 5和minor 1的設備節點,提供對核心認為是其與系統管理員互動的主要方式的任何訪問;這可以是連接到系統的物理控制台(頂部有虛擬控制台抽象,因此它可以使用Ntty0
介於 1 和 63 之間的任何ttyN
位置),或者串列控制台,或者管理程序控制台,甚至是盲文設備。請注意,核心本身不使用: devices 節點用於使用者空間,而不是用於核心;但是,它會檢查是否存在且可用,並設置其標準輸入、輸出和錯誤指向./dev/console``/dev/console``init``/dev/console
如此處所述,
/dev/console
它是具有固定主要和次要的字元設備,因為它是一個單獨的設備(如訪問核心的一種方式;不是物理設備),不等同於/dev/tty0
或任何其他設備。這有點類似於它自己的設備 (5:0)的情況,因為它提供的功能與其他虛擬控制台或終端設備略有不同。/dev/tty
“控制台列表”確實是由
console=
引導參數定義的控制台列表(或預設控制台,如果沒有的話)。您可以通過查看以這種方式定義的控制台/proc/consoles
。/dev/console
確實提供了對其中最後一個的訪問:您可以在核心命令行上指定多個 console= 選項。輸出將出現在所有這些上。打開時將使用最後一個設備
/dev/console
。