admin管理员组

文章数量:1630192

CentOS5.5、CnetOS6.0、CentOS7.3

2、Redhat:服务器 - 国外

Redhat5.5、Redhat6.0

3、ubuntu:移动嵌入式设备

ubuntu 10.04、ubuntu 12.04、ubuntu 14.04等

4、kali:这个系统中集成了大量的渗透测试工具/软件

5.1.2认识linux
(一) 什么是linux

Linux是一套免费使用和自由传播的类Unix操作系统,是一个多用户、多任务、支持多线程和多CPU的操作系统。它能运行主要的UNIX工具软件、应用程序和网络协议。它支持32位和64位硬件。Linux继承了Unix以网络为核心的设计思想,是一个性能稳定的多用户网络操作系统。

说的简单点,它就是一个操作系统

  • 主要是基于命令来完成各种操作,有点类似于DOS
(二)linux的特点
  1. 操作几乎都是靠各种的命令来完成的
  2. 非常稳定
  3. 开源【所有用户都可以使用、修改代码】
  4. 免费

Linux属于双授权系统(包括mysql也属于双授权系统)

(三)双授权系统特点:
  • 社区版:免费
  • 商业版:收费,7*24技术支持,补丁更新速度快等。

5.2安装CentOS-7

(注意:笔者这里是利用VMware Workstation Pro虚拟软件使用CentOS-7进行操作,因此涉及VMware Workstation Pro的内容较多,请各位读者注意!)

5.2.1什么是 CentOS

说白了就是linux的发行版本Red Hat Enterprise Linux的再编译版本,但与之不同的是,Red Hat需要付费才能获得相应的支持,但是CentOS他免费,所以很多人称之为社区企业操作系统,这也就是上个小结中提到的双授权系统!

5.2.2CentOS-7下载地址:

https://mirrors.huaweicloud/home
https://mirrors.aliyun/centos/

注意:这里是通过华为和阿里云的镜像网站进行下载,速度相对较快。下载之后是一个系统镜像文件

小知识

系统镜像文件

  • 系统镜像文件是用于安装新的操作系统的 系统镜像文件的后缀名是iso
  • 系统镜像文件的使用方法是直接刻录到U盘,或者直接在虚拟机安装系统,不需要解压
  • 下载镜像文件后请不要修改文件名称和属性!!!!

建议使用虚拟机安装操作系统。

VMware Workstation(不支持苹果系统)

VirtualBox(全系统支持)

5.2.3虚拟机软件的作用:
  • 可以在物理机上模拟出一个或者多个虚拟机

通俗点来讲就是一个大电脑变成好几个小电脑,方便进行多端操作。

5.2.4使用虚拟机的目的:
  1. 可以避免频繁重新安装系统【学习/工作需要经常使用不同的系统】
  2. 物理机和虚拟机互相隔离,可以保护物理机安全

注意:

安装CentOS-7时候应注意,该系统有两种界面可供选择

5.2.5  linux的两种界面:
  • 图形界面(GUI)

操作系统类似于Windows,可以用鼠标进行操作

  • 字符界面(CLI)

类似于Dos系统,所有的操作都只能依靠命令

新手建议先安装图形界面方便操作。

5.3进入linux操作系统

安装完毕后linux会让你创建两个用户,这里要注意的是:

5.3.1Linux有两类用户
  • root(管理员)用户

root用户可以修改linux系统的全部文件,但是每个Linux系统一般只有一个用户。

  • 普通用户

只能操作home目录下的用户同名的家目录及tmp目录下的文件,tmp目录会在下一小章提及。

(这里我们需要注意的是,在登陆系统是输入密码时默认不显示的,继续操作即可!)

输入账号密码即可进入系统,字符系统界面如下图

(如上图,我们已经成功进入系统,完成!)

5.4 Linux的基础界面

我们已经通过上述操作成功进入linux系统中,接下我们来看一下提示符和根目录下的文件及用途

5.4.1 linux的提示符

它可以让你明白你操作系统的用户名,操作系统所在的主机名、当前所在位置以及你的系统身份。

举例:

[root@localhost ~]#

提示符格式

[当前用户名@当前的主机名  当前所在位置]身份标识符

注意:root的身份标识和用户的身份标识不同

举例

root的提示符

 [root@localhost ~]#

tom的提示符

[zxhk@localhost ~]$

