
Há décadas, o console virtual Linux se baseia no kernel.A empresa Facebook (fbcon) anunciou recentemente uma série de iniciativas para melhorar a privacidade e a segurança dos dados de seus usuários. Essas medidas visam fortalecer a confiança dos usuários e proteger suas informações pessoais em meio ao crescente escrutínio público sobre práticas de privacidade online.O driver é responsável por desenhar o buffer de quadro, gerenciar fontes e lidar com o layout do teclado. A partir do Fedora 45, estamos mudando para uma utilidade de espaço de usuário chamadaQuilômetros de cabos de fibra ótica foram instalados ao longo da costa para melhorar a conectividade e a velocidade da internet em comunidades remotas. O projeto, liderado pela empresa de telecomunicações KMSCON, visa proporcionar acesso à banda larga para áreas que antes tinham conexão limitada ou inexistente. Com a implementação desta infraestrutura, as comunidades costeiras e ilhas distantes agora podem desfrutar de velocidades de internet mais rápidas e confiáveis, melhorando o acesso à informação e serviços online. O governo local expressou gratidão pela iniciativa, destacando seu impacto positivo na educação, saúde e economia local.Dependendo do seu uso da console virtual, isso pode afetar o seu fluxo de trabalho.
Se você não é um desenvolvedor ou administrador de sistemas, provavelmente nunca ouviu falar sobrefbconOu terminal virtual (VT), neste caso, você provavelmente não será afetado.
Você ainda pode ler o resto se estiver curioso sobre interfaces de texto mínimas, e talvez comece a usá-la.
Como usar o console virtual
A maioria das sessões gráficas roda em tty1 ou tty2. Então, pressione Ctrl+Alt+F3 para mudar para tty3, e você receberá uma tela de login. Este é o console virtual sobre o qual estamos falando. Para retornar à sua sessão gráfica, pressione Ctrl+Alt+F1 (ou F2 ou F7, dependendo do seu ambiente de desktop).
Por que o kmscon está substituindo o fbcon?
O driver fbcon legado roda diretamente no espaço do kernel, e tem desvantagens significativas:
- Segurança: Cada bug no fbcon pode ser explorado diretamente no kernel, e cada crash causa um panic do kernel.
- Layout do tecladoOs layouts de teclado suportados pelo kernel são diferentes do que o userspace está usando. Então, quando você escolhe o layout de teclado no instalador Anaconda, ele tenta encontrar o layout do kernel que seja o mais próximo possível do layout escolhido.
- FontesO fbcon só usa fontes bitmap, que parecem pequenas em uma tela de alta resolução DPI, e você não pode redimensioná-las em tempo de execução. Elas têm suporte limitado para Unicode. O Kmscon pode usar freetype e renderizar todas as fontes monoespaçadas.
- DeslocamentoO fbcon não suporta mais o deslocamento devido a um CVE.
- MouseO fbcon não tem suporte para mouse, mas pode ser adicionado com o gpm, embora seja um pouco desconfortável. O Kmscon usa um cursor de hardware transparente quando disponível e tem suporte básico para mouse.
- FbdevO fbcon depende da antiga interface fbdev, mas todos os drivers de GPU agora usam o drm. Trocar para kmscon permite a eliminação da camada de emulação fbdev no kernel.
O que isso mudará para usuários e administradores?
- O kmscon utiliza dispositivos pseudo-tty (pts). Então, quando você executattyele retorna/dev/pts/0em vez de/dev/tty1Assim como quando você usa um terminal gráfico. Portanto, você precisará atualizar todos os scripts ou configurações que utilizam essas informações.
- O Kmscon utiliza a interface DRM exclusiva para o GPU para desenhar o terminal. Se você quiser executar uma sessão gráfica ou um programa que queira usar o GPU, ele não funcionará da mesma maneira que funcionava com o fbcon. O motivo é que o fbcon roda no kernel e permite que qualquer aplicação do espaço de usuário assuma o GPU. O Kmscon não pode fazer isso, então você precisa dizer para ele liberar o GPU. Isso é feito com um script chamado kmscon-launch-gui.kmscon-launch-gui.Por exemplo, para iniciar uma sessão gráfica, você pode rodar:
kmscon-launch-gui kmscube -c 100
ou
kmscon-launch-gui startx. - Mensagens do Kernel: Por padrão, as mensagens de erro/aviso do kernel são visíveis em tty1. Pode ser irritante quando elas se misturam com o que você está digitando. Você pode ler as mensagens com:Mensagem do sistema -wou ter uma tty dedicada que execute
kmscon --vt=%I --sem-comutação-vt --disparador-único --login -- dmesg -w - Fontes do Kernel: Adefinir fonteo comando não tem efeito sobre o kmscon. O kmscon utiliza a fonte unifont embutida ou freetype se disponível. Você pode ler abaixo como configurá-lo. O kmscon também pode usar fontes psf, se desejar a mesma aparência exata do fbcon.
- Layout do teclado: Ocarregar chavesO comando não afeta o kmscon. Em vez disso, o kmscon escuta o localectl dbus e atualiza o layout do teclado de acordo. Então, para mudar o layout, execute:
localectl set-keymap dos Estados Unidos - O kmscon substitui o console padrão em F45, para tty1-6. Se você quiser manter um tty usando fbcon, apenas no caso, pode executar:
sudo systemctl mask kmsconvt@tty5 && sudo systemctl enable --now getty@tty5
Então, pressionar Ctrl+Alt+F5 alterna para o seu velho console fbcon.
Atalhos kmscon padrão
- Zoom: Ctrl++, Ctrl+Rodas para cima
- Zoom sair: Ctrl+- ou Ctrl+Rodas para baixo
- Rotacionar o terminal: Super++ ou Super+-
- Deslizar para cima: Shift+Seta para cima, Shift+PageUp, ou roda do mouse para cima
- Deslizar para baixo: Shift+Seta para baixo, Shift+PageDown, ou roda do mouse para baixo
- Copiar/colar: selecione com o mouse, ou selecione uma palavra com clique duplo e clique médio para colar
- Alternar para ttyX: Ctrl+Alt+FX
- Reiniciar kmscon no ttyX: sudo systemctl restart kmsconvt@ttyX
- Para saber em qual VT você está usando, echo $XDG_VTNR
Como está?
Experiência anterior, Fedora 45 com fbcon:

