Linux操作系统

一、Linux介绍

  1.当前已知的操作系统有哪些:Windows、IOS、Android、车载系统、嵌入式系统、Linux

  2. Linux是一款主要用于服务器的操作系统,免费、开源、安全、稳定、高效率,尤其是进行高并发处理时性能强悍,目前很多企业级系统都部署在Linux系统上.

  3.Linux的发行版:Ubuntu、RedHat(redhat、CentOS)、Suse、FedOra、红旗Linux

  4.Unix和Linux:Unix是一款收费的商业软件(操作系统),Linux是一款响应GNU计划的免费开源软件(操作系统)

二、Linux(CentOS)的安装

  1. 安装之前的准备工作:

  设置BIOS支持虚拟机技术

  2. 安装VM Station

  双击VMstation的安装程序

  3. 安装CentOS系统

   先安装虚拟机工作站VM Station

  使用VM Station创建虚拟机(分配处理器、内存、磁盘空间、网络连接方式等)

  在此虚拟机上安装相应的Linux系统(比如CentOS)

  初步认识Linux的界面和使用

  小结:对Linux系统的认识,Linux与Unix的关, Linux的主要发行版

  接下来安装vmtools解决与windows系统粘贴及文件共享的问题远程访问工具XShell5的使用远程XFTP5(方便后续操作)

三、Linux(CentOS)辅助工具/操作

  各文件目录常识

  1. 文件目录结构:在Linux系统,一切皆文件,即用文件来表示一切,在Linux系统中,用“/”来表示所有文件的根目录

  2. /bin【重要】:是Binary的缩写,在该目录中存放一些经常使用的命令

  3. /home【重要】:普通用户的主目录,在Linux系统中,每个普通用户在/home下都有对应的主目录,一般该主目录名与用户名相同

  4. /root【重要】:超级管理员的主目录,系统管理的家目录

  5. /boot【重要】:系统的启动(引导)文件存放在该目录

  6. /proc:这是一个虚拟目录,它是系统内存的映射,访问该目录可以获取系统的一些信息

  7. /srv:service的缩写,该目录存放服务启动之后的一些系统数据

  8. /dev:类似于Windows的设备管理器,把所有的硬件资源用文件的形式来表示

  9. /media【重要】:Linux系统会自动识别一些外部设备,比如U盘、光盘等,当识别到这些硬件设备后,会将其挂载到/media下

  10. /mnt【重要】:该目录提供临时挂载功能,可以将外部
的存储挂载到/mnt上,然后进入该目录即可查看并获取挂载的内容了

  11. /var【重要】:在该目录中存放着不断扩充的信息,比如一些系统运行的日志文件经常存放在该目录中

  Linux终端的基本使用

  1. 关机:halt

  2. 重启:reboot

  3. shutdown(关机和重启)

  4. shutdown -h now //立马关机

  5. shutdown -h 10 //10分钟之后关机

  6. shutdown -r now //立马重启

  7. shutdown -r 10 //10分钟之后重启

  8. 切换目录: cd 目录名

  9. 显示当前目录的资源(文件后文件夹):(tr排序) ls

  10. 显示当前所处的位置:pwd

  11. 回到自己的家目录:cd

  用户管理

  1. 创建一个用户jack: useradd jack

  2. 创建一个用户并指定家目录:useradd -d /自定义家目录 用户名

  3. 修改用户jack的密码:passwd jack

  4. 切换用户:su - 用户名

  5. 删除用户:userdel 用户名 注意,该操作只能删除用户,其家目录仍然保留

  6. 删除用户并删除其家目录:userdel -r 用户名

  VM tools工具的安装和使用

  1. 远程登录工具XShell5的安装和使用

  2. 远程传输工具XFtp5的安装和使用

  3. 在自己的家目录下创建并编辑一个文件fbkong.txt

  4. 先创建一个空文件: touch fbkong.txt

  5. 再通过vim进行编辑

  关于Linux系统的运行级别

  Linux系统共有6个运行级别

  0:关机

  1:单用户模式,此时系统只有一个root用户可用,登录系统无需密码

  2:多用户无网络,系统的多个用户均可用,但是只能直接在服务器上操
