利用lsof去查看Unix/Linux进程打开了哪些文件 今天用了一下lsof,发现这个linux的小工具,功能非常强大而且好用. 我们可以方便的用它查看应用程序进程打开了哪些文件或者对于特定的一个文件,哪些进程打开了他 等等. 在类Unix系统中,几乎可以说"Everything is a file" : 管道是文件,网络套接字(Sockets)是文件,目录是文件,设备是文件...... 下面列出几个常用的应用作为备忘: 1)搜索被某一进程打开的相关文件: 比如查看java进程(PI…
1.lsof abc.txt --> 显示开启文件 abc.txt的进程. 2.lsof -c abc  ---> 显示abc进程现在打开的文件. 3.lsof -c -p 1234 ---> 显示进程1234打开的文件. 4.lsof +d /usr/local   ---> 显示目录下被进程打开的文件 5.lsof -i:53 ---> 显示有哪些进程占用了53号端口,用于检查dns服务启动失败时的检查.…
使用进程打开指定的文件 模拟磁盘打开文件 class Program { static void Main(string[] args) { while(true) { Console.WriteLine("请选择要进入的磁盘"); string path=Console.ReadLine();//D:\ Console.WriteLine("请选择要打开的文件"); string fileName=Console.ReadLine();//1.txt //文件的全…
转自 http://www.cnblogs.com/hjslovewcl/archive/2011/03/14/2314333.html 有三种不同的文件锁,这三种都是“咨询性”的,也就是说它们依靠程序之间的合作,所以一个项目中的所有程序封锁政策的一致是非常重要的,当你的程序需要和第三方软件共享文件时应该格外地小心.有些程序利用诸如 FIlENAME.lock 的文件锁文件,然后简单地测试此类文件是否存在.这种方法显然不太好,因为当产生文件的进程被杀后,锁文件依然存在,这样文件也许会被永久锁住.…
首先出现这个提示的原因:应用程序打开的文件数量超过了系统设定值. 如何查看当前系统每个用户最大允许打开文件数量: [root@registry ~]# ulimit -a core file size (blocks, -c) 0 data seg size (kbytes, -d) unlimited scheduling priority (-e) 0 file size (blocks, -f) unlimited pending signals (-i) 3820 max locked…
1 #!/usr/bin/env python 2 #-*- coding:utf-8 -*- 3 4 ''' 统计linux打开的文件数 ''' 5 6 import os 7 import sys 8 import subprocess 9 10 def getPidList(proc): 11 cmd = '''/sbin/pidof %s''' % proc 12 p = subprocess.Popen(cmd, stdout=subprocess.PIPE, shell=True)…
技术分享 启动新进程 stdlib.hintsystem(const char *string)whichequals to "sh -c string" 替换进程映像unistd.hchar**environ;intexecl(const char *path, const char *arg0, ...(char *)0);intexeclp(const char *file, const char *arg0, ...(char *)0);intexecle(const char…
一.AIX 1.查看CPU数: (1) smtctl 从AIX5.3起,对于power5的机器,系统引入了SMT(Simultaneousmulti-threading)的功能,其允许两个处理线程在同一颗处理器上运行,对操作系统而言,一颗物理处理器逻辑上会成为两个处理单元(逻辑处理器).SMT功能启用:逻辑cpu个数是物理cpu个数的两倍,SMT功能禁用:逻辑cpu个数与物理cpu个数相等. (2) bindprocessor -q 查看逻辑cpu个数 (3)vmstat  查看逻辑cpu数 (…
#include <iostream>#include <vector>#include <cstdint>#include <cstring>#include <error.h>#include <unistd.h> using namespace std; int main(){    //system("ps aux &");//run on background    char *const ps_…
在unix或者linux中,每创建一个文件或者目录时,这个文件或者目录都具有一个默认的权限,比如目录755,文件644,那么这些默认权限是怎么控制的呢? 答案是"umask"权限掩码.一般默认的umask值为022,其最终效果就是新创建的目录权限为755,文件权限为644.所以只要修改了用户的umask值,就可以控制默认权限. 怎么查看当前umask值? umask 0022 umask -S  (SuSE Linux Enterprise 11实例) u=rwx,g=rx,o=rx…