Changer le nombre de lignes et de colonnes dans le TTY

Je veux resize le terminal qui apparaît lorsque vous appuyez sur Ctrl Alt F1 (ou F2 , F3 , …). 25×80 est petit pour un écran de 24 ".

Essayé en utilisant stty, mais les commands stty columns 200 et stty rows 50 ne fonctionne pas directement. Ai-je oublié quelque chose OU est-ce une mauvaise approche.

Idéalement à la search d'une solution généralisée, mais serait content de quelque chose qui fonctionne dans RHEL5 et Ubuntu. Ce serait mieux si c'est possible en utilisant des commands que je peux mettre dans un file de script plutôt que de changer certaines choses au niveau du démarrage.

Il existe deux principaux types de consoles en verre sous Linux: les modes graphique et text.

Vous obtenez des consoles charts si votre sous-système video est pris en charge directement par le kernel Linux et que vous avez activé ceci / ne l'a pas désactivé (dépend de la dissortingbution). S'il y a un pilote, votre écran sera détecté automatiquement et vous obtiendrez (par défaut) du text 9 × 16 pixels à sa résolution native. Ensuite, vous aurez le problème inverse: petit text. Si CONFIG_FONTS et CONFIG_FONTS_* sont activés dans le kernel, vous pouvez changer la police d'amorçage en quelque chose de plus volumineux ou simplement charger une police plus grande après le démarrage du système. Il existe deux façons de modifier la résolution elle-même si elle ne parvient pas à détecter automatiquement:

  • Les "dieux, je me sens si vieux", avec l'argument de command line du kernel vga= , comme détaillé dans ce post du forum . Bien sûr, vous devez reconfigurer votre chargeur de démarrage pour cela. L'option vga= permet d'get les deux modes text (modes <256) et compatibles VESA (modes ≥ 256). Ce dernier sera graphique mais non accéléré, donc faire défiler un très grand framebuffer peut sembler intéressant, car les valeurs lentes sont «intéressantes».
  • La nouvelle façon, en utilisant le réglage du mode kernel . Si vous en apprenez un, apprenez celui-ci à less de faire beaucoup de travail embedded ou rétro. La méthode vga= peut disparaître à un certain moment.

Si votre carte video n'est pas prise en charge, son pilote n'est pas chargé, etc., vous vous refindez avec une console en mode text. Les consoles de mode text sont limitées par la gamme de modes text de votre carte graphique. 80 × 25, 80 × 43 et 80 × 50 sont les standards VGA. Les maps VGA et SVGA d'origine non-IBM avaient toujours de beaux modes de text supplémentaires, mais les maps modernes ne le font généralement pas ("qui voudrait jamais du text?"). Il y a une solution ici: vous pouvez manipuler les registres VGA directement pour reprogrammer la partie de la puce du CRTC afin d'get des résolutions plus élevées. Un programme des années 90 appelé SVGATextMode pourrait le faire pour vous sans reconfiguration du kernel. C'était un peu comme xrandr , mais pour les consoles de text, et peut-être encore travailler pour vous. Je l'ai aimé: je pouvais get quelque chose de bizarre comme 100 × 37 sur mon CRT 14 "merdique. Cela a rendu décent pour le développement en 1994. Pour définir un mode au démarrage, votre seul recours est d'utiliser vga= et utiliser un VESA mode.

À propos de la command stty : elle indique au kernel votre terminal, mais ne peut pas changer le terminal lui-même. stty rows 200 dira au kernel que votre terminal de verre connecté à distance a 200 lignes par écran. Pourquoi c'est le cas est expliqué dans les réponses à cette question .