小编Azd*_*dle的帖子

在docker下安装时是否可以回答对话框问题?

在使用apt-get安装某些软件包时,是否有可能以某种方式回答以对话框形式呈现的问题?

例如,我正在尝试设置一个包含该mail-stack-delivery包的容器:

FROM ubuntu

RUN apt-get install -y mail-stack-delivery
Run Code Online (Sandbox Code Playgroud)

但是,dockerfile在构建时会产生许多错误:

debconf: unable to initialize frontend: Dialog
debconf: (TERM is not set, so the dialog frontend is not usable.)
debconf: falling back to frontend: Readline
debconf: unable to initialize frontend: Readline
debconf: (Can't locate Term/ReadLine.pm in @INC (@INC contains: /etc/perl /usr/local/lib/perl/5.14.2 /usr/local/share/perl/5.14.2 /usr/lib/perl5 /usr/share/perl5 /usr/lib/perl/5.14 /usr/share/perl/5.14 /usr/local/lib/site_perl .) at /usr/share/perl5/Debconf/FrontEnd/Readline.pm line 7, <> line 11.)
debconf: falling back to frontend: Teletype
dpkg-preconfigure: unable to re-open stdin: 
Run Code Online (Sandbox Code Playgroud)

根据我的理解,我只是无法回应对话框,但是有一些方法可以通过参数提前回答每个问题吗?我知道它只是改变了一些配置,所以我可以在事后做到这一点,但可能最好让安装脚本做到这一点,所以一切都设置得当.

installation ubuntu apt-get docker

70
推荐指数
6
解决办法
2万
查看次数

如何将查询结果转换为Postgres内的JSON对象

我有一个简单的查询,SELECT name, grp FROM things;导致下表:

 name | grp 
------+-----
 a    | y
 b    | x
 c    | x
 d    | z
 e    | z
 f    | z
Run Code Online (Sandbox Code Playgroud)

我想最终得到以下单个JSON对象:

 {y: [a], x: [b,c], z: [d,e,f]}
Run Code Online (Sandbox Code Playgroud)

我觉得我更接近于查询SELECT grp, array_agg(name) as names FROM things GROUP BY grp;,它给出了三行,其中"名称"压缩成一个数组,但我不知道从哪里开始将行压缩成一个JSON对象.

SELECT json_build_object(grp, array_agg(name)) as objects FROM things GROUP BY grp;可能会稍微靠近,因为这会导致单个JSON对象的单列结果{y: [a]},但它们仍然是单个对象,因此可能不是正确的路径.

这是使用Postgresql 9.4.

postgresql json

6
推荐指数
1
解决办法
5294
查看次数

假设带有'text/*'的HTTP数据包永远不会有'\ 0',总是安全的吗?

我正在编写一个使用HTTP进行通信的嵌入式C程序.我已经有了它的工作,但我以前没有做太多的网络,只是想确保我没有做任何非常糟糕的假设.

我可以安全地假设任何具有Content-Type类型的非恶意HTTP数据包text/<something>都不会为零吗?我的代码中有很多地方只依赖于字符串末尾的'\ 0'.我确实有一些保护措施,它会在给定的Content-Length之后一直停止,并且永远不会溢出我写入的缓冲区,但是我想尽可能地确保低级别的东西能够工作,因为一旦这些设备出货,我将无法更新这些部件.

此外,有人能指出我在网络编程中有任何共同的gottchas的资源吗?

c network-programming http c-strings

2
推荐指数
1
解决办法
106
查看次数

使用Cron重启

我正在使用Raspberry Pi进行状态显示,但无论出于何种原因,它在运行一天左右后变得令人难以置信地缓慢,所以我想每天重启它,所以我每天早上8:50设置一个cron工作.但是,它似乎没有起作用.使用cron进行重启有什么特别之处吗?

这是我的root用户的crontab :

# m   h  dom mon dow   command
50    8   *   *   *     shutdown now -r >> /var/log/cron.log
0,30  *   *   *   *     date >> /var/log/cron.log
Run Code Online (Sandbox Code Playgroud)

第二行工作正常,但我似乎无法让restart命令工作.它甚至不会向日志输出任何内容.

linux cron crontab

1
推荐指数
1
解决办法
7992
查看次数