作,无法远程

  3(常用):多用户有网络,系统的多个用户均可用,并且有网络支持,可以远程登录

  4:保留级别,暂时不用

  5(常用):图形界面模式,支持图形界面显示和操作

  6:重启

  如何指定运行级别?

  1. 通过init命令来切换系统的运行级别,即:init n

  2. 通过修改配置文件(/etc/inittab)来指定运行级别

四、Linux指令介绍

  1.添加新用户:useradd

  基本语法:useradd [选项] 用户名

  常用选项:

  -d:自定义家目录

  案例演示:

添加一个新用户zhangsan

[root@hadoop1 /]# useradd zhangsan

[root@hadoop1 /]# cd /home

[root@hadoop1 home]# ls

zhangsan

添加一个新用户wangwu,并自定义家目录为/home/ww

[root@hadoop1 home]# useradd -d /home/ww wangwu

[root@hadoop1 home]# ls

ww zhangsan

  2.设置用户密码:passwd

  基本语法:passwd 用户名

  案例演示:

为用户zhangsan设置新密码为123

[root@hadoop1 home]# passwd zhangsan

更改用户 zhangsan 的密码 。

新的 密码:

无效的密码: WAY 过短

无效的密码: 过于简单

重新输入新的 密码:

passwd: 所有的身份验证令牌已经成功更新。

  3. 切换用户:su

  基本语法:su - 用户

  说明:

  由root用户切换到zhangsan用户,此时直接切换,无需输入密码

  由zhangsan用户切换到root用户,会要求输入root的密码才能完成切换

  4. 查看当前路径:pwd

  5. 显示(当前目录的)文件列表:ls

  基本语法:ls [选项] [目录名] 常用选项:

  -l:将文件以列表的形式展示------>ls -l 等同于ll

  -a:显示所有文件和子目录,包括隐藏的

  6. 切换目录:cd

  基本语法:cd 目标目录

  7. 回到上级目录:cd 基本语法:cd …

  8. 清空屏幕:clear

  基本语法:clear

  9. 新建空白文件:touch

   基本语法:touch 文件名

  10. 编辑文件:vim

  基本语法:vim 文件名

  11. 删除文件:

  rm 基本语法:rm [选项] 文件名

  常用选项:-f:无需确认,直接删除

  12. 新建目录:mkdir

  基本语法:mkdir [选项] 目录名

  常用选项:-p:连续创建多级目录

  13. 删除空目录:rmdir

  基本语法:rmdir 空目录名

  14. 删除非空目录:rm

  基本语法:rm [选项] 非空目录名

  常用选项:

  -r:递归删除该目录下所有文件

  -f:无需确认每一个文件,直接删除

  15. 拷贝文件:cp

  基本语法:cp [选项] source dest

  说明: dest为目标目录,source为源文件或源目录   常用选项:
  -r:当源问非空目录时,加上-r可将该目录整体拷贝到目标中当目录目录中已有该文件(目录)时,使用/cp命令可以强制覆盖

  16. 移动(剪切)或重命名:mv

  基本语法1(剪切):mv 目标文件或目录 目标目录

  基本语法2(重命名):mv oldName newName

  17. 浏览文件内容:cat

  基本语法:cat [选项] 文件名

  常用选项 -n:显示行号

  18. 浏览文件内容:more

  基本语法:more 文件名

  说明:该指令可以分屏显示文件内容,先将所有文件内容一次加载完毕,然后分屏显示

  使用空格进行分屏

  使用回车进行逐行滚动 ctrl+f:显示下一屏

  ctrl+b:显示上一屏

  19. 浏览文件内容:less

  基本语法:less 文件名

  说明:该指令可以分屏显示文件内容,只加载当前需要显示的那一屏,在阅读大型文档时效率较高

  20. 重定向和追加:> 和 >>

  基本语法:重定向:> (覆盖写)追加:>>

  练手:

  1. 在home下创建一个java类文件:Student.java

class Student{
   public static void main(String[] arsg){
     System.out.println("Hello Linux");
   }
}

  2. 将该Student.java的内容转存到abc.txt中

  21. head

  说明:显示一个文件的前几行(默认前10行)

  语法:head [选项] 文件

  常用选项: -n:指定显示的行数

  案例:显示/etc/profile文件的前15行

[root@hadoop1 home]# head -n 15 /etc/profile

  22. tail

  说明:显示一个文件的末尾几行(默认后10行)

  语法:tail [选项] 文件

  案例演示:显示/etc/profile文件的后15行

