Bootstrap

Linux入门教程(非常详细)从零基础入门到精通,看完这一篇就够了_linux教程

文章目录

一、为什么要学linux

因为我们要部署服务,Linux系统一直以其稳定性而闻名,它们可以连续运行多年而不发生任何重大问题。事实上,很多Linux用户都从未在自己的环境中遇到过系统崩溃的情况。相对windows而言,挂起和崩溃完全是一种常态。

Windows由于是商业产品,源代码封闭,我们无法知道微软在里面做了什么手脚。而Linux由于是源代码开放操作系统,不存在这个问题

在这里插入图片描述

二、目录介绍

linux系统中一切皆文件

在这里插入图片描述在这里插入图片描述

在这里插入图片描述

  • /bin
    是binary的缩写,这个目录存放着最经常使用的命令,通过上方桌面可以看到bin文件夹有个箭头,是链接到 /usr/bin下,相当于快捷方式,进入/bin和/usr/bin下是一模一样的
    在这里插入图片描述

  • /sbin
    s就是super User的意思,这里存放的是系统管理员使用的系统管理程序。

  • /home
    存放普通用户的主目录,在Linux中每个用户都有一个自己的目录,一版该目录名是以用户的账号命名的。

  • /root
    该目录为系统管理员,也称为超级权限者的用户主目录。

  • /lib
    系统开机所需要最基本的动态连接共享库,其作用类似于windows里的DLL文件。几乎所有的应用程序都需要用到这些共享库。

  • /etc
    所有的系统管理所需要的配置文件和子目录。

  • /usr
    这是一个非常重要的目录,用户的很多应用程序和文件都放在这个目录下,类似于windows下的program fies目录。

  • /boot
    这里存放的是启动linux时使用的一些核心文件,包括一些连接文件以及镜像文件,自己的安装别放这里。

  • /proc
    这个目录是一个虚拟目录,它是系统内存的映射,我们可以通过直接访问这个目录来获取系统信息。

  • /srv
    service缩写,该目录存放一些服务启动之后需要提取的数据。

  • /sys
    这是linux2.6内核的一个很大的变化。该目录下安装了2.6内核中新出现的一个文件系统sysfs。

  • /tmp
    这个目录是用来存放一些临时文件的。

  • /dev
    类似于windows的设备管理器,把所有的硬件用文件的形式存储。管理着所有设备,例如CPU、硬盘等等

  • /media
    linux系统会自动识别一些设备,例如U盘、光驱等等,当识别后,linux会把识别的设备挂载到这个目录下。
    centos7迁移到/run/media

  • /mnt
    系统提供该目录是为了让用户临时挂载别的文件系统的,我们可以将外部的存储挂载在/mnt上,然后进入该目录就可以查看里面的内容了。和media差不多

  • /opt
    这是给主机额外安装软件所摆放的目录。比如你安装一个mysql数据库则就可以放在这个目录下。默认是空的。

  • /var
    这个目录中存放着在不断扩充的东西,我们习惯将那些经常被修改的目录放在这个目录下。包括各种日志文件。

  • /lost+found
    这个目录一般情况下是空的,当系统非法关机后,这里就存放了一些文件。

  • /www
    /www目录可以用于存储Web应用程序或网站文件,/www目录没有特别的用途,它只是一个常规目录,可以根据需要进行使用和管理。

三、vi / vim编辑器

用户@主机名 组成, ~号代表当前目录位置,#号代表管理员用户,普通用户都是$号
在这里插入图片描述

在这里插入图片描述

VI 是 Unix 操作系统和类 Unix 操作系统中最通用的文本编辑器。VIM 编辑器是从 VI 发展出来的一个性能更强大的文本编辑器。可以主动的以字体颜色辨别语法的正确性,方便程序设计。VIM 与 VI 编辑器完全兼容。

在这里插入图片描述

模式转换

进来默认一般模式,想要编辑文本就按i进入编辑模式
在这里插入图片描述

vim常用语法

一般模式

在这里插入图片描述
编辑模式

在这里插入图片描述按『Esc』键 退出编辑模式,之后所在的模式为一般模式。

命令模式

在这里插入图片描述

四、网络配置

4.1、修改 IP 地址

