概述
1、root
为系统最高权限用户,可以做任何事
输入su 指令进入root模式
删除所有根目录下文件
rm -fr /*
debain和ubuntu
升级自己为root用户
sudo -s
//然后输入密码
1.1、颜色权限
1、颜色权限
蓝色表示目录;
绿色表示可执行文件;
红色表示压缩文件;
浅蓝色表示链接文件;
白色表示其他文件;
黄色是设备文件,包括block, char, fifo
2、打开grub控制行
启动linux时按c键进入grub命令行模式
退出命令reboot或者win10打开任务管理器快捷键
reboot重启系统
source+文件位置//重新加载某个文件
3、代理服务器
4、vi编译模式命令
进入编辑模式,按 o 进行编辑
编辑结束,按ESC 键 跳到命令模式,然后输入退出命令:
:w保存文件但不退出vi 编辑
:w! 强制保存,不退出vi 编辑
:w file将修改另存到file中,不退出vi 编辑
:wq保存文件并退出vi 编辑
:wq!强制保存文件并退出vi 编辑
q:不保存文件并退出vi 编辑
:q!不保存文件并强制退出vi 编辑
:e!放弃所有修改,从上次保存文件开始在编辑
5、其余快捷键
1、tab //命令或路径等的补全键,linux用的最多的一个快捷键 ⭐️
2、ctrl+a //光标迅速回到行首 ⭐️
3、ctrl+e //光标迅速回到行尾 ⭐️
4、ctrl+f //光标向右移动一个字符
5、ctrl+b //光标向左移动一个字符
6、ctrl+insert //复制命令行内容(mac系统不能使用)
7、shift+insert //粘贴命令行内容(mac系统不能使用)
8、ctrl+k //剪切(删除)光标处到行尾的所有字符 ⭐️
9、ctrl+u //剪切(删除)光标处到行首的所有字符 ⭐️
10、ctrl+w //剪切(删除)光标前的一个字符
11、ctrl+y //粘贴 ctrl+k、ctrl+u、ctrl+w删除的字符 ⭐️
12、ctrl+c //中断终端正在执行的任务并开启一个新的一行 ⭐️
13、ctrl+h //删除光标前的一个字符(相当于退格键)
14、ctrl+d //退出当前shell命令行,如果是切换过来的用户,则执行这个命令回退到原用户 ⭐️
15、ctrl+r //搜索命令行使用过的历史命令记录 ⭐️
16、ctrl+g //从ctrl+r的搜索历史命令模式中退出
17、ctrl+l //清楚屏幕所有的内容,并开启一个新的一行 ⭐️
18、ctrl+s //锁定终端,使之任何人无法输入
19、ctrl+q //解锁ctrl+s的锁定状态
20、ctrl+z //暂停在终端运行的任务,使用"fg"命令可以使暂停恢复 ⭐️
21、!! //执行上一条命令 ⭐️
22、!pw //这是一个例子,是执行以pw开头的命令,这里的pw可以换成任何已经执行过的字符 ⭐️
23、!pw:p //这是一个例子,是仅打印以pw开头的命令,但不执行,最后的那个“p”是命令固定字符 ⭐️
24、!num //执行历史命令列表的第num条命令,num代指任何数字(前提是历史命令里必须存在)⭐️
25、!$ //代指上一条命令的最后一个参数,该命令常用于shell脚本中 ⭐️
26、esc+. //注意那个".“ 意思是获取上一条命令的(以空格为分隔符)最后的部分 ⭐️
27、esc+b //移动到当前单词的开头
28、esc+f //移动到当前单词的结尾
6、shell命令
shell是一个横跨在用户与系统之间命令解释器
注意root用户执行shell命令为#开头,非root用户为$开头
shell命令前缀
用户名@主机名 当前目录
其余命令
cd 目录 //进入目录 命令
cat 文件名 ///查看文件内容
快捷键自动补全 Tab
cat s《Tab》《Tab》 //会显示当前s开头文件列表
ls *.cpp //列出所有以cpp为结尾的文件
ls text[1A] //匹配所有前面为text后面为1或A的文件
ls text[1-3]//匹配所有前面为text后面为1或2或3的文件,同理其他数字
ls text[A-B]//匹配所有前面为text后面为A或B或C的文件,同理其他字母
pwd //显示当前目录
ifconfig // 查看IP地址
列出目录命令
dir /+目录 //与cat用法一致
vdir //相当于在ls命令加上-1选项
查看文件命令cat和more
全部显示的cat
cat + 文件名
cat + 文件名 +文件名//可以跟多个文件名
cat -n +文件名 ///cat命令允许添加-n选项,显示每一行行号
一页一页显示的more
用法与cat一致不多赘述
不同:因为是一页一页显示,more命令会在最后显示一个百分比,表示已显示内容在文件中比例,回车键向下滚动一行q退出
more + 文件名
阅读文件开头和结尾head和tail
支持-n,后接参数表示显示行数
head -n 行数 文件名//
tail -n 行数 文件名
更好的文本阅读工具less
//兼容vim、emacs,使用行号与百分比作为书签
支持-m命令显示更多文件信息
less 文件名
查找文件内容:grep
查找内容为关键词需要加 ‘ ’
grep 查找内容 文件名//可以指定多个文件
find命令
-print表示标准输出,打到控制台上显示
find /etc/ -name wpa_supplicant.conf -print
//find 目录 -name 文件名 -print,会打印出被查找目标的绝对路经,文件名格式参考ls
type参数:find通过此选项来定位特殊文件类型
find命令选择参数:
b块设备文件、f普通文件、c字符设备文件、p命名通道、d目录文件、l符号链接
find /etc/ -type d -atime +1 -print
//-atime +n表示用来查找n天前修改文件
find /etc/ -type d -mtime -1 -print
//-mtime -n表示用来查找最近一天内前修改文件
快速定位:locate
完全不记得在哪里的文件,可以使用locate进行模糊搜索,位置
locate 文件名或者其他搜索格式
从终端运行其他程序:firefox
firefox 程序名称//终端挂起,直至运行完毕
firefox 程序名& //程序后台运行,终端不挂起
查找特定程序:whereis
主要用于查找程序文件,提供该程序文件的二进制可执行文件、源代码文件和首页存放位置
用户以及版本查看
who //查看谁登录
whoami//当前用户名
uname -a//显示当前系统版本信息
uname -r//内核linux版本信息
寻求帮助的命令
寻求帮助man
man 系统命令
介绍命令whatis
whatis uname
反查命令apropos
apropos search
7、linux文件目录架构
8、新建用户等操作(root下)
useradd -d /usr/sam -m sam //useradd -d /usr/一般默认用户名 -m 用户名
注意root新创建的用户,没有指定密码默认为空,这样是无法登陆的所以需要设定密码
passwd sam /// password 用户名,只有root才能设置密码
删除账号
userdel sam//用户名,注意删除前记得关闭相关进程
9、建立文件和目录:
mkdir目录
mkdir可以一次建立多个或一个目录
mkdir documnet picture
用户可以使用绝对路径新建目录(必须先有tempx路径)
mkdir ~/tempx/job
没有相关路径linux支持一次性创建
如下,先创建tempx然后job
mkdir -p ~/tempx/job
建立空文件命令touch
touch hello //在当前目录里创建hello的空文件
一般常用于程序需要某个文件启动,但是这个文件不重要,所以创建空文件骗过程序用已启动
移动和重命名的mv:
mv hello document/ ///将hello文件移动到当前目录下的document目录下
mv hello/ document/ ///将hello文件夹移动到当前目录下的document目录下
mv document/hello hello02 //将这个目录下的hello重新命名为hello,目录+新名字
mv -i hello02 document/ ///将hello02移动到document里,重名会提示是否覆盖y表示yes,n就跳过
复制文件和目录的cp:
cp用来复制文件和目录
与mv一样默认情况下覆盖目标目录中的同名文件,同样适用-i
cp hello02 documnet //将hello02复制到decumnet文件夹下
删除目录和文件的rmdir和rm:
rmdir
使用rmdir的目录必须为空,所以一般先使用rm命令删除目录下所有子文件
rmdir 目录名//
rm
rm使用就永久删除,不会放入回收站里,使用时建议添加-i,用已确认(部分linux不需要-i也有提示),y确认n跳过
rm -i hello
或者使用-f避免与提示的交互问题
touch hello
rm -f hello
带-r的表示递归删除该目录下所有文件和子目录
注意参数命令可以有好几个
rm -r -f documnet
10、文件和目录权限
查看文件和目录的属性(w、r、x)
ls -l 文件或目录位置
ll //或者
改变所有权的ch(ange)own和ch(ange)grp
支持-R,将目录下所有文件所有权也全部设置为目录拥有者的所有权,否则目录拥有者只拥有目录所有权
ll展示权限一般如图
drwxr-xr-x 1 root root 0 Dec 29 10:04 ./
drwx–x--x 1 root root 0 Apr 8 2019 …/
drwxr-xr-x 1 root root 0 Jan 19 17:47 ddos/
drwxr-xr-x 1 root root 0 Dec 29 10:04 sbin/
分别代表 用户-用户组-其他人的权限 数量 所有权拥有者 超级用户 时间 文件名
su
mkdir doucment
ll
chown sam:root document ///权限修改只能在root下修改 格式:chown 用户:root 目录名
ll
mkdir doucment
touch hello
mv hello doucment/
ll
cd /doucment
ll
su
chown -R prince2:root testquanxian
chgrp用法一致,就是变成用户组
改变文件权限chmod
用户组元素构成:
主体:文件属主u,文件属组g、其他人o、所有人a(u+g+o=a)
权限:读取r、写入w、执行x
增加权限采用+,删除权限采用-,除此之外可以采用主体=权限来直接设定文件权限
chmod o-x sbin //其他人被删除执行权限
chmod a+x sbin //所有人被添加执行权限
chmod u=x sbin//属主增加执行权限
文件权限还有八进制表示方式
建立链接:链接ln
linux独有的类似于windows的快捷方式
软/符号链接ln -s
需要使用带-s参数的ln命令创建
文件用户数据块中存放的内容是另外一个文件的路径名指向(c指针?),可对文件或目录创建.
常见于以下场景:方便管理、解决系统硬盘空间不足。
注意软链接源文件一旦被删除,软链接既刻失效
硬链接ln
通过索引节点进行连接,linux’中多个文件指向同一索引节点是被允许的,这就叫硬链接。
只能在同一文件系统中的文件进行硬链接,不能对目录创建。与widows不同的是,即使源文件被删除,硬链接文件仍然存在,仍然可以使用
查看命令tail
tail [参数] [文件]
参数:
- -f 循环读取
- -q 不显示处理信息
- -v 显示详细的处理信息
- -c<数目> 显示的字节数
- -n<行数> 显示文件的尾部 n 行内容
- –pid=PID 与-f合用,表示在进程ID,PID死掉之后结束
- -q, --quiet, --silent 从不输出给出文件名的首部
- -s, --sleep-interval=S 与-f合用,表示在每次反复的间隔休眠S
11、ubuntu系统卸载软件
有多个卸载命令:remove、purge、autoremove、clean、autoclean
purge和remove
apt-get purge、apt-get --purge remove:
删除已安装包、不保留配置文件
autoremove
apt-get autoremove:删除为了满足依赖而安装的现在不被需要的软件包,配置文件不删除
autoclean
apt-get autoclean :APT的底层包是dpkg, 而dpkg 安装Package时, 会将 *.deb 放在 /var/cache/apt/archives/中,apt-get autoclean 只会删除 /var/cache/apt/archives/ 已经过期的deb。
clean
apt-get clean:会将 /var/cache/apt/archives/ 的 所有 deb 删掉,可以理解为 rm /var/cache/apt/archives/*.deb。
所以正常删除流程
apt-get --purge remove <package>#删除软件以及配置文件
apt-get autoremove <package>#删除没用的依赖包
dpkg -l |grep ^r|cawk '{print $2}' |sudo xargs dpkg -P#删除所有rc状态软件包
12、cat过滤注释行
cat /etc/zabbix/zabbix_agentd.conf
#或者
grep -Ev '^$|#'
13、重启网卡服务
版本号不同,命令不同
13、关闭防火墙
*下面是red hat/CentOs7关闭防火墙的命令!*
*1:查看防火状态*
*systemctl status firewalld*
*service iptables status*
*2:暂时关闭防火墙*
*systemctl stop firewalld*
****service iptables stop******
*3:永久关闭防火墙*
*systemctl disable firewalld*
****chkconfig iptables off******
*4:重启防火墙*
*systemctl enable firewalld*
*service iptables restart*
*5:永久关闭后重启*
//暂时还没有试过
*chkconfig iptables on*
14、重设root密码
https://blog.csdn.net/dyb2010fly/article/details/103592854
15、查看linux系统基本信息
lsb_release -a
uname -r
16、配置无线网卡
- 查看网卡名字:iwconfig
- 设置网卡为监听模式:airmon-ng start wlan0
- 扫描附近的WIFI:airodump-ng wlan0mon
- 选定一个路由器,并监听其流量:airodump-ng -w tplink -c 11 --bssid BC:46:99:3D:66:D6 wlan0mon
- 选定连接的一个客户端,进行攻击:aireplay-ng -0 50 -a BC:46:99:3D:66:D6 -c A0:AF:BD:D8:E6:31 wlan0mon
- 对抓取到的cap包进行暴力破解:aircrack-ng -w password.txt -b BC:46:99:3D:66:D6 tplink-01.cap
17、linux误操作退出命令
命令后加了单引号,进入<界面,再输入一个单引号或者强制退出
18、查看当前进程状态-ps
部分参数:
- -A 列出所有的进程
- -w 显示加宽可以显示较多的资讯
- -au 显示较详细的资讯
- -aux 显示所有包含其他使用者的行程
- au(x) 输出格式 :
- -ef 显示所有命令连同命令行
语法:
USER PID %CPU %MEM VSZ RSS TTY STAT START TIME COMMAND
- USER: 行程拥有者
- PID: pid
- %CPU: 占用的 CPU 使用率
- %MEM: 占用的记忆体使用率
- VSZ: 占用的虚拟记忆体大小
- RSS: 占用的记忆体大小
- TTY: 终端的次要装置号码 (minor device number of tty)
- STAT: 该行程的状态:
- D: 无法中断的休眠状态 (通常 IO 的进程)
- R: 正在执行中
- S: 静止状态
- T: 暂停执行
- Z: 不存在但暂时无法消除
- W: 没有足够的记忆体分页可分配
- <: 高优先序的行程
- N: 低优先序的行程
- L: 有记忆体分页分配并锁在记忆体内 (实时系统或捱A I/O)
- START: 行程开始时间
- TIME: 执行的时间
- COMMAND:所执行的指令
19、退出telnet
ctrl+]退出编译模式
quit 退出命令模式
20、pidstat-监控全部系统或指定进程的占用系统资源命令
安装
apt-get install sysstat
yum install sysstat
参数
-u:默认的参数,显示各个进程的cpu使用统计
-r:显示各个进程的内存使用统计
-d:显示各个进程的IO使用情况
-p:指定进程号
-w:显示每个进程的上下文切换情况
-t:显示选择任务的线程的统计信息外的额外信息
-T { TASK | CHILD | ALL }
这个选项指定了pidstat监控的。TASK表示报告独立的task,CHILD关键字表示报告进程下所有线程统计信息。ALL表示报告独立的task和task下面的所有线程。
注意:task和子线程的全局的统计信息和pidstat选项无关。这些统计信息不会对应到当前的统计间隔,这些统计信息只有在子线程kill或者完成的时候才会被收集。
-V:版本号
-h:在一行上显示了所有活动,这样其他程序可以容易解析。
-I:在SMP环境,表示任务的CPU使用率/内核数量
-l:显示命令名和所有参数
使用实例
查看所有进程的cpu使用情况
pidstat
pidstat -u -p ALL#两个是等效的
进程id的PID、进程用户在空间占用的百分比%usr、进程在内核空间占用的cpu百分比%system、进程在虚拟机占用的cpu百分比%guest、进程占用cpu的百分比%CPU,处理进程cpu编号,对应当前进程命令Command
内存使用情况统计(-r)
pidstat -r
pid进程标识符、minflt/s任务每秒发生的次要错误、majflt/s任务每秒发生的主要错误需要从磁盘中加载,vsz虚拟地址大小虚拟内存使用kb、rss常驻集合大小非交换区五里内存使用kb,command,task命令名
各进程上下文切换-w
pid进程id、cswch/s每秒主动任务上下文切换数量、nvcswch/s每秒被动任务上下文切换数量、command命令名
21、防火墙命令
防火墙命令格式
https://blog.csdn.net/lemontree1945/article/details/79309273
iptables [-t table] -CMD chain CRETIRIA -j ACTION
eg:iptables -t raw -A PREROUTING -j ACCEPT -s 192.168.22.154/24 -d 192.168.22.192/24 #向raw表的PREROUTING链尾端添加一条新规则
#插入iptables [-t table] -I chain pos CRETIRIA -j ACTION
#替换iptables [-t table] -R chain pos CRETIRIA -j ACTION
#删除iptables [-t table] -D chain pos
#包匹配
-t table:3张表中的其中一种filter, nat, mangle,如果没有指定,默认是filter。
CMD:操作命令。查看、添加、替换、删除等。
chain:链。指定是对表中的哪条链进行操作,如filter表中的INPUT链。
CRETIRIA:匹配模式。对要过滤的数据包进行描述
ACTION:操作。接受、拒绝、丢弃等。
22、tcpdump抓包命令
tcpdump -i 网卡名称
#eg
#tcpdump -i eth0 -vnn host 10.10.10.122
#抓取eth0网卡的10.10.10.122数据包
抓取通过eth0网卡的udp协议的数据包
# tcpdump -i eth0 -vnn udp
抓取包含端口22的数据包
# tcpdump -i eth0 -vnn port 22
抓取源ip是10.10.10.2且目的端口是22,或源ip是10.10.10.65且目的端口是80的数据包。
# tcpdump -i eth0 -vnn ( src host 10.10.10.2 and dst port 22 ) or ( src host 10.10.10.65 and dst port 80 )
抓取源ip是10.10.10.122且端口不是22的数据包
# tcpdump -i eth0 -vnn src host 10.10.10.122 and not port 22
23、tac命令
与cat命令相当,将文件反着展示出来
24、>、 >>
'> '代表覆盖源文件
cat /etc/hosts > hosts.log
echo "7 7 7 7" > /proc/sys/kernel/printk
'>>'追加当前日期
echo " 当前日期是 'date' " >> host.log
ls - l hosts.log
#执行此命令后显示文件会追加当前日期时间
25、dmesg
用于显示linux开机信息
kernel会将开机信息存储在ring buffer中。您若是开机时来不及查看信息,可利用dmesg来查看。开机信息亦保存在/var/log目录中,名称为dmesg的文件里。
这些开机信息一般包括软件在启动后必须要加载执行的某些东西,对于判断程式是否是正常状态很重要
路由内核kernel
10.10.122
#抓取eth0网卡的10.10.10.122数据包
抓取通过eth0网卡的udp协议的数据包
tcpdump -i eth0 -vnn udp
抓取包含端口22的数据包
tcpdump -i eth0 -vnn port 22
抓取源ip是10.10.10.2且目的端口是22,或源ip是10.10.10.65且目的端口是80的数据包。
tcpdump -i eth0 -vnn ( src host 10.10.10.2 and dst port 22 ) or ( src host 10.10.10.65 and dst port 80 )
抓取源ip是10.10.10.122且端口不是22的数据包
tcpdump -i eth0 -vnn src host 10.10.10.122 and not port 22
## 23、tac命令
与cat命令相当,将文件反着展示出来
## 24、>、 >>
'> '代表覆盖源文件
cat /etc/hosts > hosts.log
echo “7 7 7 7” > /proc/sys/kernel/printk
'>>'追加当前日期
```shell
echo " 当前日期是 'date' " >> host.log
ls - l hosts.log
#执行此命令后显示文件会追加当前日期时间
25、dmesg
用于显示linux开机信息
kernel会将开机信息存储在ring buffer中。您若是开机时来不及查看信息,可利用dmesg来查看。开机信息亦保存在/var/log目录中,名称为dmesg的文件里。
路由内核kernel
最后
以上就是快乐黑米为你收集整理的Linux_20210421tcpdump -i eth0 -vnn udptcpdump -i eth0 -vnn port 22tcpdump -i eth0 -vnn ( src host 10.10.10.2 and dst port 22 ) or ( src host 10.10.10.65 and dst port 80 )tcpdump -i eth0 -vnn src host 10.10.10.122 and not port 22的全部内容,希望文章能够帮你解决Linux_20210421tcpdump -i eth0 -vnn udptcpdump -i eth0 -vnn port 22tcpdump -i eth0 -vnn ( src host 10.10.10.2 and dst port 22 ) or ( src host 10.10.10.65 and dst port 80 )tcpdump -i eth0 -vnn src host 10.10.10.122 and not port 22所遇到的程序开发问题。
如果觉得靠谱客网站的内容还不错,欢迎将靠谱客网站推荐给程序员好友。
发表评论 取消回复