Devpts 檔案系統¶
現在,devpts 檔案系統的每個掛載都是不同的,在一個掛載中分配的 pty 及其索引與其他所有掛載中的 pty 及其索引無關。
現在,devpts 檔案系統的所有掛載都會建立一個許可權為 0000 的 /dev/pts/ptmx 節點。
為了保持向後相容性,ptmx 裝置節點(也稱為使用 mknod name c 5 2 建立的任何節點)在開啟時,將在與 ptmx 裝置節點相同的目錄中查詢名為 pts 的 devpts 例項。
作為一種選擇,可以不將 /dev/ptmx 裝置節點放在 /dev/ptmx,而是可以將符號連結指向 /dev/pts/ptmx 放在 /dev/ptmx,或者將 /dev/ptx/ptmx 繫結掛載到 /dev/ptmx。 如果您選擇以這種方式使用 devpts 檔案系統,則應使用 ptmxmode=0666 掛載 devpts,或者應該呼叫 chmod 0666 /dev/pts/ptmx。
所有例項中 pty 對的總數受 sysctl 限制
kernel.pty.max = 4096 - global limit
kernel.pty.reserve = 1024 - reserved for filesystems mounted from the initial mount namespace
kernel.pty.nr - current count of ptys
可以透過添加掛載選項 max=<count> 來設定每個例項的限制。
此功能是在核心 3.4 中新增的,同時添加了 sysctl kernel.pty.reserve。
在低於 3.4 的核心中,sysctl kernel.pty.max 用作每個例項的限制。