一文看懂Linux基础
阿里云国内75折 回扣 微信号:monov8 |
阿里云国际,腾讯云国际,低至75折。AWS 93折 免费开户实名账号 代冲值 优惠多多 微信号:monov8 飞机:@monov6 |
文章目录
什么是Linux操作系统
Linux 是一种自由和开放源码的类 UNIX 操作系统。
是一个开源的系统网上的对Linux教程和问题的解决社区;
window和linux的对比
目前国内 Linux 更多的是应用于服务器上而桌面操作系统更多使用的是 Windows。主要区别如下
比较 | Windows | Linux |
---|---|---|
界面 | 界面统一外壳程序固定所有 Windows 程序菜单几乎一致快捷键也几乎相同 | 图形界面风格依发布版不同而不同可能互不兼容。GNU/Linux 的终端机是从 UNIX 传承下来基本命令和操作方法也几乎一致。 |
驱动程序 | 驱动程序丰富版本更新频繁。默认安装程序里面一般包含有该版本发布时流行的硬件驱动程序之后所出的新硬件驱动依赖于硬件厂商提供。对于一些老硬件如果没有了原配的驱动有时很难支持。另外有时硬件厂商未提供所需版本的 Windows 下的驱动也会比较头痛。 | 由志愿者开发由 Linux 核心开发小组发布很多硬件厂商基于版权考虑并未提供驱动程序尽管多数无需手动安装但是涉及安装则相对复杂使得新用户面对驱动程序问题(是否存在和安装方法会一筹莫展。但是在开源开发模式下许多老硬件尽管在Windows下很难支持的也容易找到驱动。HP、Intel、AMD 等硬件厂商逐步不同程度支持开源驱动问题正在得到缓解。 |
使用 | 使用比较简单容易入门。图形化界面对没有计算机背景知识的用户使用十分有利。 | 图形界面使用简单容易入门。文字界面需要学习才能掌握。 |
学习 | 系统构造复杂、变化频繁且知识、技能淘汰快深入学习困难。 | 系统构造简单、稳定且知识、技能传承性好深入学习相对容易。 |
软件 | 每一种特定功能可能都需要商业软件的支持需要购买相应的授权。 | 大部分软件都可以自由获取同样功能的软件选择较少。 |
快照的拍摄
操作系统正常先拍摄快照防止操作系统崩溃数据还原;
Linux的文件结构
Linux当中所有的设备所有的硬件软件网卡等、、、一切皆文件
相对路径
绝对路径
在 Linux 系统中有几个目录是比较重要的平时需要注意不要误删除或者随意更改内部文件。
/etc 上边也提到了这个是系统中的配置文件如果你更改了该目录下的某个文件可能会导致系统不能启动。
/bin, /sbin, /usr/bin, /usr/sbin: 这是系统预设的执行文件的放置目录比如 ls 就是在 /bin/ls 目录下的。
值得提出的是/bin, /usr/bin 是给系统用户使用的指令(除root外的通用户而/sbin, /usr/sbin 则是给 root 使用的指令。
/var 这是一个非常重要的目录系统上跑了很多程序那么每个程序都会有相应的日志产生而这些日志就被记录到这个目录下具体在 /var/log 目录下另外 mail 的预设放置也是在这里。
/usr/share: 这里面一般放的是新加的软件和下载文件。(一般存放flag值)
/bin 存放普通用户能够运行的命令
/sbin 管理员可以执行的命令
/boot 存放操作系统启动、引导配置文件
/dev 存放存储文件的、硬盘等
/etc 系统和应用服务配置文件
/home 普通用户的家目录相当于windows用户文件
/lib 存放函数库文件
/media 挂载光盘等存储介质的目录
/mnt 同上
/opt 用来安装大型程序
/proc 开机生成的配置文件谁开机生成的进程、配置文件
/root 超级用户的家目录
/sys 存放系统配置文件
/usr 安装一些外部程序
/var 日志、临时文件等
kali Linux的简单介绍
Kali Linux是基于Debian 的Linux发行版设计用于数字取证操作系统。Back Track是他们之前写的用于取证的Linux发行版。Kali Linux预装了许多渗滲透测试软件包括nmap 、 Wireshark 、 John the Ripper Kali Linux。以及Aircrack-ng.用户可通过硬盘、Iive CD或Iive USB运行Kali Linux是专业的渗透測试系统预装了许多渗透测试软件仅此而已。
基础命令
dpkg-reconfigure locals #汉化的命令 ->按空格键选择 zh_CN.UTF-8 UTF-8 重启
$ whoami
kali #这是普通用户
┌──(kali㉿kali)-[~/Desktop]
└─$ su root #切换用户
密码
┌──(root💀kali)-[/home/kali/Desktop]
└─# # root是超级用户
┌──(kali㉿kali)-[~/Desktop]
└─$ sudo passwd root #sudo 临时将kali用户设置为管理员用户
uname -a
uname --help #--help查看一个命令的参数
man #查看您需要什么手册页?例如尝试使用“man man”。
tab 或者双击tab #这个是一个**快捷键**可以提示未知的命令和文件
cd .. #切换目录
CTRL + C/Z #停止相关服务
--------------------------------------------------------
**#文件的增删改查**
**查**
ls ll
ls -la #查看当前目录下的文件信息
pwd #查看当前目录所在位置
cat 123.txt #查看文件内容
find /* -name java #查找 /根目录下的文件信息
whereis java #查找文件位置
前面的输出作为查询的输入信息 | grep xxx #grep查文件内容
ls | grep net
**增**
mkdir abc #添加文件夹命令
touch 12.txt #新建文件
vim
**删**
rmdir abc #删除文件夹命令
rm 12.txt #删除文件
rm -r abc #递归删除目录及其所有文件
**改**
cp 123.txt 12.txt #复制命令 123.txt是被复制的文件12.txt是新建的文件
mv 12.txt abc.txt #剪切命令或者是重命名命令
chmod 777 12.txt #修改文件权限的命令
vim 123.txt #**非常重要**的一个命令 可以修改文件也可新建文件 i o a esc :wq
vim
i插入模式在插入字母前可以输入文字。默认是命令模式只能复制行、删除行等。
I:在所在行的行首输入文字。
a在所在字符后面输入文字。A 在行尾输入文字
o在下一行输入。 O在上一行输入。
s删除光标所在字符。 r替换光标处字符。
ESC键输入-->命令模式
shift + : 关闭、保存文件 w保存q退出。wq和x保存退出。q强制退出。w强制保存管理员才有权限。
----------------------------------------------------------
**关于网络的操作**
查看和修改网络
ifconfig
ifconfig eth0
ping www.baidu.com #检测网络的连通性
curl www.baidu.com #查看web服务的响应
route
netstat 命令
netstat -ano 查看端口信息
netstat -r
动态地址 DHCP 随机ip
静态地址 手动配置 固定ip
1、直接用图形化页面查看
2、可以通过nmtui工具设置
3、编辑网卡的配置修改网络 vim /etc/network/interface
----------------------------------------------------------
查看系统的服务信息
systemctl list-unit-files | grep network
systemctl start xxxx #启动服务
systemctl stop xxxx #关闭服务
systemctl restart xxxx #重启服务
systemctl status xxxx #查看服务状态
systemctl enable xxxx #服务开机自启
systemctl disenable xxxx #取消服务开机自启
systemctl is-enabled xxx #查看服务是否是开机自启
---------------------------------------------
history 查看历史命令(bash -> history -c(清除历史命令)
history后面的参数配置https://www.cnblogs.com/ljs05/p/7374707.html
https://www.jianshu.com/p/651a5f2cbd4b
man + 命令(man history
--------------------------------------------
用户操作
https://www.runoob.com/linux/linux-user-manage.html
whoami #查看当前用户
cat /etc/passwd 查看Linux的用户
root:x:0:0:root:/root:/usr/bin/zsh
用户名:口令:用户标识号:组标识号:注释性描述:主目录:登录Shell
cat /etc/shadow 查看linux的密码
root:$y$j9T$LT6K7CPZQTLJUeUjJYsWR1$1imioAYh5lYvHLxwnMsTUxIIpeUAXYQB4KcB5PCf5E5:19316:0:99999:7:::
登录名:加密口令:最后一次修改时间:最小时间间隔:最大时间间隔:警告时间:不活动时间:失效时间:标志
useradd hack 创建用户
useradd -m hack 创建用户同时创建一个主目录
passwd hack 更改密码
userdel hack #删除用户
su 用户 切换用户
lastlog查看用户登录日志
last 查看用户登录信息
wc命令统计单词和行数
-------------------------------
**文件权限的设置**
chmod (change mode) 修改用户的权限。
r 100 4
w 010 2
x 001 1
d rwx r-x r-x
111 101 101
7 5 5
chmod 555 123.txt 更改文件的rwx的权限
chown root:root 123.txt 更改文件所属用户和用户组
-----------------------------------------
top 查看系统资源
ps -elf 查看系统应用进程
ps -ef | grep ccq
pkill -u ttlsa
kill -9
du 查看文件所占磁盘大小
gzip
tar -cvf 压缩文件名 被压缩文件名
-cvf创建归档文件
-xvf解包归档文件
apt-get
apt-get update
yum
/PATTERN从当前位置向后查找。?PATTERN从当前位置向前查找。
https://www.runoob.com/linux/linux-file-content-manage.html ---命令文档
vim命令
文件权限
1、白色表示普通文件(-)
2、蓝色表示目录(d)
3、绿色表示可执行文件(-)
4、红色表示压缩文件(-)
5、浅蓝色链接文件(l)
6、黄色表示设备文件©
7、粉红色表示套接字文件(socket
8、暗黄色文件表示管道(p
kali的常见工具
fping -g 192.168.199.0/24
nmap 192.168.199.1-50
nbtscan -r 192.168.199.0/24
netdiscover -i eth0 -p
查看命令
我们要查看一些文本文件的内容时要使用文本编辑器来查看。在Linux下可以使用一些命令预览文本文件中的内容而不必使用文本编辑器打开查看。这篇笔记分享几个常用的文本查看命令。分别是
cat从第一行开始显示文本内容(适用于内容较少的
tac从最后一行开始显示是 cat 的逆顺序
more一页一页的显示文本内容(适用于内容较多的
less与 more 类似但是比 more 更好的是它可以往前翻页
head只看文本的前面几行
tail只看文本的后面几行
nl显示文本内容与行号
man + 命令 会把完整的实验手册显示出来
stat 命令 查看文件详细信息
du + 文件名
whereis nmap :文件路径
#从根目开始查找名称以nginx开头的目录和文件
find / -name nginx*
#查找文件大小超过100M的文件
find / -size +100M
#查找/home/zx目录下10分钟内被修改过的文件和目录
find /home/zx/ -mmin -10
grep 查找文件的内容
grep -c hello test.txt
ps -ef|grep ssh
cat test.txt |grep hello
https://www.cnblogs.com/cainiao-chuanqi/p/16139235.html
1、cat命令
cat命令常常用于查看内容较少的文件。很多人把这个命令叫做“小猫咪”命令但cat其实是 concatenate(连续 的缩写即连续显示文本内容。
格式为cat [参数选项] [文件]
其中加上参数 -n 用可以显示行数。cat的更多的参数选项可以输入 man cat 进行查看。以下列举的其他命令的详细介绍也可以输入man 命令进行查看。
2、tac命令
tac命令的正好与cat命令相反是从文件末尾开始显示。
3、more命令
more命令适用于查看内容较多的文件。因为他可以实时显示百分比以提示现在已经阅读了多少内容。
格式为more [参数选项] [文件]
可以使用空格键或者回车键往下翻页查看后面的内容。
4、less命令
less也适用于查看内容较多的文件。less比more更为灵活因为less可以往上、往下翻页。按下键盘上 PgUp 键可以往上翻页按下 PgDn 可以往下翻页。但是less命令不会实时显示当前阅读的百分比。
格式为less [参数选项] [文件]
5、head命令
head命令用于查看文件的前n行。如使用命令
head -n 20 /etc/profile
查看/etc目录下profile文件的前20行内容
6、tail命令
tail命令与head命令相反tail命令用于查看文件后n行内容。如
7、nl命令
nl命令可以显示内容的同时显示行号与 cat -n 命令的作用差不多
以上命令就是Linux下的一些文本查看命令虽说作用都一样都是用来查看文本的但是可以根据不同的情况来选择不同的命令来查看可以让我们更好地进行预览文件。另外我们Windows下的黑窗口
1.查看操作
查看目录
[root@Auscoo /]# ls
[root@Auscoo /]# ll ls -la
[root@Auscoo home]# du -h
[root@Auscoo home]# pwd
/home
ll #显示目录文件详细信息
du -h 文件/目录 #查看大小
pwd #显示路径
查看文件内容
[root@Auscoo Auscoo]# mkdir auscoo
[root@Auscoo Auscoo]# vim 123.txt
[root@Auscoo Auscoo]# touch abc.sh
mkdir abc.txt #新建一个文件夹vim 123,txt #新建一个txt文本文件
touch abc.sh #新建一个文件
echo 123 >> 123.txt
cat|head|tail命令
[root@Auscoo Auscoo]# cat abc.txt
Hello world!
[root@Auscoo Auscoo]# head -5 abc.txt
[root@Auscoo Auscoo]# tail -2 abc.txt
信息安全实验手册
cat abc.txt #查看abc的内容
head -5 abc.txt #查看abc前5行内容。默认是10行
tail [选项] 文件名
各选项的含义如下
-num从距文件尾num行处开始显示。如果省略num参数系统默认值为10.
-f: 循环读取,例如查看服务器日志时可以实时观察
#filename 文件里的最尾部的内容显示在屏幕上并且不断刷新。
tail -f filename
more命令
[root@Auscoo Auscoo]# more abc.txt
Hello world!
more命令一次显示一屏信息若信息未显示完屏幕底部将出现“-More-(xx%”。
此时按Space键可显示下一屏内容;
按“回车”键显示下一行内容;
按B键显示上一屏;
按Q键可退出more命令。
**less命令**和more命令类似但是比more命令更强大。在很多时候必须使用less,比如管道。例如
[root@Auscoo Auscoo]# ll /etc | less
ll /etc | less
stat 命令
查看文件的详细信息比如创建修改时间大小等
[root@Auscoo Auscoo]# stat abc.txt
文件"abc.txt"
大小61 块8 IO 块4096 普通文件
设备803h/2051d Inode543458922 硬链接1
权限(0644/-rw-r--r--) Uid( 0/ root) Gid( 0/ root)
环境unconfined_u:object_r:default_t:s0
最近访问2020-07-26 11:17:15.954209041 +0800
最近更改2020-07-26 11:16:55.492208065 +0800
最近改动2020-07-26 11:16:55.492208065 +0800
创建时间-
du 命令
选项-h 以合适的单位显示(会根据文件的大小自动选择kb或M等单位
[root@Auscoo Auscoo]# du -h abc.txt
4.0K abc.txt
2.删除操作
[root@Auscoo Auscoo]# rm -f auscoo
rm: 无法删除"auscoo": 是一个目录
[root@Auscoo Auscoo]# rm -rf auscoo
rm -f aa.txt #强制删除aa.txt
rm -rf fileDir #强制删除fileDir文件夹和里边的所有文件
3.复制操作
[root@Auscoo Auscoo]# cp abc.txt auscoo
cp:复制文件或目录
语法
cp [options] source dest
远程复制
#将当前目录下的test.txt复制到远程111.12机器的/zx目录下
scp test.txt root@192.168.111.12:/zx
#将test.txt复制到远程用户的根目录并命名为textA.txt
scp test.txt root@192.168.111.12:testA.txt
#也可以不指定用户在后续提示中再输入如下
scp test.txt 192.168.111.12:/zx
#从远程复制到本地 -r用于递归整个目录
scp -r remote_user@remote_ip:remote_folder local_path
4.移动操作
移动操作可以理解成复制文件后删除原文件
[root@Auscoo Auscoo]# mv /home/* .
mv是否覆盖"./auscoo"?
[root@Auscoo auscoo]# mv a.txt ./test/a.txt
mv /zx/soft/* . #复制/zx/soft目录中的所有文件到当前目录
mv a.txt ./test/a.txt #复制当前目录a.txt到当前的test目录下。
mv /zx/soft/ /tmp/soft #复制文件夹到/tmp/下必须保证tmp是存在的文件夹
5.重命名操作
重命名还是用的移动操作命令比如
[root@Auscoo auscoo]# mv abc.txt abcd.txt
#将目录(文件)A重命名为B
mv A B
#将/a目录(文件)移动到/b下并重命名为c。要保证b目录存在。
mv /a /b/c
#将当前test1目录移动到当前的test目录并命名为b
mv ./test1 ./test/b
7.上传文件
从本地windows上传一些文件到远程Linux服务器可以通过xshell的xftp也可以通过下面这个小工具lrzsz使用更加方便。
yum install lrzsz #安装工具
常用命令
sz dist.zip #下载文件dist.zip到本地
rz #会打开窗口上传文件到远程服务器
8.file 和 touch命令
file命令 用于识别文件的类型
Linux中文件后缀只是方便使用者识别没有实质的约束作用。file命令可以查看文件的实质类型
file [-bcLz] 文件|目录
选项说明
- 文件|目录需要识别的文件或目录
- -b: 显示识别结果时不显示文件名
- -c: 显示执行过程
- -L: 直接显示符号链接文件指向的文件类型
- -z: 尝试去解读压缩文件的内容
示例 可以看出index.mp4本质是一个HTML而非一个mp4文件
[root@VM_0_13_centos soft]# file index.mp4
index.mp4: HTML document, UTF-8 Unicode text, with very long lines
touch命令 用于改变文件或目录的访问时间和修改时间。
touch [-am] [-t<日期时间>] [目录|文件]
如果指定目录文件不存在则会直接创建一个空文件所以touch也常用来创建一个空白文件
#创建一个新文件aa.txt
touch aa.txt
选项说明
- -a: 只修改访问时间
- -m : 只修改 修改时间
- -t : 使用指定日期时间而非系统时间 。例如要修改为2019年10月20日1638分13秒。参数就是‘20191020163813’
示例
修改之前可以先查看文件的时间戳: 用stat 命令查看
[root@VM_0_13_centos soft]# stat index.html
File: ‘index.html’
Size: 17215 Blocks: 40 IO Block: 4096 regular file
Device: fd01h/64769d Inode: 529352 Links: 1
Access: (0644/-rw-r--r--) Uid: ( 0/ root) Gid: ( 0/ root)
Access: 2019-10-23 15:15:37.280616254 +0800
Modify: 2019-10-23 15:15:37.280616254 +0800
Change: 2019-10-23 15:15:37.290616257 +0800
Birth: -
开始修改将index.html文件的访问和修改时间修改成当前系统的时间。
touch index.html
9.查找操作
对于要用到的文件目录等经常有忘记的时候所以查找命令就显得极为必要
find: 查找文件或目录 (常用)
语法如下
find [目录…] [-amin <分钟>] [-atime <24小时数>] [-cmin <分钟>] [-ctime<24小时数>][-empty][-exec<执行命令>][-fls<列表文件>][-follow]
[-fstype <系统文件类型>] [-gid <组编号>] [-group <组名称>] [-nogroup] [-mmin <分钟>] [-mtime
<24小时数>] [-name <查找内容>] [-nogroup] [-nouser] [-perm <权限数值>] [-size <文件大小>] [-uid
<用户编号>] [-user <用户名称>] [-nouser]
几个常用选项说明
-size <文件大小>查找符合指定大小的文件。文件大小单位可以是“c”表示Byte;“k”表示KB。如配置为“100k”find命令会查找文件大小正好100KB的文件;配置为“+100k”find命令会查找文件大小大于100KB的文件;配置为“-100k”find命令会查找文件大小小于100KB的文件。
-user<用户名称>查找所有者是指定用户的文件或目录也能以用户编号指定
-name <查找内容>查找指定的内容在查找内容中使用“*” 表示任意个字符;使用“?”表示任何一个字符
-mtime <24小时数>查找在指定时间曾更改过内容的文件或目录单位以24小时计算。如配置为2find命令会查找刚好在48小时之前更改过内容的文件;配置为+2find命令会查找超过在48小时之前更改过内容的文件;配置为-2find命令会查找在48小时之内更改过内容的文件。
-mmin <分钟>查找在指定时间曾被更改过内容的文件或目录单位以分钟计算。
cmin <分钟>查找在指定时间曾被更改过权限属性的文件或目录单位以分钟计算。-ctime对应小时。
-amin <分钟>查找的是指定时间访问过的文件或目录。-atim对应小时。
-perm <权限数值>查找符合指定权限数值(有关权限数值见第6章的文件或目录。如配置为“0700”find命令会查找权限数值正好是“0700”的文件或目录;配置为“+0700”find命令会查找权限数值大于 “0700”的文件或目录;配置为“-0700”find
选项大概有以下几类
1.按时间范围查找
2.按文件大小查找
3.按文件名称查找
4.按其他比如权限、用户组、类型等
示例
#从根目开始查找名称以nginx开头的目录和文件
find / -name nginx*
#查找文件大小超过100M的文件
find / -size +100M
#查找/home/zx目录下10分钟内被修改过的文件和目录
find /home/zx/ -mmin -10
Kali系统源
相当于从软件仓库。更新Kali更新相当于Window打补丁。linux下载程序的两种方式①.从系统源处下载。②.从第三方官网直接下载。
更新Kali
1.配置源信息
uname --help
cat /etc/os-release
vim /etc/apt/sources.list
2.在最后一行写(删除之前的吧?
#阿里云
deb http://mirrors.aliyun.com/kali kali-rolling main non-free contrib
deb-src http://mirrors.aliyun.com/kali kali-rolling main non-free contrib
deb http://mirrors.aliyun.com/kali-security kali-rolling/updates main contrib non-free
#阿里云kali源
deb http://mirrors.aliyun.com/kali sana main non-free contrib
deb http://mirrors.aliyun.com/kali-security/ sana/updates main contrib non-free
deb-src http://mirrors.aliyun.com/kali-security/ sana/updates main contrib non-free
#阿里2021.12.6官网复制
deb https://mirrors.aliyun.com/kali kali-rolling main non-free contrib
deb-src https://mirrors.aliyun.com/kali kali-rolling main non-free contrib
#中科大
deb http://mirrors.ustc.edu.cn/kali kali-rolling main non-free contrib
deb-src http://mirrors.ustc.edu.cn/kali kali-rolling main non-free contrib
#清华大学
deb http://mirrors.tuna.tsinghua.edu.cn/kali kali-rolling main contrib non-free
deb-src https://mirrors.tuna.tsinghua.edu.cn/kali kali-rolling main contrib non-free
#清华大学
#deb https://mirrors.tuna.tsinghua.edu.cn/kali kali-rolling main contrib non-free
#deb-src https://mirrors.tuna.tsinghua.edu.cn/kali kali-rolling main contrib non-free
阿里云
deb http://mirrors.aliyun.com/ubuntu/ bionic main restricted universe multiverse
deb http://mirrors.aliyun.com/ubuntu/ bionic-security main restricted universe multiverse
deb http://mirrors.aliyun.com/ubuntu/ bionic-updates main restricted universe multiverse
deb http://mirrors.aliyun.com/ubuntu/ bionic-proposed main restricted universe multiverse
deb http://mirrors.aliyun.com/ubuntu/ bionic-backports main restricted universe multiverse
deb-src http://mirrors.aliyun.com/ubuntu/ bionic main restricted universe multiverse
deb-src http://mirrors.aliyun.com/ubuntu/ bionic-security main restricted universe multiverse
deb-src http://mirrors.aliyun.com/ubuntu/ bionic-updates main restricted universe multiverse
deb-src http://mirrors.aliyun.com/ubuntu/ bionic-proposed main restricted universe multiverse
deb-src http://mirrors.aliyun.com/ubuntu/ bionic-backports main restricted universe multiverse
中科大
deb https://mirrors.ustc.edu.cn/ubuntu/ bionic main restricted universe multiverse
deb-src https://mirrors.ustc.edu.cn/ubuntu/ bionic main restricted universe multiverse
deb https://mirrors.ustc.edu.cn/ubuntu/ bionic-updates main restricted universe multiverse
deb-src https://mirrors.ustc.edu.cn/ubuntu/ bionic-updates main restricted universe multiverse
deb https://mirrors.ustc.edu.cn/ubuntu/ bionic-backports main restricted universe multiverse
deb-src https://mirrors.ustc.edu.cn/ubuntu/ bionic-backports main restricted universe multiverse
deb https://mirrors.ustc.edu.cn/ubuntu/ bionic-security main restricted universe multiverse
deb-src https://mirrors.ustc.edu.cn/ubuntu/ bionic-security main restricted universe multiverse
deb https://mirrors.ustc.edu.cn/ubuntu/ bionic-proposed main restricted universe multiverse
deb-src https://mirrors.ustc.edu.cn/ubuntu/ bionic-proposed main restricted universe multiverse
清华大学
deb https://mirrors.tuna.tsinghua.edu.cn/ubuntu/ bionic main restricted universe multiverse
deb-src https://mirrors.tuna.tsinghua.edu.cn/ubuntu/ bionic main restricted universe multiverse
deb https://mirrors.tuna.tsinghua.edu.cn/ubuntu/ bionic-updates main restricted universe multiverse
deb-src https://mirrors.tuna.tsinghua.edu.cn/ubuntu/ bionic-updates main restricted universe multiverse
deb https://mirrors.tuna.tsinghua.edu.cn/ubuntu/ bionic-backports main restricted universe multiverse
deb-src https://mirrors.tuna.tsinghua.edu.cn/ubuntu/ bionic-backports main restricted universe multiverse
deb https://mirrors.tuna.tsinghua.edu.cn/ubuntu/ bionic-security main restricted universe multiverse
deb-src https://mirrors.tuna.tsinghua.edu.cn/ubuntu/ bionic-security main restricted universe multiverse
deb https://mirrors.tuna.tsinghua.edu.cn/ubuntu/ bionic-proposed main restricted universe multiverse
deb-src https://mirrors.tuna.tsinghua.edu.cn/ubuntu/ bionic-proposed main restricted universe multiverse
3.更新
apt-get update && apt-get upgrade && apt-get dist-upgrade
4.签名无效错误解决方法
输入wget -q -O - https://archive.kali.org/archive-key.asc | apt-key add