可以看到,管理员于用户不仅仅是名称不同,而且后面的标识符也不相同,后面的小符号被称为身份标识符

身份标识有两种:
  • root权限标识符是:”#“,
  • 用户的标识符是”$“

而在格式中当前所在位置即为当前工作目录

工作目录的表示型式:
  • 型式1:具体的目录
  • 型式2:(””表示的是当前用户的家目录)
  • 型式3:/(表示的是根目录)

型式1举例:

 [root@localhost etc]#

该案例所表达出的信息如下

  1. 当前用户名是root

  2. 当前计算机的主机名是localhost

  3. 当前所在路径是 etc

  4. 当前用户身份是 管理员

型式2举例:

 [tom@localhost etc]$

该案例所表达出的信息如下

  1. 当前用户名是tom

  2. 当前计算机的主机名是localhost

  3. 当前所在路径是 /etc

  4. 当前用户身份是 普通用户

型式3举例:

 [root@localhost /]#

该案例所表达出的信息如下

  1. 当前用户名是root

  2. 当前计算机的主机名是localhost

  3. 当前所在路径是在根目录下

  4. 当前用户身份是 管理员

那么什么是家目录呢?

家目录:

就是用户主目录。家目录分为两种

  • 管理员(root)家目录在根目录下的root文件中;
  • 普通用户:家目录在/home和用户同名的拿个目录就是用户家目录,(具体在下小节阐述)
5.4.2 Linux目录结构

Linux和Windows在存储上有一点点小区别,具体如下:

(一)Linux和Windows的区别:

Linux是单根系统,而Windows是多根系统。

因为存储系统不同,目录结构也有所不同

windows的目录结构
  1. windows 是一个多根系统
  2. 每个磁盘/分区都是一个根
  3. 你在存储文件的时候,文件一定是存储在某一个根目录之下
  4. 目录结构是倒树状结构
linux的目录结构
  1. linux是一个单根系统
  2. 你在linux中存储文件,只会有一个存储位置,就是 /
  3. 目录结构是倒树状结构

换句话说,Windows可以进行磁盘分区,可以分出c盘、d盘、e盘、f盘等等,而Linux只有一个磁盘分区,就是"/"。

(二)Linux的核心目录结构

(Linux目录结构如下图,分支的源头即为根目录)

(三)Linux根目录下的主要文件 及用途

Linux初始目录大概如下,所对应的是目录的存放文件类型及用途(如下代码)

/bin:存放的的是命令
/sbin:存放的的是命令
 
/tmp:存放临时文件(任何用户都可以在这个目录进行读写操作,但是只能操作自己的文件;
这个目录下的文件30天没有被访问或使用,就会被自动删除)
/etc:存储各种配置文件
 /etc/inittab
 /etc/rc.local
 /etc/httpd/httpd.conf
 /etc/sysconfig/network-scripts/ifcfg-eth0(网卡配置文件)
 
/home:存放普通用户家目录
/root:root用户的家目录
/lib
/lib64
/usr:自定义安装软件保存位置
 /usr/bin:存放的的是命令
 /usr/sbin:存放的的是命令
/var:存储经常发生改变的文件(日志)
 /var/log/messages
 /var/log/secure
/boot
/sys
/dev:存储设备文件
/proc

5.5  Linux的命令

5.5.1Linux命令格式

Linux命令格式有以下三个组件构成

命令 [选项] 参数
三个组件的作用
  • 命令:linux中所有的命令,是严格区分大小写
  • 选项:选项是用于控制命令的执行过程
  • 参数:参数是指命令的作用对象

其中,选项分为长选项和短选项,区别如下

  • 短选项:-字母
  • 长选项:–单词

(一般短选项就是长选项的缩写,并且短选项可以合并,因此大部分情况下都是用短选项来写命令!!)

另外,Linux中文件类型与属性也较为独特。

Linux文件特点
  • 命令和文件名都是严格区分大小写
  • linux文件的后缀名对于文件的属性没有任何影响
  • linux中的核心哲学思想:一切皆为文件

5.6  Linux基础命令

为了方便排版,笔者将常用的基础命令单独做一章节,希望各位海涵。

现在我们通过Linux的一些基础命令来操作系统

5.6.1  pwd 命令

全称:Print Working Directory

作用:显示当前所在路径

格式:

pwd

举例1:

我查看我现在当前位置

[root@localhost ~]# pwd
/root

下一行给出反馈/root,说明我们现在所在的位置为root目录下