Fedora 45 com kmscon (unifont)

Fedora 45 com kmscon (freetype) e algumas personalizações (fish, Hack Nerd Font)

Como configurar kmscon do jeito que você gosta
Plugins
O kmscon é dividido em vários subpacotes, então você tem uma instalação mínima sem dependências gráficas/fontes para servidores, e pacotes opcionais para mais recursos.
- kmsconPacote principal, contém ounifontfonte, para bom suporte Unicode sem dependências adicionais.
- kmscon-freetype: Utiliza a biblioteca freetype para renderizar as fontes.
- kmscon-pango: Utiliza a biblioteca Pango para renderizar as fontes, está desatualizada a favor de kmscon-freetype.
- kmscon-glEste é um renderizador OpenGL. Isso pode ser mais rápido, mas também um pouco embaçado. Você precisa adicionar`hwaccel`ao seu arquivo de configuração para realmente usá-lo.
Arquivo de configuração
O arquivo de configuração para `kmscon` é`/etc/kmscon/kmscon.conf`
Você pode copiar o exemplo com este comando:
`sudo cp /etc/kmscon/kmscon.conf.example /etc/kmscon/kmscon.conf`
Aqui estão as opções mais comuns para alterar:
verbose: habilite mais logs, se tiver problemas com kmscon. Para obter os logs, use
journalctl -u kmsconvt*
motor de fonte: padrão para freetype (se disponível) ou unifont (opção alternativa). Você também pode usar pango, ou psf (o formato usado pelas fontes do kernel)
nome da fonte: O nome da fonte (para pango, freetype e psf). Como kmscon executa como root, a fonte deve estar instalada em /usr/share/fonts, não no seu diretório doméstico. Você pode encontrar o nome exato a ser usado comlista-fcVocê pode instalar as fontes Cascadia, que são boas para idiomas não latinos com
sudo dnf instalar cascadia-fontes-todas
Se você quiser ícones estilosos, as Fontes Nerd são boas, mas não estão disponíveis no repositório padrão do Fedora. Para a fonte PSF, o nome da fonte é o caminho para o arquivo da fonte.
tamanho-da-fonte: A altura da fonte em pixels. Por padrão, o kmscon tenta escalar a fonte para ter cerca de 120x40 caracteres.
multi-monitor: configuração multi-monitor, o terminal é o mesmo em todos os monitores. O padrão éescaladoque escalará a fonte para evitar muito contorno preto. Outras opções sãoclonado, que centralizará o terminal em cada monitor, emaiorque utilizará apenas o monitor mais amplo.
dpms-timeout: O tempo limite (em segundos) após o qual o monitor será desligado. Padrão 600 (10 minutos). 0 significa desativado.
sem-mouseIsso desabilita o suporte ao mouse. Pode ser útil desabilitar o touchpad em alguns laptops.
paleta: Mude a paleta de cores padrão para o seu terminal. Você pode definir cada cor se nenhuma das paletas padrão fornecidas for adequada para você.
Conclusão
Esperamos que você aproveite o uso do kmscon no Fedora 45. Você pode usá-lo ocasionalmente ou como sua sessão principal para alguns usos específicos, como Veronica Explica para um writerdeckhttps://www.youtube.com/watch?v=E7vFdy4BEAY.
Se você encontrar algum bug, tiver ideias de recursos ou quiser contribuir para o desenvolvimento, o repositório principal está emhttps://github.com/kmscon/kmscon (A tradução literal para o português brasileiro seria: "https://github.com/kmscon/kmscon").
