小编Fer*_*ndo的帖子

Linux:如何知道进程在哪里启动以及它是如何启动的?

我正在检查一个 Linux 框,发现一个 perl 进程正在运行并占用了大量的 cpu 使用率。使用 top,我只能在进程名称中使用 perl。

当我按c查看命令行时,它显示 /var/spool/mail。这是没有意义的,因为这是目录。

我的问题是:

1)为什么会这样?这个 perl 进程如何掩盖它的命令行?2) 找出流程开始的位置和方式的最可靠方法是什么?

谢谢!

linux

48
推荐指数
4
解决办法
11万
查看次数

mysql_connect():服务器请求客户端未知的身份验证方法[mysql_old_password]

我正在尝试运行 PHP 5.4.1(从源代码编译)但是当我尝试在 mysql 上连接时,我得到:

Warning: mysql_connect(): The server requested authentication method unknown to the client [mysql_old_password] in
Run Code Online (Sandbox Code Playgroud)

当使用 PHP 5.3/5.2 时,它可以正常工作。关于导致此问题的原因的任何想法?

php

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

Mikrotik:如何正确设置 IPV6 路由/dhcp 服务器

我的网络中有以下配置:

ISP Router <- eth1 -> Mikrotik Router <- eth2-5 -> Internal network
Run Code Online (Sandbox Code Playgroud)

我的 ISP 路由器收到一个动态的 /64 IPV6 块,每当我重新启动它时都会发生变化。

问题是我内部网络中的设备没有收到 IPV6 地址,可能是因为 Mikrotik 中的 DHCP 服务器配置不正确。

我已经在 Mikrotik 中配置了 DHCP 客户端(IPV6 -> DHCP 客户端),我可以看到我的 ISP 分配的 /64 块。

但是我无法配置 DHCP 服务器。我尝试在“IPV6 -> DHCP 服务器 -> 添加新”中分配池,但我的设备仍然没有收到任何 IPV6 地址。

关于什么是错误的任何想法?我使用的是 6.33 版。

注意:如果我将设备直接连接到我的 ISP 路由器,则 IPV6 可以正常工作。

- - 编辑 - -

在迈克尔发表评论后,我取得了一些进展。我在 Mikrotik 中禁用了 DHCP 服务器,并在“IPV6 -> 地址”中添加了一个带有广告标志的新地址,并使用了 DHCP 客户端创建的池。

我内部网络中的所有设备都在接收 IPV6 地址并且可以互相 ping 通。不幸的是,我无法 ping 外部主机。

在 Mikrotik 中,只有在 …

ipv6 mikrotik

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

乘客 + nginx:应用程序不在生产模式下运行

我正在使用Passenger + Nginx 来运行Rails 应用程序。如果我使用“rails_env 开发”;该应用程序运行良好。

但是如果我在生产模式下运行,我会得到“我们很抱歉,但出了点问题。”。

我确实为生产运行了 db:migrate,我可以正常访问数据库。

奇怪的是,我没有在日志中得到任何新条目(nginx 和 rails 之一),而且我确保 nginx 用户可以在它们上面写字。

如果我运行 rails 控制台生产,它工作正常:

# rails console production
Loading production environment (Rails 3.2.0)
1.9.3-p125 :001 > 
Run Code Online (Sandbox Code Playgroud)

关于可能发生什么的任何想法?我还应该检查什么?

- - 编辑 - -

在@BenLee 建议将passenger_debug_log_file 添加到nginx.conf 之后,我开始在开发和生产中遇到此错误:

# /etc/init.d/nginx restart
nginx: the configuration file /opt/nginx/conf/nginx.conf syntax is ok
nginx: [alert] Unable to start the Phusion Passenger watchdog: it seems to have crashed during startup for an unknown reason, with exit code 1 (-1: Unknown error) …
Run Code Online (Sandbox Code Playgroud)

nginx ruby-on-rails phusion-passenger

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

设置 VPN 的问题:可以连接但无法 ping 任何人

这是我第一次设置VPN。客户端可以连接但不能ping其他机器。这当然是路由问题,但我找不到正确的配置方法。

这是我要连接的两个 LANS 的示例:

所以,我希望来自 192.168.1.0/24 的机器能够与 192.168.0.0/24 连接,就好像它们在同一个网络上一样。对于 VPN 网络,我想使用 10.0.0.0/24 范围。

这是我的 server.conf:

原始UDP
端口 1194
开发屯
服务器 10.0.0.0 255.255.255.0
推送“路由 192.168.0.0 255.255.255.0 192.168.0.1”
推送“dhcp-option DNS 192.168.0.1”
推送“dhcp-option WINS 192.168.0.1”
comp-lzo
保活 10 120
漂浮
最大客户 10
持久键
持久化
日志附加/var/log/openvpn.log
动词 6
TLS服务器
dh /etc/openvpn/keys/dh1024.pem
ca /etc/openvpn/keys/ca.crt
证书 /etc/openvpn/keys/server.crt
密钥 /etc/openvpn/keys/server.key
tls-auth /etc/openvpn/keys/mykey.key 0
状态/var/log/openvpn.stats

