Postagens

Morreu o Fórum Guia do Hardware

Imagem
https://www.hardware.com.br/comunidade/ Morte protocolar. Estava moribundo há mais de uma década, quando parei de frequentá-lo. Escrevi sobre isso aqui . Manter um fórum em alto nível é difícil. No caso do FGdH, a administração e a moderação aceleraram seu declínio. O que sobrou daquela época foi um doente terminal que vegetou por tempo demais.

GPUs mínimas para uma boa experiência no desktop Linux…

Imagem
…considerando o Arch Linux. E sem gambiarras. A linha de corte para um desktop performático começa em GPUs Intel Gen 8 ou superior, ou seja, nos processadores Intel Core de 5ª Geração (Broadwell) em diante. Essas arquiteturas possuem suporte completo e maduro ao Vulkan através do driver anv do Mesa (e ao OpenGL via iris ). Em contrapartida, CPUs de 3ª e 4ª gerações — GPU Gen 7 (Ivy Bridge) e Gen 7.5 (Haswell) — dependem do driver Vulkan hasvk , que é limitado — embora o OpenGL ainda seja bem atendido de forma retroativa pelo driver crocus , que estende seu suporte desde a antiquíssima arquitetura Gen 4, do longínquo chipset i965 para Core 2 Duo. Há uma nuance com modelos da AMD. Até o kernel 6.18, o módulo amdgpu — um requisito obrigatório para a integração com o driver Vulkan radv do Mesa — suportava por padrão apenas a arquitetura GCN 3 (Volcanic Islands) e superiores. A partir do kernel 6.19, o amdgpu passou a ser o padrão também para as gera...

ZeroNG

Imagem
O finado Zero Linux dava trabalho para manter, pois muita coisa era compilada na mão. Um Linux pequeno , de modo texto, que rodasse da memória, ainda me fazia falta para tarefas de apagamento de unidades de disco, tendo alguns programas adicionais para outros fins. Cheguei à conclusão que poderia aproveitar praticamente tudo do Fedora, ganhando de brinde suporte ao secure boot. Aqui está! Download: https://www.mediafire.com/folder/xr3hzopxkj68n/zerong Binários do Fedora, espinha dorsal em C , dois programas caseiros ( limpadsk , rmusbbdev ) e uns shell scripts auxiliares. Inicia tanto em BIOS/CSM quanto UEFI. Secure boot suportado [1] . Pendrive pode ser criado com o Rufus . Extraindo o conteúdo do arquivo ISO para um pendrive em FAT/FAT32 automaticamente funcionará em UEFI sem ajustes adicionais. Gravação com o dd não é suportada. Esta é uma atualização do texto publicado originalmente em agosto de 2022, motivada por duas mudan...

Samba: SMB Directory Leasing e alterações feitas localmente

Imagem
O Samba 4.22 introduziu o SMB Directory Leasing , habilitado por padrão, que permite aos clientes armazenar em cache a listagem de diretórios por mais tempo. O servidor só notifica os clientes para invalidarem esse cache quando detecta mudanças. Isso acontece, porém, apenas quando as alterações ocorrem via protocolo SMB por outro cliente. Assim, modificações feitas diretamente no sistema de arquivos Linux não são percebidas pelo Samba; os clientes continuam usando o cache antigo e podem levar minutos até verem as mudanças. Vídeo sobre o recurso: Pelo que entendi, há previsão para implementação de monitoramento de mudanças locais usando o smbd-notifyd (um processo auxiliar para esse tipo de tarefa), mas na versão 4.23 a integração ainda não existe. Portanto, se você precisa que alterações locais sejam imediatamente refletidas nos clientes, desative o recurso na seção [global] de /etc/samba/smb.conf : smb3 directory leases = No Em cenários ...

Jogos do Xbox One no Series S