举例2:

[root@localhost /]# pwd
/

同理可得我们现在处于根目录下

[root@localhost 222]# pwd
/111/222

pwd命令就是一个查看当前路径命令,作用也仅仅如此,无其他作用。

5.6.2 cd

全称:Change Directory

作用:切换目录的命令

格式

cd 目标位置

这里不仅仅要用到格式,还要用到一些参数。大致参数如下

cd /:进入根目录
cd ~:进入当前用户的家目录
cd  :进入当前用户的家目录
cd -:返回上一次cd前所在目录
cd ../:返回上一级目录

主要是用于切换其他命令,直接举例

例子1

[root@localhost /]# cd 111/222/333
[root@localhost 333]# 

上一条代码是从根目录跳转到根目录下的111/222/333目录中

例子2

[root@localhost ~]# cd /
[root@localhost /]# 

从root的家目录下切换到根目录下

例子3

[root@localhost 222]# cd ../333
[root@localhost 333]# 

从222目录跳转到同级目录的333中(因为222和333为同一级目录,所以要先返回上一级目录在进行跳转!)

注意:
  • 路径是连续的,不能加空格
  • 目录和目录之间,用/进行分隔
  • 如果目标是一个目录,那么最后的/可加可不加
  • 如果目标是一个文件,那么最后的/不可加!

cd跳转就这些内容,下一个!

5.6.3 clear和reboot
clear

作用:清空屏幕

格式:

clear

注:可用快捷键CTRL+L进行快速清空屏幕

reboot

作用:重启系统

格式

reboot

重启Linux系统

5.6.4 touch

作用:新建空白文本文件

格式1:

touch 文件名 在当前位置下创建文件

格式2:

touch 路径/文件名 在指定的位置下创建文件

几个常用的创建命令和路径

touch a1.txt # 在当前目录下创建a1.txt
 touch /a1.txt # 在根目录下创建a1.txt
 touch ~/a1.txt # 在当前用户家目录下创建a1.txt
 touch /etc/a1.txt # 在/etc下创建a1.txt
 touch /etc/sysconfig/a1.txt # 在/etc/sysconfig/下创建a1.txt
 touch ../a1.txt # 在当前所在目录的上一级目录中,创建a1.txt
 touch ../../a1.txt # 在当前所在目录的上一级的上一级目录中,创建a1.txt
 touch ../sysconfig/a1.txt #在当前所在目录的上一级目录中进入sysconfig目录中创建a1.txt

(注意:/        …/      ./         ~        等一些符号在大多数需要查看路径的命令中都适用!! )

另外,因为Linux的宗旨是一切皆为文件,因此默认文件大部分为文本文件,但不存在后缀,因此可能需要操作者自行添加后缀以方便辨认!!!

5.6.5执行命令报错信息

通过上面操作我们可以看到,我们发出命令之后系统通常是没有反馈的,我们也不知道自己究竟是否做对了,这小节我们就着重说一下报错,这里要注意Linux的执行命令的一个特点。

执行命令可能成功也可能失败
  • 通常执行成功是没有信息的
  • 通常执行失败都会有返回信息

(因此,不给回复的结果往往是最好的结果0.O)

常见情况下导致命令执行失败下的几种可能

第一种:命令写错了,报错信息格式

 bash: 命令 command not found ...(命令为未出)

第二种:文件路径错误,报错信息格式

touch: cannot touch /taaaa/aaa.txt : no such file or directory
命令: 报错提示                     : 产生错误的原因(没有文件目录)

第三种:没有权限

命令   : 报错提示                    : 产生错误的原因(无权访问)
 touch: cannot touch /taaaa/aaa.txt : permission denied

这种情况下普通用户比较常见,因此建议各位在练习的时候用root进行练习!

5.6.6  IS

作用:查看当前位置或者是指定的位置下,有什么文件

格式:

格式1:ls # 查看当前位置下文件
格式2:ls ./ # 查看当前位置下文件
格式3:ls 路径 # 查看指定的路径下有什么文件

注意:这里开始要有选项了

选项及注意:
  • -a 显示所有文件,包括隐藏文件【linux中的隐藏文件是文件名前面是一个 . 】
  • -l 显示文件的属性信息
  1. 如果-l后面跟的是目录的话,那么查看的是该目录下的所有文件属性
  2. 如果-l 后面跟的是文件的话,那么查看的直接就是这个文件的属性
  • -h 以人类易读的方式显示文件的大小
  • -dl 这个命令才是查看目录自己的属性,而不是查看文件下的属性
  • (文件名称前面加.此类文件为隐藏文件)

