小编Nic*_*ick的帖子

如何确定哪个用户使用 postfix 发送了特定电子邮件?

我们有一个 postfix 服务器,需要通过它对 SMTP 中继进行身份验证。我们在 MySQL 数据库中使用虚拟邮箱。

一条消息通过我们的系统中继,我们需要确定使用哪个用户帐户发送它。

消息头包含:

Received: from User (c-76-109-241-139.hsd1.fl.comcast.net [xx.109.xxx.139]) 
    by ourserver.com (Postfix) with ESMTPA id 7BA184B4AD4; 
    Tue,  3 Jul 2012 05:42:59 -0400 (EDT)
Run Code Online (Sandbox Code Playgroud)

我们没有名为“User”的用户,而且 IP 地址不是我们发送邮件的地址。我想知道发件人在发送消息时对哪些用户帐户进行了身份验证。

有没有办法跟踪这个?

security email postfix

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

使用 Nginx 在 PHP-FPM 7 上启用错误日志记录?

这与这些问题基本相同:

/sf/ask/607424541/

Nginx 不记录 PHP 错误

但是那里的答案似乎不适用于带有 PHP 7 的 Ubuntu 16.04。

/etc/php/7.0/fpm/pool.d/www.conf

catch_workers_output = yes
php_flag[display_errors] = on
php_admin_value[error_log] = /var/log/fpm-php.www.log
php_admin_flag[log_errors] = on
Run Code Online (Sandbox Code Playgroud)

/var/log/fpm-php.www.log存在并归www-data.

/etc/php/7.0/fpm/php.ini

log_errors = On
Run Code Online (Sandbox Code Playgroud)

Nginx 虚拟主机的服务器块

access_log /var/log/myapp/access.log;
error_log /var/log/myapp/error.log error;
Run Code Online (Sandbox Code Playgroud)

/var/log/myapp/access.log 存在并归www-data.

但是当发生错误时,我在任何指定的日志文件中都没有收到错误,并且在任何其他地方也找不到它。

我浏览了关于另一个问题的所有建议,但没有找到任何有效的答案。我假设自从这些答案发布以来,情况已经发生了变化。有什么建议?

nginx php-fpm php7 ubuntu-16.04

10
推荐指数
1
解决办法
4万
查看次数

“没有可用的包 pv。” 在 CentOS 6.2 上 最小

我正在尝试在 CentOS 6.2 最小系统上安装 Pipe Viewer。

当我运行时:

yum install pv
Run Code Online (Sandbox Code Playgroud)

我得到:

* base: mirror.thelinuxfix.com
* extras: mirror.atlanticmetro.net
* updates: ftp.usf.edu

No package pv available.
Error: Nothing to do
Run Code Online (Sandbox Code Playgroud)

我需要添加另一个回购吗?如果是,是哪一个,我该如何添加?

package-management centos6

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

ldap_add 错误 (80) <olcModuleLoad> 处理程序以 1 退出

我正在尝试按照教程设置一个基本的 LDAD 服务器 (OpenLDAP) 以进行客户端身份验证,但我被困在添加后端配置的步骤上。

我已经按照指定创建了我的 backend.ldif 文件,我正在尝试添加它:

sudo ldapadd -Y EXTERNAL -H ldapi:/// -f backend.ldif
Run Code Online (Sandbox Code Playgroud)

但我得到:

SASL/EXTERNAL authentication started
SASL username: gidNumber=0+uidNumber=0,cn=peercred,cn=external,cn=auth
SASL SSF: 0
adding new entry "cn=module,cn=config"
ldap_add: Other (e.g., implementation specific) error (80)
    additional info: <olcModuleLoad> handler exited with 1
Run Code Online (Sandbox Code Playgroud)

完整的 LDIF 是:

#Load dynamic backend modules
dn: cn=module,cn=config
objectClass: olcModuleList
cn: module
olcModulepath: /usr/lib/ldap
olcModuleload: back_hdb

# Database settings
dn: olcDatabase=hdb,cn=config
objectClass: olcDatabaseConfig
objectClass: olcHdbConfig
olcDatabase: {1}hdb
olcSuffix: dc=mydomain,dc=us
olcDbDirectory: /var/lib/ldap
olcRootDN: cn=admin,dc=mydomain,dc=us …
Run Code Online (Sandbox Code Playgroud)

openldap

8
推荐指数
1
解决办法
3万
查看次数

断电后如何检查 CentOS 6 Server VM Host?

今天下午,我们办公室的某个人决定拔掉我们服务器的插头,因为外面正在暴风雨。他们没有关闭它,只是在它运行时拔掉了插头。

