framebuffer não disponível. Como instalar o dispositivo / dev / fb / 0 no Ubuntu?

3

Estou tentando executar um aplicativo que usa o framebuffer em 2.6.31-14-generic # 48-Ubuntu.

Tudo o que preciso fazer é instalar um dispositivo framebuffer para eliminar o seguinte erro:

/dev/fb/0: No such file or directory
framebuffer not available.
FATAL: no framebuffer available

Eu pesquisei no Google e encontrei alguns recursos indicando para fazer isso no Grub2 - não consegui nada, embora os seguisse sem problemas.

Alguma idéia?

    
por Aleyna 22.05.2010 / 00:46

2 respostas

4

Você precisa ativar os drivers framebuffer, que são sempre desativados por padrão.

Eu configurei estes:

echo "fbcon" | sudo tee -a /etc/initramfs-tools/modules
echo "vesafb" | sudo tee -a /etc/initramfs-tools/modules

E então eu comentei vesafb (isso funciona para todos os cartões que ouvi) em

/etc/modprobe.d/blacklist-framebuffer.conf

Em seguida, atualizamos a configuração:

sudo update-initramfs -u -k all

Estamos quase lá. Agora precisamos procurar por resoluções suportadas para o nosso cartão no framebuffer. Você provavelmente terá que instalar o hwinfo

sudo hwinfo --framebuffer

Você pode ver as resoluções e seu código hexadecimal.

Agora, você pode pressionar a tecla e no momento da inicialização e adicionar vga=[hexadecimalcode] (e.f. vga=0x346 ) ou tornar a alteração permanente em /boot/grub/menu.lst após a palavra defoptions .

Eu achei mais seguro testar a tecla e antes de tocar na configuração do grub para ter certeza de que funciona.

Mais tarde, quando você alternar para tty com Alt+F1-6 , estará na resolução especificada. Você pode usar fbi e outros utilitários.

    
por 30.08.2010 / 18:36
0

Eu achava que o Ubuntu tinha /dev/fbX e não /dev/fb/X dispositivos?

$ cat /etc/lsb-release 
DISTRIB_ID=Ubuntu
DISTRIB_RELEASE=16.04
DISTRIB_CODENAME=xenial
DISTRIB_DESCRIPTION="Ubuntu 16.04.1 LTS"
$ ls -l /dev/fb/*
ls: cannot access 'fb/*': No such file or directory
$ ls -l /dev/fb*
crw-rw---- 1 root video 29, 0 авг 29 11:41 fb0

Tente executar o programa com esse outro nome ou, caso contrário, crie um link para esse arquivo:

# mkdir /dev/fb
# ln /dev/fb0 /dev/fb/0

Execução dos testes:

# sudo dd if=/dev/urandom of=/dev/fb/0
dd: writing to '/dev/fb/0': No space left on device
15001+0 records in
15000+0 records out
7680000 bytes (7,7 MB, 7,3 MiB) copied, 0,501639 s, 15,3 MB/s
# sudo dd if=/dev/urandom of=/dev/fb0
dd: writing to '/dev/fb0': No space left on device
15001+0 records in
15000+0 records out
7680000 bytes (7,7 MB, 7,3 MiB) copied, 0,523867 s, 14,7 MB/s

Funciona na minha caixa, mas YMMV.

    
por 26.10.2016 / 21:36