[root@hadoop1 home]# tail -n 15 /etc/profile

  案例演示:监听一个日志文件的变化

[root@hadoop1 home]# cat log.txt
2020年 08月 05日 星期三 01:15:38 CST
[root@hadoop1 home]# tail -f log.txt
2020年 08月 05日 星期三 01:15:38 CST
2020年 08月 05日 星期三 01:17:23 CST
2020年 08月 05日 星期三 01:17:34 CST
2020年 08月 05日 星期三 01:17:35 CST

  23. In

  说明:为某个文件后目录创建一个软链接

  语法:ln [选项] 目标文件 软链接名

  常用选项:-s:表示创建的是一个图标链接

  案例:创建一个软链接linToETC,指向/etc目录

[root@hadoop1 home]# ln -s /etc linToETC

  案例演示:删除上面创建的软链接linToETC

[root@hadoop1 home]# rm -f linkTEC

  24. history

  说明:显示曾经执行过的历史命令,默认显示一段时间内执行过的所有

  命令语法:history n

  n表示只显示最近的n条

  补充:可以通过!+历史命令的编号,重复执行该历史命令

  问题:如何将执行过的历史命令保存为一个文件?

  25. date

  说明:显示当前时间语法:date [选项]

  date +%Y :显示年份

  date +%m:显示月份

  date +%d:显示日期

  date “+%Y-%m-%d %H:%M:%S”:显示“年-月-日 时:分:秒

  date -s “2020-01-01 17:40:00”:设置Linux服务器的系统时间为指定值

  26. cal

  说明:显示日历

  语法:cal,显示当前月份的日历

  cal 年份:显示指定年份的日历(12个月)

  27. 帮助命令

  语法:help 命令名

  语法: man 命令名

  28. id:

  说明:查看用户详情

  语法:id 用户名

  29. find

  说明:根据指定的条件查找文件

  语法:find [搜索范围] [条件] 文件名

  条件说明:

  name:根据文件名查找

  user:根据所属用户查找

  size:根据文件大小进行查找

  案例演示:在/home目录下查找xyz.txt

[root@hadoop1 home]# find /home -name xyz.txt

  案例演示:在系统根目录/下查找用户root的文件

[root@hadoop1 home]# find / -user root

  案例演示:在系统根目录/下查找大小为20M的文件

find /home -size 20M

find /home -size +20M

find /home -size -20M

  29. locate

  说明:利用事先建立好的系统目录索引(该索引默认未建立,需要用户提前执行更新命令udatedb)进行快速查找

  语法:locate 目标文件

  案例演示:在整个系统中查找xyz.txt

[root@hadoop1 myfolder]# updatedb

[root@hadoop1 myfolder]# locate xyz.txt

  30. grep

  说明:在一个文件中,查找指定的关键词

  语法:grep [选项] 关键词 源文件

  选项说明:

  -i:忽略大小写

  -n:显示关键词在源文件中的行号

  案例演示:在/home/Student.java中查找关键词hello(忽略大小写,并显示行号)

[root@hadoop1 home]# grep -ni hello Student.java

  31. |

  说明:管道符,可以将前一个命令的执行结果交给后一个命令处理

  语法:命令1 | 命令2 | 命令3

  案例演示:在Student.java中查找关键词hello

[root@hadoop1 home]# cat Student.java | grep -n hello

  33. ps

  说明:显示当前系统的进程及状态

  语法:ps [选项]

  常用选项:

  e:显示环境变量(显示所有进程)

  f:显示进程之间的关系

  案例演示:显示系统当前所有的进程,包括进程之间的关系

[root@hadoop1 桌面]# ps -ef

五、权限管理

  基础知识

  1.用户的属性

  家目录:当一个用户刚创建时,其家目录默认位于/home下,名称与其用户名相同

  用户所在组:每一个用户都至少属于一个组,对于新建的用户,其属于与其同名的一个组中

  2. 文件/目录的属性:

  • 文件的所有者Owner(创建者):创建该文件/目录的用户
  • 文件所在组:文件当前属于哪个组
  • 其他组:非该文件所在的组

  3. 操作权限:

  • 读(read):只能对该文件/目录进行读取操作
  • 写(write):可以对该文件/目录进行写操作
  • 执行(execute):可以对该文件/目录进行执行操作

  4. 案例解释