该服务器有 4 个 SATA 驱动器,采用软件 RAID 10 配置,LVM 运行在 RAID 之上。Server 运行 CentOS 6.2 Minimal,是一台使用 KVM 的虚拟机主机。拔掉电源的时候,电脑上有很多来宾机器在运行。每个来宾都有一个或多个 LVM 分区,可直接用作硬盘驱动器。来宾分区是 EXT3、EXT4 和 NTFS。主机操作系统位于 EXT4 分区上。

后来,等电又回来了,那人把它插回去,就开机了。由于他们在没有先连接显示器的情况下将其插入,因此无法查看屏幕上显示的内容。我现在尝试连接显示器,但除非在启动时连接显示器,否则它将无法工作。我一直保持原样,直到我得到一些建议,因为我不想搞砸任何事情(进一步)。

我可以通过 SSH 进入主机。我还没有重新启动它,以防万一日志中某处可能有用的东西。

如果可能的话,我需要做的是检查所有磁盘和分区的数据完整性。我认为 RAID 10 使用某种基于内存的缓存,我担心驱动器不一致,或者如果提示写入尚未写入驱动器的内容,则文件会损坏。

[root@othello ~]# cat /proc/mdstat
Personalities : [raid10] [raid1] 
md2 : active raid1 sdc1[2] sda1[0] sdd1[3] sdb1[1]
      102388 blocks super 1.0 [4/4] [UUUU]

md0 : active raid10 sda3[0] sdc3[2] sdd3[3] sdb3[1]
      1952289792 blocks super 1.1 512K chunks 2 near-copies [4/4] [UUUU]
      bitmap: 0/15 pages [0KB], 65536KB chunk

md1 …
Run Code Online (Sandbox Code Playgroud)

raid centos electrical-power virtualhost centos6

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

如何使 RewriteCond %{HTTP_COOKIE} 与 cookie 值完全匹配?

如何使我的规则与 cookie 的确切值匹配?我试过了:

RewriteCond %{HTTP_COOKIE} ^its=me$ [NC]

RewriteCond %{HTTP_COOKIE} its=^me$ [NC]

RewriteCond %{HTTP_COOKIE} its="me" [NC]

RewriteCond %{HTTP_COOKIE} its=me [NC] 
Run Code Online (Sandbox Code Playgroud)

最后一个几乎有效,但是当额外的文本位于值的末尾时匹配,例如“me2”。仅当itscookie 的确切值为 时me,条件才应为真,之前或之后没有更多内容。

这些值应匹配:

  • 我2
  • [空字符串]
  • [根本没有设置cookie]

mod-rewrite rewrite rewritecond apache-2.2

8
推荐指数
2
解决办法
3万
查看次数

星号:使用“ast_yyerror”挂断电话

我遇到了一个间歇性问题,星号会向来电者播放我们的问候,然后挂断电话而不是让我们的电话响铃。

我在这里的任何电话都无法重现该问题,而且许多来电者都可以正常接通。但是,有些来电者遇到了问题,我找不到任何模式。

我能找到的一些信息说它是由评估拨号计划表达式的错误引起的。我想这是这一行:

扩展 => START,n,GotoIf($[${FORCE_CLOSED}=TRUE]?CLOSED,1)

但我不确定它有什么问题。

我在控制台上看到以下错误:

[4 月 4 日 16:29:49] 警告 [27038]:ast_expr2.fl:459 ast_yyerror:ast_yyerror():语法错误:语法错误,意外的“=”,期待 $end;输入:=真^

周围控制台输出:

