AskOverflow.Dev

AskOverflow.Dev Logo AskOverflow.Dev Logo

AskOverflow.Dev Navigation

  • Início
  • system&network
  • Ubuntu
  • Unix
  • DBA
  • Computer
  • Coding
  • LangChain

Mobile menu

Close
  • Início
  • system&network
    • Recentes
    • Highest score
    • tags
  • Ubuntu
    • Recentes
    • Highest score
    • tags
  • Unix
    • Recentes
    • tags
  • DBA
    • Recentes
    • tags
  • Computer
    • Recentes
    • tags
  • Coding
    • Recentes
    • tags
Início / computer / Perguntas / 1712536
Accepted
HubertNNN
HubertNNN
Asked: 2022-03-25 01:56:42 +0800 CST2022-03-25 01:56:42 +0800 CST 2022-03-25 01:56:42 +0800 CST

Como armazenar uma string personalizada dentro do BIOS

  • 772

Um pouco de fundo:

Estou planejando fazer algumas experiências com computadores sem disco e inicialização pela rede.

O problema que encontrei é que, se eu tiver quatro máquinas que inicializam a partir da mesma imagem, preciso de uma maneira de identificar que essa máquina é app-1 , não app-4 .

Então, depois de pensar onde eu poderia armazenar esse tipo de informação em uma máquina sem disco, percebi que o Windows está armazenando seu CD-KEY no BIOS e os OEMs estão armazenando alguns dados personalizados lá também.

Então, meu objetivo seria armazenar uma string simples dentro da memória do BIOS. Eu sei que posso recuperar isso no Linux usando dmidecode, mas não encontrei nenhum dmiencodecomando.

Como posso armazenar uma string personalizada dentro do BIOS, para que eu possa recuperá-la posteriormente usando dmidecode ou alguma outra ferramenta?

Além disso, como os profissionais estão lidando com o armazenamento de dados específicos da máquina em um ambiente de servidor sem disco?

linux bios
  • 4 4 respostas
  • 3301 Views

4 respostas

  • Voted
  1. Tonny
    2022-03-25T05:04:04+08:002022-03-25T05:04:04+08:00

    Eu sei que esta não é uma resposta direta à sua pergunta, mas isso tem todas as características de um problema XY .

    A abordagem usual para isso é não armazenar nada localmente na máquina.

    Se você precisar identificar os computadores de forma exclusiva, configure as reservas de DHCP para cada computador com um nome DNS e endereço IP associados. Se necessário, você pode ter um script de inicialização/inicialização na máquina para consultar o DNS por seu próprio nome e definir o nome do host interno de acordo.

    Substituir uma máquina é tão simples quanto atualizar a reserva de DHCP. Não há necessidade de mexer com o BIOS/UEFI. (Exceto para configurá-lo para inicializar a partir da LAN, obviamente.)

    • 34
  2. Best Answer
    harrymc
    2022-03-25T03:47:34+08:002022-03-25T03:47:34+08:00

    Se seus computadores estiverem usando a Unified Extensible Firmware Interface (UEFI) , você poderá usar o que é chamado de "variáveis ​​UEFI".

    Da interface de firmware extensível unificada do Arch Linux - variáveis ​​UEFI :

    UEFI define variáveis ​​por meio das quais um sistema operacional pode interagir com o firmware. As variáveis ​​de inicialização UEFI são usadas pelo carregador de inicialização e usadas pelo SO apenas para a inicialização antecipada do sistema. As variáveis ​​de tempo de execução UEFI permitem que um sistema operacional gerencie determinadas configurações do firmware, como o gerenciador de inicialização UEFI ou o gerenciamento das chaves para o protocolo UEFI Secure Boot, etc. Você pode obter a lista usando:

    $ efivar --list
    

    Mais informações são escassas, por exemplo, a página de manual do Ubunti efivar .

    Você também pode achar interessante o artigo Sending data from UEFI to OS through UEFI variables .

    • 19
  3. user3840170
    2022-03-26T02:13:46+08:002022-03-26T02:13:46+08:00

    Sistemas pré-UEFI podem ser capazes de armazenar um identificador persistente em seu firmware NVRAM (não em qualquer disco rígido) por meio do DMI/SMBIOS Asset Tag e Property Tag. Você pode tentar configurá-los usando o smbios-sys-infoprograma do pacote smbios-utils .

    smbios-sys-info --asset-tag --set=12345
    smbios-sys-info --property-tag --set=12345
    

    No entanto, quando eu tentei isso em dois dos meus laptops (um Toshiba de 2005 e um Lenovo de 2010), em ambos os últimos mostraram um traceback de exceção, enquanto o primeiro travou com uma falha de segmentação. A única vez que me lembro de configurar essas tags com sucesso foi com um laptop Dell ainda mais antigo (de 2002, que não tenho mais); provavelmente não é surpreendente, uma vez que a biblioteca libsmbios possui direitos autorais da Dell. Faça disso o que você quiser.

    • 3
  4. Oliver Fish
    2022-03-25T02:23:52+08:002022-03-25T02:23:52+08:00

    O software BIOS normalmente é proprietário e depende do fabricante do hardware que você está usando e se eles lançaram uma ferramenta.

    É improvável que você consiga criar uma nova propriedade, no entanto, é possível que você consiga reutilizar uma propriedade existente e definir seu próprio valor.

    Por exemplo, a Lenovo tem uma ferramenta que permite definir novos valores para o tipo de máquina, número de série e ID da marca do sistema.

    • 2

