(gdb) list 显示当前文件代码
(gdb) l 5 表示显示第五行的上下文
(gdb) l main 表示显示main函数的上下文
(gdb) l %.c :15 显示执行程序中文件%.c的第15行
(gdb) l %.c :函数名 表示显示%.c文件中的函数名的上下文
(gdb) b 10 表示在第10行设置断点
(gdb) b 12 在第16行设置断点
(gdb) i b 查看设置过的断点
(gdb) d 10 删除第10行的断点
(gdb) d 4-7 删除第4到第7行的断点
设置条件断点
(gdb) b 17 if i10 当i10的时候执行第17行
(gdb) p i 查看变量i的值
(gdb) p type 查看变量的类型
(gdb) n (next) 向下走一行代码但是不会进入函数体
(gdb) s (step) 单步调试,但是会进入函数体
finish 跳出函数体(如果是函数体中的循环设置断点,需要先删除断点)
(gdb) display 自动显示变量的值自动打印变量的值
(gdb) undisplay 1 取消打印变量的值
(gdb) set var i=5 在循环中直接设置i=5
(gdb) until 跳出当前循环(但是需要删除端点)
##用户组
###useradd 命令增加用户
useradd -D 命令来查看在创建用户时的默认属性
/etc/default/useradd 文件里面改可以修改创建用户时候的默认值
useradd 更改用户属性信息
seq命令用于产生从某个数到另外一个数之间的所有整数。
###userdel 删除一个用户
echo “qwert” | passwd --stdin rusky
把echo返回的字符qwert设置为用
户rusky的密码
这样的命令可以批量创建用户以及用户密码
###chage 用户密码修改时限管理命令
用户功能命令:fingle chfn chsh id
###groupadd 组名
添加一个组
###groupdel 组名
删除一个组
###gpasswd -a tom bob
就是指将tom这个用户加入到bob这个组里面
gpasswd -d tom bob
指将tom这个用户从bob这个组中删除
gpasswd -A tom bob
将tom 这个用户设定为bob这个组的管理员,他将有权限删除或者添加这个组的成员
##find
find /etc -name m
查找在/etc 目录下所有带有m的文件
* 通配符
find . -maxdepth 1 -name “*.d”
在当前目录里面寻找后缀为.d的文件 -maxdepth 指定只寻找一层
getfacl 命令
getfacl 后面跟一个文件
可以查询这个文件在owner group other 等用户中的权限说明
##目录文件说明
/var/log/wtmp
/var/log/wtmp是一个二进制文件,记录每个用户的登录次数和持续时间等信息。
last 命令可以查看
e.g:last -f /var/log/wtmp
/var/run/utmp
–
This file contains information about the users who are currently logged onto the system. Who command uses this file to display the logged in users:
可以通过who命令查看
同样也可以使用last -f /run/utmp
查看
file 命令
查看一个文件的属性
-b:列出辨识结果时,不显示文件名称
-c:详细显示指令执行过程,便于排错或分析程序执行的情形;
-f<名称文件>:指定名称文件,其内容有一个或多个文件名称时,让file依序辨识这些文件,格式为每列一个文件名称;
-L:直接显示符号连接所指向的文件类别;
-m<魔法数字文件>:指定魔法数字文件;
-v:显示版本信息;
-z:尝试去解读压缩文件的内容。
stat 命令
Display file or file system status.
可以用来查看一个文件的大小
write
通过这个命令可以向正在使用linux的其他用户交流
write user1
下面就可以写对user1的交流信息
同时,user1的控制台将实时显示对方发来的消息
critl d 将结束此命令
对应的
##mesg 命令
将能够绝决定用户是否能够收到其他用户给自己发来的实时消息
mesg n
关闭其他用户对自己发消息
其他普通用户给自己发来的消息将会拒绝接受
但是root用户发来的消息将不能拒绝
##wall
广播,即所有用户都能收到自己实时消息
##pwck
检查命令是否具有家目录
##pwconf
这个命令将会在/etc目录中创建shadow影子文件
与pwunconv命令不同的是,pwunconv则会销毁shadow影子文件,同时将密码归还到passwd文件中(密码都是密文)
##nohup 命令
nohup 是 no hang up 的简称
在通过远程连接的时候,即使用户退出远程控制台nohup命令可以使这个进程一直运行下去,
##通过执行脚本命令将输出信息全都重定向到一个指定的文件中
e.g: sh ex.sh > /root/test.txt
这样ex.sh脚本中的命令执行情况就会都输出到test.txt文件中
##top
top命令能够使实时显示系统中进程的运行情况,top是系统管理员管理linux进程的一个非常好的工具
它可以用来查看,系统内存,修改进程ni(优先级)包括显示各种各样的进程信息
##nice
nice -n 19 后面跟命令
表示在运行命令的时候指定ni值为19
默认一个指令在运行的时候他的优先级为0
##renice
与nice命令不同的是,renice用来更改进程的优先级而不是从一开始就指定他的优先级
##free
free命令会显示一些系统中内存的使用情况、剩余情况、缓存、swap等使用情况
-m 以MB的形式显示
-g 以GB的形式显示
##uptime
显示信息相当于top命令第一行显示的信息
##pstree
打印进程树
##jobs
查看后台程序
##rpm 包管理
rpm -ivh
-i 表示安装一个包
-v 显示安装进度过程
-h表示检验数字签名
rpm -qa 查看当前系统中安装了哪儿些包
-q 查询
-a 所有
rpm -ql + 包名
查看包的安装路径
rpm -qc +包名
查看配置额外年间
rpm -qd +包名
查看帮助文件
rpm -qi
查看软件信息 版本、安装时间
等等
##查看某一个文件是由哪一个软件安装出来的
rpm -qf +文件路径
rpm -e 卸载
rpm -U更新(若没有的话同时进行安装、若有则卸载老版本安装新版本)
rmp -Uvh 显示详情信息以及校验
rmp -ivh --force 强制安装 解决包依赖问题
##df 查看磁盘占用情况
##!se命令,不知道干嘛的
##/etc/sysconfig/network
全局性网络
修改将会影响计算机所有网卡信息
NETWORKING=yes/表示启用ipv4
每一张网卡的配置文件
wget 文字接口下载器
下载必须完整的将下载路径写出来
默认下载到当前目录-P 指明下载的一个路径,
tcpdump 抓包 文字接口数据捕获器,linux 自带的工具
1、tcpdump -i 指明网卡
抓取所有经过eth0的包
2、只抓取单向包
tcpdump -i eth0 src host 192.168.30.250 and dst host 192.168.30.10
指明之抓取从主机192.168.30.250到192.168.30.10的包
src 代表源地址
dst 代表目的地址
tcpdump -i eth0 host 192.168.30.250 and host 192.168.30.10
没有指明src 以及host 则抓取两台主机之间连接所有的包
tcpdump -i eth0 host 192.168.30.250 and host 192.168.30.10 and dst port 21
抓取经过21端口的包
tcpdump -i eth0 host 192.168.30.250 and host 192.168.30.10 and dst port 21 -X
以十六进制的形式显示
若没有指明网卡则抓取所有的包
wireshark 抓包
nc 全称netcat
#端口扫描
nc -v 192.168.30 -z 1-100
扫描1到100之间的端口
-v表示显示过程
#传输文件
客户端临时打开10000端口
nc -l 10000
l 表示 listern 监听 10000端口
在服务器端nc 192.168.30.10 < file
将file传送给客户端
nmap 扫描
nmap -sT 192.168.30.250
扫描开启了哪些TCP服务
nmap -sU 192.168.30.250
查看192.168.30.250这台服务器开启了哪些UDP服务
nmap -sP 192.168.30.250
扫描某一个网段哪儿些主机在运行并且显示MAC地址
扫描一个服务的版本信息
nmap -sV 192.168.30.250
扫描这台主机运行服务的版本信息
一个服务器所运行的操作系统的版本
nmap -0 --osscan-guess 192.168.30.250
判断这台服务器运行的系统版本信息
–osscan-guess 让他猜测一下可能的系统版本号