当前位置 : 主页 > 操作系统 > centos >

Linux-Centos7学习笔记

来源:互联网 收集:自由互联 发布时间:2022-06-20
目录 ​​下载、安装与配置​​ ​​下载​​ ​​安装​​ ​​配置​​ ​​软件安装与卸载​​ ​​软件包说明​​ ​​命令学习​​ ​​rpm下载安装(不推荐)​​ ​​yum管



目录


  • ​​下载、安装与配置​​

  • ​​下载​​
  • ​​安装​​
  • ​​配置​​

  • ​​软件安装与卸载​​

  • ​​软件包说明​​
  • ​​命令学习​​

  • ​​rpm下载安装(不推荐)​​
  • ​​yum管理(推荐)​​


  • ​​常用软件下载与安装​​

  • ​​ifconfig​​
  • ​​ssh​​
  • ​​vim​​
  • ​​tree​​
  • ​​wget​​

  • ​​克隆与网络连接​​

  • ​​克隆​​
  • ​​网络连接​​

  • ​​VM与物理机设置​​
  • ​​桥接模式​​
  • ​​NAT(地址转换)模式​​
  • ​​Host-Only模式​​


  • ​​文件与目录​​

  • ​​自带目录​​
  • ​​目录​​
  • ​​文件​​
  • ​​压缩与备份​​

  • ​​用户与权限管理​​

  • ​​用户​​
  • ​​用户组​​
  • ​​权限​​

  • ​​系统管理​​

  • ​​系统查看​​

  • ​​系统版本​​
  • ​​内核版本​​
  • ​​cpu信息​​
  • ​​cpu和内存使用​​

  • ​​时间日期​​
  • ​​任务调度​​
  • ​​进程管理​​

  • ​​其他​​
  • ​​进阶​​

  • ​​服务管理​​

  • ​​service(不推荐)​​
  • ​​systemctl​​

  • ​​文件​​
  • ​​sed​​
  • ​​磁盘​​

  • ​​mount​​
  • ​​df​​
  • ​​fdisk​​

  • ​​防火墙​​
  • ​​iptables​​

  • ​​参考​​


下载、安装与配置

下载

下载Centos镜像,网站见参考

Linux-Centos7学习笔记_重启

点击大的版本,例如7,再选择isos进行下载

Linux-Centos7学习笔记_linux_02

镜像描述

名称

描述

CentOS-7-x86_64-DVD-1708.iso

标准安装版,一般下载这个就可以了(推荐)

CentOS-7-x86_64-NetInstall-1708.iso

网络安装镜像(从网络安装或者救援系统)

CentOS-7-x86_64-Everything-1708.iso

对完整版安装盘的软件进行补充,集成所有软件。(包含centos7的一套完整的软件包,可以用来安装系统或者填充本地镜像)

CentOS-7-x86_64-LiveGNOME-1708.iso

GNOME桌面版

CentOS-7-x86_64-LiveKDE-1708.iso

KDE桌面版

CentOS-7-x86_64-Minimal-1708.iso

精简版,自带的软件最少

安装

这里使用的VMware 12 Pro,以Centos7为例,新建新的虚拟机-自定义-下一步

Linux-Centos7学习笔记_centos_03

继续选择下一步,然后选择稍后安装-下一步

Linux-Centos7学习笔记_运维_04

选择Linux-Red Hat Enterprise Linux 7 64位

Linux-Centos7学习笔记_重启_05

填写名字,选好位置

Linux-Centos7学习笔记_sed_06

核数和宿主机一致即可

Linux-Centos7学习笔记_linux_07

内存,看个人要使用什么了,我一般是选择宿主机的一半,平时开虚拟机的话就不会在宿主机开太多软件了

Linux-Centos7学习笔记_重启_08

网络都可以,看个人习惯

Linux-Centos7学习笔记_运维_09

下一步直到分配磁盘大小,选择合适磁盘大小,改为单个文件如果你只会在自己的电脑上使用的话

Linux-Centos7学习笔记_重启_10

可以删除没有的硬件,例如打印机,选择光驱

Linux-Centos7学习笔记_重启_11

选择镜像,就是前面下载的.iso文件

Linux-Centos7学习笔记_sed_12

处理器添加虚拟化(之后学习KVM需要)

Linux-Centos7学习笔记_sed_13

之后点击完成即可

配置

打开虚拟机,选择语言

Linux-Centos7学习笔记_centos_14

软件选择,新手可以选择带GUI的,选择开发工具(带有gcc等),我就选择最小安装了