Imagem
Após jogar um pouco mais no meu Xbox Series S , compreendi melhor como os títulos para Xbox One funcionam nele. A Microsoft é reconhecida por oferecer uma excelente retrocompatibilidade em seu ecossistema. Neste texto, o foco será exclusivamente nos jogos do One, deixando de lado os do 360 e do Xbox original (cujo funcionamento em si é impressionante), visto que não possuo nenhum desses. O cenário ideal ocorre quando o estúdio pega o código-fonte do jogo, faz as adaptações necessárias e lança uma versão nativa otimizada para Series X|S ( XboxGen9 ). Nessa situação, todo o potencial da arquitetura RDNA 2 pode ser aproveitado — Ray Tracing, Mesh Shaders, Sampler Feedback, entre outros. Além disso, o desenvolvedor leva em conta apenas a CPU Zen 2 para melhor IA, física e outras lógicas de jogo, sem precisar considerar os raquíticos núcleos Jaguar da CPU do One e One X. Existe também um caminho intermediário: o desenvolvedor mantém o jogo compatível ...

Mais um driver NTFS no Linux

Quando escrevi sobre o driver ntfs3 ( 1 , 2 , 3 ), imaginei que haveria tração suficiente da comunidade para aprimorá-lo, com uma manutenção competente da Paragon. Não foi o que aconteceu. Quatro anos depois, o código funciona, mas está longe de alcançar a estabilidade necessária. Ainda não suporta a montagem de volumes NTFS sujos — aqueles não desmontados corretamente —, processo conhecido como journal replay , no qual o driver consulta o histórico de transações e refaz as operações incompletas (e ignora as não commitadas) para restaurar a atomicidade e a consistência do sistema de arquivos. Esse recurso foi prometido desde o início e, até hoje, está quebrado. Além disso, o código usa APIs obsoletas do kernel, que, embora suportadas, revelam uma manutenção precária. A Paragon também prometeu ferramentas para criação e, especialmente, verificação de volumes NTFS, mas não cumpriu. Agora, surge o anúncio do ntfsplus : https://lore.kernel.org/lkml/2025...

Stray

Imagem
Stray é um encantador jogo em terceira pessoa onde você assume o controle de um gato sem nome. Após um acidente, ele se vê em uma cidade isolada do mundo exterior, selada por muros e uma cobertura de concreto. Separado de sua família felina, o gato explora um cenário cyberpunk habitado por robôs amigáveis, os Companheiros, que reverenciam os humanos, extintos há muito tempo por causa de uma epidemia. Ao lado do B-12, um pequeno drone que carrega a consciência digital de um cientista falecido, o gato enfrenta os perigosos Zurks, criaturas mutantes nascidas de uma bactéria criada pela Neco Corporation para processar lixo. A partir do Centro da Cidade, também é preciso esquivar-se de Sentinelas robóticas armadas com lasers, exigindo furtividade para avançar. Explorando os diálogos com os robôs, as memórias que o B-12 adquire e lendo murais pelo cenário, descobrimos que a cidade foi criada como um refúgio para os humanos de um exterior inab...

X11 não está morto

Imagem
O recente fork do Xserver do projeto X.Org, chamado XLibre , reacendeu o debate sobre se o Xserver estaria morto. Os desenvolvedores do fork argumentam, com razão, que há pouco interesse dos atuais mantenedores no Xserver, tratado abertamente como obsoleto. O código está em modo de manutenção mínima, com foco em atualizações de segurança e correções ocasionais de bugs graves, enquanto outros problemas e solicitações de mesclagem se acumulam. Um desenvolvedor que buscava impulsionar o Xserver introduziu inúmeras mudanças que quebravam API e ABI, algo inaceitável sem clara necessidade ou coordenação, já que drivers precisam ser ajustados e recompilados — e muitos deles, vale notar, também estão sem manutenção ativa. Várias alterações foram aceitas, mas muitas foram revertidas após usuários abrirem relatórios de bugs. A cada lote de mudanças, surgiam novos bugs relatando quebra de funcionalidades. O último veio de um programador da Nvidia, que repo...

Continuando nos consoles