-- 在新堆栈中执行 [START@AGInbound:1] Answer("IAX2/AtlantaTeliax-10086", "")
-- 在新堆栈中执行 [START@AGInbound:2] BackGround("IAX2/AtlantaTeliax-10086", 0000_AG_THANK_YOU_FOR_CALLING_AG")
-- 播放“0000_AG_THANK_YOU_FOR_CALLING_AG.slin”(语言“en”)
[4 月 4 日 16:29:49] 警告 [27038]:ast_expr2.fl:459 ast_yyerror:ast_yyerror():语法错误:语法错误,意外的“=”,期待 $end;输入:
=真
^
[Apr 4 16:29:49] WARNING[27038]: ast_expr2.fl:463 ast_yyerror: 如果您有问题,请参考星号源中的 doc/tex/channelvariables.tex。
    -- 在新堆栈中执行 [START@AGInbound:3] GotoIf("IAX2/AtlantaTeliax-10086", "?CLOSED,1")
    -- 在新堆栈中执行 [START@AGInbound:4] GotoIfTime("IAX2/AtlantaTeliax-10086", "9:30-17:0|mon-fri|*|*?OPEN,1")
    -- 在新堆栈中执行 [START@AGInbound:5] GotoIfTime("IAX2/AtlantaTeliax-10086", "10:0-18:30|sat|*|*?OPEN,1")
    -- 在新堆栈中执行 [START@AGInbound:6] GotoIfTime("IAX2/AtlantaTeliax-10086", "12:0-17:0|sun|*|*?OPEN,1")

拨号计划中的相关线路:

扩展 => START,1,Answer()
扩展 => 开始,n,背景(0000_AG_THANK_YOU_FOR_CALLING_AG)

; 看看我们是否开放
; 如果无人接听,则强制关闭 …

asterisk

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

PHP-FPM 服务状态“停止/等待”但工作人员正在运行?

启动 php5-fpm 似乎可以工作,但立即检查状态显示它没有运行:

[root@server ~]# service php5-fpm start
php5-fpm start/running, process 4516

[root@server ~]# service php5-fpm status
php5-fpm stop/waiting
Run Code Online (Sandbox Code Playgroud)

即使我能够加载 PHP 页面(意味着 PHP-FPM 必须正在运行),状态有时也会报告为stop/waiting.

看来,有正在运行的进程,但这些只是工作进程?

ps -aux |grep php
www-data  3552  0.0  0.7 338108 14960 ?        S    05:43   0:00 php-fpm: pool www                                                       
www-data  3553  0.0  1.3 338168 27156 ?        S    05:43   0:00 php-fpm: pool www                                                       
www-data  3554  0.0  1.1 337948 23020 ?        S    05:43   0:00 php-fpm: pool www                                                       
www-data  3555  0.0  1.0 334108 20644 ?        S …
Run Code Online (Sandbox Code Playgroud)

php-fpm start-stop-daemon ubuntu-14.04

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

CentOS中如何降低驱动器的SATA链接速度?

如何让 CentOS 在启动时以 3Gb/s 的速度运行 SATA 驱动器?

背景:

我遇到了声称支持 6Gb/s SATA 传输速度的主板的问题,但是当在其上使用 4 个驱动器时,在具有大量磁盘 IO 的软件 RAID 10 中,一些 SATA 链接开始抛出内核错误,即。ata1.00: failed command: WRITE FPDMA QUEUED. 但每次都是不同的驱动器,并不总是 ata1,并且在每个磁盘上单独运行扩展测试不会产生错误。

当错误发生时,Kernel/OS (CentOS 6.2) 最终会多次重置链接,当它继续失败时,它会将链接速度更改为 3Gb/s。一旦发生这种情况,该驱动器的错误将在会话的剩余时间内停止。

我想做的是告诉操作系统将 SATA 链接设置为 3Gb/s 以在启动时开始,因为我认为主板的 SATA 总线无法以 6Gb/s 的速度处理所有 4 个驱动器。我在主板的 BIOS 中找不到更改链接速度的选项。

问题:

  1. 我该怎么做?IE。一个配置文件?

  2. 是否可以在系统运行并组装好 RAID 阵列并安装根分区的情况下完成,或者我是否需要从应急 CD 启动?

  3. 这会导致任何数据丢失吗?我当然有备份,但重新安装/恢复是几个小时的工作,如果可能的话我想避免。

hard-drive sata centos6

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

我可以让 md(Linux 软件 RAID)更加容错吗?

我的 RAID 1 镜像中有一个特定的硬盘驱动器,它在重负载下会发生故障,通常是在我运行完整备份时。

驱动没有问题。好的,在写入超级块时出现一个错误,但仅此而已。每次运行备份过程时,始终需要手动重新添加同一磁盘和同一阵列。

是否有任何设置可以md更好地容忍导致该驱动器在负载下发生故障的原因?

这是 Debian 上的 Linux 软件 RAID。

更新:根据要求,DMSG失败时的输出:

[2347429.116507] print_req_error: I/O error, dev sda, sector 15751347328
[2347429.116511] sd 1:0:0:0: [sda] tag#1058 FAILED Result: hostbyte=DID_SOFT_ERROR driverbyte=DRIVER_OK
[2347429.116516] mpt2sas_cm0: log_info(0x31080000): originator(PL), code(0x08), sub_code(0x0000)
[2347429.116518] sd 1:0:0:0: [sda] tag#1058 CDB: Write(16) 8a 08 00 00 00 00 00 00 00 28 00 00 00 08 00 00
[2347429.116522] mpt2sas_cm0: log_info(0x31080000): originator(PL), code(0x08), sub_code(0x0000)
[2347429.116523] print_req_error: I/O error, dev sda, sector 40
[2347429.116526] mpt2sas_cm0: …
Run Code Online (Sandbox Code Playgroud)

raid debian hard-drive software-raid

6
推荐指数
3
解决办法
2279
查看次数