之前我们说过,短选项可以合并,举个例子,我们想要显示所有文件,又想显示文件属性信息,我们就可以直接像这样子写

ls -al (查看目标)

话不多说直接举例(因为篇幅原因这里只展示一个结果结果,请各位见谅):

例子1:查看根目录下的全部的文件

ls /

例子2:查看当前位置下的全部文件

方案1:ls 
方案2:ls ./

例子3:查看当前位置下所有文件的属性,包括隐藏文件

方案1:ls  -a  -l  /home
方案2:ls  -al  /home
方案3:ls  -la  /home

看这个文档的结果

drwxr-xr-x.  8 root root  120 3月  14 20:02 .
dr-xr-xr-x. 18 root root  272 3月  14 19:25 ..
drwxr-xr-x.  2 root root    6 3月  13 19:42 2222
drwxr-xr-x.  2 root root    6 3月  14 19:33 a
-rw-r--r--.  1 root root    0 3月  14 19:50 a.txt
drwxr-xr-x.  2 root root    6 3月  14 19:33 b
-rw-r--r--.  1 root root    0 3月  14 19:55 b.txt
drwxr-xr-x.  2 root root    6 3月  14 19:33 c
-rw-r--r--.  1 root root    0 3月  14 19:55 c.txt
-rw-r--r--.  1 root root    0 3月  14 19:55 d,txt
drwxrwxrwt. 15 root root 4096 3月  14 19:48 tmp
drwxrwxrwt. 15 root root 4096 3月  14 19:48 tmp2

可以看到为上述内容,那我们该如何查看文档属性呢?

每行的第一个字符为文件属性,还有其他的文件属性类别,如下:

关于文件类型:
  • 目录[d]:文件夹
  • 一般文件[-]:文档,例如doc、txt
  • 设备文件[b 或者 c]:指的是计算机中的外部设备,例如硬盘、u盘、键盘、鼠标
  • 链接文件[l]:快捷方式
5.6.7 mkdir

全称:MaKe DIRectory

作用:新建文件夹/目录

格式:

格式1:在当前位置下直接创建目录:mkdir 目录名
格式2:在指定位置下直接创建目录:mkdir [选项] 路径/目录名
选项:

-p 在父目录不存在的情况下会自动创建父目录

注:目录后加空格输入路径及目录名,可同时创建多个目录

举例:

1.在tmp下,创建目录a1,在a1里面创建a2,在a2,里面创建a3

mkdir  -p  /tmp/a1/a2/a3

2.在tmp下,创建目录a1、a2、a3、a4四个目录

mkdir  -p  /tmp/a1 /tmp/a2 /tmp/a3 /tmp/a4

这里就不展示反馈了,直接下一个

5.6.8相对路径和绝对路径
绝对路径
  • 就是完整路径
  • 在写绝对路径的时候,是从根目录开始写
相对路径
  • 不是完整的路径
  • 在相对路径的时候,是从当前路径开始写

举例

当前我们的工作目录是 /etc/sysconfig

切换到根下

相对路径写法:cd ../../
绝对路径写法:cd /

切换到sysconfig下面的network-scripts目录

相对路径写法:cd network-scripts
相对路径写法:cd ./network-scripts
绝对路径写法:cd /etc/sysconfig/network-scripts

老规矩,不举例,直接下一个。

5.6.9   cp

全称:copy

作用:复制文件或者是目录

格式:

cp  [选项]  源文件   目的路径
选项:
  • -a:在复制文件的过程中,保持文件的属性不变,另外,也可以实现复制目录【cp默认无法直接复制目录】
  • -r:递归复制。这个选项就是单纯的用来实现复制目录。

举例:将tmp下的目录a001复制到个根下

 cp  -a  /tmp/a001  /

例子2:将当前位置下的c.txt 复制到home下

 cp c.txt /home

这里需注意:

  • 文件名前,如果有路径,就是从指定的路径下找文件,例如 /home/a.txt,就是从home下找 a.txt文件
  • 文件名前,如果没有路径,就是从当前路径下找文件,例如 a.txt,就是从当前位置下找a.txt文 件

举例三:看看下面命令表示什么

cp -a a1 a2
cp -a a1 a2 