Imagem
Meu velho Xbox One original estava pedindo socorro. Os tempos de carregamento do HDD interno de 500 GB testavam minha paciência. Um SSD SATA até ajudaria, mas eu ficaria preso a uma geração antiga, com cada vez menos novos jogos AAA. Postei no fórum Clube do Hardware um resumo da minha pesquisa inicial enquanto decidia o próximo passo. Descobri que a Microsoft não monta mais consoles no Brasil — são todos importados. O Series X desapareceu do mercado, enquanto o Series S está disponível em lojas menores em marketplaces (não sei por que grandes varejistas, como a Amazon, não o vendem). Sobre a garantia: as unidades vindas da China para distribuição no Brasil, com caixa e folhetos em português e cabo de força no padrão brasileiro, têm garantia aqui, desde que acompanhem a nota fiscal. Decidi, então, comprar um Xbox Series S por R$ 2500, após confirmar com um vendedor confiável do Mercado Livre que era o modelo para distribuição no nosso país....

Literatura cyberpunk — Neuromancer

Imagem
Neuromancer, de William Gibson, publicado em 1984, é o marco fundador do cyberpunk. O livro reúne os elementos que definiram o gênero: implantes cibernéticos, ciberespaço, a matrix — uma realidade virtual imersiva —, inteligências artificiais, vírus de computadores, transmissões de simstim — um link que acessa, à distância, os sentidos físicos, mas não os pensamentos —, corporações, submundos sujos, drogas, criminalidade, sexo, visuais de neon, cenários futuristas, viagem espacial. A trama apresenta elementos estranhos e fascinantes, como a cabeça falante da Tessier-Ashpool, um busto mecânico que reflete a excentricidade da corporação familiar, as projeções de Riviera, ilusões psicológicas manipuladas na mente alheia, Hideo, um ninja que serve como guardião leal da Tessier-Ashpool, e Zion, uma colônia espacial de rastafáris. A narrativa acompanha Case, um talentoso hacker em decadência. Incapaz de acessar a matrix devido a uma lesão neurológica caus...

Literatura cyberpunk — Androides Sonham com Ovelhas Elétricas?

Imagem
Eu gosto da temática cyberpunk, dos visuais em filmes, jogos e artes gráficas. Ao pesquisar literatura relacionada, descobri obras importantes. A pedra fundamental do gênero me parece ser Androides Sonham com Ovelhas Elétricas? , de Philip K. Dick, lançado em 1968 — um precursor que, embora não abarque temas como hackers ou ciberespaço, lançou as bases do cyberpunk. O livro inspirou o filme Blade Runner , de 1982, dirigido por Ridley Scott, e foi renomeado posteriormente devido ao sucesso da adaptação. A trama do filme, porém, é bem simplificada e diverge em alguns pontos do livro. Já sua sequência, Blade Runner 2049 , de 2017, dirigida por Denis Villeneuve, tem pouco da história original. É uma leitura envolvente e acessível. Rick Deckard, um caçador de recompensas em São Francisco, atua num futuro onde a Terra, arruinada e coberta por poluição radioativa, viu boa parte da população emigrar para outros planetas. Ele caça androides fisicamente indist...

Como recuperar a partição EFI no Windows?

Imagem
O instalador do Windows, em UEFI, sempre aproveita a partição EFI [1] existente, independente do disco em que resida, visto que deve ser única por máquina . Tê-la num disco diferente da instalação atual, remanescente de instalações anteriores, não é tão incomum. Remover ou apagar esse disco surpreende os não familiarizados ao impedir a inicialização. O que fazer quando a partição EFI não existe mais? Começamos iniciando a mídia de instalação e, nela, carregando o Windows RE, que é o ambiente de recuperação embutido. Os assistentes automatizados de nada ajudam nesta questão. Precisamos do Prompt de Comando: Reparar o computador → Solução de Problemas → Prompt de Comando. Primeiro passo é carregar o diskpart , identificar o disco da instalação a ser recuperada e selecioná-lo: diskpart list disk select disk X detail disk Substitua X pelo número que aparece na coluna "Nº Disco" de list disk . A saída de detail disk dará deta...

Acesso a convidado do Hyper-V via nome de máquina não funciona