vim /etc/sysconfig/network-scripts/ifcfg-ens33


在这里插入图片描述

执行 service network restart 重启网络,使网络生效。

4.2、配置主机名

4.2.1、修改主机名称

1)、查看当前服务器主机名称

hostname


2)、通过编辑/etc/hostname 文件修改主机名

vim /etc/hostname


修改完重启后就生效了。

4.2.2、修改 hosts 映射文件

vim /etc/hosts


添加映射,保存后,可以直接访问service,就可以访问到220.151 ip了
在这里插入图片描述

五、系统配置

5.1、service 服务管理

Linux 中的进程和服务
计算机中,一个正在执行的程序或命令,被叫做“进程”(process)。
启动之后一只存在、常驻内存的进程,一般被称作“服务”(service)。

service 服务名 start | stop |· restart | status


查看服务的方法:/etc/init.d/服务名 ,发现只有两个服务保留在 service
在这里插入图片描述

chkconfig 设置后台服务的自启配置

在这里插入图片描述

2)、开启/关闭 network(网络)服务的自动启动

chkconfig network on

chkconfig network off


3)、开启/关闭 network 服务指定级别的自动启动

chkconfig --level 指定级别 network on


5.2、systemctl

1)、基本语法

systemctl start | stop | restart | status 服务名


2)、查看服务的方法:/usr/lib/systemd/system

cd /usr/lib/systemd/system


ll 命令查看所有服务
在这里插入图片描述

systemctl 设置后台服务的自启配置

1、查看所有服务开机启动状态

systemctl list-unit-files


2、关掉指定服务的自动启动

systemctl disable service_name


3、开启指定服务的自动启动

systemctl enable service_name


5.3、防火墙

1)、查看、更改防火墙状态

systemctl status firewalld  #查看防火墙状态

systemctl stop firewalld # 关闭防火墙

systemctl start firewalld # 开启防火墙

systemctl enable firewalld.service  # 开机自启动防火墙

systemctl disable firewalld.service # 开机不自启动防火墙


2)、防火墙开放、删除端口

firewall-cmd --list-ports                #查询所有开放的端口

firewall-cmd --query-port=8080/tcp       #查询端口是否开放

firewall-cmd --add-port=8080/tcp --permanent          #永久添加8080端口
firewall-cmd --add-port=65001-65010/tcp --permanent   #永久增加65001-65010端口

firewall-cmd --remove-port=8800/tcp --permanent       #永久删除8080端口

# 对某个ip开放某个端口
firewall-cmd --permanent --add-rich-rule=“rule family=“ipv4” source address=“192.168.142.166” port port=“5432” protocol=“tcp” accept”

# 删除对某个ip开放某个端口
firewall-cmd --permanent --remove-rich-rule=“rule family=“ipv4” source address=“192.168.142.166” port port=“5432” protocol=“tcp” accept”


命令解读

firwall-cmd:是Linux提供的操作firewall的一个工具(服务)命令
--zone                                                                #作用域
--add-port=8080/tcp                                                   #添加端口,格式为:端口/通讯协议 ;add表示添加,remove则对应移除
--permanent                                                           #永久生效,没有此参数重启后失效


3)、更新防火墙规则,更改配置后要执行重载配置

firewall-cmd --reload


5.4、关机重启命令

0)、将数据由内存同步到硬盘中

sync


1)、重启

reboot
# 两者作用一样
shutdown -r now


2)、关机

# 立马关机
shutdown -h now

# 计算机将在1分钟后关机,并且会显示在登录用户的当前屏幕中
shutdown -h 1 ‘This server will shut down after 1 mins‘

# 指定时间关机
shutdown 15:28

# 取消关机操作
shutdown -c


5.5、查看系统内核与版本

1)、查看内核/操作系统/CPU信息

uname -a


在这里插入图片描述

2)、查看centos具体版本

cat /etc/centos-release


在这里插入图片描述

六、常用命令

6.1、文件目录类

1)、pwd 显示当前工作目录的绝对路径

pwd


