当我运行 netstat 时,有一些条目,例如 TCP [::]:8010 computername LISTENING
这意味着什么?搜索是不可能的...
我正在 FreeBSD 机器上制作 zpools。在创建 zpools 时,我观察到这两种情况:
如果我采用raw disks并创建,zpool那么我就能够形成 zpools 并且它们运行良好。
如果我使用gpartin freebsd-zfsformat格式化磁盘,然后制作 zpool,那么它们也可以正常工作。
我感到困惑的是,哪种方法更适合创建 zpool?
我在隧道模式下使用 IPSEC。
如何制定一个 iptables 规则,只匹配通过 IPSEC 隧道到达的数据包(即在IPSEC 解密它们之后 -而不是它们到达时和解密之前的 IPSEC 数据包)。
关键是要有一个只能通过 IPSEC 访问而世界其他地方无法访问的特定端口。
服务器在多次“内存不足”消息后崩溃,我试图查明罪魁祸首。如果它在用户空间 - 哪个进程。如果它在内核中 - 哪个内核模块。
我试图找出如何使用崩溃实用程序来调查是什么触发了服务器上的 OOM。
作为安装一对新服务器的一部分,我开始了一个 14TB DRBD设备的初始化。大约在那个时候,在使用 DRBD 同步器速率配置并启动和关闭一些绑定的网络接口时,其中一台服务器崩溃了。在 30 秒的时间内,它产生了 39 条Out of memory: Kill process ####消息。然后它崩溃了:
Kernel panic - not syncing: Out of memory and no killable processes...
Run Code Online (Sandbox Code Playgroud)
系统崩溃触发了kdump。现在我有一个不错的vmcore.flat文件,应该可以直接使用它来调查问题,但是我很难找出所有内存的去向。
我知道的唯一资源是Dedoimedo 的网站,它有很好的说明,以及内核崩溃手册。这些也恰好是答案中建议的唯一资源,所以我认为这crash是唯一的调查方法。
如果有另一种方式对事件进行事后分析,我愿意接受。这只是crash我所知道的唯一实用程序。我现在拥有的只是vmcore.flat文件,我需要知道的是哪个组件占用了所有内存。我怀疑是内核模块问题,更具体地说是绑定模块之一(因为它在我关闭接口时被触发)、DRBD 模块(在 CentOS 6.3 上用树构建的版本 8.3.15),或其中一个10G 以太网模块(mlnx_en构建在树外,即我关闭的接口,或树内bnx2x,即保持活动状态的接口)。我只需要知道是否有办法验证我的怀疑。
到目前为止,我只设法使用crash实用程序提取了以下信息:
检查使用了多少内存
$ crash /usr/lib/debug/lib/modules/2.6.32-279.5.2.el6.x86_64/vmlinux vmcore.flat
....
crash> …Run Code Online (Sandbox Code Playgroud) 我正在尝试按照本指南在 ubuntu 12.04 上设置 openldap https://help.ubuntu.com/12.04/serverguide/openldap-server.html
当我尝试通过创建上面指南中描述的自签名证书在服务器上启用 TLS 时,出现以下错误
我运行的命令
ldapmodify -Y EXTERNAL -H ldapi:/// -f /etc/ssl/certinfo.ldif
Run Code Online (Sandbox Code Playgroud)
ldif 文件的内容
dn: cn=config
add: olcTLSCACertificateFile
olcTLSCACertificateFile: /etc/ssl/certs/cacert.pem
-
add: olcTLSCertificateFile
olcTLSCertificateFile: /etc/ssl/certs/ldap01_slapd_cert.pem
-
add: olcTLSCertificateKeyFile
olcTLSCertificateKeyFile: /etc/ssl/private/ldap01_slapd_key.pem
Run Code Online (Sandbox Code Playgroud)
错误信息
ldap_modify: Inappropriate matching (18)
additional info: modify/add: olcTLSCertificateFile: no equality matching rule
Run Code Online (Sandbox Code Playgroud)
在谷歌上搜索了几个小时后,我没有找到任何能说明这个错误的东西。有没有人有更多关于这方面的信息?
我有 CentOS,当我date在 shell 中运行命令时,它会返回如下内容:
格林威治标准时间 2011 年 4 月 28 日星期四 14:08:20
但是 cron 作业在 PST 时间运行。如果我指定
15 7 * * * 命令
它将在 7 PST 而不是 7 GMT 运行。请告诉我为什么会这样。
谢谢
hwclock 命令的输出:
/usr/sbin/hwclock --utc无法通过任何已知方法访问硬件时钟。
使用 --debug 选项查看我们搜索访问方法的详细信息。
当我使用 debug:
/usr/sbin/hwclock --debughwclock from util-linux-2.13-pre7 hwclock: Open of /dev/rtc failed, errno=2: No such file or directory 运行时。找不到可用的时钟接口。无法通过任何已知方法访问硬件时钟
我在实验室中有 4 台机器的测试设置:
测试 linux 防火墙的性能,因为我们在过去几个月中受到了许多 Syn-Flood 攻击。所有机器都运行 Ubuntu 12.04 64 位。t1、t2、t3通过一个1GB/s的交换机互连,t4通过一个额外的接口连接到t3。所以t3模拟防火墙,t4是目标,t1,t2扮演攻击者通过产生一个packetstorm(192.168.4.199是t4):
hping3 -I eth1 --rand-source --syn --flood 192.168.4.199 -p 80
Run Code Online (Sandbox Code Playgroud)
t4 丢弃所有传入的数据包以避免与网关混淆、t4 的性能问题等。我在 iptraf 中查看数据包统计信息。我已将防火墙(t3)配置如下:
sysctl 如下:
net.ipv4.ip_forward = 1
net.ipv4.route.gc_elasticity = 2
net.ipv4.route.gc_timeout = 1
net.ipv4.route.gc_interval = 5
net.ipv4.route.gc_min_interval_ms = 500
net.ipv4.route.gc_thresh = …Run Code Online (Sandbox Code Playgroud)我正在尝试用密码保护文档根目录,但我得到的只是一个“内部服务器错误”页面。Apache 错误日志显示:
Invalid command 'AuthType', perhaps misspelled or defined by a module not included in the server configuration
Run Code Online (Sandbox Code Playgroud)
在任何重写条目之前我的 .htaccess 文件:
AuthType Basic
AuthName "Restricted Access"
AuthBasicProvider file
AuthUserFile /var/www/public/.htpasswd
Require user dean
Run Code Online (Sandbox Code Playgroud)
我检查了模块是否已启用:
Array (
[0] => core
[1] => mod_so
[2] => mod_watchdog
[3] => http_core
[4] => mod_log_config
[5] => mod_logio
[6] => mod_version
[7] => mod_unixd
[8] => mod_access_compat
[9] => mod_alias
[10] => mod_auth_basic
[11] => mod_authn_file
[12] => mod_authz_core
[13] => mod_authz_groupfile
[14] => …Run Code Online (Sandbox Code Playgroud) 是否可以提取mlocate.db文件的内容,例如将其转储为纯文本?除了手册页中提到的结构之外,是否还为推送到数据库的内容设置了任何目录或文件属性?
我需要为anaconda制作一个驱动程序盘。该磁盘将包含一个更新的模块,适用于最近的笔记本电脑的网卡,目标是使 CentOS 6.2 的网络安装工作正常。我正在使用 cobbler,所以即使是 kickstart 文件本身也在网络上。我不介意安装是否完全无人值守,我不介意在安装过程中将带有驱动程序磁盘映像的 U 盘粘贴到 USB 记忆棒上并手动选择正确的项目,但我确实希望将其他所有内容保留在网络上(内核映像、initrd、kickstart 文件、RPM 存储库)。
我已经构建了更新的驱动程序,我什至在 /usr/lib/rpm/redhat/kmodtool 的帮助下构建了一个“kmod”RPM。不幸的是,我完全没有发现有关驱动程序磁盘是什么样子的文档。
http://www.phil.muni.cz/~letty/linuxfaq/pracovni/driver-disk-howto是我能找到的唯一链接,它描述了与我做同样事情的人的挣扎 - 下载驱动程序磁盘并试图探索它们。不幸的是,CentOS 6 中的格式似乎发生了变化,我能做的最好的事情就是让 anaconda 告诉我:“驱动程序磁盘对于此版本的 CentOS 无效。”。日志本身说“找不到/tmp/drivers/rpms/x86_64/repodata”,直到现在我还没有看到带有“repodata”的驱动程序磁盘。
目前正在深入研究 anaconda 源代码,但我希望有人能指出我正确的方向。
Oracle 官方文档说,对于 RAM 超过 16GiB 的机器,我们需要分配 16GiB 的交换空间。
我们的服务器是 RHEL 7,有 256GiB 的 RAM。
DBA 不想看到系统交换,因此他们希望我们非常积极地监控 16GiB 的交换。
我建议我们将 RAM 加倍到 512GiB(费用已获批准),并禁用交换。然而,即使我们将 RAM 加倍,这也违背了 Oracle 建议的具有 16GiB 的交换空间。
老实说,我不明白拥有 3% 的交换空间有什么意义,或者为什么如果我添加的 RAM 比交换空间多,我们必须保留交换空间。
那么,有没有什么好的论据可以用来证明在没有交换的情况下运行 Oracle 是合理的?
PS 我提到内存翻倍的唯一原因是为了证明我很难争论的论点的荒谬性。我真正要寻找的是证明禁用交换的理由。
操作系统 红帽 8.4
我知道%debug_package在文件中包含宏spec将为包生成调试信息,并生成mypackage-debuginfo-<VERSION>.<ARCH>rpm。然而有趣的是,我的规范文件没有这个宏,但调试信息却已构建。
然而,在文件的顶部spec有一些全局变量:
%global _hardened_build 1
%global sysrepo 0
%undefine _missing_build_ids_terminate_build
%define _unpackaged_files_terminate_build 0
Run Code Online (Sandbox Code Playgroud)
我想知道其中之一是否启用%debug_package宏?
linux ×4
centos ×2
centos6 ×2
.htaccess ×1
.htpasswd ×1
anaconda ×1
apache-2.4 ×1
bsd ×1
cron ×1
firewall ×1
freebsd ×1
ip ×1
ipsec ×1
iptables ×1
ipv6 ×1
kickstart ×1
memory-leak ×1
oom ×1
openldap ×1
oracle-11g ×1
oracle-linux ×1
partition ×1
redhat ×1
rpm ×1
specfile ×1
swap ×1
tls ×1
ubuntu ×1
ubuntu-12.04 ×1
unix ×1
zfs ×1