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