2)、ls 列出目录的内容

 ls:列出当前目录中的文件和子目录。
 ls -l:以长格式列出当前目录中的文件和子目录,包括文件权限、所有者、文件大小、修改日期等详细信息。
 ls -a:列出当前目录中的所有文件和子目录,包括隐藏文件和目录。
 ls -h:以人类可读的格式列出文件大小,例如,使用KB、MB、GB等单位。
 ls -t:按修改时间排序列出文件和子目录,最新修改的文件和目录将显示在最上面。
 ls -r:反向排序列出文件和子目录,即从最后一个文件或目录开始列出。
 ls -R:递归列出当前目录及其子目录中的所有文件和子目录。
 ls -i:显示每个文件和目录的inode号码。


ls [选项] [目录或是文件]

可以多个参数组合如:ls -al

每行列出的信息依次是: 文件类型与权限,链接数,文件属主,文件属组,文件大小用byte来表示,建立或最近修改的时间,名字

3)、cd 切换目录

在这里插入图片描述

4)、mkdir 创建一个新的目录 、 rmdir 删除一个空的目录

mkdir [选项] 要创建的目录

mkdir xiyou
mkdir -p xiyou/dssz/meihouwang  # -p 创建多层目录


rmdir 要删除的空目录

rmdir xiyou/dssz/meihouwang


5)、touch 创建空文件

touch 文件名称

touch xiyou/dssz/sunwukong.txt


6)、cp 复制文件或目录

cp 源文件 目标文件

1)、复制文件

cp xiyou/dssz/suwukong.txt xiyou/mingjie/


2)、递归复制整改文件夹
参数 : -r 递归复制整个文件夹

cp -r xiyou/dssz/ ./


7)、rm 删除文件或目录

rm [选项] deleteFile (功能描述:递归删除目录中所有内容)

在这里插入图片描述

rm sunwukong.txt # 删除文件

rm -rf dssz/  # 递归删除目录中所有内容


8)、mv 移动文件与目录或重命名

mv 源文件 目标文件

(1)mv oldNameFile newNameFile (功能描述:重命名)

(2)mv /temp/movefile /targetFolder (功能描述:移动文件)

# 重命名
mv xiyou/dssz/suwukong.txt xiyou/dssz/houge.txt

# 移动文件
mv xiyou/dssz/houge.txt ./


9)、cat 查看文件内容

查看文件内容,从第一行开始显示。

一般查看比较小的文件,一屏幕能显示全的。

cat -n houge.txt  # -n参数显示行号


10)、more 文件内容分屏查看器

more 要查看的文件

在这里插入图片描述

more nginx.conf 


11)、less 分屏显示文件内容

less 指令用来分屏查看文件内容,它的功能与 more 指令类似,但是比 more 指令更加强大,支持各种显示终端。less 指令在显示文件内容时,并不是一次将整个文件加载之后才显示,而是根据显示需要加载内容,对于显示大型文件具有较高的效率。

在这里插入图片描述

less nginx.conf 


12)、echo输出内容到控制台

echo [选项] [输出内容]

可以用在写脚本的时候输出日志

-e: 支持反斜线控制的字符转换
在这里插入图片描述

echo “hello\tworld”

echo -e “hello\tworld” # -e支持反斜线控制的字符转换


在这里插入图片描述

14)、tail 输出文件尾部内容

tail 用于输出文件中尾部的内容,默认情况下 tail 指令显示文件的后 10 行内容。

# 查看文件尾 1 行内容
tail -n 1 smartd.conf

# 实时追踪该档的所有更新
tail -f houge.txt


ctrl + s 暂停,按ctrl + q 继续

15)、> 输出重定向 和 >> 追加

(1)将 ls 查看信息写入到文件中

ls -l>houge.txt


(2)将 ls 查看信息追加到文件中

ls -l>>houge.txt


(3)采用 echo 将 hello 单词追加到文件中

echo hello>>houge.txt


16)、ln 软链接

软链接也称为符号链接,类似于 windows 里的快捷方式,有自己的数据块,主要存放了链接其他文件的路径。

ln -s [原文件或目录] [软链接名] (功能描述:给原文件创建一个软链接)

1)、创建软连接

 ln -s /home/lnTest.txt ./lnTxt


删除软链接: rm -rf 软链接名,而不是 rm -rf 软链接名/
如果使用 rm -rf 软链接名/ 删除,会把软链接对应的真实目录下内容删掉

