Aumenta o tamanho do buffer de rolagem do terminal linux

12

Estou usando servidores CentOS 5.4 instalados em uma máquina virtual VMWare sem servidor X.Org instalado, portanto, todo o acesso é via linha de comando e terminal linux. Eu uso Shift-PgUp para ver o buffer de rolagem, mas seu tamanho é muito limitado. Como aumentar o tamanho do buffer de rolagem?

    
por purecharger 15.09.2010 / 18:56

3 respostas

6

Hmm ... não percebi a idade que isso tinha até que eu estava quase terminando. Já que esta área não está bem documentada em nenhum lugar e eu estou quase terminando de digitar a resposta, eu vou continuar assim mesmo.

Se você estiver usando o console Framebuffer, é possível usar o parâmetro "fbcon = scrollback:" no momento da inicialização para aumentar o tamanho do scrollback. Você provavelmente não está usando isso.

Em vez disso, você provavelmente está passando pelo console VGA padrão. Há outro garfo na estrada aqui. Se você tem um kernel compilado com o parâmetro VGACON_SOFT_SCROLLBACK ativado, é possível aumentar o scrollback dos módulos do kernel VGA, alterando VGACON_SOFT_SCROLLBACK_SIZE. Mas você terá que recompilar seu kernel para fazer isso. Veja uma resposta anterior para uma exemplo das coisas a mudar, e Preciso construir um kernel personalizado para detalhes de como fazer isso no CentOS. Eu considero improvável que você esteja disposto a passar por tudo isso, mas se você já está construindo um kernel personalizado, pode ser fácil para você.

Se VGACON_SOFT_SCROLLBACK estiver desativado, você não tem essa opção. Nesse caso, a rolagem é armazenada na memória VGA, o que a torna muito limitada. A única coisa que você pode fazer nesse caso é reduzir o número de terminais virtuais iniciados por padrão.

O kernel padrão do CentOS é construído com estas opções:

CONFIG_VGACON_SOFT_SCROLLBACK=y
CONFIG_VGACON_SOFT_SCROLLBACK_SIZE=64

Então você provavelmente está olhando para o "recompilar o kernel com CONFIG_VGACON_SOFT_SCROLLBACK_SIZE maior" como a opção principal. Talvez você possa mudar para o driver do framebuffer.

Quando confrontado com este problema, ao invés de corrigir o scrollback do kernel, eu usaria apenas a tela. Obtenha muitos outros benefícios também.

    
por 11.05.2011 / 06:06
4

Aqui está um artigo que fala sobre a configuração do tamanho usando um parâmetro de inicialização framebuffer.

Citando brevemente:

The following example refers to GRUB but can be easily adapted to LILO. In GRUB's 'menu.lst', find the appropriate kernel line, and:

a. delete option 'vga=xxx', if present
b. append option 'video=vesabf' or whatever fits your hardware
c. append option 'fbcon=scrollback:128'

The kernel line would then look something like the following;

kernel /vmlinuz root=/dev/sdb5 video=radeonfb fbcon=scrollback:128

    
por 16.09.2010 / 00:45
2

IMHO, você precisa executar este comando:

screen -h 5000

Para que o buffer seja de 5000 linhas.

Claro, você pode especificar o número de linhas conforme sua necessidade.

    
por 10.05.2011 / 10:02