relate perguntas

  • Como eu faria minha máquina Linux parecer que está executando o Windows?

  • Existe um equivalente a cd - para cp ou mv?

  • execute o contêiner do docker como root

  • Como ativar o sensor de impressão digital no domínio e no diretório ativo do Linux

  • Como alterar permanentemente Ctrl + C para Ctrl + K no CentOS 7?

Sidebar

Stats

  • Perguntas 205573
  • respostas 270741
  • best respostas 135370
  • utilizador 68524
  • Highest score
  • respostas
  • Marko Smith

    Como posso reduzir o consumo do processo `vmmem`?

    • 11 respostas
  • Marko Smith

    Baixar vídeo do Microsoft Stream

    • 4 respostas
  • Marko Smith

    O Google Chrome DevTools falhou ao analisar o SourceMap: chrome-extension

    • 6 respostas
  • Marko Smith

    O visualizador de fotos do Windows não pode ser executado porque não há memória suficiente?

    • 5 respostas
  • Marko Smith

    Como faço para ativar o WindowsXP agora que o suporte acabou?

    • 6 respostas
  • Marko Smith

    Área de trabalho remota congelando intermitentemente

    • 7 respostas
  • Marko Smith

    O que significa ter uma máscara de sub-rede /32?

    • 6 respostas
  • Marko Smith

    Ponteiro do mouse movendo-se nas teclas de seta pressionadas no Windows?

    • 1 respostas
  • Marko Smith

    O VirtualBox falha ao iniciar com VERR_NEM_VM_CREATE_FAILED

    • 8 respostas
  • Marko Smith

    Os aplicativos não aparecem nas configurações de privacidade da câmera e do microfone no MacBook

    • 5 respostas
  • Martin Hope
    Saaru Lindestøkke Por que os arquivos tar.xz são 15x menores ao usar a biblioteca tar do Python em comparação com o tar do macOS? 2021-03-14 09:37:48 +0800 CST
  • Martin Hope
    CiaranWelsh Como posso reduzir o consumo do processo `vmmem`? 2020-06-10 02:06:58 +0800 CST
  • Martin Hope
    Jim Pesquisa do Windows 10 não está carregando, mostrando janela em branco 2020-02-06 03:28:26 +0800 CST
  • Martin Hope
    v15 Por que uma conexão de Internet gigabit/s via cabo (coaxial) não oferece velocidades simétricas como fibra? 2020-01-25 08:53:31 +0800 CST
  • Martin Hope
    andre_ss6 Área de trabalho remota congelando intermitentemente 2019-09-11 12:56:40 +0800 CST
  • Martin Hope
    Riley Carney Por que colocar um ponto após o URL remove as informações de login? 2019-08-06 10:59:24 +0800 CST
  • Martin Hope
    zdimension Ponteiro do mouse movendo-se nas teclas de seta pressionadas no Windows? 2019-08-04 06:39:57 +0800 CST
  • Martin Hope
    jonsca Todos os meus complementos do Firefox foram desativados repentinamente, como posso reativá-los? 2019-05-04 17:58:52 +0800 CST
  • Martin Hope
    MCK É possível criar um código QR usando texto? 2019-04-02 06:32:14 +0800 CST
  • Martin Hope
    SoniEx2 Altere o nome da ramificação padrão do git init 2019-04-01 06:16:56 +0800 CST

Hot tag

windows-10 linux windows microsoft-excel networking ubuntu worksheet-function bash command-line hard-drive

Explore

  • Início
  • Perguntas
    • Recentes
    • Highest score
  • tag
  • help

Footer

AskOverflow.Dev

About Us

  • About Us
  • Contact Us

Legal Stuff

  • Privacy Policy

Language

  • Pt
  • Server
  • Unix

© 2023 AskOverflow.DEV All Rights Reserve