问题标签 [debian]
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.
debian - 向通过 exim4 发送的邮件添加标头
我有一个运行 Exim4-daemon-heavy 的 Debian Etch 系统。
该系统对互联网开放,但其目的是只接收来自垃圾邮件过滤服务的合法邮件,该服务作为其前面的代理运行。(不过,我不能只限制对这些 IP 的访问,因为我确实有一些授权用户通过我的服务器在端口 25 上进行中继。我知道我应该使用 587 - 但目前我不是。)
这个工作的一般方式是:
[Internet] -> [SMTP 代理] -> [我的服务器]
不幸的是,我让垃圾邮件发送者直接向邮件服务器发送邮件,而忽略了 MX 记录。所以看起来我明显的解决方案是:
- 在 SMTP 代理上为每条已处理的邮件添加一个标头。
- 除非邮件来自授权的中继器,否则在我的服务器上为每条传入消息添加一个标头。(即完成 SMTP AUTH 的人。)
这样我就可以使用 procmail 来处理直接发送的垃圾邮件,这些邮件是通过忽略我的 MX 记录的发件人发送的。
我很确定 Exim4 可能会被强制添加诸如“X-Submitter: $ip”之类的标头 - 以记录提交消息的远程 IP,但我不确定应该如何完成。
ubuntu - 如何从源代码构建 Debian/Ubuntu 软件包?
我有一个程序的源代码(取自 cvs/svn/git/...),我想为它构建一个 Debian/Ubuntu 软件包。该软件包存在于存储库中,但是:
- 这是一个旧版本(缺少我需要的功能)
- 我需要的编译选项与默认选项略有不同。
最简单的方法是什么?我担心几件事
- 如何检查我是否正确列出了所有依赖项?(我可以通过查看旧版本所依赖的内容来获得一些提示,但可能已经添加了新的依赖项。)
- 如何防止更新系统在更新时在 repo 中安装旧版本?
- 如何防止系统安装更新版本(当它出来时)覆盖我的自定义包?
linux - 在 Linux 上沙箱 Apache 的最佳方法
我在面向公众的 Debian 服务器上运行 Apache,有点担心安装的安全性。这是一台承载几个空闲时间爱好项目的机器,所以我们使用这台机器的人都没有真正有时间持续关注上游补丁、注意安全问题等。但我想让坏人远离,或者如果他们进来了,就把他们放在沙箱里。
那么这里最好的、易于设置、易于维护的解决方案是什么?在 Debian 上设置用户模式 linux 沙箱容易吗?或者也许是 chroot 监狱?我想从外部轻松访问 sadbox 内的文件。这是我非常清楚我是程序员而不是系统管理员的时候之一。任何帮助将非常感激!
debian - 通过 exim4 指定用于邮件的远程端口
我有一个使用 Exim4 的股票 Debian Etch 系统。这些域大多是本地的,但也有一些是远程的。为了处理远程邮件的传递,我使用了 Debian 配置文件:
该文件列出了域名和要传送到的远程 MX 机器。例如:
查看 exim4 配置文件,我看到它的用法如下:
我遇到的问题是我使用的一些主机需要将他们的邮件传递到非标准端口。不幸的是,如果我尝试将 Debian hubbed_hosts 文件更改为包含端口,则该文件不起作用:
是否可以动态允许指定端口?
linux - Apache 配置帮助——为什么不同的进程“在”不同的时区?
我在 VPS 服务器(运行 Debian)上运行 Apache 2。我最近将服务器上的时区(使用 dpkg-reconfigure tzdata)从 America/New_York 更改为 America/Los_Angeles 以匹配我在全国范围内的移动。进行更改后,我还重新启动了虚拟机。
但是,Apache 进程似乎在时区之间来回移动。请参阅 access_log 中的此片段:
它从 23:01 跳到 02:01 并返回。知道如何保持一致吗?
linux - 克隆 Debian/Ubuntu 安装
有没有一种简单的方法可以克隆整个已安装的 debian/ubuntu 系统?
我希望在已安装的软件包和尽可能多的设置方面进行相同的安装。
我研究了 aptitude、apt-get、synaptic 的选项,但一无所获。
linux - 在 Debian 上将 Subversion 1.4.3 升级到 1.5.2(托管帐户)
我正在尝试升级我的颠覆服务器(我使用 Dreamhost 托管)
这就是我运行的:
- wget http://subversion.tigris.org/downloads/subversion-1.5.2.tar.bz2
- wget http://subversion.tigris.org/downloads/subversion-deps-1.5.2.tar.bz2
- tar -xjf subversion-1.5.2.tar.bz2
- tar -xjf 颠覆-deps-1.5.2.tar.bz2
- cd subversion-1.5.2
- ./configure --prefix=/usr/bin --with-libs=/usr/bin/openssl --with-ssl
但由于此错误,我无法继续:
- 检查 C 编译器默认输出文件名...
- 配置:错误:C 编译器无法创建可执行文件
- 更多细节参见` config.log '。
- 霓虹灯配置失败
由于我不是 Linux 专家,因此我不确定如何继续。
所以问题是:什么是最好的升级方式(考虑到与这个托管提供商的限制)。
更新:
config.log的内容可以在这里看到(不知道在 SO 上显示文件的最佳方式)
更新:
我似乎一直在查看错误的 config.log 文件。
我可能应该一直在看subversion.1.5.2/neon/config.log
linux - 在 Debian 或 Ubuntu 下自动获取构建依赖项的 Debian 方式是什么?
我最近下载了我想改进的 GTK 应用程序的源代码压缩包。它使用标准./configure
和make
构建顺序。
第一次通过,configure
报告了一堆未满足的构建依赖项,例如libgnomeui-2.0
. 像往常一样,我必须手动查找*-dev
与这些依赖项对应的 Debian 软件包名称……当然,这些名称永远不会完全匹配,所以这真的很麻烦。
所以发生在我身上的是......是否有任何帮助工具来自动安装automake
/autoconf
配置文件列出的构建依赖项???
(我已经了解这些dpkg-buildpackage
工具,但在这种情况下,我有兴趣从原始独立于发行版的源代码 tarball 构建,而不是从 Debian 软件包源代码构建。)
c - timerfd_create 在 amd64 上使用 debian linux 测试
我正在尝试在 Debian Linux lenny 下使用 timerfd_create 和 timerfd_settime。手册页说包括<sys/timerfd.h>
. 此文件无法在我的系统上找到。根据 Debian 包搜索,唯一带有 timerfd.h 的包是 linux-headers-* 包。
我已经安装了包 linux-headers-2.6.26-1-amd64 和 linux-headers-2.6.26-1-common。我尝试包括 /lib/modules/2.6.26-1-amd64/build/include/linux/timerfd.h 文件(不包括<sys/timerfd.h>
)。但后来我得到以下链接器错误:
slave.c:(.text+0x166): undefined reference to timerfd_ceate
slave.c:(.text+0x1e5): undefined reference totimerfd_settime
我的构建命令是 gcc -o slave slave.c -L../libs -lcan -lutils -lrt
can 和 utils 库是我自己的。他们都不使用或定义 timerfd_* 函数之一。我尝试了 -lrt 因为 timer_create 和 timer_settimer 需要它,即使它不在手册页中。带有 timer_create 和 timer_settimer 的测试程序可以正常工作并且符合预期。
我需要安装哪些数据包,需要链接到哪些库,以及使用 timerfd_create 和 timerfd_settimer 需要哪些包含文件。
谢谢埃格
linux - 如何在本地安装包?
背景:我现在有一台无法无线使用的kubuntu笔记本电脑,即我没有安装无线助手。但我有一台 Windows 笔记本电脑,我可以将 debian 软件包单独下载到 USB 记忆棒上。
如何在本地计算机上安装 debian 包?