Como analisar / proc / cmdline antes de pedir o tty login com o systemd

1

Primeiro, estou tentando analisar /proc/cmdline com este script:

#!/bin/bash
for i in $(cat /proc/cmdline)
do
    export $i
done

Eu tentei fazer um serviço systemd

[Unit]
Description=Parse cmdline

[Service]
Type=simple
ExecStart=/bin/bash -c "source /opt/cmdline_parser.sh"

[Install]
WantedBy=default.target

Iniciar o serviço funciona manualmente, mas as variantes não são exportadas no meu shell. Eu preciso que isso seja feito o mais cedo possível, para poder escolher iniciar o login ou iniciar um script. Então, colocar o primeiro script em /etc/profile.d não é possível.

os parâmetros do kernel que eu quero testar são: "implantar pacote = testxz_9e bittorrent completo"

Eu inicializo clientes PXE no nfsroot e quero iniciar o script de implementação, se $ deploy estiver configurado. O script precisa de $ package para saber qual archive implementar, $ full significa que eu restaurarei e mkfs todas as partições, $ bittorrent diz para usar o bittorent para implementar.

Eu quero teses var exportadas no shell usado pelo systemd. Para var sem a sintaxe "var = value", eu só quero testá-los com bash "if [[-v $ var]]", então eu acho que não é importante se não tiver valor.

Aqui o arquivo de inicialização PXE:

DEFAULT tool
label tool
KERNEL tool_nfs/vmlinuz
APPEND ro initrd=tool_nfs/initrd.img root=/dev/nfs ip=dhcp nfsroot=xxx.xxx.xxx.xxx:/srv/nfsroot web_srv=xxx.xxx.xxx.xxx deploy package=testxz_9e full=y bittorrent
    
por eoli3n 22.02.2016 / 08:42

0 respostas

Tags