我的一位客户 192.168.1.2:

客户
开发者点击
原始UDP
远程 my.no-ip.address 1194
路线 192.168.1.0 255.0.0.0 192.168.1.1 3
解决重试无限
没有绑定
持久键
持久化
ca "C:\\Program Files\\OpenVPN\\easy-rsa\\keys\\ca.crt"
证书“C:\\Program Files\\OpenVPN\\easy-rsa\\keys\\test1.crt”
键“C:\\Program …

openvpn

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

Linux RAID 1:如何进行二级高清启动?

我在 Centos 6.5 服务器上有以下 RAID 1:

# cat /proc/mdstat
Personalities : [raid1]
md0 : active raid1 sdb1[3]
    974713720 blocks super 1.0 [2/1] [_U]
    bitmap: 7/8 pages [28KB], 65536KB chunk

md1 : active raid1 sdb2[3] sda2[2]
    2045944 blocks super 1.1 [2/2] [UU]

unused devices: <none>

# df -h
Sist. Arq.            Size  Used Avail Use% Montado em
/dev/md0              915G  450G  420G  52% /
tmpfs                 7,8G     0  7,8G   0% /dev/shm
Run Code Online (Sandbox Code Playgroud)

/dev/sda 即将失败。我什至将它标记为错误,因为它会导致读取错误。

我今天得到了新的 HD,它将取代 /dev/sda。

问题是当我拔下当前的 /dev/sda 时,我不能让它只用 /dev/sdb 启动。看起来 PC 的 BIOS …

mdadm grub software-raid

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

即使有 100GB 以上的 RAM 可用,kswap 也使用 100% 的 CPU

我正在运行一个 Centos 7 ESXi VM,它有将近 300GB 的 RAM 和 24 个 vCPU。

平均负载为 3,应用程序几乎从不使用超过 150GB 的 RAM。剩余的可用内存由 Linux 用于缓存。

问题是,当缓存填满可用 RAM 时,两个 kswapd 进程将开始使用 100% 的 CPU,突然我看到所有 CPU 也显示 99% 的 sys 使用率(不是等待或用户,主要是 sys )。

这将导致几分钟的高负载 (100+),直到系统恢复并且负载再次下降到 3。

目前我没有交换分区,但即使我有交换分区,这个问题也发生了。

我发现的一个“解决方案”是每天执行以下命令:

 echo 3 > /proc/sys/vm/drop_caches
Run Code Online (Sandbox Code Playgroud)

这会丢弃缓冲区/缓存。这将“修复”该问题,因为缓存使用率从未达到 100%。

我的问题是:

  • 这个问题有真正的解决方案吗?

  • linux 内核不应该足够聪明以简单地从内存中清除旧的缓存页面而不是启动 kswap 吗?

毕竟,据我了解 RAM 内存的主要功能是供应用程序使用。缓存只是次要功能,如果您没有足够的内存,可以丢弃/忽略它。

我的内核版本是 3.10.0-229.14.1.el7.x86_64。

centos linux-kernel

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

未应用 SSH 配置文件

我正在运行 Mac Os Lion 并具有以下 ssh 配置文件:

$ cat /Users/fernando/.ssh/config
Port 123
Run Code Online (Sandbox Code Playgroud)

这应该会导致 ssh 连接始终在端口 123 上,不是吗?

好吧,发生的情况是它仍然尝试在 22 上连接:

$ ssh 192.168.0.11 -v
OpenSSH_5.6p1, OpenSSL 0.9.8r 8 Feb 2011
debug1: Reading configuration data /Users/fernando/.ssh/config
debug1: Reading configuration data /etc/ssh_config
debug1: Applying options for *
debug1: Connecting to 192.168.0.11 [192.168.0.11] port 22.
Run Code Online (Sandbox Code Playgroud)

关于为什么不应用此配置的任何想法?ssh 配置文件是否缓存?

ssh

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

应调整哪些内核参数来修复 RX 溢出?

我有一台 Centos 6 服务器,可以处理大量流量。我发现 RX 溢出一直在增加:

RX packets:11191345002 errors:0 dropped:0 overruns:35592596 frame:0
TX packets:15262461573 errors:0 dropped:0 overruns:0 carrier:0
RX bytes:1871320014951 (1.7 TiB)  TX bytes:12673638434114 (11.5 TiB) 
Run Code Online (Sandbox Code Playgroud)

根据http://www.tldp.org/LDP/nag2/x-087-2-iface.ifconfig.html

当数据包进入的速度快于内核处理最后一个中断的速度时,通常会发生接收器溢出。

应该调整哪些内核参数来解决这个问题?

networking ifconfig centos6

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

vSphere ESXi hypervisor 的暴力保护?

我找不到任何关于如何为 ESXi 管理程序(包括 SSH)启用暴力保护的文档。

我的大多数 Linux 服务器都会阻止尝试使用错误用户/密码登录 X 次以上的 IP。ESXi 有类似的东西吗?

vmware-esxi

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