DebianThis forum is for the discussion of Debian Linux.
Welcome to LinuxQuestions.org, a friendly and active Linux Community.
You are currently viewing LQ as a guest. By joining our community you will have the ability to post topics, receive our newsletter, use the advanced search, subscribe to threads and access many other special features. Registration is quick, simple and absolutely free. Join our community today!
Note that registered members see fewer ads, and ContentLink is completely disabled once you log in.
If you have any problems with the registration process or your account login, please contact us. If you need to reset your password, click here.
Having a problem logging in? Please visit this page to clear all LQ-related cookies.
Introduction to Linux - A Hands on Guide
This guide was created as an overview of the Linux Operating System, geared toward new users as an exploration tour and getting started guide, with exercises at the end of each chapter.
For more advanced trainees it can be a desktop reference, and a collection of the base knowledge needed to proceed with system and network administration. This book contains many real life examples derived from the author's experience as a Linux system and network administrator, trainer and consultant. They hope these examples will help you to get a better understanding of the Linux system and that you feel encouraged to try out things on your own.
Click Here to receive this Complete Guide absolutely free.
I am experimenting with setting up a router-firewall box using a minimaldebian as described on cyberdogtech.com which seems well described even though he says it is a work in progress.
My issue is that it drive me nuts to have a 24x80 console when the video adapter in the PC can do many higher text modes. I would prefer not to recompile the kernel and do not want to run X on this box. I suspect there may be an easy way to configure to use an svga mode like 60x80 or even ??x132 but the only info I can can that does not seem to require recompiling the kernel or running a GUI seems to require using LILO instead of grub to boot (Lilo will take an argument to set a video mode).
Looking for suggestions. I would prefer known solutions as I have not worked much in Linux or Unix for a long time and and am old and forgetful
I was a C Developer in the PC world many years ago and later managed a development group in a Unix environment but never had the time to learn Unix beyond dabbling a bit. So I am basicly a noob with enough background to make this harder than it probably is.
The distro in question is debian 3.1 r0a "Sarge" running on a 933 MHz PIII HP Vectra using the onboard video. It was installed following the directions in the link above.
That did not solve the problem, but helped me get a lot closer. Once I realized the vga=xxxx needed to go in as a kernel argument I got an error during bootup telling me it (ox31B) was an invalid value and offered to give me a list of valid ones. As I had expected, the valid values are for text modes, not graphic ones. Specificly:
1 0x0F00 80x25
2 0x0F01 80x50
3 0x0F02 80x43
4 0x0F03 80x28
5 0x0F05 80x30 Note: 0x0F04 was not presented as valid
6 0x0F06 80x34
7 0x0F07 80x60
Using one of these values seems to work during part of the boot process. However, before the boot up finishes the display reverts back to 80x25. The screen flys by so fast (and there appears to be a CLS in there somewhere) that I have not been able to see what is happening when it reverts. Examining the syslog, I suspect it may be associated with a line that says:
localhost kernel: vesafb: probe of vesafb0 failed with error -6
but that is just a guess based on some reading. I have not been able to find any solid evidence or resolution.
SUMMARY: we seem to be on the right track, but still need some help as I am stuck again. Sure was nice to see a 60 line text console though!
Once again I thank you for the response and found a clue because of it. I had not realized I could scroll back without logging in. I do wish the buffer were bigger as I have always thought it would be useful and instructive to scroll back through the entire boot process set of messages. Anyway, I found a line that says:
"Setting up general console font ... Setting up per-VC ACM's: /dev/tty1 (iso15), /dev/tty2 (iso15), <repeats thru tty6> , done".
This looks like the culprit to me so I tried just watching the bootup several times and it looks like the reversion to 80x25 mode is about this time though I never actually saw this message except by using your scroll back tip.
I have no clue what component/script/... is causing this message or where I might go to change its defaults. Even if there is no way to do that, if I could find a way to reset the vga mode after that process or even after logging in, I would be happy.
To summarize current questions:
1) Is there any way to issue vga mode commands in a text based (no gui) console after logging in?
2) Is there any way to make the boot process issue them after doing the (Setting up general console fonts phase)?
3) Is there any way to increase the console history?
========================== EDITED: Part of answer found I think
Apparently /etc/init.d/console-screen.sh is doing the "Setting up general console ..." and it looks to get its setup info from /etc/console-tool/config. I have not yet read enough to know exactly how to change it safely but think I am on the right track so wanted to let you know before you went off researching. Would be happy to see anything you have to say though.
Just wanted folks to know I am giving up on this issue. It appears that the console screens are quite reasonably set up as virtual terminals running under some terminal emulation which probably knows nothing whatever about svga display modes except for how the virtual terminal is implemented. The English version is that the terminal definition is probably generic enough to not include numbers of lines other than 24 or 25 except when used in a GUI.
In any case, this is more trouble than it is worth at this time. Thanks for your help.
The vga=0xXXX switch wont work on newer debian kernels as the vga framebuffer only uses the standard text modes (ie 80 characters width). You'd need vesafb or something like rivafb, nvidiafb, matroxfb etc.
Try booting with something like "video=vesafb:800x600".
You can prevent the console-tools from resetting the screen by disableing any screen fonts in /etc/console-tools/config and using the default screen font.
My goal here was simply to not run any GUI on that machine and to make there be more lines of text available on the screen and/or history for the console(s).
Actually, the vga=0xXXX on the kernel invocation in /boot/grub/menu.lst DOES work as long as the 0xXXX is for a character mode (see earlier message). If the code is for a graphic mode (or a resolution like the 800x600 you mentioned), the boot process pauses with a message that I have specified an invalid code and offers me a list of valid ones (the afforesaid text mode codes) or to scan the hardware.
The issue is that when console-tools.sh runs vesafb (X is not configured on that machine), it resets the screen to a mode with only 24 or so lines which is what I was trying to make a higher number. I would like it to show 40-50 lines but found no way to do that. NOTE that I did not want to recompile anything. In any case, it seemed not to admit an easy solution and it was not a big item. I do think there probably is a way to have more history available to scroll back to but I choose not to spend more time looking for it.
In any case, thanks for the reply and the good intentions. I thought this summary might make this clearer for any further readers.
Distribution: Debian Wheezy/Jessie/Sid, Linux Mint DE
I posted this same question here about a year ago or so. Same thing, first switching to 132x50, then back to 80x24. Despite of the support I received from helpful people here, I never solved it. I feel sorry about that, because the machine I was working on at that time is used for production and has a screen attached for monitoring and controlling purposes.
I am still wondering where something has gone wrong in the development process of [Debian | Linux] where this decision was made. Too bad, because there are situatuions thinkable where installing X is no option. Text mode is great, and very powerful with virtual terminals and ncurses. Why disable the power?
Oh, I am quite sure the problem is soluable and maybe even through configuration is you can find the right place to do so. The problem is finding the right place/means to fix it in the environment of Unix/Linux development styles which by there very nature are wonderful for the experienced (in the relevant system) developer. Unfortunately, the methods and techniques obfuscate things for the rest of us. I simply decided the desired goal was not important enough to me to invest more time in finding the solution.
That said, let me postulate an answer to your question. I don't think anything has actually gone wrong in the process though I do believe "progress" has left some users behind. The default of a 24x80 screen was simply the lowest common denominator and could be implement for any system even one using an old serial terminal as a console. Some of the other features (like history buffers and multiple consoles on the same display device) implemented reduced the need for other display modes. Then the advent of having a GUI become the common mode of use further reduced the need of most people to use other display modes.
So it is not a surprise to me that the desired configuration is hard to find though I also find it frustrating. My feeling is that the Unix/Linux community has always valued versatility and terseness more than clarity. Most of the documentation seems to be an afterthought and efforts to fix that all seem to stall over time.
The frame buffer support is something that needs to be included in the kernel to be able to select certain resolutions. It does not mean that you are using a GUI however. It is something that you can do without installing X11. Your problem is that your kernel doesn't include fb support and so certain modes like "vga=791" won't work.
Distribution: Debian Wheezy/Jessie/Sid, Linux Mint DE
The default of a 24x80 screen was simply the lowest common denominator and could be implement for any system even one using an old serial terminal as a console.
I could live with that. You need to have lowest common denominators in order to get things going. But I cannot stand that I actually SEE the 132x50 during 2 seconds before it disappears. It means it IS there. You can switch to it. You cannot use it.I don't call that common denominator, I call that a sort of crippling.
My feeling is that the Unix/Linux community has always valued versatility and terseness more than clarity.
Yeah, isn't that great? Especially the versatility.
Most of the documentation seems to be an afterthought and efforts to fix that all seem to stall over time.
No one likes writing documentation. Including myself. I am happy that most programmers write a man page, albeit sometimes very terse.
If you see 132x50 appearing, how can yo have to compile in something additonal to prevent it from disappearing?
It sure is difficult to be understood!!! I apologize if I have not been clear here. The vga TEXT modes work just fine when provided on the kernel invocation command line in /boot/grub/menu.lst. But they only work fine up to the point that console-tools.sh runs vesafb (the aforementioned frame-buffer support) which obviously IS installed since it functions and resets the video mode in order to run its configured console screen emulation.
All of what you say is true and has been stated here previously. Obviously I did not make it clear enough.
Similarly, I did not say that 132x50 support is not present for console-tools. Clearly it is available before console-tools run and it disappears when console-tools is run. But that does not mean the mode is there for console-tools since it had not yet run when 132x50 was showing. I do not know whether console-tools can be configured to do the equivalent of 132x50 either by configuration or re-compiling. In either case it would not do it by simply setting the vga display mode to 132x50. It would have to account for it for all six of the virtual consoles it sets up using memory buffers and I suspect it normally uses a graphics mode and font definitions to actually display the virtual console you happen to be using at any given time. BTW, that is only an educated guess but I believe it to be true if somewhat confusing.
Distribution: Ubuntu, I have tried Debian Sarge 3.1r0a and Fedora Core 2.
I have been looking for this for some time.
The link above was very helpful but Debian doesn't have '/sbin/setsysfont'. I had to go to '/etc/console-tools' and edit the config file (changing permissions had no effect.) In mine, the very last line is: