【问题标题】:Install systemd service on Debian installation在 Debian 安装上安装 systemd 服务
【发布时间】:2020-04-25 19:39:15
【问题描述】:

我正在使用 simple-cdd 实用程序构建自定义 Debian ISO。在我附加自己的 .deb 包之前,它一直运行良好。

build-simple-cdd --dist stretch --profiles moj --force-root --local-packages /root/iso/deb

build-simple-cdd 工作正常,因为我在 tmp 目录结构中看到了我的 deb 包,并且成功创建了 iso 映像。但是debian安装失败

我怀疑 postinst 脚本失败了,因为它在可能不可用时使用了 systemctl 命令。

#!/bin/sh
set -e

echo $1
if [ "$1" = "configure" ]; then 
    echo "Configuring privileges..."
    chown user:user /usr/bin/Koncentrator
    chmod 0755 /usr/bin/Koncentrator

    echo "Enabling Koncentrator services..." 
    systemctl daemon-reload
    systemctl enable Xvfb.service
    systemctl enable Koncentrator.service
fi

我在控制文件中添加了systemd依赖,但它不起作用。

【问题讨论】:

    标签: deb debian-based


    【解决方案1】:

    我为这个问题做了解决方法。 simple-cdd 允许准备安装后脚本。 apt install 在那里调用没有问题。使用此解决方案需要两个步骤:

    1. 将 deb 包添加到安装盘。这是通过配置文件配置文件 (moj.conf) 配置的:
    all_extras="$all_extras /root/iso/files/customapackage_0.1.3.deb"
    
    1. 在 moj.postinst 脚本中运行 apt install:
    #!/bin/sh
    
    mount /dev/cdrom /media/cdrom
    cd /media/cdrom/simple-cdd
    apt install ./custompackage_0.1.3.deb
    cd /
    sync
    umount /media/cdrom
    

    如果你想调试你的 postinst 脚本,你可以在那里插入 long sleep:

    #!/bin/sh
    
    sleep 10000000
    ...
    

    并在完成安装阶段切换终端 (Ctrl+Alt+F1-6)。比调用 chroot /target 来切换目标内环境

    【讨论】:

      猜你喜欢
      • 2019-12-13
      • 1970-01-01
      • 2023-04-05
      • 2020-01-20
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2013-11-03
      • 2021-12-19
      相关资源
      最近更新 更多