Linux-Centos7学习笔记_centos_15

安装位置选择磁盘即可,我要配置分区

Linux-Centos7学习笔记_centos_16

选择标准分区,添加挂载点/boot,选择1024,防止后序yum update空间不足

Linux-Centos7学习笔记_linux_17

添加 / 挂载点

Linux-Centos7学习笔记_运维_18

添加swap挂载点

Linux-Centos7学习笔记_重启_19

完成,接收更改

之后添加网络,这里改为手动,步骤如下。​注意网关最后是1还是2​

Linux-Centos7学习笔记_运维_20

主机名修改一下,这里就使用centos+ip最后一位,这样之后当有其他虚拟机,例如192.168.x.4访问这台主机的时候就不用记ip了,例如访问Web服务,http://centos3:80/index.html

Linux-Centos7学习笔记_运维_21

点击开始安装,设置下密码

Linux-Centos7学习笔记_centos_22

重启,之后你可以ping一下www.baidu.com,试一下网络

软件安装与卸载

软件包说明

rpm包的获取方式


  • Centos系统镜像光盘
  • 网站rpmfind.net
  • 软件官网
  • centos yum源或rpm手动下载

  • rpm包安装后一般保存在/var/lib/rpm/目录下

    命令学习

    rpm下载安装(不推荐)

    ​命令​

    rpm [Option...]

    ​常用参数​

    参数

    含义

    -i

    install,安装软件包

    -v

    显示附加信息

    ​查询​

    rpm -q [Option...]

    参数

    含义

    -a

    查看所有安装的软件包

    -f

    系统文件名

    -i pkgname

    显示已安装的包pkgname的信息

    -l

    查询软件包中文件安装的位置

    -p name

    查询未安装软件包name的相关信息

    -R

    查询软件包的依赖性

    举个例子:

    Linux-Centos7学习笔记_重启_23

    ​卸载​

    rpm -e pkgname

    建议添加–nodeps,不去卸载依赖关系包

    yum管理(推荐)

    自动处理依赖性关系,一次性安装所有依赖的软件包

    yum [options] COMMAND

    常用命令

    搜索:yum search xxx
    安装:yum -y install xxx
    卸载:yum -y remove xxx
    更新:yum -y update xxx

    -y省的交互输入y了

    常用软件下载与安装

    ifconfig

    网络查看

    yum -y install net-tools.x86_64

    ssh

    远程连接,安装服务端与客户端

    yum -y install openssh-server openssh-clients

    vim

    比vi好像用的文本编辑器

    yum -y install vim

    tree

    目录树形结构查看

    yum -y install tree

    wget

    文件下载

    yum -y install wget

    到了这里,差不多必备的软件就全了。接下来在练习命令的时候,你可能会创建一些文件、目录、用户等,也可能误操作导致​系统损坏,网络不通​等问题,因此,强烈建议不再动这个,而是以此为母版,​克隆​一些。

    例如:

    Centos7-test:练习Linux命令

    Centos7-docker:练习Docker使用

    Centos7-web:练习Web开发与部署

    之后不需要了可以直接删除。

    克隆与网络连接

    上了班一般设置自动快照,网络一般不用管,都是云服务器,有外网ip和VPC。这里还是简单配置一下。

    克隆

    我不会动母版,所以都是使用链接克隆,可以节省空间

    Linux-Centos7学习笔记_centos_24

    原来的是NAT的,克隆了一个Bridge的。之后NAT的不再开机,只做母版留着克隆。

    Linux-Centos7学习笔记_运维_25

    网络连接

    VM与物理机设置

    类型

    ip

    子网掩码

    网关

    DNS

    物理机/宿主机/主机

    192.168.31.164

    255.255.255.0

    192.168.31.1

    自动

    桥接虚拟机

    192.168.31.3

    255.255.255.0

    192.168.31.1

    192.168.31.1

    NAT虚拟机

    192.168.100.3

    255.255.255.0

    192.168.100.2

    8.8.8.8;114.114.114.114

    ​桥接设置​

    选择与物理机一直的网卡即可

    Linux-Centos7学习笔记_sed_26

    ​NAT设置​

    设置网关

    Linux-Centos7学习笔记_linux_27

    设置子网ip,子网掩码,dhcp

    Linux-Centos7学习笔记_linux_28

    ​Host-Only设置​

    设置子网ip,子网掩码,dhcp

    Linux-Centos7学习笔记_运维_29

    ​物理机/宿主机/主机设置​

    网络连接

    Linux-Centos7学习笔记_sed_30

    ip自动

    Linux-Centos7学习笔记_centos_31

    ipconfig查看

    Linux-Centos7学习笔记_sed_32

    接下来设置虚拟机

    桥接模式

    主机网卡与虚拟机虚拟的网卡,利用网桥进行通信。类似于虚拟一个交换机,所有桥接设置的虚拟机连接到这个交换机的一个接口上,物理主机也同样插在这个交换机中。

    ​注意:虚拟机ip地址需要与主机在同一个网段,如果需要联网,网关与DNS保持一致。​

    ​虚拟机网络适配器设置为桥接模式​

    Linux-Centos7学习笔记_centos_33

    ​修改网络配置​

    cd /etc/sysconfig/network-scripts

    文件一般为ifcfg-ensxx,你的可能不是33

    Linux-Centos7学习笔记_linux_34

    修改为协议为static,设置静态ip,网关,dns

    Linux-Centos7学习笔记_centos_35

    ​重启网络​

    /etc/init.d/network restart

    ​测试网络​

    发现无法ping通宿主机,但是可以访问主机http服务(这里使用的python -m http.server开启的)

    Linux-Centos7学习笔记_linux_36

    所以,应该是宿主机防火墙的问题

    设置防火墙

    Linux-Centos7学习笔记_重启_37

    启用上图所示的虚拟机监控,启用后前面会有绿色对勾

    ​测试访问主机与外网​

    Linux-Centos7学习笔记_运维_38

    ​测试主机访问虚拟机​

    Linux-Centos7学习笔记_重启_39

    NAT(地址转换)模式

    借助虚拟NAT设备和虚拟的DHCP,虚拟机和物理机共用一个IP。

    ​注意:虚拟机使用NAT模式时,Linux系统要配置成dhcp。​

    ​虚拟机网络适配器设置为NAT模式​

    Linux-Centos7学习笔记_sed_40

    ​修改网络配置​

    cd /etc/sysconfig/network-scripts

    文件一般为ifcfg-ensxx,你的可能不是33

    Linux-Centos7学习笔记_重启_41

    修改为dhcp,设置个静态ip

    Linux-Centos7学习笔记_sed_42

    ​重启网络​

    /etc/init.d/network restart

    ​测试网络​

    Linux-Centos7学习笔记_重启_43

    ​测试主机访问虚拟机​

    Linux-Centos7学习笔记_重启_39

    Host-Only模式

    将虚拟机​与外网隔开​,使得虚拟机成为一个独立的系统,​只与主机互相通讯​。相当于NAT模式去除了虚拟NAT地址转换功能。

    这个我不用,就不展示了。

    文件与目录

    自带目录

    Linux-Centos7学习笔记_运维_45


    • bin:二进制文件目录,/usr/bin的软链接
    • boot:系统启动相关的文件
    • dev:Device,设备文件目录,声卡、磁盘等
    • etc:常用系统及二进制安装包配置文件默认路径 例如,/etc/passwd /etc/hosts
    • home:普通用户家目录
    • lib:库文件目录,/usr/lib的软链接
    • lib64:库文件目录,/usr/lib64的软链接
    • media、mnt:临时挂载存储设备的目录
    • opt:有些软件会安装在这里
    • proc:操作系统运行时,进程信息及内核信息存放在这里,例如,/proc/cpuinfo
    • root:root用户家目录
    • run:运行目录,存放系统运行时数据
    • sbin:大部分系统管理命令存放目录,root可执行命令存放目录,/usr/sbin的软链接
    • srv:服务目录,存放本地服务相关文件
    • sys:系统目录,存放硬件信息
    • tmp:临时文件目录
    • usr:存放应用程序和文件 /usr/bin(普通用户的应用程序)、/usr/lib (库文件)
    • var:系统和软件运行时产生的日志信息,例如,/var/log

    ​进阶前的命令就不展示了,可以看参考的Linux基础​

    目录


    • cd:change dirctory
    • pwd:print working directory
    • ls:list
    • mkdir:make directory
    • rm:remove
    • rmdir:remove directory,不推荐,可使用rm代替

    文件


    • touch
    • echo
    • mv
    • cp
    • head
    • tail
    • cat
    • more
    • less
    • ln
    • grep
    • find
    • locate

    >:用前面的内容覆盖掉后面文件的内容
    >>:用前面的内容追加到后面的文件尾部
    |:管道,前面的做后面的输入

    压缩与备份


    • zip
    • unzip
    • tar

    用户与权限管理

    用户


    • whoami
    • id
    • useradd
    • passwd
    • userdel
    • usermod
    • su

    用户组


    • groupadd
    • groupdel

    权限


    • chown
    • chgrp

    系统管理

    系统查看

    系统版本

    lsb_release -acat /etc/issue

    内核版本

    uname -a

    -r参数获取部分

    cpu信息

    cat /proc/cpuinfo

    cpu和内存使用

    top

    时间日期


    • date:日期
    • cal:日历

    任务调度

    • crontab

    进程管理


    • ps:进程查看
    • kill:杀死进程

    其他


    • history:历史命令
    • runlevel:运行级别
    • init
    • help
    • man
    • shutdown:关机
    • poweroff:关机
    • halt:关机
    • reboot:重启

    进阶

    服务管理

    service(不推荐)

    service 服务名 [start | stop | restart | reload | status]

    • start:启动
    • stop:停止
    • restart:重启
    • reload:重新载入
    • status:状态

    ​查询sshd服务状态​

    service sshd status

    Linux-Centos7学习笔记_linux_46

    systemctl

    Linux-Centos7学习笔记_sed_47

    systemctl [Options...] {COMMANDS...}

    start:启动

    stop:停止

    status:状态

    reload:重新载入

    restart:重启

    enable:开机启动

    disable:取消开机启动

    ​开机启动sshd服务​

    systemctl enable sshd

    Linux-Centos7学习笔记_linux_48

    文件

    sed

    这个命令最厉害的地方在于​在文件中间进行插入,替换,删除​

    Linux-Centos7学习笔记_centos_49

    sed [-hnV][-e<script>][-f<script文件>][文本文件]

    参数说明


    • -e<script>或–expression=<script> 以选项中指定的script来处理输入的文本文件。
    • -i 修改源文件

    动作说明


    • a :新增, a 的后面可以接字串,而这些字串会在新的一行出现(目前的下一行);
    • c :取代, c 的后面可以接字串,这些字串可以取代 n1,n2 之间的行!
    • d :删除,因为是删除啊,所以 d 后面通常不接任何东东;
    • i :插入, i 的后面可以接字串,而这些字串会在新的一行出现(目前的上一行);
    • p :打印,将某个选择的数据印出。通常 p 会与参数-n一起运行
    • s :取代,通常这个 s 的动作可以搭配正规!例如 1,20s/old/new/g
      创建文件tested,并写入一些内容,内容如下
      Linux-Centos7学习笔记_运维_50
      ​在第四行后插入一行内容,内容为:新的第5行​

    sed -e 4a\新的第5行 testsed

    Linux-Centos7学习笔记_sed_51

    注意:默认是将结果输出到控制台,而不是文件,可以使用重定向>来放到新的文件,例如

    sed -e 4a\新的第5行 testsed > newtestsed

    Linux-Centos7学习笔记_sed_52

    ​在第3行前插入内容,内容为:新的第3行​

    sed '3i 新的第3行' testsed

    Linux-Centos7学习笔记_centos_53

    ​删除第4-5行​

    sed "4,5d" testsed

    Linux-Centos7学习笔记_linux_54

    ​取代第3,4行:内容为第3-4行​

    sed '3,4c 第3-4行' testsed

    Linux-Centos7学习笔记_sed_55

    ​搜寻含有4的行,并输出,带有行号​

    sed -n '4p' testsed

    Linux-Centos7学习笔记_sed_56

    直接替换是这样的

    's/要被取代的字串/新的字串/g'

    将第2-4行的这是替换为这个是

    Linux-Centos7学习笔记_sed_57

    ​前面都是输出到控制台或重定向到新文件,testsed文件还未改变,接下来说一下直接修改源文件!!!注意测试时不要使用系统配置,或记得备份​

    ​把所有数字,改为number​

    sed -i 's/[0-9]/number/g' testsed

    Linux-Centos7学习笔记_运维_58

    磁盘

    mount

    挂载

    挂载/dev/vda到/data下

    mount /dev/vda /data

    df

    disk free,磁盘情况统计

    df -Th

    Linux-Centos7学习笔记_sed_59

    fdisk

    一个创建和维护分区表的程序

    ​查看分区情况​

    fdisk -l

    Linux-Centos7学习笔记_重启_60

    磁盘这里,如果你是云服务商用户,可以尝试买一块数据盘,挂载一下

    防火墙

    iptables

    一个规则表链,有时间再更新

    参考

    ​​Centos阿里云镜像下载​​

    ​​Linux基础​​

    ​​Linux命令大全​​

    ​​腾讯云-云硬盘扩展​​



    网友评论