MKINITCPIO(8) Manual do mkinitcpio MKINITCPIO(8) NOME mkinitcpio - Cria um ambiente ramdisk inicial SINOPSE mkinitcpio [opcoes] DESCRICAO Cria um ambiente ramdisk inicial para inicializar o kernel Linux. O ramdisk inicial e, em essencia, um ambiente muito pequeno (espaco de usuario antecipado) que carrega varios modulos do kernel e configura as coisas necessarias antes de entregar o controle para o init. Isso torna possivel ter, por exemplo, sistemas de arquivos raiz criptografados e sistemas de arquivos raiz em um arranjo RAID de software. mkinitcpio permite facil extensao com ganchos personalizados, tem autodeteccao em tempo de execucao e muitos outros recursos. OPCOES -A, --addhooks ganchos Adiciona os ganchos adicionais a imagem. Eles serao processados em ordem apos todos os outros ganchos do arquivo de configuracao. Varios ganchos devem ser separados por virgulas. Esta opcao pode ser especificada varias vezes. -c, --config configuracao Usa o arquivo configuracao para gerar o ramdisk. Padrao: /etc/mkinitcpio.conf. Se especificada, os arquivos drop-in em /etc/mkinitcpio.conf.d/ serao ignorados. -d, --generatedir diretorio Define diretorio como o local onde o initramfs e construido. Isso pode ser util para gerar um ramfs de desligamento em /run/initramfs/. -D, --hookdir diretorio Define diretorio como o local onde os ganchos serao pesquisados ao gerar a imagem. -I, --include path Add additional files or directories to the image. These will be processed in order after all other files have been included into the image. If the path is a file, you can comma separate the source and the destination on the image. Example: source:destination:mode. If the path is a directory, it will only accept the full directory and include the directory from the root of the image. Multiple paths should be comma-separated. This option can be specified multiple times. -g, --generate nome-de-arquivo Gera uma imagem CPIO como nome-de-arquivo. Padrao: nao; isso significa que nada sera gravado no sistema de arquivos a menos que essa opcao seja especificada. -H, --hookhelp nome-do-gancho Exibe a ajuda para o nome de gancho nome-de-gancho. -h, --help Exibe uma breve visao geral das opcoes de linha de comando disponiveis. -k, --kernel versao-do-kernel Usa versao-do-kernel, em vez do kernel em execucao no momento. Este pode ser um caminho para uma imagem do kernel (suportado somente para arquiteturas baseadas em x86), uma versao especifica do kernel ou a palavra-chave especial none. No ultimo caso, nenhum modulo do kernel e adicionado a imagem. -L, --listhooks Lista todos os ganchos disponiveis. -M, --automods Exibe modulos encontrados via autodeteccao. mkinitcpio tentara determinar automaticamente quais modulos do kernel sao necessarios para iniciar seu computador. Esta opcao lista quais modulos foram detectados. -n, --nocolor Desabilita a saida com cores. --nopost Nao executa pos-ganchos. -U, --uki nome-de-arquivo Gera uma imagem de kernel unificada, ou UKI, como nome-de-arquivo. Se uma imagem CPIO for construida com sucesso, ela sera usada para gerar uma imagem de kernel unificada para inicializacao UEFI. Isso combina o initramfs, o kernel e o cmdline do kernel em um executavel. Isso e util para a integridade da cadeia de inicializacao onde o arquivo e assinado. Padrao: nao. Para uma lista de opcoes relevantes, consulte Opcoes para imagem de kernel unificada abaixo. -P, --allpresets Processa todas as predefinicoes contidas em /etc/mkinitcpio.d. Veja a opcao -p para mais detalhes sobre predefinicoes. -p, --preset predefinicao Cria imagens initramfs de acordo com a predefinicao especificada. Pode ser um arquivo em /etc/mkinitcpio.d (sem a extensao .preset) ou um caminho completo e absoluto para um arquivo. Esta opcao pode ser especificada varias vezes para processar varias predefinicoes. -R, --remove Remove imagens initramfs geradas pelas predefinicoes especificados. Se usado em combinacao com -P|--allpresets, remove as imagens para todos as predefinicoes. Esta opcao so pode ser usada com -p|--presets ou -P|--allpresets. -r, --moduleroot raiz Especifica o diretorio raiz para encontrar os modulos, o padrao e /. -S, --skiphooks ganchos Ignora ganchos ao gerar a imagem. Varios ganchos devem ser separados por virgula. Esta opcao pode ser especificada varias vezes. -s, --save Salva o diretorio de construcao para o ramdisk inicial. Padrao: nao; Isso significa que o diretorio nao sera retido se essa opcao nao for especificada. Util para propositos de depuracao. -t, --builddir tmpdir Usa tmpdir como o diretorio de construcao temporario em vez de /tmp. tmpdir deve existir. A variavel de ambiente TMPDIR tambem e honrada para definir esse local, mas a opcao de linha de comando tera precedencia. -V, --version Exibe a informacao da versao. -v, --verbose Saida detalhada. Produz mais informacoes sobre o que esta acontecendo durante a criacao do ramdisk. -z, --compress compactacao Substitui o metodo de compactacao pelo programa compactacao. OPCOES PARA IMAGEM DE KERNEL UNIFICADA --cmdline nome-de-arquivo Use kernel command line with unified kernel image. If a directory is given, all files matching *.conf in that directory are used. If none is specified, try one of the files /etc/kernel/cmdline, /usr/lib/kernel/cmdline, /etc/cmdline.d/*.conf, /proc/cmdline. --no-cmdline Omite a incorporacao de uma string de linha de comando do kernel na imagem de kernel unificada. As opcoes de linha de comando do kernel precisarao ser passadas pela linha de comando do kernel. Substitui a opcao --cmdline. --splash nome-de-arquivo Os executaveis UEFI podem mostrar um arquivo bitmap na inicializacao. --uefistub nome-de-arquivo Imagem stub UEFI usada para geracao unificada de imagem do kernel. Nao tem efeito se ukify estiver sendo usado. Padrao: tenta procurar um carregador stub systemd-boot ou gummiboot. --ukiconfig nome-de-arquivo Arquivo de configuracao para passar para ukify. Se nenhum for especificado, tenta um dos arquivos /etc/kernel/uki.conf ou /usr/lib/kernel/uki.conf. Se nenhum deles existir, ukify usara seu padrao interno. --no-ukify Nao usa ukify para construir UKIs mesmo que esteja disponivel. Isso nao e recomendado. --kernelimage nome-de-arquivo Inclui uma imagem do kernel para a imagem de kernel unificada. Padrao: um de /lib/modules/${KERNELVERSION}/vmlinuz, /lib/modules/${KERNELVERSION}/vmlinux, /boot/vmlinuz-${KERNELVERSION}, /boot/vmlinux-${KERNELVERSION}, /boot/vmlinuz-linux ou /boot/vmlinux-linux. --osrelease nome-de-arquivo Inclui um arquivo os-release para a imagem de kernel unificada. Padrao: /etc/os-release ou /usr/lib/os-release. SOBRE AS PREDEFINICOES Uma predefinicao e uma forma dizer como criar um ramdisk inicial. Em vez de especificar o arquivo de configuracao e qual arquivo de saida, toda vez que voce gera um novo ramdisk inicial, voce cria uma predefinicao e usa o switch -p para gerar um ramdisk inicial de acordo com sua predefinicao. Normalmente, as predefinicoes sao arquivos localizados em /etc/mkinitcpio.d com a extensao .preset, por exemplo, /etc/mkinitcpio.d/linux.preset para a predefinicao linux. Tambem e possivel usar arquivos em outros locais. Entao, o caminho para esse arquivo precisa ser especificado. Arquivos de predefinicoes sao scripts de shell que sao originados pelo mkinitcpio e as seguintes variaveis influenciarao seu comportamento. Note que mkinitcpio chama a si mesmo para cada predefinicao e passa as opcoes definidas no arquivo de predefinicao via argumentos de linha de comando. Elas sao mencionadas na descricao das opcoes abaixo, entao consulte o manual dos argumentos de linha de comando para mais informacoes sobre uma opcao em particular. PRESETS Um vetor de nomes de predefinicoes definidos neste arquivo. Esses nomes serao usados como prefixo para outras opcoes para fornecer opcoes especificas de predefinicoes. Por exemplo, se um PRESET=('custom') for fornecido, a imagem sera especificada via custom_image='/boot/custom.img'. _kver (o valor padrao e ALL_kver -- um dos dois e required) Especifica a versao do kernel (via -k em mkinitcpio). _config (o padrao e o valor de ALL_config -- um dos dois e required) Caminho para o arquivo de configuracao (passado via -c para mkinitcpio). _uki (um de _uki e _image e obrigatorio) Caminho do arquivo de saida para uma imagem de kernel unificada (passada via -U para mkinitcpio). _image (um de _uki e _image e obrigatorio) Caminho do arquivo de saida para a imagem gerada (passada via -g para mkinitcpio). _comdline (o padrao e o valor de ALL_cmdline) Caminho para o arquivo de linha de comando do kernel (passado via --cmdline para o mkinitcpio). Esta opcao e usada apenas ao gerar imagens de kernel unificadas. _splash (o valor padrao e ALL_splash) Caminho para o arquivo de imagem do splash (passado via --splash para o mkinicpio). Esta opcao e usada apenas para gerar imagens de kernel unificadas. _kerneldest (o valor padrao e ALL_kerneldest) Caminho de destino do kernel que sera passado para os pos-ganchos. Isso substitui o local padrao do kernel (geralmente /boot) e permite a personalizacao de onde o kernel deve ser localizado para inicializacao. O valor e passado para os pos-ganchos por meio da variavel de ambiente KERNELDESTINATION. _options Mais argumentos de linha de comando para passar para mkinitcpio como uma string ou um vetor. Eles serao anexados no final da chamada para mkinitcpio (depois de todas as opcoes mencionadas acima), entao isso pode ser usado para sobrescrever opcoes (por exemplo, passe um -S gancho aqui para pular um gancho). SOBRE OS GANCHOS DE INSTALACAO Os ganchos de instalacao sao scripts bash que sao originados durante o tempo de execucao do mkinitcpio para adicionar modulos, binarios e outros arquivos a imagem. Uma variedade de funcoes existe para facilitar isso. add_module nome-do-modulo Adiciona o modulo especificado por nome-do-modilo a imagem. Dependencias sao derivadas e adicionadas automaticamente. add_binary binario [ destino ] [ modo ] Adiciona um binario a imagem. O argumento binario nao precisa ser um caminho absoluto e, se necessario, uma pesquisa sera realizada. Se o binario for um binario ELF vinculado dinamicamente, as dependencias serao adicionadas automaticamente. Se for um link simbolico, tanto o link simbolico quanto o binario de destino serao adicionados. Opcionalmente, um destino dentro da imagem initramfs, bem como um modo de arquivo, podem ser especificados. Por padrao, o destino e o modo sao obtidos da fonte derivada de binario. add_file caminho [ destino ] [ modo ] Adiciona um arquivo e quaisquer diretorios pais necessarios a imagem. Se for um link simbolico, tanto o link simbolico quanto o arquivo de destino serao adicionados. Opcionalmente, um destino dentro da imagem initramfs, bem como um modo de arquivo, podem ser especificados. Por padrao, o destino e o modo serao obtidos da fonte e do modo do arquivo especificados pelo caminho. add_file_early caminho [ destino ] [ modo ] Adiciona um arquivo e quaisquer diretorios pais necessarios a imagem antecipada descompactada. Funciona da mesma forma que add_file. add_dir caminho Adiciona um diretorio e seus pais a imagem. add_dir_early caminho Adiciona um diretorio e seus pais a imagem antecipada descompactada. Funciona da mesma forma que add_dir. add_full_dir diretorio [ glob ] [ prefixo_a_remover ] Adiciona recursivamente um diretorio a imagem percorrendo o caminho fornecido e chamando add_file, add_dir e add_symlink adequadamente. Esta funcao nao seguira links simbolicos, nem adicionara os alvos de links simbolicos. Se o argumento glob for passado, somente arquivos e links simbolicos correspondentes a esse glob serao adicionados. Se o argumento prefixo_a_remover for passado, ele sera usado para remover o caminho de destino (caminho na imagem initramfs) do prefixo especificado pelo argumento prefixo_a_remover. Isso pode ser util ao escrever ganchos rootfs-overlay. add_symlink caminho [ alvo-link ] Adiciona um link simbolico a imagem no caminho especificado, opcionalmente apontando para o alvo-link especificado. Se o alvo-link nao for fornecido, presume-se que esse link simbolico existe no sistema de arquivos real, e o alvo sera lido usando readlink(1). Nao ha verificacao feita para garantir que o alvo do link simbolico exista, e os links simbolicos nao serao seguidos recursivamente. add_all_modules [ -f filtro ] padrao Adiciona modulos a imagem, sem considerar a lista de permissoes de autodeteccao. padrao deve ser um subdiretorio dentro da arvore do kernel descrevendo um subconjunto de modulos a serem incluidos. Refinamento adicional pode ser fornecido por meio do sinalizador -f com uma expressao regular estendida. add_checked_modules [ -f filtro ] padrao Semelhante a add_all_modules com a restricao de que apenas modulos que correspondem a lista de permissoes gerada pelo gancho autodetect serao adicionados a imagem. Se o gancho autodetect nao estiver presente na imagem, esta funcao e identica a add_all_modules. add_runscript nome-do-script Adiciona um gancho de tempo de execucao a imagem, que e um script de shell compativel com ash do busybox. O nome do script tem garantia de corresponder ao nome do gancho do qual o script e chamado. add_udev_rule arquivo-de-regra Adiciona uma regra udev a imagem. Dependencias em binarios serao descobertas e adicionadas. O argumento pode ser um nome de arquivo de regra (descoberto de caminhos udev bem conhecidos) ou um caminho absoluto. add_all_modules_from_symbol simbolo caminhos Adiciona modulos dos diretorios caminhos contendo o simbolo a imagem. add_checked_modules_from_symbol simbolo caminhos Semelhante a add_all_modules_from_symbol com a restricao de que apenas modulos que correspondem a lista de permissoes gerada pelo gancho autodetect serao adicionados a imagem. Se o gancho autodetect nao estiver presente na imagem, esta funcao e identica a add_all_modules_from_symbol. add_initcpio_binary binary [ destination ] [ mode ] Similar to add_binary except it will look into /usr/lib/initcpio for the binary to include into the image. This is useful for hooks that have files inside the directory without hardcoding the path. SOBRE O CPIO ANTECIPADO mkinitcpio tem suporte para CPIO antecipado. Esses sao arquivos CPIO descompactados anexados ao arquivo CPIO principal compactado. Eles sao usados para carregamento antecipado de microcodigo de CPU ou carregamento de substituicoes de tabela ACPI. Os ganchos de instalacao podem instalar arquivos neste arquivo adicionando-os a $EARLYROOT. SOBRE OS GANCHOS DE TEMPO DE EXECUCAO Ganchos de tempo de execucao adicionados a imagem por meio da funcao add_runscript de um gancho de instalacao sao capazes de fornecer funcionalidade extra durante o espaco de usuario antecipado. Funcoes especificas nesses arquivos serao executadas em momentos diferentes. Um gancho pode definir um ou mais deles. Em cada ponto de gancho, os ganchos sao executados na ordem em que sao definidos na variavel HOOKS, exceto para ganchos de limpeza que sao executados ao contrario. run_earlyhook Funcoes com esse nome serao executadas assim que as montagens da API forem configuradas e a linha de comando do kernel for analisada. Daemons necessarios para o espaco de usuario antecipado devem ser iniciados a partir desse ponto de gancho. run_hook Funcoes com esse nome serao executadas apos quaisquer ganchos antecipados e apos modulos definidos pelo usuario terem sido instalados. Esse e o ponto de gancho mais comum, e funcionalidades como varredura de volumes LVM e mapeamento de volumes criptografados devem ser executadas aqui. run_latehook Funcoes com esse nome serao executadas apos a raiz ter sido montada. Isso geralmente e usado para configuracao necessaria adicional na raiz real, como montar outras particoes do sistema. run_cleanuphook Funcoes com esse nome sao executadas o mais tarde possivel. Quaisquer daemons iniciados a partir de uma funcao run_earlyhook devem ser desligados aqui em preparacao para alternar para a raiz real. run_emergencyhook Funcoes com esse nome sao executadas antes do shell de emergencia ser iniciado em caso de falha de inicializacao. Por exemplo, isso permite que telas de inicializacao terminem seu processo, para que os usuarios percebam a falha. getarg argumento [ padrao ] Esta funcao pode ser usada em ganchos de tempo de execucao para obter um argumento do cmdline do kernel. Se argumento existir com um valor, o valor sera retornado. Se argumento existir sem um valor, y sera retornado. Se argumento nao existir, padrao sera retornado. Se padrao nao for especificado, nada sera retornado. SOBRE os POS-GANCHOS Pos-ganchos sao executaveis ou scripts que sao executados apos a imagem ter sido gerada com sucesso e podem ser usados para processamento posterior (por exemplo, assinatura). Quando kernel-install(8) invoca mkinitcpio, pos-ganchos sao desabilitados. Eles recebem o kernel como o primeiro argumento, a imagem como segundo e, opcionalmente, a imagem de kernel unficada como um terceiro. Observe: Se mkinicpio e invocado com -k none ou -k versao e a imagem do kernel nao puder ser encontrada, o primeiro argumento estara vazio. As seguintes variaveis de ambiente sao passadas: KERNELVERSION Contem a versao completa do kernel a partir do qual a imagem foi construida. KERNELDESTINATION O local padrao onde o kernel deve estar localizado para inicializacao. Isso geralmente e o mesmo que o primeiro argumento, mas pode ser diferente se mkinitcpio nao tiver sido invocado com -k /boot/*. Se nenhuma imagem de kernel tiver sido encontrada, essa variavel tambem estara vazia. AMBIENTE INIT ANTECIPADO mkinitcpio da tratamento especial a certas variaveis de ambiente passadas na linha de comando do kernel: break[=] Se especificado, mkinitcpio iniciara um shell durante o inicio do init. O parametro opcional controla quando isso ocorre: quando premount ou nenhum parametro for especificado, o shell sera iniciado antes da montagem da raiz. Se postmount for especificado, o shell sera iniciado apos a montagem da raiz. disablehooks=lista-de-ganchos Esta e uma lista separada por virgulas de ganchos que serao ignorados durante o init antecipado. earlymodules=lista-de-modulos Esta e uma lista separada por virgulas de modulos que serao carregados antes de quaisquer outros. Isso geralmente nao e necessario e geralmente aponta para um problema de configuracao ou kernel. quiet Faz com que o mkinitcpio produza menos mensagens durante a inicializacao. Erros nao serao suprimidos. ro Especifica que a raiz deve ser montada com permissoes somente leitura. Esse e o comportamento padrao. rw Especifica que a raiz deve ser montada com permissoes de leitura e escrita. Isso geralmente so e util se seu initramfs usar o gancho fsck. root=dispositivo-raiz Esta variavel descreve a particao raiz que o init antecipado montara antes de passar o controle para o init real. mkinitcpio entende uma variedade de formatos, o mais basico dos quais e o caminho para o dispositivo de bloco, seja diretamente, como /dev/sda2, ou usando um link simbolico udev, como /dev/disk/by-label/CorsairF80-root. Suporte para identificacao por tags LABEL ou UUID tambem e suportado, como LABEL=CorsairF80-root. A partir do util-linux 2.22, PARTUUID e PARTLABEL tambem sao suportados. A identificacao via ID de dispositivo principal/secundario codificado em hexadecimal e suportada por razoes de legado, mas deve ser evitada, pois tende a ser fragil. rootdelay[=segundos] Define o atraso, em segundos, que o mkinitcpio esta disposto a esperar ate que o dispositivo raiz apareca, se ele nao estiver disponivel imediatamente. O padrao e 10 segundos. Se um inteiro invalido for passado, essa variavel nao tera efeito. rootflags=lista-de-singalizadores Uma lista separada por virgulas de sinalizadores que serao passados para o comando mount(8) ao montar o sistema de arquivos raiz. Valores aceitaveis sao especificos do sistema de arquivos. rootfstype=tipo-de-fs Substitui o tipo de sistema de arquivos que esta sendo montado como raiz. Isso quase nunca deve ser necessario, pois mount(8) geralmente detecta isso sozinho. rd.debug Habilita a depuracao do shell (xtrace). Se rd.log nao for tambem um parametro na linha de comando do kernel, este parametro implica rd.log=console. rd.log[=] Habilita o registro de mensagens de espaco do usuario antecipadas. Se especificado, o parametro opcional descreve onde essas informacoes sao registradas. Varias opcoes podem ser juntadas em OU, usando o caractere pipe (|). As mensagens sao sempre registradas no console, a menos que o parametro quiet seja passado. Se o parametro opcional nao for especificado, kmsg|console sera assumido. Se rd.log nao estiver presente na linha de comando de kernel, nenhum registro ocorrera. console Escreve a saida para /dev/console. file Escreve a saida para /run/initramfs/init.log. kmsg Escreve a saida para o dispositivo /dev/kmsg (introduzido no Linux 3.5). Esta opcao e um no-op se seu kernel carece de suporte para /dev/kmsg. all Escreve a saida para todos os alvos de logs conhecidos. Essas sao apenas as variaveis que o nucleo do mkinitcpio honra. Ganchos adicionais podem procurar outras variaveis de ambiente e devem ser documentados pela saida de ajuda para o gancho. REPRODUTIBILIDADE O mkinitcpio tem como objetivo criar imagens initramfs reproduziveis por padrao. Isso significa que duas execucoes subsequentes do mkinitcpio devem produzir dois arquivos identicos no nivel binario. Os registros de data e hora no initramfs sao definidos para o epoch Unix de 1970-01-01. Note que para que a compilacao seja totalmente reproduzivel, o compressor especificado (por exemplo, gzip, xz) tambem deve produzir arquivos reproduziveis. No momento da escrita, como um exemplo inexaustivo, o compressor lzop e incapaz de produzir arquivos reproduziveis devido a insercao de um registro de data e hora do tempo de execucao. Mais informacoes podem ser encontradas em . ARQUIVOS /etc/mkinitcpio.conf Arquivo de configuracao padrao do mkinitcpio. /etc/mkinitcpio.conf.d Diretorio contendo arquivos de configuracao drop-in. /etc/mkinitcpio.d Diretorio contendo predefinicoes do mkinitcpio. /etc/initcpio/install, /usr/lib/initcpio/install Caminho de pesquisa para ganchos de tempo de construcao. /etc/initcpio/hooks, /usr/lib/initcpio/hooks Caminho de pesquisa para ganchos de tempo de execucao do espaco do usuario antecipado. /etc/initcpio/post, /usr/lib/initcpio/post Caminho de pesquisa para ganchos de pos-geracao. EXEMPLOS mkinitcpio Executa um teste. Isso gerara um ramdisk inicial, mas nao gravara nada. Use -g para criar a imagem real. mkinitcpio -p linux Cria um ramdisk inicial com base na predefinicao linux. mkinitcpio -g /boot/initramfs-linux.img -k /boot/vmlinuz-linux Cria um ramdisk inicial para o kernel em /boot/vmlinuz-linux. A imagem resultante sera gravada em /boot/initramfs-linux.img. mkinitcpio -U /efi/EFI/Linux/systemd-linux.efi Cria um ramdisk inicial para o kernel junto com uma imagem de kernel unificada. O executavel resultante sera gravado em /efi/EFI/Linux/systemd-linux.efi. mkinitcpio -U /efi/EFI/Linux/systemd-linux.efi --splash /usr/share/systemd/bootctl/splash-arch.bmp Cria um ramdisk inicial para o kernel e uma imagem de kernel unificada. Isso tambem inclui uma imagem splash que sera usada durante a inicializacao. VEJA TAMBEM Um artigo mais completo sobre a configuracao do mkinitcpio: initrd(4), lsinitcpio(1), mkinitcpio.conf(5), bootparam(7) BUGS Ao escrever esta pagina de manual, nao havia nenhum bug perceptivel presente. Visite para uma lista atualizada. AUTORES mkinitcpio e mantido pela comunidade Arch Linux. Consulte o arquivo AUTHORS para uma lista completa de contribuidores. DIREITOS AUTORAIS Copyright Contribuidores do mkinitcpio. GPL-2.0-only. TRADUCAO A traducao para portugues brasileiro desta pagina man foi criada por Rafael Fontenelle Esta traducao e uma documentacao livre; leia a Licenca Publica Geral GNU Versao 3 ou posterior para as condicoes de direitos autorais. Nenhuma responsabilidade e aceita. Se voce encontrar algum erro na traducao desta pagina de manual, envie um e-mail para a lista de discussao de tradutores . mkinitcpio 41 29 abril 2026 MKINITCPIO(8)