drwxr-xr-x. 5 root root 4096 6月 9 2020 myfolder

对于以上文件信息,各符合的意思如下:

第0位字符:表示该文件的类型:

-:文件

d:目录

l:软链接

c:字符设备,比如键盘或鼠标等

b:块状设备,比如硬盘

第1-3位字符:该文件的所有者所具有的权限。rwx表示具有一切权限

第4-6位字符:该文件同组的其他用户所具有的权限。r-x表示缺失写权限

第7-9位字符:该文件的其他组用户所具有的权限。r-x表示缺失写权限

第10位.分隔符

第11位:5

如果是文件,表示该文件的硬链接数量,一般固定为1

如果是目录,表示该目录下子目录的数量

第一个root:该文件的所有者

第二个root:该文件所在的组

4096:

如果是文件:表示文件的大小

如果是目录:固定值4096

6月 9 2020:

表示该文件/目录的最后修改时间

最后一项表示该文件/目录的名称

  用户、家目录、组、(用户和文件的)归属管理、授权

  1. 创建一个用户zhangsan,使用其默认家目录,归属到其默认的组

  useradd zhangsan

  2. 创建一个用户lisi,指定其家目录为/home/lisi_home,归属到one组

  先创建lisi:useradd lisi -d /home/lisi_home

  创建一个组one:groupadd one

  将lisi归为one小组:usermod -g one lisi

  3. 场景设置:

  新建两个用户:jack1 密码111 ;jack2 密码222
  新建两个小组:one two
  设置归属关系:jack1–>one jack2—>two

groupadd one (one小组已经存在,无需创建)

groupadd two

useradd jack1

passwd jack1

usermod -g one jack1

useradd jack2

passwd jack2

usermod -g two jack2

验证:

id jack1

id jack2

  4. 使用root账户在home目录下创建文件abc.txt

touch abc.txt

  观察abc.txt文件的信息,发现其所有者为root,其所在组为root

  需求:将abc.txt的所有者修改为jack1,将abc.txt所在组修改为two

将abc.txt的所有者修改为jack1

chown jack1 abc.txt
将abc.txt所在组修改为two

chgrp two abc.txt

  5. 如何查看所有用户?

cat /etc/passwd

  6. 如何查看所有组?

cat /etc/group

  7. 如何删除一个组?

groupdel 组名

注意:如果有用户属于该小组,则不可删除

  文件/目录的三个操作权限

  1.r(read)

  文件:可以阅读该文件的内容

  目录:可以通过ls或ll命令查看目录列表

  2. w(write)

  文件:可以编辑该文件

  目录:可以修改该目录,在该目录中进行创建、删除、修改该目录名称的操作

  3.x(execute)

  文件:可以通过./xxx来执行该文件

  目录:可以通过cd命令进入该目录

案例:

  1. 先通过shell脚本编写一个可执行文件myshell.sh
该文件myshell.sh创建完之后,默认其所有者不具有x权限,需要授权

  2. 如何给文件授权?给谁授权?授权指令:chmod
授权对象:u(所有者)、g(组内用户)、o(其他用户)、a(所有用户) 授权的操作:r、w、x

  授权符号:=、 +、举例说明:

  (1).chmod u=rw,g=x,o=r abc.txt

  解释:指定文件abc的所有者u具有rw权限、组内用户g具有x权限、其他用户具有r权限

  (2).chmod u=rwx,o=rw abc.txt

  解释:同上

  (3).chmod a=rx abc.txt

  解释:指定文件abc的所有者、组内用户、其他用户都具有rx权限

  (4).chmod u=rw,g=rw,o=rw abc.txt 等价于 chmod a=rw abc.txt chmod u+w abc.txt

  解释:为abc.txt文件的所有者u增加一项w权限

  (5).chmod u-w,g+x abc.txt

  解释:为abc.txt文件的所有者去掉w权限,为其组内用户增加x权限

小结:

  1. 针对用户的操作:

  创建用户:useradd

  修改用户的家目录 或者 所属组:usermod

  删除用户:userdel

  所有的用户信息都保存在系统文件/etc/passwd中

  2. 针对组的操作:

  创建小组:groupadd

  删除小组:groupdel ,必须确保该小组已无用户所有的小组信息都保存在系统文件/etc/group中

  3. 针对文件的操作

  修改文件的所有者:chown 修改文件的组:chgrp

  修改文件的权限:chmod