第一次执行是将a1复制到当前文件名称为a2

第二次执行是将a1放到a2目录下

5.6.10 mv

全称:move

作用:移动文件或者是目录

格式:

mv 源文件 目的路径

这里与cp命令大差不差,只是cp命令保留原文件,mv命令不保留原文件

这里就举一个例子

下面命令执行效果

mv /home/a.txt /aaa

这个命令有三种可能:

  1. /aaa不存在的情况下,那么这个命令就是将a.txt移动到根下,并且名字修改为aaa
  2. /aaa存在,而且是目录,那么这个命令就是将 a.txt 移动到 /aaa下面,文件名不变
  3. /aaa存在,而且是一般文件,那么这个命令就是将 a.txt 移动到 /下,并且改名成 aaa 将原有文件覆盖

注意:(假设在移动ttt会做以下判断)

  • 在进行移动的时候,会首先判断,目标ttt是否存在 如果不存在,那么就会将原始文件移动到 / 下,并改名成ttt
  • 如果存在,那么就会判断这个文件的类型
  • 如果类型是目录,那么就会将b.txt移动到ttt中
  • 如果类型是文本文件,那么就会将目标位置下的ttt文件用b.txt覆盖掉
    先自我介绍一下,小编浙江大学毕业,去过华为、字节跳动等大厂,目前阿里P7

深知大多数程序员,想要提升技能,往往是自己摸索成长,但自己不成体系的自学效果低效又漫长,而且极易碰到天花板技术停滞不前!

因此收集整理了一份《2024年最新网络安全全套学习资料》,初衷也很简单,就是希望能够帮助到想自学提升又不知道该从何学起的朋友。





既有适合小白学习的零基础资料,也有适合3年以上经验的小伙伴深入学习提升的进阶课程,涵盖了95%以上网络安全知识点,真正体系化!

由于文件比较多,这里只是将部分目录截图出来,全套包含大厂面经、学习笔记、源码讲义、实战项目、大纲路线、讲解视频,并且后续会持续更新

需要这份系统化资料的朋友,可以点击这里获取
源文件 目的路径


        这里与cp命令大差不差,只是cp命令保留原文件,mv命令不保留原文件


        这里就举一个例子


下面命令执行效果



mv /home/a.txt /aaa


这个命令有三种可能:


1. /aaa不存在的情况下,那么这个命令就是将a.txt移动到根下,并且名字修改为aaa
2. /aaa存在,而且是目录,那么这个命令就是将 a.txt 移动到 /aaa下面,文件名不变
3. /aaa存在,而且是一般文件,那么这个命令就是将 a.txt 移动到 /下,并且改名成 aaa 将原有文件覆盖


注意:(假设在移动ttt会做以下判断)


* 在进行移动的时候,会首先判断,目标ttt是否存在 如果不存在,那么就会将原始文件移动到 / 下,并改名成ttt
* 如果存在,那么就会判断这个文件的类型
* 如果类型是目录,那么就会将b.txt移动到ttt中
* 如果类型是文本文件,那么就会将目标位置下的ttt文件用b.txt覆盖掉

先自我介绍一下,小编浙江大学毕业,去过华为、字节跳动等大厂,目前阿里P7

深知大多数程序员,想要提升技能,往往是自己摸索成长,但自己不成体系的自学效果低效又漫长,而且极易碰到天花板技术停滞不前!

因此收集整理了一份《2024年最新网络安全全套学习资料》,初衷也很简单,就是希望能够帮助到想自学提升又不知道该从何学起的朋友。
[外链图片转存中…(img-6GyQJeAD-1714399897188)]
[外链图片转存中…(img-PvSLovcv-1714399897189)]
[外链图片转存中…(img-LgIxS2cx-1714399897189)]
[外链图片转存中…(img-HOIdxqQr-1714399897190)]
[外链图片转存中…(img-lEQLxcYL-1714399897191)]
[外链图片转存中…(img-nK12nEM9-1714399897191)]

既有适合小白学习的零基础资料,也有适合3年以上经验的小伙伴深入学习提升的进阶课程,涵盖了95%以上网络安全知识点,真正体系化!

由于文件比较多,这里只是将部分目录截图出来,全套包含大厂面经、学习笔记、源码讲义、实战项目、大纲路线、讲解视频,并且后续会持续更新

需要这份系统化资料的朋友,可以点击这里获取

本文标签: 网络安全入门操作系统快速Linux