rm -rf lnTxt


查询:通过 ll 就可以查看,列表属性第 1 位是 l,尾部会有位置指向。

17)、history 查看已经执行过历史命令

(1)查看已经执行过的历史命令

history


(2)清空历史记录

history -c


18)、时间日期类

(1)显示当前时间信息

date


在这里插入图片描述
(2)设置系统当前时间

date -s "2023-06-19 20:52:18"


6.2、用户管理命令

1)、useradd 添加新用户

useradd 用户名 (功能描述:添加新用户)

useradd -g 组名 用户名 (功能描述:添加新用户到某个组)

(1)添加一个用户

useradd hmb


2)、passwd 设置用户密码

passwd 用户名 (功能描述:设置用户密码)

(1)设置用户的密码

passwd hmb


在这里插入图片描述

3)、id 查看用户是否存在

id 用户名

(1)查看用户是否存在

id hmb


在这里插入图片描述

4)、cat /etc/passwd 查看创建了哪些用户

查看创建了哪些用户

cat /etc/passwd


5)、su 切换用户

su 用户名称 (功能描述:切换用户,只能获得用户的执行权限,不能获得环境变量)

su - 用户名称 (功能描述:切换到用户并获得该用户的环境变量及执行权限)

(1)切换用户

su hmb

su - hmb


在这里插入图片描述

6)、userdel 删除用户

(1)userdel 用户名 (功能描述:删除用户但保存用户主目录)

(2)userdel -r 用户名 (功能描述:用户和用户主目录,都删除)

userdel hmb

userdel -r hmb


7)、sudo 设置普通用户具有 root 权限

sudo mkdir module


8)、usermod 修改用户

usermod -g 用户组 用户名

在这里插入图片描述

(1)将用户加入到用户组

usermod -g root zhubajie


9)、groupadd 新增组

groupadd 组名

(1)添加一个xitianqujing组

groupadd xitianqujing


10)、groupdel 删除组

groupdel 组名

(1)删除xitianqujing组

groupdel xitianqujing


11)、groupmod 修改组

groupmod -n 新组名 老组名
在这里插入图片描述

groupmod -n xitian xitianqujing


12)、cat /etc/group 查看创建了哪些组

cat /etc/group


6.3、文件权限类

1)、文件属性

在这里插入图片描述
使用llls -lh命令查看权限

如果没有权限,就会出现减号[ - ]而已。从左至右用0-9这些数字来表示:

  • 0 首位表示类型
    • 在Linux中第一个字符代表这个文件是目录、文件或链接文件等等
    • 代表文件
    • d 代表目录
    • l 链接文档(link file);
  • 第1-3位确定属主(该文件的所有者)拥有该文件的权限。—User
  • 第4-6位确定属组(所有者的同组用户)拥有该文件的权限,—Group
  • 第7-9位确定其他用户拥有该文件的权限 —Other

(1)、rwx 作用文件和目录的不同解释

  • (1)作用到文件:
    [ r ]代表可读(read): 可以读取,查看
    [ w ]代表可写(write): 可以修改,但是不代表可以删除该文件,删除一个文件的前
    [ x ]代表可执行(execute):可以被系统执行

  • (2)作用到目录:
    [ r ]代表可读(read): 可以读取,ls查看目录内容
    [ w ]代表可写(write): 可以修改,目录内创建+删除+重命名目录
    [ x ]代表可执行(execute):可以进入该目录

ll命令查看解释

在这里插入图片描述
ls -lh 命令,文件大小会更清晰

在这里插入图片描述

(1)如果查看到是文件:链接数指的是硬链接个数。
(2)如果查看的是文件夹:链接数指的是子文件夹个数。

2)、chmod 改变权限

在这里插入图片描述

1)、第一种方式变更权限

chmod [{ugoa}{+ - =}{rwx}] 文件或目录

u:所有者(user)        g:所有组(group)           o:其他人(other)        a:所有人(u、g、o 的总和)

+号代表增加      -号代表取消     = 号代表直接赋予


(1)修改文件使其所属主用户具有执行权限

chmod u+x houge.txt


(2)修改文件使其所属组用户具有执行权限

chmod g+x houge.txt


