问题标签 [debconf]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
0 回答
83 浏览

mysql - 为什么使用空白密码的 MySQL root 不能在 shell 脚本中工作?

多年来debconf-set-selections,Debian/Ubuntu 系统管理员一直使用该实用程序在 APT 开始实际安装包之前输入 MySQL root 用户的密码(例如apt install mysql-server)。

但是,如果您在没有此实用程序的情况下安装 MySQL,则root用户在表中将有一个空白密码字段mysql.users,这意味着您可以sudo mysql -u root在命令行中不输入密码。

如果这有效,为什么它不能在 shell 脚本中工作?

例如:

PS我知道mysql_secure_installation向导和手动查询(替代),但我想知道为什么在Bash脚本等中使用空白密码会导致MySQL访问失败。它似乎与用户等常见问题无关,绑定地址、协议、主机、套接字或一般权限。

debconf-set-selections除了笨拙expect的猜测和检查之外,这里还有解决方案吗?

0 投票
3 回答
1624 浏览

ansible - dpkg-reconfigure openssh-server 在 ansible playbook

在 ansible (ver. 2.10) playbook 中,我需要调用 dpkg-reconfigure openssh-server 命令来重新创建 SSH 服务器密钥。

问题是 dpkg-reconfigure openssh-server 打开一个对话框,脚本被卡住了......

查看 ansible 文档,似乎 dpkg-reconfigure 可以由 debconf 模块管理:

与 locales 模块相关的代码示例:

openssh-server debconf 模块的问题是:你想对修改后的配置文件 sshd_config 做什么?答案是:保持当前安装的本地版本。

我如何使用 ansible debconf 模块来管理它?

0 投票
1 回答
112 浏览

linux - 使用 debconf postints 创建 deb 包

我是创建 deb packgaes 的初学者。我为用户创建了带有答案的 deb 包。但是当我跑步时sudo apt install ./mypackge.deb

我得到同样的错误

我的 debian/配置

Debian/模板

我的 debian/postinst

我尝试了不同的 config/postinst 变体,使用了 debconf 手册中的示例,但得到了相同的错误。

如果您指出我的错误,那就太好了。纳克斯

0 投票
0 回答
29 浏览

ubuntu - 如何在 Ubuntu 上使用数字 debconf-utils - 未知类型

安装:apt install debconf-utils

你如何看待类型,在这种情况下我需要设置一个数字?

我看过密码类型,有些信息可能存储在:

试过:

以及在 apt install 期间要求输入的文本:

并使用<<<

错误:

0 投票
2 回答
80 浏览

docker - GitHub Action Ansible 检查 ubuntu:focal 在没有对话框的情况下设置 tzdata 时挂起

我正在使用这个 GitHub 操作:https ://github.com/roles-ansible/check-ansible-ubuntu-focal-action

它挂起,当我取消作业时,我在日志中看到:

这是一个等待交互式输入配置的 docker 容器的情况tzdata

如何在我自己的代码中解决这个问题?到目前为止,我能想到的唯一解决方案是 fork GitHub Action 的上游 repo,并将这一行添加到命令Dockerfile之前RUN apt-get

但如果我能自己解决,我想避免为上游做出贡献。

有任何想法吗?

作为参考,这是DockerfileGitHub Action 的上游 repo 的当前:https ://github.com/roles-ansible/check-ansible-ubuntu-focal-action/blob/master/Dockerfile

0 投票
1 回答
359 浏览

docker - 'DEBIAN_FRONTEND=noninteractive' 不能在带有 apt-get 的 shell 脚本中工作

我正在使用 Dockerfile 构建一个 Docker 映像来构建它。我已将ARG DEBIAN_FRONTEND=noninteractiveDockerfile 放在开头以避免构建时出现 debconf 警告。

apt-get install在 Dockerfile 中使用时不会显示警告。但是,当从包含 apt-get install 命令的 Dockerfile 执行 sh 脚本 (install_dependencies.sh) 时,警告会再次出现。我还尝试DEBIAN_FRONTEND=noninteractive在 sh 脚本本身内部进行设置。

我可以通过在 apt-get install 命令之前添加 sh 脚本来解决这个问题,echo 'debconf debconf/frontend select Noninteractive' | sudo debconf-set-selections但我想避免这种情况,因为脚本中的任何失败都会使 debconf 选择变为非交互式。

Dockerfile:

install_dependencies.sh:

编辑:感谢@arkadiusz-drabczyk告诉我从 apt-get 命令中删除 sudo ,他所说的完全有道理,环境变量在执行命令之前下降。

0 投票
0 回答
16 浏览

debian - Ubuntu 软件中心对话框,debconf 对话框

从 CLI 安装 Debian 文件时,我可以显示用户输入模板。(我的自定义 Debian,在 'debconf' 的帮助下创建)

但是通过双击安装相同的 .deb 时,会出现身份验证对话框,但不会出现用户输入。并发生错误。这说....预安装脚本中有问题。

我怎样才能做到这一点?在使用 Ubuntu 软件中心安装软件包时,弹出用户输入。因为它需要root密码。 在此处输入图像描述

0 投票
0 回答
30 浏览

mysql - 预装 MySql 5.7 作为 vagrant box 中的自动化进程

对于 Moodle 项目,我想提供一个预装了 Ubuntu 20.04 和 Mysql 5.7 的 Vagrant 盒子。

所以在配置文件中我取消了

apt-get install -y mysql-server to '# apt-get install -y mysql-server (所以没有安装 mysql)

可以通过以下方式安装 Mysql 5.7:

这个过程我想自动化,例如使用 povision 文件。重点是

打开一个 gui,允许选择 mysql 5.7 等。为了自动化,我尝试使用 debconf 变量。所以我在配置文件中添加了以下内容:

但这从来没有奏效。

下一点是,那

还会打开一个需要设置 root 密码的 gui。在我尝试的外壳上:

但是没有成功。

你能让我从这里开始,以便获得一个在预装 Ubuntu 20.04 下提供带有 mysql 5.7 的 vagrant box 的自动化过程吗?

非常感谢 !

最好的,

雷神