O Hyper-V tem um recurso interessante no comutador "Default Switch" que automaticamente adiciona um registro DNS no hospedeiro com o nome de máquina do convidado quando este obtém IPv4 via DHCP. É salvo em %SystemRoot%\System32\drivers\etc\hosts.ics e usa o domínio mshome.net . Meu convidado Fedora 40 não estava aparecendo lá. NetworkManager envia o nome de máquina na requisição DHCP: $ nmcli connection show eth0 | grep hostname ipv4.dhcp-send-hostname: sim [...] Descrição da propriedade no manual nm-settings : If TRUE, a hostname is sent to the DHCP server when acquiring a lease. Some DHCP servers use this hostname to update DNS databases, essentially providing a static hostname for the computer. If the "dhcp-hostname" property is NULL and this property is TRUE, the current persistent hostname of the computer is sent. Depois de quebrar um pouco a cabeça, lembrei que a instalação do Fedora por padrão não configura um nome ...

Driver da Nvidia convive com o simpledrm

Kernel 6.5 parece ter resolvido a compatibilidade do simpledrm com o driver da Nvidia através do commit 5ae3716 — ainda requer os obsoletos drivers fbdev habilitados ( CONFIG_FB_EFI=y e CONFIG_FB_VESA=y ). A solução definitiva está presente a partir do driver 545. O módulo nvidia_drm ganhou a opção fbdev=1 , que torna-o compatível independente do commit citado e sem requerer os obsoletos drivers fbdev. Para usá-la, crie /etc/modprobe.d/blabla.conf (nome não importa, desde que termine em .conf ) contendo: options nvidia_drm modeset=1 fbdev=1 (são desativadas por padrão) É importante o initramfs ser recriado para conter esse arquivo. No Arch: mkinitcpio -P (requer o hook modconf configurado). Ambas podem ser especificadas igualmente nas opções de inicialialização: nvidia_drm.modeset=1 e nvidia_drm.fbdev=1 (hífen em nvidia-drm… também é aceito). Entretanto, em distribuições cujo kernel tenha este patch quebra-galho, a primeira opç...

Arquivo de swap? Sim, obrigado.

Havia um antigo post aqui no blog, lá dos primórdios, não recomendando partição swap. Com a popularização dos arquivos de swap, o texto foi expandido, aceitando-os a contra gosto. Só que isso foi antes de tecnologias recentes do Linux, que resolveram problemas associados ao uso de swap: melhorias no kernel e, principalmente, daemons que monitoram informações de pressão de memória, E/S e CPU do kernel ( Pressure Stall Information , PSI, disponível a partir da versão 4.20) e agem antes . O mais usado é o systemd-oomd [1] . Para ser eficiente em instalações desktop, precisa que os aplicativos sejam postos cada um num cgroup diferente , o que é feito via systemd --user pelo GNOME e KDE. Em ambientes que não o façam, como o XFCE, não é recomendado habilitá-lo. Mesmo assim, o kernel não é mais tão burro como antigamente . Minha restrição às partições swap continua: são pouco flexíveis. Logo, use sim arquivos de swap! Btrfs: # btrfs filesystem mkswapfile -...

Driver da Nvidia atravancando o progresso do Linux

Desde o kernel 5.14, lançado em 29 de agosto de 2021, existe o driver Direct Rendering Manager (DRM) genérico simpledrm , que usa o framebuffer fornecido pelo VBIOS/UEFI. Em distribuições que ativem-no ( CONFIG_DRM_SIMPLEDRM=y e CONFIG_SYSFB_SIMPLEFB=y ), adicionar nomodeset nas opções de inicialização passa a ser verdadeiramente um modo de segurança gráfico, que funciona com o Wayland: driver DRM nativo da GPU — como i915 , amdgpu , etc. — não é carregado e o simpledrm fornece um dispositivo DRM funcional [1] . LLVMpipe (Mesa) completa o time fornecendo OpenGL via software. Acaba beneficiando também o Xorg, pois seus drivers do espaço de usuário vesa e fbdev (há muito tempo com manutenção precária) não são mais requeridos. [ 0.599209] [drm] Initialized simpledrm 1.0.0 20200625 for simple-framebuffer.0 on minor 0 [ 0.600186] simple-framebuffer simple-framebuffer.0: [drm] fb0: simpledrmdrmfb frame buffer device https://fedorapro...

Mídia de instalação do Windows em MBR ou GPT?