(3)修改文件所属主用户执行权限,并使其他用户具有执行权限

chmod u-x,o+x houge.txt


2)、第二种方式变更权限

chmod [mode=421 ] [文件或目录]

r=4         w=2        x=1       rwx=4+2+1=7


(1)采用数字的方式,设置文件所有者、所属组、其他用户都具有可读可写可执行权限。

chmod 777 houge.txt


(2)修改整个文件夹里面的所有文件的所有者、所属组、其他用户都具有可读可写可执行权限。

chmod -R 777 xiyou/


3)、chown 改变所有者

chown [选项] [最终用户] [文件或目录] (功能描述:改变文件或者目录的所有者)

(1)修改文件所有者

chown hmb houge.txt


(2)递归改变文件所有者和所有组

chown -R hmb:hmb xiyou/


4)、chgrp 改变所属组

chgrp [最终用户组] [文件或目录] (功能描述:改变文件或者目录的所属组)

(1)修改文件的所属组

chgrp root houge.txt


6.4、搜索查找类

1)、find 查找文件或者目录

find 指令将从指定目录向下递归地遍历其各个子目录,将满足条件的文件显示在终端。

在这里插入图片描述

(1)按文件名:根据名称查找/目录下的filename.txt文件。

find -name "ln*.txt"  

find xiyou/ -name "*.txt"


在这里插入图片描述

(2)按拥有者:查找/opt目录下,用户名称为-user的文件

find opt/ -user hmb


(3)按文件大小:在/home目录下查找大于200m的文件(+n 大于 -n小于 n等于)

find /home -size +204800


2)、locate 快速定位文件路径

locate 指令利用事先建立的系统中所有文件名称及路径的 locate 数据库实现快速定位给定的文件。Locate 指令无需遍历整个文件系统,查询速度较快。为了保证查询结果的准确度,管理员必须定期更新 locate 时刻。

基本语法:locate 搜索文件

由于 locate 指令基于数据库进行查询,所以第一次运行前,必须使用 updatedb 指令创建 locate 数据库。


(1)查询文件夹

updatedb

locate tmp


3)、grep 过滤查找及 | 管道符

管道符,“|”,表示将前一个命令的处理结果输出传递给后面的命令处理,可以前面查出来的东西传给管道符后端的处理,例如 ls | grep -n test

grep是Linux系统中常用的文本搜索工具,可以在文件中查找指定的字符串或者正则表达式,并将匹配的行输出到终端或者文件中。

(1)、在文件中查找字符

# 单个文件中查找
grep "string" filename

# 多个文件中查找字符
grep "string" file1 file2 file3

# 忽略大小写查找指定字符串
grep -i "string" filename


(2)、在目录中递归查找指定字符串

grep -r "string" directory


(3)、显示匹配行的行号

grep -n "string" filename


(4)、反向查找不包含指定字符串的行

grep -v "string" filename


(5)、将匹配的行输出到文件中

grep "string" filename > output.txt


6.5、压缩和解压类

1)、gzip/gunzip 压缩

注意:

(1)只能压缩文件不能压缩目录
(2)不保留原来的文件
(3)同时多个文件会产生多个压缩包

(1)、gzip压缩

gzip 文件

gzip lnTest.txt


在这里插入图片描述
(2)、gunzip解压缩文件

gunzip lnTest.txt.gz


2)、zip/unzip 压缩

zip 压缩命令在windows/linux都通用,可以压缩目录且保留源文件。

(1)、zip压缩

zip 压缩文件名.zip  源文件

# 压缩文件
zip lnTest.zip lnTest.txt

# -r 压缩文件夹
zip -r  nginx1.zip nginx-1.21.6


(2)、unzip解压

unzip lnTest.zip

# -d 指定解压后文件的存放目录
unzip lnTest.zip -d /opt


3)、tar 打包

tar [选项] XXX.tar.gz 将要打包进去的内容 (功能描述:打包目录,压缩后的文件格式.tar.gz)

在这里插入图片描述
(1)、压缩文件

tar -zcvf 打包的文件名.tar.gz [源文件]

# 多个文件打包
tar -zcvf houma.tar.gz houge.txt bailongma.txt

# 打包文件夹
tar -zcvf xiyou.tar.gz xiyou/


