精华内容
下载资源
问答
  • )## 今天任务: 1.vmware11的安装(提前安装好) 2.虚拟机的安装(提前安装好) 3.linux系统的目录结构...2.了解linux系统及目录结构 3.熟悉linux的基本命令操作 4.熟练进行环境配置 5.了解基本的用户管理,进程管理命令 6...

    )## 今天任务:

    1.vmware11的安装(提前安装好)

    2.虚拟机的安装(提前安装好)

    3.linux系统的目录结构介绍

    4.linux的基本命令操作

    5.Linux–环境配置

    6.用户管理命令

    7.进程管理命令

    8.权限管理

    教学目标:

    1.能够独立安装虚拟机

    2.了解linux系统及目录结构

    3.熟悉linux的基本命令操作

    4.熟练进行环境配置

    5.了解基本的用户管理,进程管理命令

    6.了解简单的权限设置

    2.1.1 Linux简介

    UNIXLinux****发展史

    Unix在1969年,美国贝尔实验室的肯汤普森在DEC PDP-7机器上开发出了UNIX系统。

    Linux出现于1991年,是由芬兰赫尔辛基大学学生李纳斯·托瓦兹(Linus Torvalds)和后来加入的众多爱好者共同开发完成 。

    Linux****介绍

    Linux是一种自由和开放源码的操作系统,存在着许多不同的Linux发行版本,但它们都使用了Linux内核。

    Linux内核网站:www.kernel.org

    Linux****应用领域**

    Linux企业服务器

    嵌入式系统:Linux可安装在各种计算机硬件设备中,比如手机、平板电脑、路由器、智能家电等嵌入式系统。

    电影娱乐行业:电影后期特效处理。

    Linux****特点

    开源

    多用户,多任务,丰富的网络功能,可靠的系统安全,良好的可移植性,具有标准兼容性,良好的用户界面,出色的速度性能

    服务器不使用图形化界面:

    图形化占用资源

    机房部署方便,无需配置操作界面

    CentOS 社区版

    **主流:**目前的Linux操作系统主要应用于生产环境,主流企业级Linux系统仍旧是RedHat或者CentOS

    免费:RedHat 和CentOS差别不大,CentOS是一个基于Red Hat Linux 提供的可自由使用源代码的企业级Linux发行版本

    更新方便:CentOS独有的yum命令支持在线升级,可以即时更新系统,不像RedHat 那样需要花钱购买支持服务!

    CentOS官网:http://www.centos.org/

    CentOS搜狐镜像:http://mirrors.sohu.com/centos/

    CentOS网易镜像:http://mirrors.163.com/centos/

    基于内核,再增加一些桌面,应用程序,就可以发行,称为开发版。[外链
    在这里插入图片描述

    2.1.2 常用的linux版本

    Linux两大阵营:

    Redhat系列 redhat,suse,CentOS,Fedora等

    Debian系列 debian,ubuntu等

    区别: 命令细微的区别; 安装方式

    Red Hat:RHEL(Redhat Enterprise Linux,也就是所谓的Redhat Advance Server收费版本. 红帽企业级Linux

    Fedora Core:由原来的Redhat桌面版本发展而来,免费版本

    Centos:RHEL的社区克隆版本,免费

    SuSE:最华丽的Linux发行版, 企业服务器端 X windows和程序应用方面做的确实不错。尤其与Microsoft的合作关系,应该是在所有的Linux发行版本中最亲密的。

    Debian运行起来极其稳定,这使得它非常适合用于服务器

    Ubuntu:是Debian的一款衍生版,也是当今最受欢迎的免费操作系统, 最流行的linux桌面系

    Fedora: 想尝试最先进的技术,等不及程序的稳定版出来。其实,Fedora就是红帽公司的一个测试平台;产品在成为企业级发行版之前,在该平台上进行开发和测试。

    2.13 Vmvare的安装

    安装环境:Windows7/win10 , VMware Workstation11或者Parallels Desktop(PD), CentOS 6.6

    VMware介绍

    VMware是一个虚拟PC的软件,可以在现有的操作系统上虚拟出一个新的硬件环境,相当于模拟出一台新的PC ,以此来实现在一台机器上真正同时运行两个独立的操作系统 。

    VMware主要特点:

    1、不需要分区或重新开机就能在同一台PC上使用两种以上的操作系统

    2、本机系统可以与虚拟机系统网络通信

    3、可以设定并且随时修改虚拟机操作系统的硬件环境

    安装注意事项:

    1.安装路径下不能有中文,空格,特殊符号(尽量不要安装在C盘)

    2.如果想要卸载重新安装,双击其安装文件,选择卸载软件,尽量不要手动去删除其安装目录

    3.如果使用手动删除VMware的安装目录进行卸载,要自行删除注册表中VMware12的相关信息

    2.1.4 Centos的安装

    在bios里面设置。inter technology vatuializtion---- enable
    在这里插入图片描述在这里插入图片描述在这里插入图片描述在这里插入图片描述在这里插入图片描述在这里插入图片描述在这里插入图片描述在这里插入图片描述在这里插入图片描述在这里插入图片描述
    在这里插入图片描述在这里插入图片描述在这里插入图片描述在这里插入图片描述在这里插入图片描述在这里插入图片描述在这里插入图片描述在这里插入图片描述在这里插入图片描述在这里插入图片描述在这里插入图片描述在这里插入图片描述在这里插入图片描述在这里插入图片描述在这里插入图片描述在这里插入图片描述在这里插入图片描述
    | 完成 |

    一些学习方法

    转变思维习惯

    图形化界面/鼠标 ===〉 命令/键盘

    Linux 与windows 主要区别:

    Linux严格区分大小写

    Linux中一切皆文件

    Linux 不区分扩展名 扩展名是为了让管理员使用

    不惧英文 勇往直前

    记住常用英文

    command not found Permission denied

    动起来 练习

    多练多练多练

    命令要敲的999,虚拟机环境可以随意折腾

    2.1.5 Linux目录结构

    在这里插入图片描述

    2.16 Linux 各目录的作用

    /bin: (binaries) 存放系统命令的目录,所有用户都可以执行。

    /sbin : (super user binaries) 保存和系统环境设置相关的命令,只有超级用户可以使用这些命令,有些命令可以允许普通用户查看。

    /usr/bin:存放系统命令的目录,所有用户可以执行。这些命令和系统启动无关,单用户模式下不能执行

    /usr/sbin:存放根文件系统不必要的系统管理命令,超级用户可执行

    /root: 存放root用户的相关文件,root用户的家目录。宿主目录 超级用户

    cd:用户缺省宿主目录 eg:/home/spark

    /tmp:(temporary)存放临时文件

    /etc:(etcetera)系统配置文件

    /usr:(unix software resource)系统软件共享资源目录,存放所有命令、库、手册页等

    /proc:虚拟文件系统,数据保存在内存中,存放当前进程信息

    /boot:系统启动目录

    /dev:(devices)存放设备文件

    /sys :虚拟文件系统,数据保存在内存中,主要保存于内存相关信息

    /lib:存放系统程序运行所需的共享库

    /lost+found:存放一些系统出错的检查结果。

    /var:(variable) 动态数据保存位置,包含经常发生变动的文件,如邮件、日志文件、计划任务等

    /mnt:(mount)挂载目录。临时文件系统的安装点,默认挂载光驱和软驱的目录

    /media:挂载目录。 挂载媒体设备,如软盘和光盘

    /misc:挂载目录。 挂载NFS服务

    /opt: 第三方安装的软件保存位置。 习惯放在/usr/local/目录下

    /srv : 服务数据目录

    2.1.7 Vmvare的三种网络连接

    1)子网掩码

    ​ 子网掩码作用:用来指定当前机器属于哪个ip号段的:

    ​ 判断方式:将当前的ip的二进制按位与子网掩码的二进制等于网段地址

    ​ 如: 192.168.1.2 & 255.255.255.0 = 192.168.1.0

    • 互联网DNS服务器的域名访问机制

    在这里插入图片描述

    2)虚拟机网络连接方式

    ​ 安装完虚拟机后,默认安装了如下图的两块虚拟网卡——VMnet1和VMnet8,其中VMnet1是host网卡,用于host方式连接网络;VMnet8是NAT网卡,用于NAT方式连接网络的,并且它们的IP地址是随机生成的。VMware提供了三种工作模式,分别是bridged(桥接模式)、NAT(网络地址转换模式)和host-only(仅主机模式)。

    在这里插入图片描述

    bridged(桥接模式)

    ​ 在这种模式下,使用VMnet0虚拟交换机,虚拟操作系统就像是局域网中的一台独立的主机,与宿主计算机一样,它可以访问网内任何一台机器。在桥接模式下,可以手工配置它的TCP/IP配置信息(IP、子网掩码等,而且还要和宿主机器处于同一网段),以实现通过局域网的网关或路由器访问互联网,还可以将IP地址和DNS设置成“自动获取”。如果你想利用VMWare在局域网内新建一个服务器,为局域网用户提供Web或网络服务,就应该选择桥接模式。

    在桥接模式中,使用VMnet0虚拟交换机,此时虚拟机相当于网络上的一台独立计算机与主机一样,拥有一个独立的IP地址。

    A1、A2、A、B四个操作系统可以相互访问

    A1、A2的IP为“外网”IP,可以手动设置,也可以自动获取

    在这里插入图片描述

    NAT(网络地址转换模式)

    ​ 使用NAT模式,就是让虚拟机借助NAT(网络地址转换)功能,通过宿主机器所在的网络来访问公网。也就是说,使用NAT模式可以实现在虚拟系统里访问互联网。NAT模式下的虚拟机的TCP/IP配置信息是由VMnet8虚拟网络的DHCP服务器提供的,因此IP和DNS一般设置为“自动获取”,因此虚拟系统也就无法和本局域网中的其他真实主机进行通讯。采用NAT模式最大的优势是虚拟系统接入互联网非常简单,你不需要进行任何其他的配置,只需要宿主机器能访问互联网即可。如果你想利用VMWare安装一个新的虚拟系统,在虚拟系统中不用进行任何手工配置就能直接访问互联网,建议你采用NAT模式。

    NAT模式中使用Vmnet8虚拟交换机,此时虚拟机可以通过主机“单向访问”网络上的其他主机,其他主机不能访问虚拟机。

    在这里插入图片描述

    host-only(主机模式)

    ​ Host-Only模式其实就是NAT模式去除了虚拟NAT设备,然后使用VMware Network Adapter VMnet1虚拟网卡连接VMnet1虚拟交换机来与虚拟机通信的,Host-Only模式将虚拟机与外网隔开,使得虚拟机成为一个独立的系统,只与主机相互通讯。其网络结构如下图所示:

    如果要使得虚拟机能联网,我们可以将主机网卡共享给VMware Network Adapter VMnet1网卡,从而达到虚拟机联网的目的。

    [外链图片转存失败(img-adM3BzO0-1567302761205)(only.png)]

    2.1.8 帮助命令

    **命令格式:**命令 [-选项][参数] 参数

    如:ls -la /usr

    说明:

    大部分命令遵从该格式

    多个选项时,可以一起写 eg:ls –l –a  ls –la

    简化选项与完整选项(注:并非所有选项都可使用完整选项) eg:ls –all  ls –a

    帮助命令**:(相当于命令说明书)
    man

    英文:manual 命令路径:/usr/bin/man 执行权限:所有用户

    作用:获取命令或配置文件的帮助信息

    语法:man [命令/配置文件]

    eg:man ls man services

    (查看配置文件时,不需要配置文件的绝对路径,只需要文件名即可)

    调用的是more命令来浏览帮助文档,按空格翻下一页,按回车翻下一行,按q退出。

    help

    help 查看shell内置命令的帮助信息

    eg:help cd

    命令名 –help

    命令名 --help 列举该命令的常用选项

    eg: cp —help

    2.1.9 操作文件目录命令

    cd

    英文:change directory 命令路径:内部命令 执行权限:所有用户

    cd : 切换工作目录**

    cd -:回到上一次的操作所在位置
    cd ~:回到用户家目录
    cd ./ :当前目录
    cd …/:回到上一级目录
    cd :回到用户家目录

    ls 查看目录 ls + 选项 + 目录名

    英文:list 命令路径:/bin/ls 执行权限:所有用户

    ll 等价于ls -l
    -l 列表形式显示 #ls -l /bin 查看根目录下的bin目录下的所有文件或目录以列表的形式查看
    -a 所有文件或目录包括隐藏文件 #ls -a /bin 查看根目录下的bin目录下的所有文件或目录包含隐藏文件
    -h 以可读的方式显示文件大小 #ls -h /bin 查看根目录下的bin目录下的所有文件或目录(显示文件大小单 位,如M,KB等)

    pwd

    英文:print working directory 命令路径:/bin/pwd 执行权限:所有用户

    作用:显示当前工作目录

    linux下的路径:

    pwd:打印当前工作目录(全目录)
    绝对路径:以根目录为开始的目录
    相对路径:相对当前目录的路径

    语法:pwd [-LP]

    eg:# cd /etc/init.d

    #pwd [-P]

    mkdir

    英文:make directories 命令路径:/bin/mkdir 执行权限:所有用户

    作用:创建新目录

    语法:mkdir [-p] 目录名

    -p 父目录不存在情况下先生成父目录 (parents)

    eg: mkdir linux/test 如果目录linux不存在,则报错,使用参数-p即可自动创建父目录

    date命令是显示或设置系统时间与日期。

    查看系统时间

    date
    date +’%Y-%m-%d %H:%M:%S’ 注意:+与字符串之间不能有空格

    设置时间

    date -s “2015-5-8 19:48:00”

    同步到bios,重启之后才能继续生效

    hwclock -w

    touch

    命令路径:/bin/touch 执行权限:所有用户

    作用:创建空文件或更新已存在文件的时间

    语法:touch 文件名

    eg:touch a.txt b.txt touch {a.txt,b.txt} 同时创建多个文件,注意:后面{}中,中间不能有空格

    创建带空格的文件 eg:touch “program files”

    注意:生产环境中,文件名,一定不要加空格

    cp

    英文:copy 命令路径:/bin/cp 执行权限:所有用户

    作用:复制文件或目录

    语法:cp [–rp] 源文件或目录 目的目录

    -r -R recursive 递归处理,复制目录

    -p 保留文件属性 (原文件的时间不变)

    eg:

    1,相对路径 cp –R /etc/* .

    2,,绝对路径 cp –R **/**ect/service /root/test/aa/bb

    mv

    英文:move 命令路径:/bin/mv 执行权限:所有用户

    作用:移动文件或目录、文件或目录改名

    语法:mv 源文件或目录 目的目录

    rm

    英文:remove 命令路径:/bin/rm 执行权限:所有用户

    作用:删除文件

    语法: rm [-rf] 文件或目录

    -r (recursive)删除目录,同时删除该目录下的所有文件

    -f(force) 强制删除文件或目录 即使原档案属性设为唯读,亦直接删除,无需逐一确认

    注意:工作中,谨慎使用****rm –rf 命令。

    2.1.10 查看命令

    cat

    英文:concatenate 命令路径:/bin/cat 执行权限:所有用户

    作用:显示文件内容

    语法:cat [-n] [文件名]

    ​ -A 显示所有内容,包括隐藏的字符

    ​ -n 显示行号

    eg:cat /etc/services

    more

    命令路径:/bin/more 执行权限:所有用户

    作用:分页显示文件内容

    语法:more [文件名]

    空格或f 显示下一页

    Enter键 显示下一行

    q或Q 退出

    head

    命令路径:/usr/bin/head 执行权限:所有用户

    作用:查看文件前几行(默认10行)

    语法:head [文件名]

    ​ -n 指定行数

    eg:head -20 /etc/services head –n 3 /etc/services

    tail

    命令路径:/usr/bin/tail 执行权限:所有用户

    作用:查看文件的后几行

    语法:tail [文件名]

    -n 指定行数

    获取一个大文件的部分文件,可使用head或tail命令

    head -n 100 /etc/services >config.log

    ln

    英文: link 命令路径:/bin/ln 执行权限:所有用户

    作用:产生链接文件

    语法:

    ln -s [源文件][目标文件] 创建软链接 源文件 使用 绝对路径

    ln [源文件] [目标文件] 创建硬链接

    eg:ln -s /etc/service ./service.soft

    创建文件/etc/service的软链接service.soft

    eg:ln /etc/service /service.hard

    创建文件/etc/service的硬链接/service.hard

    软连接类似于windows下的快捷方式

    软连接文件格式:

    lrwxrwxrwx. 1 root root 13 Jul 20 07:50 service -> /etc/services

    1. 硬链接数量,如果该文件没有硬链接,就只有本身一个硬链接。

    13链接文件的长度

    格式解析(特征):

    1, 软连接的文件类型是 l(软连接),软连接文件的权限 都是 lrwxrwxrwx

    2,-> 箭头指向到源文件

    真正的权限取决于对源文件的权限

    时间值为创建软连接的时间

    软连接可以跨文件系统生成

    硬链接特征

    1,相当于 cp -p +同步更新

    2,通过i节点识别,与源文件有相同的inode节点

    3,硬链接不能跨分区,ln /home/test/issuels /boot/test (错误)

    4,不能针对目录使用 ln /tmp/ aa.hard (无法将目录/tmp 生成硬链接)

    删除软连接

    rm -rf symbolic_name

    inode说明:

    Linux文件系统中的inode主要用于存放档案和目录的基本信息,当系统创建文件系统的同时会创建大量的inode


    2.1.11 搜索查找命令

    find

    命令路径:/bin/find 执行权限:所有用户

    作用:查找文件或目录

    语法:find [搜索路径][匹配条件]

    如果没有指定搜索路径,默认从当前目录查找

    find命令选项

    -name 按名称查找 精准查找

    eg:find /etc -name “init” 在目录/etc中查找文件init

    -iname 按名称查找 不区分大小写5

    find查找中的字符匹配:

    *:匹配所有

    ?:匹配单个字符

    eg:find /etc -name “init???” 在目录/etc中查找以init开头的,且后面有三位的文件

    模糊匹配的条件,建议使用单引号或双引号括起来。如果*被转义,可使用 单双引号括住查询条件,或者使用*。

    eg: # find . –name *g

    -size 按文件大小查找

    以block为单位,一个block是512B, 1K=2block +大于 -小于 不写是等于

    eg:find /etc -size -204800 在etc目录下找出小于100MB的文件

    100MB=102400KB=204800block

    -type 按文件类型查找

    f 二进制文件 l 软连接文件 d 目录 c 字符文件

    eg: find /dev -type c

    find****查找的基本原则

    占用最少的系统资源,即查询范围最小,查询条件最精准

    eg:

    如果明确知道查找的文件在哪一个目录,就直接对指定目录查找,不查找根目录/

    grep****命令

    命令路径:/bin/grep 执行权限:所有用户

    作用:在文件中搜寻字符串匹配的行并输出

    语法:grep [-cinv] ‘搜寻字符串’ filename

    选项与参数:

    -c :输出匹配行的次数(是以行为单位,不是以出现次数为单位)

    -i :忽略大小写,所以大小写视为相同

    -n :显示匹配行及行号

    -v :反向选择,显示不包含匹配文本的所有行。

    eg:grep ftp /etc/services

    eg:#grep -v ^# /etc/inittab 去掉文件行首的#号

    eg:# grep -n “init”/etc/inittab 显示在inittab文件中,init匹配行及行号

    eg:# grep -c“init”/etc/inittab 显示在inittab文件中,init匹配了多少次

    which

    命令路径:/usr/bin/which 执行权限:所有用户

    作用:显示系统命令所在目录(绝对路径及别名)

    which命令的作用是,在PATH变量指定的路径中,搜索某个系统命令的位置,并且返回第一个搜索结果。也就是说,使用which命令,就可以看到某个系统命令是否存在,以及执行的到底是哪一个位置的命令

    # which ls

    alias ls=‘ls --color=auto’

    ​ /bin/ls

    # which zs

    /usr/bin/which: no zs in (/usr/local/bin:/usr/bin:/bin:/usr/local/sbin:/usr/sbin:/sbin:/home/ch/bin)

    whereis

    命令路径:/usr/bin/whereis 执行权限:所有用户

    作用:搜索命令所在目录 配置文件所在目录 及帮助文档路径

    eg: which passwd 和 whereis passwd

    eg:查看/etc/passwd配置文件的帮助,就用 man 5 passwd

    2.1.12 打包压缩命令

    gzip

    英文:GNU zip 命令路径:/bin/gzip 执行权限:所有用户

    作用:压缩(解压)文件,压缩文件后缀为.gz

    gzip只能压缩文件,不能压缩目录;不保留原文件

    语法:gzip 文件

    -d将压缩文件解压(decompress)

    解压使用gzip –d或者 gunzip

    bzip2

    命令路径:/usr/bin/bzip2 执行权限:所有用户

    作用:压缩**(解压)文件,压缩文件后缀为.bz2**

    语法:bzip2 [-k][文件]

    -k:产生压缩文件后保留原文件(压缩比高)

    -d 解压缩的参数(decompress)

    解压使用bzip2 –d或者 bunzip2

    zip

    命令路径:/usr/bin/zip 执行权限:所有用户

    作用:压缩**(解压)文件,压缩文件后缀为.zip**

    语法:zip 选项[-r][压缩后文件名称] [文件或目录]

    -r压缩目录

    eg:zip services.zip /etc/services 压缩文件;

    zip -r test.zip /test 压缩目录

    如果不加-r选项,压缩后的文件没有数据。

    解压使用unzip

    tar

    命令路径:/bin/tar 执行权限:所有用户

    作用:文件、目录打(解)包

    语法:tar [-zcf] 压缩后文件名 文件或目录

    -c 建立一个压缩文件的参数指令(create),后缀是.tar

    -x 解开一个压缩文件的参数指令(extract)

    -z 以gzip命令压缩/解压缩

    -j 以bzip2命令压缩/解压缩

    -v 压缩的过程中显示文件(verbose)

    -f file 指定文件名,必选项

    1. 单独的打包 ,解包 tar –cf tar –xf
    2. 打包之后,进行压缩 gzip bzip2
    3. 一步到位 tar –zcvf tar -zxvf

    tar -cf -xf 单独 压缩 解压缩

    tar -z 以gzip打包目录并压缩 文件格式.tar.gz(.tgz)

    tar -j 以bzip2打包目录并压缩 文件格式.tar.bz2

    eg:tar -zcvf dir1.tar.gz dir1 使用gzip将目录dir1压缩成一个打包并压缩文件dir1.tar.gz

    ​ tar -zxvf dir1.tar.gz -C(大写的) /root 解压到指定的/root目录

    eg: tar -cvf bak.tar . 将当前目录的文件打包为bak.tar

    eg: tar -xvPf bak.tar 解压到当前目录,默认是相对路径,P意思是支持绝对路径,

    eg:tar -cvPf bak.tar /a/b 将/a/b路径压缩成bak.tar,

    eg: tar -zcvf bak.tar.gz bak.tar 或 gzip bak.tar 使用gzip将打包文件bak.tar压缩为bak.tar.gz

    eg: tar -jcvf bak.tar.bz2 bak.tar 或 bzip2 bak.tar 使用bzip2将打包文件bak.tar压缩为bak.tar.bz2

    eg: tar -rvf bak.tar /etc/password 将/etc/password追加文件到bak.tar中®

    eg:tar -cjvf test.tar.bz2 test 生成test.tar.bz2的压缩文件

    eg:tar -xjf test.tar.bz2 解压

    最常用: tar + gzip

    tar –zcvf 压缩

    tar –zxvf 解压

    补充:

    源文件是保留的,不会被删除

    2.1.13 系统关机命令

    shutdown [选项] 时间

    选项: -c: 取消前一个关机命令

    -h:关机

    -r:重启

    eg:

    shutdown -h now 立即关机 shutdown -h 20:30 定时关机

    其他关机命令 halt poweroff init 0

    重启命令

    reboot 重启系统 reboot -h now 立即重启

    init 6

    注意:生产环境中,关机命令和重启命令谨慎执行。

    其他命令:

    查看系统版本信息 uname -r

    查看命令中的路径 basename a/b/c/test.txt

    显示:test.txt

    查看命令中的名字 dirname a/b/c/test.txt

    显示:a/b/c/

    切换执行等级:

    linux有七种执行等级:init

    init 0 :关机

    init 3:纯文本模式

    init 6:重新启动

    2.1.14 Linux的快捷键命令

    善于查看man help等帮助文档

    利用好Tab键 自动补全

    掌握好一些快捷键

    ctrl + c(停止当前进程)

    ctrl + z 挂起当前进程,放后台

    ctrl + r(查看命令历史) history

    ctrl + l(清屏,与clear命令作用相同)

    对当前命令行的操作:

    方向箭头 上 下 可以查看执行过的命令并再次使用

    ctrl + a 行首 ctrl + e 行尾 ctrl+d 清除当前的字符

    ctrl + k 清除光标后面的内容 ctrl+ w 清除光标前面的单词

    小技巧: linux 不进去系统更改root密码

    1.开机时按’e’键进入grub
    2.在grub选项菜单按e进入编辑模式
    3.编辑kernel那行 输入” 1”(空格1),然后按enter键。
    4.按b重启
    5.进入后执行下列命令

    ​ passwd root

    passwd root (配置root的密码)——>Enter new unix password:输入新的密码——>init 6

    2.1.15 vim编辑器

    vim/vi是Unix / Linux上最常用的文本编辑器而且功能非常强大。

    只有命令,没有菜单。

    VIM****工作模式
    在这里插入图片描述

    命令模式:又称一般模式

    编辑模式:又称底行模式,命令行模式

    插入命令

    命令 作用
    a 在光标后附加文本
    A(shift + a) 在本行行末附加文本 行尾
    i 在光标前插入文本
    I(shift+i) 在本行开始插入文本 行首
    o 在光标下插入新行
    O(shift+o) 在光标上插入新行

    定位命令

    命令 作用
    :set nu 设置行号
    :set nonu 取消行号
    gg G 到第一行 到最后一行
    nG 到第n行
    :n 到第n行

    保存和退出命令

    命令 作用
    :w 保存修改
    :w new_filename 另存为指定文件
    :w >> a.txt 内容追加到a.txt文件中 文件需存在
    :wq 保存修改并退出
    shift+zz(ZZ) 快捷键,保存修改并退出
    :q! 不保存修改退出
    :wq! 保存修改并退出(文件所有者可忽略文件的只读属性)

    不保存并退出:

    1. 有修改,但是修改后的内容是不保存的
    2. 有突发情况,导致窗口退出。修改文件之后,直接删除同名的.swp文件

    删除命令

    命令 作用
    x 删除光标所在处字符 nx 删除光标所在处后n个字符
    dd 删除光标所在行,ndd删除n行
    :n1,n2d 删除指定范围的行(eg :1,3d 删除了123这三行)
    dG 删除光标所在行到末尾的内容
    D 删除从光标所在处到行尾

    复制和剪切命令

    命令 作用
    yy、Y 复制当前行
    nyy、nY 复制当前行以下n行
    dd 剪切当前行
    ndd 剪切当前行以下n行
    p、P 粘贴在当前光标所在行下 或行上

    替换和取消命令

    命令 作用
    r 取代光标所在处字符
    R(shift + r) 从光标所在处开始替换字符,按Esc结束
    u undo,取消上一步操作
    ctrl+r redo,返回到undo之前

    搜索和替换命令

    命令 作用
    /string 向后搜索指定字符串
    ?string 向前搜索指定字符串
    n 搜索字符串的下一个出现位置,与搜索顺序相同
    N(Shift + n) 搜索字符串的上一个出现位置,与搜索顺序相反
    :%s/old/new/g 全文替换指定字符串
    :n1,n2s/old/new/g 在一定范围内替换指定字符串

    % 指全文,s 指开始,g 指全局替换

    ​ 起始行,终止行s/要替换的字符串/替换的新的字符串/g c 询问确认

    ​ eg: :%s/ftp/yang/g 全局替换,把ftp替换为yang

    ​ eg: :41,44/yang/lee/c 从41行到44行,把yang替换为lee,询问是否替换

    ​ eg: :41,44/yang/lee/g 同上,不询问,直接替换

    ​ eg: :%s//root//ROOT/g 把/root替换为/ROOT

    ​ eg: :%s#/bin/bash#/bin/ksh/g 把/bin/bash全部替换为/bin/ksh

    使用替换命令来添加删除注释

    :% s/^/#/g 来在全部内容的行首添加 # 号注释

    :1,10 s/^/#/g 在1~10 行首添加 # 号注释

    vi里面怎么查命令??

    :!which cp

    vi里面怎么导入命令的结果?

    :r !which cp

    I或者O进入插入模式。

    2.1.6 Sudo权限的配置

    见扩展:sudo权限

    2.1.7 防火墙、网络、服务启停命令

    修改ip地址

    1,图形化界面

    2,修改配置文件(以网络方式为NAT示例)

    vi /etc/sysconfig/network-scripts/ifcfg-eth0

    BOOTPROTO=static

    ONBOOT=yes

    IPADDR=192.168.2.129

    NETMASK=255.255.255.0 或者 PREFIX=24

    GATEWAY=192.168.2.2 #网段2任意,IP地址2固定,网段为vmnet8的设置的IP网段

    DNS1=114.114.114.114 国内的DNS

    DNS2=8.8.8.8 谷歌的DNS

    重启网络生效:

    service network restart

    网络通信命令

    ping

    命令路径:/bin/ping 执行权限:所有用户

    作用:测试网络的连通性

    语法:ping 选项 IP地址

    -c 指定发送次数

    ping 命令使用的是icmp协议,不占用端口

    eg: # ping -c 3 127.0.0.1

    ifconfig

    英文:interface configure 命令路径:/sbin/ifconfig 执行权限:root

    作用:查看和设置网卡网络配置

    语法:ifconfig [-a][网卡设备标识]

    -a:显示所有网卡信息

    ifconfig [网卡设备标识] IP地址 修改ip地址

    netstat

    英文:network statistics 命令路径:/bin/netstat 执行权限:所有用户

    作用:主要用于检测主机的网络配置和状况

    -a all显示所有连接和监听端口

    -t (tcp)仅显示tcp相关选项

    -u (udp)仅显示udp相关选项

    -n 使用数字方式显示地址和端口号

    -p 显示socket的PID和进程的名字

    -l (listening) 显示监控中的服务器的socket

    eg:# netstat -tlnu 查看本机监听的端口

    tcp 0 0 0.0.0.0:111 0.0.0.0:* LISTEN

    协议 待收数据包 待发送数据包 本地ip地址:端口 远程IP地址:端口

    # netstat –antpl

    netstat -ntlp | grep httpd 查看某一个程序的端口信息

    netstat -atnp | grep httpd

    netstat -atnp | grep 80 查看端口

    修改主机名

    临时生效:

    hostname 主机名

    [外链图片转存失败(img-uxReO7RS-1567302761207)(image-20190428011725205.png)]

    注意:通过调用logout先退出,再登录—写入内存

    永久生效:修改配置文件

    vim /etc/sysconfig/network

    [外链图片转存失败(img-cudjeKQO-1567302761208)(image-20190428011731065.png)]

    修改映射关系

    修改主机名和ip地址之间的映射关系

    vim /etc/hosts

    192.168.2.120 node-1.edu.cn node-1

    可配置别名

    [外链图片转存失败(img-0Rx0vI8v-1567302761209)(image-20190428011742186.png)]

    2.1.18 磁盘的操作命令

    df****命令

    作用:用于查看Linux文件系统的状态信息,显示各个分区的容量、已使用量、未使用量及挂载点等信息。看剩余空间

    语法:df [-hkam][挂载点]

    -h(human-readable)根据磁盘空间和使用情况 以易读的方式显示 KB,MB,GB等
    -k  以KB 为单位显示各分区的信息,默认

    -m 以MB为单位显示信息
    -a  显示所有分区包括大小为0 的分区

    du****命令

    作用:用于查看文件或目录的大小(磁盘使用空间)

    语法:du [-ahs][文件名目录]

    ​ -a 显示子文件的大小

    ​ -h以易读的方式显示 KB,MB,GB等

    ​ -s summarize 统计总占有量

    eg:
    du -a(all) /home  显示/home 目录下每个子文件的大小,默认单位为kb

    du -h /home 以K,M,G为单位显示/home 文件夹下各个子目录的大小

    du -sh /home  以常用单位(K,M,G)为单位显示/home 目录的总大小 -s summarize

    df命令和du命令的区别:

    df命令是从文件系统考虑的,不仅考虑文件占用的空间,还要统计被命令或者程序占用的空间。

    du命令面向文件,只计算文件或目录占用的空间。

    #df –h /

    #du –sh /

    free

    作用:查看内存及交换空间使用状态

    语法: free [-kmg]

    选项:

    -k: 以KB为单位显示,默认就是以KB为单位显示

    -m: 以MB为单位显示

    -g: 以GB为单位显示

    清理缓存命令:

    echo 1 > /proc/sys/vm/drop_caches

    2.1.19 用户与组的创建和删除

    useradd

    添加用户

    语法:useradd [选项] 用户名

    passwd

    修改密码命令

    语法:passwd [选项][用户名]

    用户密码:生产环境中,用户密码长度8位以上,设置大小写加数字加特殊字符,要定期更换密码。

    ys^h_L9t

    userdel

    删除用户

    -r 删除账号时同时删除宿主目录(remove)

    注意:一个用户已经打开,需要删除

    做法:先跳到当前用户下面,执行exit 或 exit 用户名。这时会自动跳回root界面。

    如果还是无法删除,可以将系统重启

    添加组:groupadd

    -g 指定gid

    修改组:groupmod

    -n 更改组名(new group)
    groupmod -n new_gname old_gname

    删除组:groupdel

    如果要删除的组归属于某一个用户的所属组,则不能删除该组

    useradd -g hadoop hdfs

    groupdel hadoop

    groups
    显示用户所属组

    2.1.20 进程管理命令

    进程和程序的区别:

    1、程序是静态概念,本身作为一种软件资源长期保存;而进程是程序的执行过程,它是动态概念,有一定的生命期,是动态产生和消亡的。

    2、程序和进程无一一对应关系。一个进程在活动中可有顺序地执行若干个程序。

    进程和线程的区别:

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

    线程: 轻量级的进程;进程有独立的地址空间,线程没有;线程不能独立存在,它由进程创建;相对讲,线程耗费的cpu和内存要小于进程。

    进程管理的作用?

    判断服务器的健康状态

    查看系统所有的进程

    杀死进程

    ps****命令

    作用:查看系统中的进程信息

    语法:ps [-auxle]

    常用选项

    ​ a:显示所有用户的进程

    ​ u:显示用户名和启动时间

    ​ x:显示没有控制终端的进程

    ​ e:显示所有进程,包括没有控制终端的进程

    ​ l:长格式显示

    查看系统中所有进程

    # ps aux #查看系统中所有进程,使用BSD操作系统格式,unix

    # ps -le #查看系统中所有进程,使用Linux标准命令格式

    ps应用实例
    # ps -u or ps -l 查看隶属于自己进程详细信息

    # ps aux | grep sam 查看用户sam执行的进程
    # ps -ef | grep init 查看指定进程信息

    pstree

    **作用:**查看当前进程树

    语法:pstree [选项]

    ​ -p 显示进程PID

    ​ -u 显示进程的所属用户

    top

    作用:查看系统健康状态

    显示当前系统中耗费资源最多的进程,以及系统的一些负载情况。

    语法:top [选项]

    ​ -d 秒数,指定几秒刷新一次,默认3秒(动态显示)

    kill

    作用:关闭进程

    语法:kill [-选项] pId

    kill -9 进程号(强行关闭) 常用

    kill -1 进程号(重启进程)

    2.1.21 文件权限命令

    三种基本权限

    r 读权限(read)

    w 写权限(write)

    x 执行权限 (execute)

    权限说明

    [外链图片转存失败(img-DJ1hfyJu-1567302761211)(image-20190428011835316.png)]

    所有者 所属组 其他人

    第1位:文件类型(d 目录,- 普通文件,l 链接文件)

    第2-4位:所属用户(所有者)权限,用u(user)表示

    第5-7位:所属组权限,用g(group)表示

    第8-10位:其他用户(其他人)权限,用o(other)表示

    第2-10位:表示所有的权限,用a(all)表示

    例如:-rw-r–r--. 1 root root 3664 Nov 30 17:42 CentOS-Vault.repo.bak

    第十一位的1代表硬链接数

    字符 权限 对文件的含义 对目录的含义
    r 读权限 可以查看文件内容 可以列出目录的内容(ls)
    w 写权限 可以修改文件内容 可以在目录中创建删除文件( mkdir,rm )
    x 执行权限 可以执行文件 可以进入目录(cd)

    文件:

    r-cat,more,head,tail,less

    w-echo,vi

    x-命令,脚本

    目录:

    r-ls

    w-touch,mkdir,rm,rmdir

    x-cd

    能删除文件的权限是对该文件所在的目录有wx权限。

    权限更改**-chmod**

    英文:change mode (change the permissions mode of a file)

    作用:改变文件或目录权限

    语法:

    chmod [{ugoa}{±=}{rwx}][文件名或目录]

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

    ​ 参数:-R 下面的文件和子目录做相同权限操作(Recursive递归的)

    思考:一个文件的权限谁可以更改?

    root

    文件所有者

    例如:chmod u+x a.txt

    chmod u+x,o-x a.txt

    用数字来表示权限(r=4,w=2,x=1,-=0)

    ​ 例如:chmod 750 b.txt

    rwx和数字表示方式能随意切换

    注意:root用户是超级用户,不管有没有权限,root都能进行更改。用普通用户测试权限。

    不能用一个普通用户去修改另一个普通用户的权限。

    更改所有者**-chown**

    英文:change file ownership

    作用:更改文件或者目录的所有者

    语法 : chown user[:group] file…

    -R : 递归修改

    参数格式 :

    user : 新的档案拥有者的使用者 ID

    group : 新的档案拥有者的使用者群体(group)

    eg:#chown lee file1 把file1文件的所有者改为用户lee

    eg:#chown lee:test file1 把file1文件的所有者改为用户lee,所属组改为test

    eg:#chown –R lee:test dir 修改dir及其子目录的所有者和所属组

    改变所属组****chgrp

    英文:change file group ownership

    作用:改变文件或目录的所属组

    语法 : chgrp [group] file…

    eg:chgrp root test.log 把test.log的所属组修改为root

    ov 30 17:42 CentOS-Vault.repo.bak

    第十一位的1代表硬链接数

    字符 权限 对文件的含义 对目录的含义
    r 读权限 可以查看文件内容 可以列出目录的内容(ls)
    w 写权限 可以修改文件内容 可以在目录中创建删除文件( mkdir,rm )
    x 执行权限 可以执行文件 可以进入目录(cd)

    文件:

    r-cat,more,head,tail,less

    w-echo,vi

    x-命令,脚本

    目录:

    r-ls

    w-touch,mkdir,rm,rmdir

    x-cd

    能删除文件的权限是对该文件所在的目录有wx权限。

    权限更改**-chmod**

    英文:change mode (change the permissions mode of a file)

    作用:改变文件或目录权限

    语法:

    chmod [{ugoa}{±=}{rwx}][文件名或目录]

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

    ​ 参数:-R 下面的文件和子目录做相同权限操作(Recursive递归的)

    思考:一个文件的权限谁可以更改?

    root

    文件所有者

    例如:chmod u+x a.txt

    chmod u+x,o-x a.txt

    用数字来表示权限(r=4,w=2,x=1,-=0)

    ​ 例如:chmod 750 b.txt

    rwx和数字表示方式能随意切换

    注意:root用户是超级用户,不管有没有权限,root都能进行更改。用普通用户测试权限。

    不能用一个普通用户去修改另一个普通用户的权限。

    更改所有者**-chown**

    英文:change file ownership

    作用:更改文件或者目录的所有者

    语法 : chown user[:group] file…

    -R : 递归修改

    参数格式 :

    user : 新的档案拥有者的使用者 ID

    group : 新的档案拥有者的使用者群体(group)

    eg:#chown lee file1 把file1文件的所有者改为用户lee

    eg:#chown lee:test file1 把file1文件的所有者改为用户lee,所属组改为test

    eg:#chown –R lee:test dir 修改dir及其子目录的所有者和所属组

    改变所属组****chgrp

    英文:change file group ownership

    作用:改变文件或目录的所属组

    语法 : chgrp [group] file…

    eg:chgrp root test.log 把test.log的所属组修改为root

    展开全文
  • 提示:文章写后,目录可以自动生成,如何生成可参考右边的帮助文档 文章目录学习内容一、VMware Workstation1.下载地址2.VMware Workstation的使用二、理解Linux分区1.磁盘分区2.二种分区形式3.分区的类型4.格式...


    学习内容

    1. 下载安装VMware Workstation
    2. 了解Linux的分区
    3. 下载安装linux
    4. 网络配置与远程登录管理工具
    5. 程序员需要学习Linux的知识

    一 VMware Workstation

    最常见的虚拟机软件,必备工具。

    1.下载地址

    https://pan.baidu.com/s/1rGxOj7dNzkULDfL9b8G77Q
    提取码:xe8i

    建议使用VMware Workstation 10

    2.VMware Workstation的使用

    1. 若你使用的是家庭版windows10请使用管理员身份打开

    在这里插入图片描述

    2.创建虚拟机
    在这里插入图片描述

    3.选择典型安装
    3.自定义安装![在这里插入图片描述](https://img-blog.csdnimg.cn/20200924201212600.png?x-oss-process=image/watermark,type_ZmFuZ3poZW5naGVpdGk,shadow_10,text_aHR0cHM6Ly9ibG9nLmNzZG4ubmV0L3dlaXhpbl80NzQ5NTY1MA==,size_16,color_FFFFFF,t_70#pic_center

    4.选择稍后安装

    在这里插入图片描述
    5.选择操作系统

    在这里插入图片描述
    6.修改虚拟机名称和位置
    在这里插入图片描述

    7.分配磁盘
    默认的20G足以在这里插入图片描述
    建议使用默认的20G,足以日常使用

    8.完成

    在这里插入图片描述
    这样就创建了一个虚拟机。最后根据自己实际情况选择内存,处理器。

    二 理解Linux分区

    1.磁盘分区

    将大硬盘按照逻辑分成一个一个的“小硬盘”,让数据存储和使用更方便。

    2.二种分区形式

    1.MBR分区表(主引导记录分区表):最大支持2.1TB的硬盘,最多支持4个分区
    2.GPT分区表(全局唯一标示分区表):支持9.4ZB的硬盘,支持无限分区

    3.分区的类型

    主分区:最多支持4个
    扩展分区:最对支持1个
    注意:主分区+扩展分区最多只能有4个
    扩展分区不能写数据,只能包含逻辑分区(多个,数量根据硬盘接口)

    4.格式化

    格式化即逻辑格式化,根据用户选择的文件系统(FAT16,FAT32,NTFS,EXT2,EXT4),在磁盘的特定区域写入特定的数据,在分区划出一片用于存放文件的分配表,目录等文件管理的磁盘空间。

    5.分区设备文件名

    1.设备的文件名
    /dev/hda1(IDE硬盘接口)
    /dev/sda1(SCSI硬盘接口,SATA硬盘接口,usb)

    /(根目录) dev(一级目录,放着所有的文件名,)
    hd和sd代表着硬盘的接口,个人电脑一般用的是SATA硬盘,a代表第一块硬盘,1代表第一个分区
    sda5:
    意思是第一块硬盘的第一个逻辑分区
    (逻辑分区无论怎么分都是从第5分区开始)

    6.挂载点

    已存在的空目录才能做为挂载点

    1.进入分区访问数据的入口

    7. 挂载

    1.必须分区
    ① /(根分区)
    ②swap(交换分区)
    ③/boot (启动分区)

    2.常用分区
    /home(用于文件服务器)
    /www(用于web服务器)

    注意:所有的空目录,包括新建的目录都可以作为挂载点,但是/bin/ , /lib/ , /etc/ 只能放在/目录下

    三 Linux下载和安装

    下载地址

    https://www.centos.org/

    1.选择你需要的版本
    在这里插入图片描述

    为了追求稳定,我这里下载的是6.10版本

    2.下载节点

    在这里插入图片描述

    在这里插入图片描述
    建议选择DVD1

    安装

    1.安装界面
    在这里插入图片描述
    2.选择语言
    在这里插入图片描述
    3.选择键盘
    在这里插入图片描述
    4.选择存储设备
    在这里插入图片描述
    5.格式化硬盘
    在这里插入图片描述
    请选择是

    6.输入主机名
    在这里插入图片描述
    7.选择时区
    在这里插入图片描述
    8.输入密码
    在这里插入图片描述
    9.根据需求选择,建议自定义
    在这里插入图片描述
    10。分区
    在这里插入图片描述
    点击空闲再点击创建,选择标准分区

    11.创建/home挂载点
    在这里插入图片描述
    12.再创建/boot分区
    在这里插入图片描述
    注意:理论上谁先分区,谁就是sda1,但/boot不同,/boot无论何时创建都是sda1

    在这里插入图片描述
    13.创建swap分区
    在这里插入图片描述
    swap没有挂载点,它是由Linux内核访问的

    14.创建/分区(根分区)
    在这里插入图片描述
    这里将剩余的空间给根分区。
    在这里插入图片描述
    这里为什么是sda5?
    因为每块硬盘只能有4个分区,当你创建第四个分区时,系统不确定你是否会分更多的分区,所以系统自动变成扩展分区,然后在里面创建逻辑分区。

    15.点击下一步,进行格式化在这里插入图片描述
    16.这里下一步在这里插入图片描述
    17.选择安装
    在这里插入图片描述
    18.点击下一步,等待安装完成
    在这里插入图片描述

    四 网络配置与远程登陆管理工具

    1.登陆Linux

    在这里插入图片描述
    第一次登陆应该是这个界面,注意的是,linux与win10的不同的是,win10输入密码一般都有※号,而linux输入密码是没有显示的。初学者容易很懵逼,比如我。。。。

    2.配置网络IP

    1.setup命令:这是RedHat特有的工具,CentOS7的命令是nmtui
    选择选择Network conf iguration(网络配置)

    在这里插入图片描述

    2.选择device configuration(设备配置)
    在这里插入图片描述
    3.配置网卡
    在这里插入图片描述
    centOS 6之前网卡都是eth,centOS 7的网卡命名会与我有所不同

    4.开启On boot
    在这里插入图片描述
    *号代表开启的意思,你需要把On boot给勾选上。
    Use IP意思是自动获取ip的意思,你可以自己手动配ip。

    5.保存退出

    6.重启网络服务
    命令:service network restart

    注意:Linux不会帮你自动重启,需要你手动重启。

    在这里插入图片描述

    查看Ip地址命令:ifconfig

    在这里插入图片描述
    看到eth0就代表配好了

    7.修改虚拟机的网络

    点击网络适配器
    在这里插入图片描述

    选择连接方式

    在这里插入图片描述

    推荐使用nat连接,若使用桥接模式,在学校里,ip地址很有可能会发生冲突。

    三种连接方式的区别:
    在这里插入图片描述

    8.测试虚拟机能否与真实机进行通信

    打开win的命名行

    输入:ping + 虚拟机IP

    在这里插入图片描述
    如图显示能正常通信,接下来就可以安装xshell远程工具了

    3.下载安装xshell

    1.下载与安装:官网里可以免费下载个人版,输入邮箱即可获得下载链接
    注意:国内代理商为了赚钱似乎没有发行免费版本,以下网址可以下载免费版
    https://www.netsarang.com/zh/free-for-home-school/
    安装也是傻瓜式下一步

    2.使用xshell
    在这里插入图片描述

    点击新建,然后输入名称,主机ip地址,然后点击登陆提示符即可。

    4.文件传输工具 WinSCP

    1.下载地址
    https://pc.qq.com/detail/11/detail_2331.html
    也是傻瓜式安装方法,就不再累述

    使用方法与xshell大体相同,不在累述。

    五 程序员需要学习Linux的知识

    程序员学习Linux主要为了解决日常的工作问题

    需掌握的知识点总结:Linux下载安装,Linux常用命令 , Vim编辑器 , 软件包管理 ,用户与权限 ,文件系统管理
    启动管理,服务管理 , 进程管理与工作管理 , 日志管理
    Linux网络基础,LAMP平台部署,Apache , LNMP平台部署
    MySQL数据库管理,MySQL集群
    Linux集群,负载均衡集群,高可用集群
    网络存储集群

    展开全文
  • Linux学习 第十笔记

    2020-05-25 16:03:01
    2020年5月22日 周日 ...2.nmtui ​ RHEL 5/6 版本里是setup,7/8 版本里是nutui 3.nm-connection-editor 4.桌面右上角网卡图标 ​ 设置后重新开关一下网卡 防火墙管理工具 iptables与firewalld都

    2020年5月22日 周五

    iptables与firewalld防火墙

    配置网卡的4种方法

    1.修改配置文件

    ​ /etc/sysconfig/network-scripts/ifcfg-enoxxxx,保存后重启网卡 systemctl restart network

    2.nmtui

    ​ RHEL 5/6 版本里是setup,7/8 版本里是nutui

    3.nm-connection-editor

    4.桌面右上角网卡图标

    ​ 设置完后重新开关一下网卡

    防火墙管理工具

    iptables与firewalld都不是真正的防火墙,它们都只是用来定义防火墙策略的防火墙管理工具而已,或者说,它们只是一种服务:
    iptables服务会把配置好的防火墙策略交由内核层面的netfilter网络过滤器来处理;
    firewalld服务则是把配置好的防火墙策略交由内核层面的nftables包过滤框架来处理。
    虽然这些工具各有优劣,但它们在防火墙策略的配置思路上是保持一致的

    iptables

    RHEL 7.1 版本后就没有了

    策略与规则链

    防火墙会从上至下的顺序来读取配置的策略规则,在找到匹配项后就立即结束匹配工作并去执行匹配项中定义的行为(即放行或阻止)。如果在读取完所有的策略规则之后没有匹配项,就去执行默认的策略。一般而言,防火墙策略规则的设置有两种:一种是“通”(即放行),一种是“堵”(即阻止)。当防火墙的默认策略为拒绝时(堵),就要设置允许规则(通),否则谁都进不来;如果防火墙的默认策略为允许时,就要设置拒绝规则,否则谁都能进来,防火墙也就失去了防范的作用。

    iptables服务把用于处理或过滤流量的策略条目称之为规则,多条规则可以组成一个规则链,而规则链则依据数据包处理位置的不同进行分类,

    在进行路由选择前处理数据包(PREROUTING);

    处理流入的数据包(INPUT);

    处理流出的数据包(OUTPUT);

    处理转发的数据包(FORWARD);

    在进行路由选择后处理数据包(POSTROUTING)。

    iptalbes基本命令

    iptables中常用的参数以及作用

    参数 作用
    -P 设置默认策略
    -F 清空规则链
    -L 查看规则链
    -A 在规则链的末尾加入新规则
    -I num 在规则链的头部加入新规则
    -D num 删除某一条规则
    -s 匹配来源地址IP/MASK,加叹号“!”表示除这个IP外
    -d 匹配目标地址
    -i 网卡名称 匹配从这块网卡流入的数据
    -o 网卡名称 匹配从这块网卡流出的数据
    -p 匹配协议,如TCP、UDP、ICMP
    –dport num 匹配目标端口号
    –sport num 匹配来源端口号

    firewalld

    RHEL 7系统中集成了多款防火墙管理工具,其中firewalld(Dynamic Firewall Manager of Linux systems,Linux系统的动态防火墙管理器)服务是默认的防火墙配置管理工具,它拥有基于CLI(命令行界面)和基于GUI(图形用户界面)的两种管理方式。

    firewalld支持动态更新技术并加入了区域(zone)的概念。简单来说,区域就是firewalld预先准备了几套防火墙策略集合(策略模板),用户可以根据生产场景的不同而选择合适的策略集合,从而实现防火墙策略之间的快速切换。

    firewalld中常用的区域名称及策略规则

    区域 默认规则策略
    trusted 允许所有的数据包
    home 拒绝流入的流量,除非与流出的流量相关;而如果流量与ssh、mdns、ipp-client、amba-client与dhcpv6-client服务相关,则允许流量
    internal 等同于home区域
    work 拒绝流入的流量,除非与流出的流量相关;而如果流量与ssh、ipp-client与dhcpv6-client服务相关,则允许流量
    public 拒绝流入的流量,除非与流出的流量相关;而如果流量与ssh、dhcpv6-client服务相关,则允许流量
    external 拒绝流入的流量,除非与流出的流量相关;而如果流量与ssh服务相关,则允许流量
    dmz 拒绝流入的流量,除非与流出的流量相关;而如果流量与ssh服务相关,则允许流量
    block 拒绝流入的流量,除非与流出的流量相关
    drop 拒绝流入的流量,除非与流出的流量相关

    终端管理工具

    firewall-cmd

    firewall-cmd是firewalld防火墙配置管理工具的CLI(命令行界面)版本,它的参数一般都是以“长格式”来提供的

    firewall-cmd命令中使用的参数以及作用

    参数 作用
    –get-default-zone 查询默认的区域名称
    –set-default-zone=<区域名称> 设置默认的区域,使其永久生效
    –get-zones 显示可用的区域
    –get-services 显示预先定义的服务
    –get-active-zones 显示当前正在使用的区域与网卡名称
    –add-source= 将源自此IP或子网的流量导向指定的区域
    –remove-source= 不再将源自此IP或子网的流量导向某个指定区域
    –add-interface=<网卡名称> 将源自该网卡的所有流量都导向某个指定区域
    –change-interface=<网卡名称> 将某个网卡与区域进行关联
    –list-all 显示当前区域的网卡配置参数、资源、端口以及服务等信息
    –list-all-zones 显示所有区域的网卡配置参数、资源、端口以及服务等信息
    –add-service=<服务名> 设置默认区域允许该服务的流量
    –add-port=<端口号/协议> 设置默认区域允许该端口的流量
    –remove-service=<服务名> 设置默认区域不再允许该服务的流量
    –remove-port=<端口号/协议> 设置默认区域不再允许该端口的流量
    –reload 让“永久生效”的配置规则立即生效,并覆盖当前的配置规则
    –panic-on 开启应急状况模式
    –panic-off 关闭应急状况模式

    与Linux系统中其他的防火墙策略配置工具一样,使用firewalld配置的防火墙策略默认为运行时(Runtime)模式,又称为当前生效模式,而且随着系统的重启会失效。如果想让配置策略一直存在,就需要使用永久(Permanent)模式了,方法就是在用firewall-cmd命令正常设置防火墙策略时添加–permanent参数,这样配置的防火墙策略就可以永久生效了。设置的策略只有在系统重启之后才能自动生效。如果想让配置的策略立即生效,需要手动执行firewall-cmd --reload命令。

    图形管理工具

    firewall-config

    ​ firewalld防火墙配置管理工具的GUI(图形用户界面)版本,几乎可以实现所有以命令行来执行的操作

    1:选择运行时(Runtime)模式或永久(Permanent)模式的配置。

    2:可选的策略集合区域列表。

    3:常用的系统服务列表。

    4:当前正在使用的区域。

    5:管理当前被选中区域中的服务。

    6:管理当前被选中区域中的端口。

    7:开启或关闭SNAT(源地址转换协议)技术。

    8:设置端口转发策略。

    9:控制请求icmp服务的流量。

    10:管理防火墙的富规则。

    11:管理网卡设备。

    12:被选中区域的服务,若勾选了相应服务前面的复选框,则表示允许与之相关的流量。

    13:firewall-config工具的运行状态。
    在这里插入图片描述

    服务的访问控制列表

    TCP Wrappers

    TCP Wrappers是RHEL 7系统中默认启用的一款流量监控程序,它能够根据来访主机的地址与本机的目标服务程序作出允许或拒绝的操作。换句话说,Linux系统中其实有两个层面的防火墙,第一种是前面讲到的基于TCP/IP协议的流量过滤工具,而TCP Wrappers服务则是能允许或禁止Linux系统提供服务的防火墙,从而在更高层面保护了Linux系统的安全运行。

    TCP Wrappers服务的防火墙策略由两个控制列表文件所控制,用户可以编辑允许控制列表文件来放行对服务的请求流量,也可以编辑拒绝控制列表文件来阻止对服务的请求流量。控制列表文件修改后会立即生效,系统将会先检查允许控制列表文件(/etc/hosts.allow),如果匹配到相应的允许策略则放行流量;如果没有匹配,则去进一步匹配拒绝控制列表文件(/etc/hosts.deny),若找到匹配项则拒绝该流量。如果这两个文件全都没有匹配到,则默认放行流量。

    TCP Wrappers服务的控制列表文件中常用的参数

    客户端类型 示例 满足示例的客户端列表
    单一主机 192.168.10.10 IP地址为192.168.10.10的主机
    指定网段 192.168.10. IP段为192.168.10.0/24的主机
    指定网段 192.168.10.0/255.255.255.0 IP段为192.168.10.0/24的主机
    指定DNS后缀 .linuxprobe.com 所有DNS后缀为.linuxprobe.com的主机
    指定主机名称 www.linuxprobe.com 主机名称为www.linuxprobe.com的主机
    指定所有客户端 ALL 所有主机全部包括在内

    在配置TCP Wrappers服务时需要遵循两个原则:

    1. 编写拒绝策略规则时,填写的是服务名称,而非协议名称;
    2. 建议先编写拒绝策略规则,再编写允许策略规则,以便直观地看到相应的效果。

    在这里插入图片描述

    展开全文
  • 2.练习Linux操作 3.自己的远程仓库、远程数据库、远程tomcat…搭建在服务器上 4.练习,Linux进行任意的环境部署操作!Window下开发,你不熟悉Linux. 5… 服务器如何购买 尽量趁打折买 购买连接:阿里云·云小站 ...

    服务器相关

    为什么程序员都需要自己的服务器

    1.你作为一个程序员,必须要发布自己的网站和项目!
    2.练习Linux操作

    3.自己的远程仓库、远程数据库、远程tomcat…搭建在服务器上

    4.练习,Linux进行任意的环境部署操作!Window下开发,你不熟悉Linux.

    5…

    服务器如何购买

    尽量趁打折买

    购买连接:阿里云·云小站 (aliyun.com)

    香港服务器可以避免备案,但是尽量不要自己挂VPN,会被封!

    买完服务器之后该做什么

    服务器就是一个远程的Linux

    1.在阿里云购买的,需要开通安全组设置;端口映射(端口映射都需要在阿里云的面板安装)。

    image-20210502183456064

    image-20210503090922435

    授权对象设置为 0.0.0.0/0 代表所有IP均能访问

    2.获取服务器的公网IP地址;修改实例名称和密码,第一次修改需要重启。然后使用xshell远程连接。

    image-20210502204300579

    Xshell 下载网站

    家庭/学校免费 - NetSarang Website

    image-20210502183731915

    image-20210502222905154

    获取地址和密码:

    image-20210502222815883

    复制外网面板地址然后打开出现的页面:

    image-20210502223148786

    登录后出现的页面:

    image-20210502223413296

    image-20210503082335777

    连接到服务器,我们需要搭建环境!

    1.傻瓜式(宝塔面板) 宝塔面板 - 简单好用的Linux/Windows服务器运维管理面板 (bt.cn)

    宝塔安装教学:宝塔Linux面板安装教程 - 2021年3月26日更新 - 7.5.2正式版 - Linux面板 - 宝塔面板论坛 (bt.cn)

    yum install -y wget && wget -O install.sh http://download.bt.cn/install/install_6.0.sh && sh install.sh 1e0d2a
    

    下载完毕之后,就可以得到一个地址:宝塔的管理面板!

    • url:
    • username:
    • password:

    自定义安装服务器环境

    一键部署环境

    image-20210503082935698

    端口开启

    image-20210502185359632

    放入网站进行访问!

    比如tomcat 就直接放到webapps目录下!

    特殊的网站:开源项目,就按照自己操作来。

    上传文件尽量使用XFTP

    下载地址:家庭/学校免费 - NetSarang Website

    image-20210503084943832

    image-20210503085618188

    网站如果访问测试失败,一定是防火墙的问题,(Linux服务器,阿里云安全组件板)

    war 直接丢到tomcat即可

    jar直接用java -jar执行即可访问

    2.命令式(原生)

    Linux

    Java开发之路:JavaSE、MySQL、前端(HTML、CSS、JS)、JavaWeb、SSM框架、SpringBoot、Vue、SpringCloud~

    Linux(CentOS 7) 操作系统:Window、Mac

    消息队列(Kafka、 RabbitMQ、RockeetMQ),缓存(Redis),搜索引擎(ES)

    集群式分布(需要购买多台服务器,如果没有服务器就只能使用虚拟机)

    本课程基于CentOS 7版本的学习。

    Linux 一切皆文件:文件就读、写(权限) 操作

    学习方式:

    1.认识Linux

    2.基本的命令(重点:Git讲了一些基本的命令(文件操作、目录管理、文件属性、Vim编辑器、账号管理、磁盘管理…))

    3.软件的安装和部署(java tomcat docker)

    Linux—Redis–Docker

    入门概述

    image-20210502212327051

    Linux简介

    Linux内核最初只是由芬兰人林纳斯.托瓦兹( Linus Torvalds )在赫尔辛基大学上学时出于个人爱好而编写的。
     Linux是一套免费使用和自由传播的类Unix操作系统,是一个基于POSIX (可移植操作系统接口)和UNIX的多用户、多任务、支持多线程和多CPU的操作系统。
     Linux能运行主要的UNIX工具软件、应用程序和网络协议。它支持32位和64位硬件。Linux 继承了Unix以网络为核心的设计思想,是一个性能稳定的多用户网络操作系统。
    Kali linux:安全渗透测试使用

    Linux发行版

    image-20210502212556331

    image-20210502213010480

    今天各种场合都有使用各种Linux发行版,从嵌入式设备到超级计算机,并且在服务器领域确定了地位,通常服务器使用LAMP(Linux + Apache + MySQL + PHP)或LNMP(Linux + Nginx + MySQL + PHP)组合。
     目前Linux不仅在家庭与企业中使用,并且在政府中也很受欢迎。
     许多国家都在使用Linux系统

    Linux vs Windows

    image-20210502213519407

    B站学习网址:【狂神说Java】服务器购买及宝塔部署环境说明_哔哩哔哩 (゜-゜)つロ 干杯~-bilibili

    【狂神说Java】Linux最通俗易懂的教程阿里云真实环境学习_哔哩哔哩 (゜-゜)つロ 干杯~-bilibili

    展开全文
  • linux学习(第一)

    2016-03-02 17:53:00
    1、安装网络虚拟网络编辑器不能选择“桥接”————好像是因为因为Vmware安装在D:/根目录下,卸载重装 2、yum install 一直报错 网上说DSN配置错误,我修改了/etc/resolv.conf,刷新了网络服务不管用 解决...
  • Linux基础指令学习02

    2017-11-30 00:11:40
    今天听J哥的课,对生活又冲满了信心,加油-----课程体系零基础2个月+高级班3.5个月+CDH+线下两课程(需要花费21时间复习) 基础班体系 Linux命令学习--shell命令学习--mysql--hadoop Hive-Sqoop-离线商产项目...
  • 我推荐有兴趣的可以拜读《Linux就该这么》。 目录: 第0章 咱们先来谈谈学习方法和红帽系统。 第1章 部署虚拟环境安装linux系统。 第2章 新手必须掌握的Linux命令。 第3章 管道符、重定向与环境变量。 第4章 Vim...
  • Nginx的惹我日特配置-if 我们条件举例一下: rewrite中的break和last 首先打开配置文件: ...更改以后还需要更改rewrite的级别: 必须为notice才能记录 ## nginx中的return的用法 ## rew...
  • 找到自己所需要的版本来进行...下载完成以后我们需要压缩包进行解压,解压是注意自己下载的是gz 还是bz2,解压以后我们要对文件进行编译如下: ./configure --prefix=/usr/local/php-fpm --with-comfig-file-pat...
  • 给你一个值,你处理之后,再给我一个值。 ※编写代码时,一定要清楚你需要实现的功能是什么?针对于功能设计出函数。 二、为什么要使用函数 1)避免使主函数main()变得复杂,逻辑混乱 2)避免程序冗长、不精炼...
  • linux学习11月29日

    2019-12-04 06:46:20
    linux学习11月29日 2个夜班看3录播,有点难了,要加紧学习,加紧练习 本次学习分区,格式化,挂载,交换分区,磁盘配额软硬连接,RAID磁盘阵列 ...
  • mv命令是move的缩写,可以用来移动文件或者将文件改名(move(rename)files),是Linux系统下常用的命令,经常用来备份文件或者目录。1.命令格式:mv[选项]源文件或目录目标文件或目录2.命令功能:视mv命令中第二个...
  • 正常情况下A会在2点多时候跑,但是某一因为某一步骤用的时间过久,导致4点还没跑,这时候A内存占用大约在12g左右。4点开始了,B开始运行了,逐渐的跑起来了,当内存用到6g左右的时候,系统内存不足,把A杀死了...
  • 就业班的课总共147节课 计划每天保质保量的学2节课 计划用73.5天学完 稍微加快点进度计划花2个月的时间学完 架构班的课总共143节课 计划每天保质保量的学2节课计划用71.5天学完 稍微加快点进度计划花2个月的时间学完...
  • 为了系统地学习一下linux相关知识,我花了三的时间看了那本经典的《鸟哥的linux私房菜》。所谓的经典必然是有其过人之处,而看这本书之后,我毫无疑问地加入了强烈推荐这本书的行列。 其实,要全面了解linux...
  • 构造函数的作用通常是给属性初始化,给指针申请空间等惯用的内容,构造函数有参无参来...析构函数的作用通常是用于工作的结尾工作(释放内存,关闭打开文件等),无返回值、无法显示调用、销毁对象后自动执行、没...
  • 那个啥,我又来了,刚学完centos虚拟机中有关terminalAPP的一些命令指示,有点迷,的确挺迷的。第一软件很是陌生,一上手就抓耳挠腮的,老师讲过的很多知识点也是转眼就忘了,还好有记笔记。不过也是好事,不难的...
  • 先花了4天5天时间把LDD(Linux Device Drivers)看了,然后花了2天看了一下linux自带的串口驱动程序到底是怎么写的,最后很幸运的用了2天把已有的串口驱动程序改写过来并且一把调通,真是心中暗存庆幸。...
  • 9月15日星期六,中午秋香给我打电话,让我晚上和他一起去联通机房去干活,这是一次难得的实践的机会,可以真正的接触服务器了,在感性上对于LINUX技术一次难得的认知机会,比看书的效果不知道要好上多少倍,接电话...
  • /* 5.(用结构体数组来做,链表学完用链表做) 菜单:  ********学生信息管理系统********  1. 添加信息  2. 删除信息  3. 修改信息  4. 查询信息 ...
  • 我和linux的第十五

    2014-12-01 22:41:48
    不要急吧,今天前两部分内容看了,对linux还没有系统概念,能做什么,实现什么不清楚,只是理解了有些命令,有些软件。明天vim,应该会比较有趣吧。文件与文件系统的压缩和打包常见的文件扩展名:*.gz:gzip程序...
  • 最近python,读了语法后在GitHub找了一些练习来做,由于的是python3.x语法,而GitHub上的好多练习源码都是基于2.x的,有些module在python3.x上没有,因此为装这些包折腾了好久,浪费了好些时间,这两才发现...
  • 入门学习Linux常用必会60个命令实例详解doc/txt

    千次下载 热门讨论 2011-06-09 00:08:45
    要想真正理解Linux系统,就必须从Linux命令起,通过基础的命令学习可以进一步理解Linux系统。 不同Linux发行版的命令数量不一样,但Linux发行版本最少的命令也有200多个。这里笔者把比较重要和使用频率最多的命令...
  • 早,几不见,是否有人想念我。你是在进行无效阅读吗?1. 什么是无效阅读:每天都读十几篇干货满满的文章,但读也就忘了,记不住也不到,这就是无效阅读。无效阅读的目标不是要通过阅读解决一...
  • 硕彦博创----linux(2)

    2019-05-19 20:48:37
    首先,这是学完之后的第二,睡完一觉,我看看自己到底还能记住多少,希望可以到达--那个倚天屠龙记中张三丰教张无忌,是不是到达一种全忘记的境界,哈哈哈。 学习路线: vi/vim 命令行编辑器(优秀?) 为编辑器...
  • Linux 经典书籍推荐

    2020-04-16 11:43:05
    学习一门技术———>入门看视频,深入看书籍。...这本电子书推荐一2. 《Linux 从入门到精通》 3. 《鸟哥Linux私房菜》 4. 《Linux 就该这么》 5. 《Linux命令行与shell脚本编辑大全》 6...
  • 大数据001——Linux

    2018-12-17 20:10:30
    大数据——Linux学习第一 文章目录大数据——Linux学习第一1. 环境准备1.1 VMware1.2 Linux安装1.3 网络配置1.3.1 查看虚拟机网关1.3.2 配置Liunx静态IP(NAT模式)Ⅰ. 编辑配置文件Ⅱ. 修改后执行以下命令Ⅲ. ...
  • 提示:文章写后,目录可以自动生成,如何生成可参考右边的帮助文档 文章目录前言一、pandas是什么?二、使用步骤1.引入库2.读入数据总结 前言 提示:这里可以添加本文要记录的大概内容: 例如:随着人工智能的...
  • linux文件IO

    2021-02-14 16:49:20
    提示:文章写后,目录可以自动生成,如何生成可参考右边的帮助文档 文章目录前言文件IO1.应用编程框架介绍5.文件读写的一些细节7.lseek函数介绍二、使用步骤1.引入库2.读入数据总结 前言 本文是对朱有鹏相关课程...
  • 花了一的时间,将自己一路上学习和了解过的内容整理成了一整套学习路线,分享给大家,纯手工制造! 学习方法: 1、之前一定要有一个想法,心里有想要做的项目,然后根据这个项目去,理论界和实际,这样的学习...

空空如也

空空如也

1 2 3 4 5 6
收藏数 102
精华内容 40
关键字:

linux2天学完

linux 订阅