Há uma enorme confusão sobre esse assunto. Afinal, para instalar o Windows em UEFI, a mídia de instalação precisa estar particionada em GPT? BIOS UEFI [1] suportam particionamento MBR e GPT, enquanto BIOS antigos (não UEFI) apenas suportam MBR [2] . Tanto faz, portanto, com UEFI. Então por que muita gente acha que GPT é requerido? Presumo por dois motivos: → O Windows requer que o disco de destino, no qual será instalado, seja particionado em GPT. A exigência, contudo, não aplica-se à mídia de instalação. → O Rufus artificialmente restringe a criação de mídias compatíveis com UEFI ao particionamento GPT, ao contrário do Media Creation Tool (MCT) da Microsoft, que sempre particiona em MBR. Tal comportamento do Rufus tem como objetivo evitar confusão, pois discos em GPT não iniciam em máquinas com BIOS antigos. Assim, tem-se uma mídia UEFI-only . Já discos em MBR funcionam com BIOS antigos. Será que tais mídias iniciam também em UEFI...

Ghost e o BCD

Imagem
No particionamento MBR, o BCD armazena o caminho para cada partição usando deslocamento e assinatura de disco (ver Como as partições são identificadas no BCD ). Clonando discos com o venerável Ghost, poderíamos assumir que, ao mover os inícios das partições (ao redimensioná-las), suas entradas ficariam inválidas. MBR Não é o caso, pois o programa é inteligente para automaticamente atualizar o BCD, tanto com o deslocamento, quanto com a nova assinatura de disco. Por padrão, uma nova assinatura é criada no destino nos modos disco para disco e imagem para disco . Com GPT, novos GUIDs são gerados, para o disco e partições — BCD é atualizado de acordo igualmente. Podemos alterar esse comportamento com -fdsp , que mantém a assinatura original em MBR (deslocamentos são atualizados no BCD mesmo assim) e, em GPT, preserva todos os GUIDs, de modo que o BCD não precisa ser alterado. Ter mais de um disco co...

Como as partições são identificadas no BCD

Imagem
Dias atrás, surgiu no fórum Clube do Hardware a dúvida se, ao mover partições do Windows, entradas para as mesmas no BCD — banco de dados onde ficam armazenadas as configurações do carregador de inicialização desde o Vista — deixariam de funcionar, requerendo reconfiguração ( BootRec /RebuildBcd do Windows RE é o jeito mais simples). Tal assunto está bem documentado aqui . O que bcdedit /enum ALL mostra em device , osdevice , filedevice e ramdisksdidevice é a tradução que o programa faz, com intuito de deixar a saída amigável. Por baixo do capô, assinatura NT do disco e o deslocamento em bytes estão salvos caso seja MBR; em GPT, os GUIDs do disco e da partição [1] . Isso quer dizer que, em GPT, as partições podem ser movidas à vontade, enquanto que, em MBR, seus inícios não podem ser alterados. Depois de publicar este texto, descobri a opção não documentada bcdedit /raw , que exibe o dispositivo sem firulas! [1] detail partition do...

Mídia de instalação USB do macOS High Sierra (10.13.6) pelo Linux

Imagem
Consiste em criar uma única partição HFS+, colocar o conteúdo de BaseSystem.dmg dentro e depois copiar alguns arquivos para o diretório Install macOS High Sierra.app/Contents/SharedSupport (incluindo o próprio BaseSystem.dmg ). Para nossa sorte, o Linux tem suporte razoável, de leitura e escrita, ao HFS+, desde que não tenha journal . Instale o pacote hfsplus-tools (Fedora) ou hfsprogs (Debian). Não funciona em Hackintosh. Rode como root e adapte USBDEV . #!/bin/bash set -e # dispositivo a ser usado # apagará tudo! USBDEV=/dev/sdx # para outras versões, pesquisar em # https://swscan.apple.com/content/catalogs/others/index-10.13-10.12-10.11-10.10-10.9-mountainlion-lion-snowleopard-leopard.merged-1.sucatalog.gz # https://swscan.apple.com/content/catalogs/others/index-10.14-10.13-10.12-10.11-10.10-10.9-mountainlion-lion-snowleopard-leopard.merged-1.sucatalog.gz # https://swscan.apple.com/content/catalogs/others/index-10.15-10.14-10.13-10.12-10.11-10.10-10.9-...