(2)、解压

# 解压到当前目录
tar -zxvf houma.tar.gz
# -C 解压到某个目录下
tar -zxvf xiyou.tar.gz -C /opt


6.6、磁盘查看和分区类

1)、du 查看文件和目录占用的磁盘空间

du 目录/文件 (功能描述:显示目录下每个子目录的磁盘使用情况)

在这里插入图片描述

# 查看当前文件总占用
du -sh 

# 当前目录下所有文件磁盘占用
du -sh *

# 某文件夹下所有文件的磁盘占用
du -sh /home/*

# -c 显示总和
du -csh /home/*


在这里插入图片描述
在这里插入图片描述

2)、df 查看磁盘空间使用情况

df 选项 (功能描述:列出文件系统的整体磁盘使用量,检查文件系统的磁盘空间占用情况)

(1)查看磁盘使用情况

df -h


在这里插入图片描述

3)、lsblk 查看设备挂载情况

lsblk

# 查看详细的设备挂载情况,显示文件系统信息
lsblk -f 


在这里插入图片描述

4)、mount/umount 挂载/卸载

对于Linux用户来讲,不论有几个分区,分别分给哪一个目录使用,它总归就是一个根目录、一个独立且唯一的文件结构。

Linux中每个分区都是用来组成整个文件系统的一部分,它在用一种叫做“挂载”的处理方法,它整个文件系统中包含了一整套的文件和目录,并将一个分区和一个目录联系起来,要载入的那个分区将使它的存储空间在这个目录下获得。

语法:mount [-t vfstype] [-o options] device dir (功能描述:挂载设备)

在这里插入图片描述

(1)挂载光盘镜像文件

# 建立挂载点
mkdir /mnt/cdrom/

# 设备/dev/cdrom 挂载到 挂载点 : /mnt/cdrom 中
mount -t iso9660 /dev/cdrom /mnt/cdrom/


(2)卸载光盘镜像文件

umount /mnt/cdrom


(3)设置开机自动挂载

vi /etc/fstab


添加下面那句后保存退出
在这里插入图片描述

5)、fdisk分区

注意:该命令必须在 root 用户下才能使用

基本语法:

fdisk -l (功能描述:查看磁盘分区详情)

fdisk 硬盘设备名 (功能描述:对新增硬盘进行分区操作)

在这里插入图片描述

1)、功能说明

  • Linux 分区
    Device:分区序列
    Boot:引导
    Start:从X磁柱开始
    End:到Y磁柱结束
    Blocks:容量
    Id:分区类型ID
    System:分区类型
  • 分区操作按键说明
    m:显示命令列表
    p:显示当前磁盘分区
    n:新增分区
    w:写入分区信息并退出
    q:不保存分区信息直接退出

6.7、进程管理类

进程是正在执行的一个程序或命令,每一个进程都是一个运行的实体,都有自己的地址空间,并占用一定的系统资源。

1)、ps 查看当前系统进程状态

ps -ef:列出所有进程的详细信息,包括进程的PID、PPID、CPU占用率、内存占用率等。

ps aux:与ps -ef类似,但是显示的是所有用户的进程信息。
在这里插入图片描述

ps aux

ps -ef


  1. ps aux 显示信息说明:
    USER:该进程是由哪个用户产生的
    PID:进程的 ID 号
    %CPU:该进程占用 CPU 资源的百分比,占用越高,进程越耗费资源;
    %MEM:该进程占用物理内存的百分比,占用越高,进程越耗费资源;
    VSZ:该进程占用虚拟内存的大小,单位 KB;
    RSS:该进程占用实际物理内存的大小,单位 KB;
    TTY:该进程是在哪个终端中运行的。对于 CentOS 来说,tty1 是图形化终端,
    tty2-tty6 是本地的字符界面终端。pts/0-255 代表虚拟终端。
    STAT:进程状态。常见的状态有:R:运行状态、S:睡眠状态、T:暂停状态、
    Z:僵尸状态、s:包含子进程、l:多线程、+:前台显示
    START:该进程的启动时间
    TIME:该进程占用 CPU 的运算时间,注意不是系统时间
    COMMAND:产生此进程的命令名
  2. ps -ef 显示信息说明:
    UID:用户 ID
    PID:进程 ID
    PPID:父进程 ID
    C:CPU 用于计算执行优先级的因子。数值越大,表明进程是 CPU 密集型运算,
    执行优先级会降低;数值越小,表明进程是 I/O 密集型运算,执行优先级会提高
    STIME:进程启动的时间
    TTY:完整的终端名称
    TIME:CPU 时间
    CMD:启动进程所用的命令和参数

(1)配合grep 查询java进程,查出PID后,就可以杀掉进程了

ps -ef | grep java
ps aux | grep java

ps -ef | grep java服务名


2)、kill 终止进程

(1)通过pid终止进程

# -9 表示强迫进程立即停止
kill -9 5102


(2)通过进程名称杀死进程

killall firefox


window杀死进程:

taskkill /f /pid  进程ID


3)、pstree 查看进程树

# 显示进程的 PID
pstree -p
# 显示进程的所属用户
pstree -u


4)、top 实时监控系统进程状态

参数选项:
在这里插入图片描述

top


在这里插入图片描述

在这里插入图片描述

  1. 第一行信息为任务队列信息
    在这里插入图片描述

  2. 第二行为进程信息
    在这里插入图片描述

  3. 第三行为 CPU 信息
    在这里插入图片描述

  4. 第四行为物理内存信息
    在这里插入图片描述

  5. 第五行为交换分区(swap)信息
    在这里插入图片描述

5)、netstat显示网络状态和端口占用信息

使用netstat 通常用来查看端口是否被占用

netstat -anp | grep  进程号或端口号
netstat –nlp | grep 端口号


在这里插入图片描述
window查看:

netstat -ano | findstr 端口号


6)、crontab 定时任务设置

crontab -e


在这里插入图片描述
(1)、重新启动 crond 服务

systemctl restart crond


(2)、每隔 1 分钟,向/root/bailongma.txt 文件中添加一个 11 的数字

*/1 * * * * /bin/echo ”11” >> /root/bailongma.txt


