我的 iptables 设置有很多规则(路由、ssh 禁止等),我还从http://blacklist.linuxadmin.org获取了要禁止的 IP 列表,现在它变得非常复杂。
我/etc/sysconfig/iptables
的真的很长。有没有办法通过包含来自外部文件的规则来管理规则?
例如:
#include "pre_routing_rules"
#include "ssh_bans"
Run Code Online (Sandbox Code Playgroud)
这将包括在文件“pre_routing_rules”和“ssh_bans”中添加的规则这样我可以轻松管理我的规则而无需在cat /etc/sysconfig/iptables
.
嗨,我是 Fedora/Centos/RHEL 的新手。我对这些 Linux 操作系统中的 NetworkManager 和网络服务感到困惑。我可以知道 NetworkManager 和网络服务之间是什么关系吗?
如果我使用 NetworkManager,是否需要关闭网络服务?同样,如果我使用网络服务,是否需要关闭NetworkManager?如果我同时使用这两个应用程序,它们会相互冲突吗?
有没有一种简单的方法可以列出新安装的 RPM 包将安装的依赖项列表yum
?
示例:如果你这样做,yum install ruby
它也会安装一些 rubygems。
但是当我卸载ruby
包时,我也想摆脱它安装的依赖项。
所以我的第一个想法是列出这些新软件包,然后rpm -e
在卸载ruby
.
题
如何以自动方式制作这样的列表?
或者有没有更简单的方法来管理带有 rpm 包名的文本文件?
当我从家里通过 ssh 连接到我们的一台办公室服务器(运行 Fedora 10)时,我的会话在相当短的活动时间(5 分钟左右)后超时。我试过TcpKeepAlive
在客户端使用,没有效果。
我不明白的是,如果我在公司 LAN 上的办公室,我可以让会话整天处于非活动状态而不会超时,因此这种行为似乎取决于我的位置。
任何想法为什么会发生这种情况以及如何在我不在 LAN 上时防止超时?如果有帮助,我正在 Mac OSX 上使用终端客户端。
更新- 戴夫·德拉格 (Dave Drager) 建议使用ServerAliveInterval
非零设置TcpKeepAlive=no
对我有用。关于其他一些答案,ClientAlive
Mac OSX SSH 客户端不接受 ... 设置。
我知道有一种方法可以在 Fedora 中执行上述操作。我一辈子都记不起钥匙是什么;我也无法通过网络搜索找到文档。
我正在运行一台 FC18 机器,我正在测试一个软件(smf-sav,一个 milter),将其部分工作文件保存在 /var/run/smf-sav/ 下。
该目录在重新启动后不断消失。因此,问题是:什么是删除它?有没有办法将其标记为永久?
我已经阅读了很多关于此的内容,但仍然不确定为什么这不起作用。据我所知,所有目录都有正确的权限,即使所有内容都是 777,我在尝试将此程序作为服务运行时仍然被拒绝。我试图作为伺服系统运行的程序称为 xTeVe。我尝试在所有不同的目录、用户下运行它,但似乎没有任何效果。
这是单元文件:
[Unit]
Description=XTeVe For Plex
After=network.target network-online.target
[Service]
ExecStart=/root/IPTV/xteve
user=root
Restart=on-failure
RestartSec=5
StartLimitInterval=60s
StartLimitBurst=3
[Install]
WantedBy=multi-user.target
Run Code Online (Sandbox Code Playgroud)
我知道这不应该以 root 身份运行,但这只是我尝试的最后一个用户
当我尝试启动服务时,我得到了这个:
14:20 xteve.service: Failed with result 'exit-code'.
14:02 xteve.service: Main process exited, code=exited, status=203/EXEC
14:02 xteve.service: Failed at step EXEC spawning /root/IPTV/xteve: Permission denied
14:02 xteve.service: Failed to execute command: Permission denied
14:02 Started XTeVe For Plex.
Run Code Online (Sandbox Code Playgroud)
这是文件权限:
[root@skynet IPTV]# ls -la
total 12084
drwxr-xr-x. 2 root root 19 Mar 6 13:58 .
dr-xr-x---. 5 root root 175 …
Run Code Online (Sandbox Code Playgroud) 所以当我在 Fedora 中运行它时,我看到了这个:
$ ls hmm_data/indivA12_AATAAG/refs/par1/
2R-orths.alleles 2R-ref.alleles
$ ls hmm_data/indivA12_AATAAG/refs/par1/ | grep -F '-ref.alleles'
2R-ref.alleles
Run Code Online (Sandbox Code Playgroud)
但是当我在 Ubuntu(相同数据)上运行时,我没有从 grep 中得到任何结果:
$ ls hmm_data/indivA12_AATAAG/refs/par1/
2R-orths.alleles 2R-ref.alleles
$ ls hmm_data/indivA12_AATAAG/refs/par1/ | grep -F '-ref.alleles'
Run Code Online (Sandbox Code Playgroud)
任何想法可能会发生什么?我怎样才能想出在两个系统上都能正常工作的东西?
我觉得这应该是一件非常简单的事情,但是谷歌搜索和检查 SF 我什么也没看到。我试图让我的 Fedora 服务器不响应 ping,我该怎么做?
在添加 kickstart 文件(https://serverfault.com/questions/548405/)后设法让 Fedora ISO 成功重建(用于 USB 记忆棒)后,我现在在 USB 媒体上定位 kickstart 文件时遇到问题.
当这是从 CDROM 完成时,您可以通过添加此参数来启动简单的 kickckstart:
linux ks=cdrom
Run Code Online (Sandbox Code Playgroud)
这将kickstart(假设kickstart 文件名为ks.cfg 并且位于磁盘的根目录中)。
现在,显然这对于 USB 驱动器会有所不同,所以根据我的研究,我认为这条线可以完成这项工作:
linux ks=hd:sdb1:/ks.cfg
Run Code Online (Sandbox Code Playgroud)
显然这行不通。我收到一条错误消息,通知我此驱动器已安装且无法重新安装。
编辑:实际错误消息:
mount: /dev/sdb1 is already mounted or /run/install/tmpmnt0 busy
Warning: Can't get kickstart from /dev/sdb1:/ks.cfg
Run Code Online (Sandbox Code Playgroud)
为了测试语法是否正确,我将 kickstart 文件放在另一个 U 盘上并加载了相同的命令以从新位置获取 ks.cfg:
linux ks=hd:sdc1:/ks.cfg
Run Code Online (Sandbox Code Playgroud)
这确实有效(如果 USB 记忆棒按顺序安装,引导 -> sdb1,kickstart -> sdc1)。安装将启动并顺利完成安装。显然必须使用 2 个笔式驱动器有点令人沮丧和不可靠。
有没有解决的办法?