1. linux 下怎么查看一个进程占用内存大小
这里介绍下查看一个进程占用内存大小的方法。
1、首先单击桌面左上角的应用程序,选择系统工具选项,如下图所示。
2. linux查看文件被哪个进程占用
可以使用ps -fe|grep filename,也可以使用fuser filename查看
1.只查看该进程:ps -ef | grep 11345
2.查看该进程打开的文件:lsof -p 11345
3.查看内存分配:lcat /proc/11345/maps
4.查看堆栈:pstack 11345
5.查看发出的系统调用:strace -p 11345
6.查看调用库函数:ltrace -p 11345
3. linux中如何查看某个文件被哪些进程占用
在Linux要检查那一个进程(process)占用特定端口号,可以用netstat或lsof来做,例如想列出所有开启的端口号,可以netstat指令:
或者:
我们已经知道我们想要杀死的那个进程的名字,我们能够利用killall命令发送同样的信号,像这样:
killall -9 mongod
4. Linux服务器如何查看CPU占用率、内存占用、带宽占用
Linux服务器如何查看CPU占用率、内存占用、带宽占用的命令
图中红色部分即为占用百分率,下面是每个进程的CPU占用率,如果服务器是多核CPU可能在下方看到有些进程CPU占用超过100%,这种一般是该进程使用了多核。
内存占用率:free -m
图中红色部分即为占用,即used、free即为剩余。(注意中在第二行数字中找哦。)
带宽占用:
使用vmstat命令,输入命令:vmstat
linux服务器的相关信息查看(端口占用,cpu、内存占用,防火墙,系统信息,vim编辑器使用等)
一、端口占用情况
(1)查看所有端口、进程的使用情况: netstat -tunlp
(2)查看某一端口的使用情况: netstat -tunlp|grep 5560
二、查看内存使用情况
(1)查看占用情况(动态):top
按下P(大写)可以找到占用内存最大的进程
(2)查看占用情况(总的):free
(3)查看占用内存最多的N个进程: ps -aux | sort -k4nr | head -K如果是10个进程,K=10,如果是最高的三个,K=3
(4)查看硬盘空间大小:df -lh
三、防火墙
防火墙iptables和firewall
(1)查看防火墙状态:firewall-cmd --state
(2)开启、关闭防火墙:开启:systemctl start firewalld关闭:systemctl stop firewalld.service 或者 service firewalld stop
(3)重启防火墙:firewall-cmd --reload(重新载入配置,在添加规则之后,需要执行此命令)
(4)防火墙是否开机启动:禁止防火墙开机启动:systemctl disable firewalld.service设置防火墙开机启动:systemctl enable firewalld.service
四、查看系统信息
(1)查看系统位数:getconf LONG_BIT
(2)查看内存信息:查看所有内存信息: cat /proc/meminfo查看内存容量: grep "MemTotal" /proc/meminfo
(3)查看CPU信息:查看cpu个数(几核):cat /proc/cpuinfo |grep "processor"|wc -l
五、linux中文乱码:
我只是用了第三部,更改了ssh客户端属性配置就可以了
1. 配置SSH 终端 (以xshell为例):
打开“文件”(File)- “属性” (Properties), 在“终端”(Terminal),将“编码”(Encoding)改为UTF-8 即可。
六、Xshell远程连接Linux时无法使用小键盘的解决方式:
七、linux中vi编辑器的退出操作
保存,但不退出vi :w
保存并退出vi :wq
退出vi,但不保存更改 :q!
用其他文件名保存 :w filename
在现有文件中保存并覆盖该文件 :w! filename
查找文字:在一般模式下输入/和你要查找的文字单词,例如/port,此时再按下 n 会跳转至改文字所在的下一处。
5. linux下磁盘占用达到100%了,怎样查找是哪些大文件耗尽了磁盘
楼上的各位,麻烦你们回答问题的时候看清楚别人问的是什么好吧?x0dx0a1、如果是大文件占用了,那么查询大于某个值的文件的方法:x0dx0afind / -size +100c -printx0dx0a这是从根盘开始查找大于100字节的文件(至于字节数你当然可以自己设置)x0dx0a你可以用x0dx0afind / -size +100c -exec ls -l {}\;x0dx0a来列出文件属性。x0dx0a2、如果只是因为有些应用生成的日志文件较多,长时间没有清理后占用了,这种情况最明显的标志为系统空间使用量逐步递增,每天的增量基本相差不大。那么最快捷的方式莫过于询问应用厂商要到日志存放目录后进行清理。如果找不到厂商,那只好自己动手咯,写个脚本查:x0dx0a#!/bin/kshx0dx0a#####用命令输出所有目录所占的磁盘空间大小,以G为单位#########x0dx0a -h >fs_.logx0dx0a######判断各层目录大小,查到占用量大的目录######x0dx0acat fs_.log|while read LINE FS_USEDx0dx0adox0dx0a if [ $LINE -ge 10 ]x0dx0a then x0dx0a echo $FS_USED >>result.logx0dx0a elsex0dx0a exitx0dx0a fix0dx0adonex0dx0a####查看运行结果#######x0dx0amore result.logx0dx0a这样你就能看到占用量比较大的目录,从而有针对性的到相应目录下检查,看到底是什么东西在占用硬盘空间了。(if [ $LINE -ge 10 ] ,这里是判断超过10G的目录,你可以修改)x0dx0a3、因为人为的误操作,导致了某些进程在没有执行完成的时候被kill掉了,但是缓存中的程序没有释放,仍然在运行,这会产生一些临时文件占用大量的磁盘空间资源,这种现象的特点是爆发式的增长,在很短时间内就将磁盘空间占满。解决的方法:x0dx0ai、如果是因为父进程被杀除,子进程还运行导致,那么最简单,kill子进程,就会释放。x0dx0aii、如果能用ipcs确认是哪个用户的进程,那么也不困难,顺着使用ipcrm就行(这个就不一一例举了,有了命令查使用方法还是很方便的)x0dx0aiii、执行进程的用户是比较关键的用户如:root用户、有实例的oracle用户、在线的生产用户等。那么建议在确认是因为共享缓存的原因导致的问题后重启服务器。x0dx0a4、你已经删除了一些占用量大的文件,或者在根盘下做 -h发现占用量远远的小于130G,df的结果仍然是100%的使用率。那么基本肯定你碰到了linux的一个bug,直接重启就能解决。(当然了也不一定是bug,我碰到过那种程序在写一个日志,但是删除日志后空间不释放的问题。这个是linux本身的机制引起的,只需要停止相关的程序空间就会释放的)
6. linux查看端口占用情况
一、常用命令:
1,lsof -i端口号
2,netstat -tunlp|grep 端口号
这两个命令都可以查看端口被什么进程占用。
二、lsof -i 需要 root 用户的权限来执行,如下图:
三、netstat命令
netstat -tunlp用于显示 tcp,udp 的端口和进程等相关情况。
netstat 查看端口占用语法格式:
netstat -tunlp | grep 端口号
一、更多 lsof 的命令扩展
1、lsof -i:8080:查看8080端口占用
2、lsof abc.txt:显示开启文件abc.txt的进程
3、lsof -c abc:显示abc进程现在打开的文件
4、lsof -c -p 1234:列出进程号为1234的进程所打开的文件
5、lsof -g gid:显示归属gid的进程情况
6、lsof +d /usr/local/:显示目录下被进程开启的文件
7、lsof +D /usr/local/:同上,但是会搜索目录下的目录,时间较长
8、lsof -d 4:显示使用fd为4的进程
9、lsof -i -U:显示所有打开的端口和UNIX domain文件
二、更多netstat命令
1、netstat -ntlp //查看当前所有tcp端口
2、netstat -ntulp | grep 80 //查看所有80端口使用情况
3、netstat -ntulp | grep 3306 //查看所有3306端口使用情况
三、关闭端口
1、在查到端口占用的进程后,如果你要杀掉对应的进程可以使用 kill 命令:
kill -9 PID
2、如上实例,我们看到 8000 端口对应的 PID 为 26993,使用以下命令杀死进程:
kill -9 26993