七、软件包管理

7.1、BPM

RPM(RedHat Package Manager),RedHat软件包管理工具,类似windows里面的setup.exe是Linux这系列操作系统里面的打包安装工具,它虽然是RedHat的标志,但理念是通用的。

RPM包的名称格式
Apache-1.3.23-11.i386.rpm

  • “apache” 软件名称
  • “1.3.23-11”软件的版本号,主版本和此版本
  • “i386”是软件所运行的硬件平台,Intel 32位处理器的统称
  • “rpm”文件扩展名,代表RPM包

1)、RPM 安装命令(rpm -ivh)

在这里插入图片描述

rpm -ivh 包名.rpm


2)、RPM 查询命令(rpm -qa)

语法:rpm -qa (功能描述:查询所安装的所有 rpm 软件包)

由于软件包比较多,一般都会采取过滤。rpm -qa | grep rpm软件包
例如:查询firefox软件安装情况

rpm -qa |grep firefox


3)、RPM 卸载命令(rpm -e)

rpm -e RPM软件包

# 卸载软件时,不检查依赖。这样的话,那些使用该软件包的软件在此之后可能就不能正常工作了。
rpm -e --nodeps 软件包


7.2、YUM 仓库配置

YUM(全称为 Yellow dog Updater, Modified)是一个在 Fedora 和 RedHat 以及 CentOS中的 Shell 前端软件包管理器。基于 RPM 包管理,能够从指定的服务器自动下载 RPM 包并且安装,可以自动处理依赖性关系,并且一次安装所有依赖的软件包,无须繁琐地一次次下载、安装

在这里插入图片描述

1)、YUM 的常用命令

语法:yum [选项] [参数]

选项:
在这里插入图片描述

参数:
在这里插入图片描述

(1)、采用 yum 方式安装 firefox

—END—

这里我整合并且整理成了一份【282G】的网络安全/黑客技术从零基础入门到进阶资料包,需要的小伙伴文末免费领取哦,无偿分享!!!

学习计划安排

学习路线图大纲总览


我一共划分了六个阶段,但并不是说你得学完全部才能上手工作,对于一些初级岗位,学到第三四个阶段就足矣~

