标签 debian 下的文章

甲骨文云 - ARM机 - 安装 Debian 12 bookworm ARM64

需求;甲骨文云中的ARM机,有提供免费的 Canonical-Ubuntu-22.04-Minimal-aarch64 系统镜像。如果想使用 Debian 12,能不能安装呢?

实践;能。用 Debian 提供的网络安装文件,能完成。如在已有的 Ubuntu 中,使用 kexec 来启动到带远程 ssh 的 Debian 安装界面。举例:
kexec --command-line="priority=critical mirror/http/hostname=ftp.us.debian.org interface=auto language=en country=US locale=en_US.UTF-8 keymap=us modules=network-console network-console/password=hellodebian network-console/password-again=hellodebian DEBIAN_FRONTEND=text" --initrd=initrd.gz linux

如果是静态IP的,或许是:

kexec --command-line="priority=critical mirror/http/hostname=ftp.cn.debian.org interface=auto netcfg/disable_autoconfig=true netcfg/get_ipaddress=192.168.1.61 netcfg/get_netmask=255.255.255.0 netcfg/get_gateway=192.168.1.1 netcfg/get_nameservers=8.8.8.8 language=en country=US locale=en_US.UTF-8 keymap=us modules=network-console network-console/password=hellodebian network-console/password-again=hellodebian8 DEBIAN_FRONTEND=text" --initrd=initrd.gz linux

另有 ISPSystem中Debian 11 和 Debian 11 netinstall 包中 metainfo.xml 的内核参数实例,可对比:

<kernelcommand>url=($OSINSTALLINFO_HTTPv4) language=en debian-installer/country=RU locale=en_US keyboard-configuration/xkb-keymap=us console-keymaps-at/keymap=us interface=auto netcfg/disable_dhcp=true netcfg/disable_autoconfig=true netcfg/use_autoconfig=false ipv6.autoconf=0 netcfg/get_ipaddress=($IPv4) netcfg/get_netmask=($NETMASKv4) netcfg/get_gateway=($GATEWAYv4) netcfg/get_nameservers=($NAMESERVERv4) hostname=($HOSTNAME) domain=($HOSTNAME) netcfg/hostname=($HOSTNAME) net.ifnames=0 netcfg/link_wait_timeout=30</kernelcommand>

<kernelcommand>url=($OSINSTALLINFO_HTTPv4) language=en debian-installer/country=RU locale=en_US keyboard-configuration/xkb-keymap=us console-keymaps-at/keymap=us interface=auto netcfg/disable_dhcp=true netcfg/get_ipaddress=($IPv4) netcfg/get_netmask=($NETMASKv4) netcfg/get_gateway=($GATEWAYv4) netcfg/get_nameservers=($NAMESERVERv4) hostname=($HOSTNAME) domain=($HOSTNAME) netcfg/hostname=($HOSTNAME) netcfg/link_wait_timeout=30</kernelcommand>

参考:

DCImanager 5 - Debian 12 - bookworm

需求:ISPSystem 当前没有为 DCImanager 5 提供 Debian 12 的系统镜像。但 Debian 的网络安装方式没有改变,使用新版本的 initrd.gz 和 linux 文件来安装 Debian 12,或许也是可以的。

首先,从 ISPSystem 下载现有的 Debian 11 系统安装包。然后,修改 metainfo.mxl 中关于系统名称的描述。再从 Debian 官方下载 Debian 12 的网络安装镜像文件 initrd.gz 和 linux,替换即可。

参考:

在 debian 11 的 exim4 里设置 dkim 发信

需求:exim4 发信时,邮件头里打上 dkim 的签名。
步骤:

  1. genrsa -out dkim.key 2048 # 生成一个2048位的私匙
  2. openssl rsa -in dkim.key -out /dev/stdout -pubout -outform PEM # 生成公匙,复制好
  3. chown Debian-exim:Debian-exim dkim.key # 修改权限,让exim能读到私匙
  4. /etc/exim4/exim4.conf.localmacros # 创建自定义的exim参数值,如以下内容:

    DKIM_CANON = relaxed
    DKIM_SELECTOR = dkim
    DKIM_DOMAIN = gd.anqun.org
    DKIM_PRIVATE_KEY = /etc/exim4/dkim/$dkim_selector.key
    DKIM_STRICT = true
  5. vi /etc/exim4/conf.d/transport/30_exim4-config_remote_smtp_smarthost # 默认dkim仅在remote_smtp的trnasport配置文件里,但本例是使用 remote_smtp_smarthost,所以需要将相应的dkim内容从 remote_smtp 复制到 remote_smtp_smarthost,如:

    .ifdef DKIM_DOMAIN
    dkim_domain = DKIM_DOMAIN
    .endif
    .ifdef DKIM_SELECTOR
    dkim_selector = DKIM_SELECTOR
    .endif
    .ifdef DKIM_PRIVATE_KEY
    dkim_private_key = DKIM_PRIVATE_KEY
    .endif
    .ifdef DKIM_CANON
    dkim_canon = DKIM_CANON
    .endif
    .ifdef DKIM_STRICT
    dkim_strict = DKIM_STRICT
    .endif
    .ifdef DKIM_SIGN_HEADERS
    dkim_sign_headers = DKIM_SIGN_HEADERS
    .endif
  6. 之后更新exim4的配置,且重启服务:

    update-exim4.conf.template -r
    update-exim4.conf
    systemctl restart exim4
  7. 到域名的解析面板,设置好相应的txt记录,如将 dkim._domainkey.gd.anqun.org 的 txt 值设置为:v=DKIM1; p=MIIB...
  8. 发封测试邮件到gmail,如成功,在 show original 里会显示 DKIM PASS
  9. 如有错误,请查看日志文件:/var/log/exim4/mainlog

参考:

将 exim4 收取的邮件,用 router 和 transport 转给脚本处理 piping - debian

环境:debian 11, exim4, php8.1, osticket-1.17
需求:用exim接收邮件,将邮件通过 piping 交给 osticket 的 php 脚本处理

过程:

  1. 新增一条 router 配置文件,如 /etc/exim4/conf.d/router/050_exim4-config_osticket
  2. 050_exim4-config_osticket 内容如下。意思要将support@localdomain的邮件交给osticket_transport受理

    osticket_router:
     driver = accept
     local_parts = support
     transport = osticket_transport
  3. 新增 osticket_transport 的配置文件,如 /etc/exim4/conf.d/transport/25_exim4-config_osticket_pipe
  4. 25_exim4-config_osticket_pipe 内容如下。意思是将邮件交给 /var/www/public_html/api/pipe.php 处理

    osticket_transport:
     driver = pipe
     command = /usr/bin/php8.1 /var/www/public_html/api/pipe.php
  5. 将新增的配置文件内容添加到模板中,update-exim4.conf.template -r
  6. 更新exim的配置,update-exim4.conf
  7. 重载 systemctl reload exim4 的服务
  8. 可通过如 exim4 -bt support@localdomain 的命令来检查新设置的 router 和 transport 是否生效

参考:

华为云 - debian 10.0 - base-files packages have been kept back - apt-get install base-files

问题:华为云的机子,使用了debian 10.0的系统模板。执行 apt update 和 apt upgrade 且重启系统后,cat /etc/debian-release 还是 10.0。

尝试:原来提示 The following packages have been kept back: base-files ,那么再次执行 apt-get install base-files 后,就可以查看到新的版本号了(10.13)。

参考:https://askubuntu.com/questions/601/the-following-packages-have-been-kept-back-why-and-how-do-i-solve-it