六、服务管理

  1. 先了解两个DOS命令

  ping 目标主机(ip地址或域名):测试与目标主机之间的网络是否连通

  telnet 目标主机 端口:测试指定主机的某个端口是否启用(处于监听状态)

  如果客户端已经成功连接上Linux服务器,则可以直接执行以下命令,查看该服务当前的状态

  2. Service:Linux中与服务有关的命令,通过该命令可以查看服务的状态、停止服务、启动服务、重启服务等

 	service 服务 [status stop start restart reload]

  3. 如何查看Linux系统中所有的服务?

  通过setup命令,可以查看所有系统服务以及他的启动类型

  通过chkconfig命名,可以查看所有系统服务以及他的启动类型以下两种操作可以查看指定服务的启动类型
chkconfig | grep sshd chkconfig sshd --list

  4. 如何修改系统中某项服务的启动类型?

  chkconfig 服务名 --level n on/off:设置指定的服务在n运行级别下的启动类型为on或者off

  5. 注意:
  以上所有的设置必须在系统重启(reboot)后才能生效在centOS7以上的版本中,service命令更换为systemctl

七、任务调度

  1. 什么是任务调度:指定某个任务在特定的时间执行,或者在特定的周期内反复执行。

  2. 如何配置定时任务

  所有需要调度的任务都配置在系统文件/etc/crontab中

  通过命令crontab -e进入任务编辑模式,添加以下任务:

  */1 * * * * date >> /home/mydate.log

  任务内容:date >> /home/mydate.log

  任务执行规则:*/1 * * * *

  任务调度的规则,总共有5个*,分别代表的意思如下:

第1个*表示分,取值范围(0-59)

第2个*表示时,取值范围(0-23)

第3个*表示日,取值范围(1-31)

第4个*表示月,取值范围(1-12)

第5个*表星期几,取值范围(0-7),其中0和7都表示星期天

  举例说明:

  35 19 * * * 任务1 :在19点35分执行任务1

  0 13 * * 2 任务2:在每个星期2的13点0分执行任务2

  0 5 * 8 * 任务3:在8月份,每天的5点0分执行任务3

  28 7 * * 2-5 任务4:在星期2-星期5的每天7点28分执行任务4

  28 7,12,15 * * * 任务5:在每天的7:28、12:28、15:28分执行任务5

  */5 * * * * 任务6:每5分钟执行一次任务6

  */5 * 3 * * 任务7:每个月的3号,以5分钟为周期循环执行任务7

  其他相关命令:

  crontab -l:查看当前所有已经配置的任务

  crontab -r:移除所有已经配置的任务

八、常见问题及解决方法

  问题1:如何找回root密码?

  1.修改系统的运行级别为1,然后重启

  2.在启动界面快速按下Enter键,进入启动菜单列表

  3.选中当前系统名称(默认已选中),按下"e"键,进入二级菜单

  4.选中第2项(kernal。。。。),再次按下"e"键,进入启动编辑条目

  5.在最后一项文本后面加空格,并输入1(表明以1号级别运行),按Enter键

  6.重新进入上一(kernal。。。。)界面,按下“b”键,启动内核

  7.此时系统会只用以root用户登录,通过passwd修改root的密码即可

  问题2:找出通过远程连接方式登录到系统的所有进程

[root@hadoop1 桌面]# ps -ef | grep sshd

root 2290 1 0 15:32 ? 00:00:00 /usr/sbin/sshd

root 3243 2290 0 15:34 ? 00:00:00 sshd: dog [priv]

dog 3248 3243 0 15:34 ? 00:00:00 sshd: dog@pts/1

root 3310 2290 1 15:35 ? 00:00:00 sshd: tiger [priv]

tiger 3314 3310 0 15:35 ? 00:00:00 sshd: tiger@notty

root 3328 2290 1 15:35 ? 00:00:00 sshd: tiger [priv]

tiger 3333 3328 0 15:35 ? 00:00:00 sshd: tiger@notty

root 3348 3184 0 15:35 pts/0 00:00:00 grep sshd

  经过分析,希望将属于dog用户的进程(3243)强制杀掉:

//kill -9 进程编号
[root@hadoop1 桌面]# kill -9 3248
备注:-9表示强制结束该进程

  也可以通过进程名来杀掉多个进程:

//pkill 进程名
[root@hadoop1 桌面]# pkill sshd
备注:该操作会杀掉所有名称为sshd的进程,可能会误杀

  问题3:如何通过端口号来查看对应的进程信息?

lsof -i:端口号

lsof -i:8080

  问题4:文件的打包(压缩)/解包

  gzip/gunzip:用来对文件(非目录)进行打包和解包,生成一个*.zp压缩包

[root@hadoop1 home]# ls
abc.txt log.txt myfolder test
[root@hadoop1 home]# gzip abc.txt
[root@hadoop1 home]# ls
abc.txt.gz log.txt myfolder test
[root@hadoop1 home]# gunzip abc.txt.gz
[root@hadoop1 home]# ls
abc.txt log.txt myfolder test

  zip/unzip:用来对文件或目录进行打包和解包,生成*.zip压缩包

  打包命令zip的使用: zip xxx.zip 文件或目录

[root@hadoop1 home]# zip abc.zip abc.txt
[root@hadoop1 home]# zip -r mf.zip myfolder

  解包命令unzip的使用:unzip xxx.zip -d 目标目录

[root@hadoop1 home]# unzip abc.zip
[root@hadoop1 home]# unzip mf.zip -d test

  tar:该命令可以对文件后目录进行打包和解包,通过选项来进行区别,生成的压缩包名称为*.tar.gz

  常用选项:

z:打包的同时进行压缩

c:打包

x:解包

v:显示详细信息

f:指定打包的文件名

  举例:

  打包:

[root@hadoop1 home]# tar -zcvf mf.tar.gz myfolder

  解包:

[root@hadoop1 home]# tar -zxvf mf.tar.gz //解压到当前目录

[root@hadoop1 home]# tar -zxvf mf.tar.gz -C test //解压到指定的test目录

  问题5:Linux系统中JDK的安装和配置

  步骤:

1.将JDK的安装包上传到Linux系统中,放在/opt目录下

2.通过XFtp工具进行上传

3.解压JDK的安装包

4.使用tar命令进行解压

5.配置环境变量

  为了使JDK的javac和java命令随时可用,需要将该命令所在的bin目录配置到环境变量PATH中,同时需要将JDK的根目录配置到环境变量JAVA_HOME中

  以上两个环境变量的配置在/etc/profile文件中完成:

将以下三行配置追加到/etc/profile文件的末尾
JAVA_HOME=/opt/jdk1.7.0_79
PATH=/opt/jdk1.7.0_79/bin:$PATH
EXPORT JAVA_HOME PATH

  注销用户,重新进入系统

  测试安装是否成功

  在任意目录下,执行javac命令

  编写一个java类文件,使用javac命令进行编译

  问题6:Linux系统中MySQL的安装和配置

  问题7:Linux系统中Tomcat的安装和配置

  步骤:

1.将Tomcat的安装包上传到Linux系统中,放在/opt目录下

2.解压Tomcat安装包

3.在Tomcat的bin目录下,执行./start.sh命令启动Tomcat

4.在Linux服务中通过浏览器访问http://localhost:8080,可看到Tomcat的欢迎页面

  但是,在Window下却无法访问,为什么?

  因为Linux默认对外只开放了22号端口(远程连接),Tomcat所在的8080端口并未开放,导致外部访问该端口时,被防火墙拦截,访问失败

  如何解决?

  修改防火墙配置文件iptables对外开放8080端口,在/etc/sysconfig/iptables配置文件,开放8080端口

#Firewall configuration written by system-config-firewall

#Manual customization of this file is not recommended.

*filter

:INPUT ACCEPT [0:0]

:FORWARD ACCEPT [0:0]

:OUTPUT ACCEPT [0:0]

-A INPUT -m state --state ESTABLISHED,RELATED -j ACCEPT

-A INPUT -p icmp -j ACCEPT

-A INPUT -i lo -j ACCEPT

-A INPUT -m state --state NEW -m tcp -p tcp --dport 22 -j ACCEPT

-A INPUT -m state --state NEW -m tcp -p tcp --dport 8080 -j ACCEPT

//开放8080端口

-A INPUT -j REJECT --reject-with icmp-host-prohibited

-A FORWARD -j REJECT --reject-with icmp-host-prohibited

COMMIT

  执行以下命令,重启防火墙

service iptables restart

  再次尝试windos访问linux系统中的tomcat

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值