我有一个调用大约 10 个其他 perl 脚本的 Perl 脚本,其中一些调用 Python 脚本。每一个都产生其他程序读取的文件。这很复杂。
我想做的是运行它,并让 Linux 报告哪些程序调用了哪些程序,以及每个程序读入和生成了哪些文件?
在 Linux 中是否可能进行某种跟踪?
我使用nohup如下所述在后台启动了我的 Python 程序-
nohup zook.py &
Run Code Online (Sandbox Code Playgroud)
现在我试图终止这个进程,所以我ps执行了下面提到的命令
root@phxdbx1145:/home/david/zook# ps ax | grep zook.py
16352 pts/6 S+ 0:00 grep --color=auto zook.py
Run Code Online (Sandbox Code Playgroud)
但不知何故,每次它的 PID 改变时,我都不知道为什么。每当我喜欢这样 -
kill -9 16352
Run Code Online (Sandbox Code Playgroud)
它总是说,No Such Process。
当我再次执行 px 命令时,我看到 PID 自动更改了..
所以我不确定如何终止这个进程?
有什么办法可以以某种方式终止带有名称的进程吗?
我试过
killall zook.py
但它对我不起作用,我得到 -
zook.py: no process found
Run Code Online (Sandbox Code Playgroud)
还有其他选择吗?不知何故,它的 PID 每次都会改变.. 所以我不能使用kill -9 pid
更新:-
这就是我得到的。我做了pkill -9 zook.py然后我做了下面提到的 ps 命令,它不断地显示 zook.py ?
root@dbx1145:/home/david/zook# pkill -9 zook.py
root@dbx1145:/home/david/zook# ps ax | grep zook.py
23870 …Run Code Online (Sandbox Code Playgroud) 我意识到这个问题可能没有直接答案,但我想知道是否有任何关于何时发生这种情况的沟通期望,或者是否有人可以对所涉及的挑战发表评论。例如,我知道 yum 是 2.6 的主要依赖项,但很好奇 2.7 在哪些方面不兼容。
我想要的是一个 python 脚本来执行以下操作:
谁能告诉我怎么安装 pip
我的网站无法运行,因为缺少模块,我可以安装它们的唯一方法是安装 python 的模块管理器 pip
yum install python-pip失败。我将如何安装它?
这些操作应该通过包管理器来完成,但我什至无法像那样安装 python 3.4a,当很容易做的事情是yum install python3
这个yum管理器有什么问题时,我不得不从源代码中编译它?
======================================================
root@secure [~/distribute-0.6.49]# pip install pygeoip
Downloading/unpacking pygeoip
Downloading pygeoip-0.3.0.tar.gz (97kB): 97kB downloaded
Running setup.py egg_info for package pygeoip
Traceback (most recent call last):
File "<string>", line 16, in <module>
File "/usr/lib/python3.3/encodings/ascii.py", line 26, in decode
return codecs.ascii_decode(input, self.errors)[0]
UnicodeDecodeError: 'ascii' codec can't decode byte 0xc3 in position 1098: ordinal not in range(128)
Complete output from command python setup.py egg_info:
Traceback …Run Code Online (Sandbox Code Playgroud) 昨天我不小心在 CentOS 服务器上使用“yum remove”删除了 python 包。之后我意识到 yum 依赖于 python,我不能再使用 yum。我想我需要重新安装python来解决这个问题。我怎么能不使用 yum 做到这一点?
我试图将Bjoern放在 Nginx 之后,以便轻松实现负载平衡和 DoS/DDoS 攻击缓解。
令我沮丧的是,我不仅发现它会像芯片一样丢弃连接(它在总连接数的 20% 到 50% 之间变化),而且如果不放在后面,它实际上似乎更快。
这是在具有 6GB RAM 和双核 2Ghz cpu 的机器上测试的。
我的应用程序是这样的:
import bjoern,redis
r = redis.StrictRedis(host='localhost', port=6379, db=0)
val = r.get('test:7')
def hello_world(environ, start_response):
status = '200 OK'
res = val
response_headers = [
('Content-type','text/plain'),
('Content-Length',str(len(res)))]
start_response(status, response_headers)
return [res]
# despite the name this is not a hello world as you can see
bjoern.run(hello_world, 'unix:/tmp/bjoern.sock')
Run Code Online (Sandbox Code Playgroud)
nginx配置:
user www-data;
worker_processes 2;
worker_rlimit_nofile 52000; # worker_connections * 2
pid /run/nginx.pid;
events { …Run Code Online (Sandbox Code Playgroud) 我在基于 Linux 的服务器上有 IPv6 地址。如何将当前地址切换到新地址?有没有办法使用shell命令来做到这一点?使用Python怎么样?
谢谢。