【一一包括以下各个方面,全部文末免费领取一一】
①网络安全学习路线
②上百份渗透测试电子书
③安全攻防357页笔记
④50份安全攻防面试指南
⑤安全红队渗透工具包
⑥HW护网行动经验总结
⑦100个漏洞实战案例
⑧安全大厂内部视频资源
⑨历年CTF夺旗赛题解析

接下来我将给各位同学划分一张学习计划表!

学习计划

那么问题又来了,作为萌新小白,我应该先学什么,再学什么?
既然你都问的这么直白了,我就告诉你,零基础应该从什么开始学起:

阶段一:初级网络安全工程师

接下来我将给大家安排一个为期1个月的网络安全初级计划,当你学完后,你基本可以从事一份网络安全相关的工作,比如渗透测试、Web渗透、安全服务、安全分析等岗位;其中,如果你等保模块学的好,还可以从事等保工程师。

在这里插入图片描述

综合薪资区间6k~15k

1、网络安全理论知识(2天)
①了解行业相关背景,前景,确定发展方向。
②学习网络安全相关法律法规。
③网络安全运营的概念。
④等保简介、等保规定、流程和规范。(非常重要)

2、渗透测试基础(1周)
①渗透测试的流程、分类、标准
②信息收集技术:主动/被动信息搜集、Nmap工具、Google Hacking
③漏洞扫描、漏洞利用、原理,利用方法、工具(MSF)、绕过IDS和反病毒侦察
④主机攻防演练:MS17-010、MS08-067、MS10-046、MS12-20等

3、操作系统基础(1周)
①Windows系统常见功能和命令
②Kali Linux系统常见功能和命令
③操作系统安全(系统入侵排查/系统加固基础)

4、计算机网络基础(1周)
①计算机网络基础、协议和架构
②网络通信原理、OSI模型、数据转发流程
③常见协议解析(HTTP、TCP/IP、ARP等)
④网络攻击技术与网络安全防御技术
⑤Web漏洞原理与防御:主动/被动攻击、DDOS攻击、CVE漏洞复现

5、数据库基础操作(2天)
①数据库基础
②SQL语言基础
③数据库安全加固

6、Web渗透(1周)
①HTML、CSS和JavaScript简介
②OWASP Top10
③Web漏洞扫描工具
④Web渗透工具:Nmap、BurpSuite、SQLMap、其他(菜刀、漏扫等)


那么,到此为止,已经耗时1个月左右。你已经成功成为了一名“脚本小子”。那么你还想接着往下探索吗?

阶段二:中级or高级网络安全工程师(看自己能力)

综合薪资区间15k~30k

7、脚本编程学习(4周)
在网络安全领域。是否具备编程能力是“脚本小子”和真正网络安全工程师的本质区别。在实际的渗透测试过程中,面对复杂多变的网络环境,当常用工具不能满足实际需求的时候,往往需要对现有工具进行扩展,或者编写符合我们要求的工具、自动化脚本,这个时候就需要具备一定的编程能力。在分秒必争的CTF竞赛中,想要高效地使用自制的脚本工具来实现各种目的,更是需要拥有编程能力。

零基础入门的同学,我建议选择脚本语言Python/PHP/Go/Java中的一种,对常用库进行编程学习
搭建开发环境和选择IDE,PHP环境推荐Wamp和XAMPP,IDE强烈推荐Sublime;

Python编程学习,学习内容包含:语法、正则、文件、 网络、多线程等常用库,推荐《Python核心编程》,没必要看完

用Python编写漏洞的exp,然后写一个简单的网络爬虫

PHP基本语法学习并书写一个简单的博客系统

熟悉MVC架构,并试着学习一个PHP框架或者Python框架 (可选)

了解Bootstrap的布局或者CSS。

阶段三:顶级网络安全工程师

这部分内容对于咱们零基础的同学来说还太过遥远了,由于篇幅问题就不展开细说了,我给大家贴一个学习路线。感兴趣的童鞋可以自行研究一下哦,当然你也可以与我一起互相探讨、交流、咨询哦。

资料领取

上述这份完整版的网络安全学习资料已经上传网盘,朋友们如果需要可以微信扫描下方二维码 即可免费领取↓↓↓
或者

点此链接】领取

;