摘要:使用脚本监控指定进程内存占用,当进程占用内存超过设置阈值时,生成对应的coredump文件以及使用gdb命令输出进程的全部线程信息,从而保存进程在系统kill前进程信息,方便后续对内存急剧上涨的调试。 #!/bin/bash #usage: nohup ./memcheck.sh > /dev/null 2>&1 & #set -x PROC_NAME="memchk_test" #进程名称 ...
阅读全文
随笔分类 - linux
涉及linux命令,shell脚本以及linux运维系统学习
摘要:使用脚本监控指定进程内存占用,当进程占用内存超过设置阈值时,生成对应的coredump文件以及使用gdb命令输出进程的全部线程信息,从而保存进程在系统kill前进程信息,方便后续对内存急剧上涨的调试。 #!/bin/bash #usage: nohup ./memcheck.sh > /dev/null 2>&1 & #set -x PROC_NAME="memchk_test" #进程名称 ...
阅读全文
摘要:在调试多线程程序时,经常需要查看线程堆栈信息,如果线程数目过多,每次查看一个线程堆栈,繁琐耗时。下面介绍一种一次性将所有线程堆栈输出到文件的方法。 首先,将gdb attach到调试线程 然后,在GDB中设置调试文件路径,并开启日志选项 最后,输出所有线程堆栈到指定文件 或者简化命令 直接输出所有线
阅读全文
摘要:linux后台运行命令两种方式: 1. command & : 后台运行,你关掉终端会停止运行 2. nohup command & : 后台运行,你关掉终端也会继续运行 简介 Linux/Unix 区别于微软平台最大的优点就是真正的多用户,多任务。因此在任务管理上也有别具特色的管理思想。我们知道,在 Windows 上面,我们要么让一个程序作为服务在后台一直运行,要么停止这个服务。而不...
阅读全文
摘要:centos samba服务器配置 配置smb.conf文件[share] path = /home/lee writable = yes 添加smb用户smbpasswd -a root 启动smb服务service smb restart 关闭防火墙service iptables stop 设置SELinuxvi /etc/selinux/config SELINUX=enforcing改...
阅读全文
摘要:grep常用的使用方法 grep –rns “match_content”filename 查看匹配内容的行 find /path –name “*.h” –o –name “*.cpp” | xargs grep –rn “match_content”在特定的文件类型中查找 grep –rns “
阅读全文
摘要:1 调用跟踪 跟踪系统调用 strace ls –l 跟踪库调用 ltrace 2 lsof(list open file) 查看程序命令打开了哪些文件 lsof –p PID; lsof –c CMD 查看某个用户打开的文件 lsof –u root 查看某个文件被哪个程序访问 lsof file
阅读全文
摘要:移动hjkl ctrl+udbff+字符:向后移动到指定字符处F+字符:向前移动到指定字符处示例:fg移动到字母g处0dfH:从行首删除至第一个H处以word为单位移动w 向后移动到头e 向后移动到尾b 向前移动到头ctrl+o 移动到上次位置撤销与恢复复原上次动作(撤销)u重做上一个动作 ctrl...
阅读全文
摘要:定义及用途 正则表达式是描述字符串集的字符串。主要用于以下几个方面: a 验证字符串是否和正则表达式匹配 b 在字符串中查找满足正则表达式的子串 c 替换满足正则表达式的子串为其他 正则表达式基本语法 a 常量字符 字母,数字,下划线以及没有特殊定义的符号都称之为常量字符。表达式中的常量字符,在匹配一个字符串中,匹配与之相同的一个字符串。 例如:正则表达式bcd...
阅读全文
摘要:coredump介绍 应用程序有时会因为异常或者bug导致在运行过程中异常退出或者终止,为了方便问题的定位,我们往往需要获取程序运行时的内存,寄存器状态,堆栈指针,内存管理以及函数调用堆栈信息等,从而找到bug所在。在linux系统中,我们通常可以通过对系统进行一些配置,将上述的信息输出到ELF文件
阅读全文
|