zoukankan      html  css  js  c++  java
  • linux学习五

    一.系统服务管理

      1.概念

    服务(service) 本质就是进程,但是是运行在后台的,通常都会监听某个端口,等待其它程
    序的请求,比如(mysql , sshd 防火墙等),因此我们又称为守护进程,是Linux中非常重要的
    知识点。 

      2.指令

    service 服务名 [start | stop | restart | reload | status]
    在CentOS7.0后 不再使用service ,而是 systemctl

      3.案例

    1) 查看当前防火墙的状况,关闭防火墙和重启防火墙。
      service iptables status
      service iptables start
      service iptables stop

    注:centeros后面的版本指令:

        systemctl start 服务名称
        systemctl stop 服务名称
        systemctl status 服务名称
        systemctl restart 服务名称

      systemctl status firewalld

      systemctl stop firewalld 
        systemctl start firewalld

       sys
    temctl restart firewalld
      


    可以通过测试来判断:
      windows命令:telnet ip 端口

       4.查看所有服务

    方式1:使用setup -> 系统服务 就可以看到。
    方式2: /etc/init.d/服务名称

      5.服务的运行级别

    服务的运行级别(runlevel):
    查看或者修改默认级别: vi /etc/inittab

    查看或者修改默认级别: vi /etc/inittab
    Linux系统有7种运行级别(runlevel):常用的是级别35
    运行级别0:系统停机状态,系统默认运行级别不能设为0,否则不能正常启动
    运行级别1:单用户工作状态,root权限,用于系统维护,禁止远程登陆
    运行级别2:多用户状态(没有NFS),不支持网络
    运行级别3:完全的多用户状态(有NFS),登陆后进入控制台命令行模式
    运行级别4:系统未使用,保留
    运行级别5:X11控制台,登陆后进入图形GUI模式
    运行级别6:系统正常关闭并重启,默认运行级别不能设为6,否则不能正常启动

    开机的流程说明:
    开机--> BIOS--> boot--> init进程1--> 运行级别---> 运行级对应的服务

      6.chkconfig指令

    介绍
    通过chkconfig 命令可以给每个服务的各个运行级别设置自启动/关
    • 基本语法
    1) 查看服务 chkconfig --list|grep xxx
    2) chkconfig 服务名 --list
    3) chkconfig --level 5 服务名 on/off

    注意:用指令设置完成之后,需要重启机器!

    还有就是如果chkconfig在7以后很多都不能用了,要使用systemctl这个指令了

       7.top指令

      top与ps命令很相似。它们都用来显示正在执行的进程。 Top与ps最大的不同之处,在于top
    在执行一段时间可以更新正在运行的的进程
      top [选项]
          
    选项 功能
    -d  秒数 指定top命令每隔几秒更新。 默认是3top命令的交互模式当中可以执行的
    命令:
    -i 使top不显示任何闲置或者僵死进程。
    -p 通过指定监控进程ID来仅仅监控某个进程的状态。
    
    

    交互操作说明:

      案例1.监视特定用户
        top:输入此命令,按回车键,查看执行的进程。
          u:然后输入“u”回车,再输入用户名,即可
        案例2: 终止指定的进程。
          top:输入此命令,按回车键,查看执行的进程。
          k:然后输入“k”回车,再输入要结束的进程ID
        案例3:指定系统状态更新的时间(每隔10秒自动更新)

    操作 功能
    P CPU使用率排序, 默认就是此项
    M 以内存的使用率排序
    N PID排序
    q 退出top
    
    


       8.netstat指令(查看系统中开放的端口)

    • 基本语法
      netstat [选项]
    • 选项说明
      -an 按一定顺序排列输出
      -p 显示哪个进程在调用
    netstat -tunlp • 应用案例   请查看服务名为 sshd 的服务的信息。
      netstat -anp | grep sshd

      9.selinux

        SELinux是Linux系统上一个常见的安全软件

        1.查看selinux的状态

    getenforce
    [root@qishi
    ~]# getenforce Enforcing #这是强制开启状态

        2.临时关闭selinux(重启失效)

    setenforce 0

        3.永久关闭selinux

    编辑selinux配置文件
    vim /etc/selinux/config
    将SELINUX=enforcing改为SELINUX=disabled
    保存退出

       10.防火墙

    iptables -L  # 查看系统防火墙规则
    iptables -F  # 清空所有防火墙规则
    
    systemctl stop firewalld  # 停止防火墙
    systemctl status firewalld # 查看防火墙运行状态
    systemctl start firewalld  # 启动
    systemctl disable firewalld  # 永久关闭防火墙

       11.DNS(Domain Name System,域名系统)

          解析原理:

    1 我在本地访问www.baidu.com
    2 首先会从本地DNS缓存中去查找,如果没有
    3 就会去本地hosts文件中去查找,如果没有
    4 去公网的DNS服务器查看是否有此域名解析记录,如果还没有
    5 说明此域名没有在公网注册解析

          hosts文件:

    /etc/hosts

    8.8.8.8 #谷歌的DNS
    114.114.114.114 #114的DNS
    119.29.29.29 # 腾讯的DNS
    223.5.5.5 # 马云的DNS
    223.6.6.6 # 马云的DNS

    电信的DNS
    202.96.134.133
    202.96.134.134
    202.96.128.86

      12.nslookup(域名解析)

    用来将域名解析为IP
    nslookup
    nslookup www.baidu.com

    二.包管理

      1.rpm介绍

    介绍:
      一种用于互联网下载包的打包及安装工具,它包含在某些Linux分发版中。它生成
    具有.RPM扩展名的文件。 RPM是RedHat Package Manager(RedHat软件包管理工
    具)的缩写,类似windows的setup.exe,这一文件格式名称虽然打上了RedHat的
    标志,但理念是通用的。
      Linux的分发版本都有采用(suse,redhat, centos 等等),可以算是公认的行业标 准了

      2.rpm使用

    rpm包的简单查询指令:
      查询已安装的rpm列表 rpm –qa|grep xx  (查询所有的,过滤出我们要的)

    rpm包名基本格式:
      一个rpm包名: firefox-45.0.1-1.el6.centos.x86_64.rpm
      名称:firefox
      版本号: 45.0.1-1
      适用操作系统: el6.centos.x86_64
      表示centos6.x64位系统
      如果是i686i386表示32位系统, noarch表示通用。。

    rpm包的其它查询指令:
      rpm -qa :查询所安装的所有rpm软件包
      rpm -qa | more
      rpm -qa | grep X [rpm -qa | grep firefox ]
      rpm -q 软件包名 :查询软件包是否安装
      rpm -q firefox
      rpm -qi 软件包名 :查询软件包信息
      rpm -qi file
      rpm -ql 软件包名 :查询软件包中的文件
      rpm -ql firefox
      rpm -qf 文件全路径名 查询文件所属的软件包 (反向查询)
      rpm -qf /etc/passwd
      rpm -qf /root/install.log

    卸载rpm包:
      • 基本语法
        rpm -e RPM包的名称
      • 应用案例
      1) 删除firefox 软件包
      • 细节讨论
      1) 如果其它软件包依赖于您要卸载的软件包,卸载时则会产生错误信息。
        如: $ rpm -e foo
      removing these packages would break dependencies:foo is needed by bar-1.0-1
      2) 如果我们就是要删除 foo这个rpm 包,可以增加参数 --nodeps ,就可以强制删除,但是一
      般不推荐这样做, 因为依赖于该软件包的程序可能无法运行
        如: $ rpm -e --nodeps foo

    安装rpm包:
    基本语法
      rpm -ivh RPM包全路径名
    参数说明
      i=install 安装
      v=verbose 提示
      h=hash 进度条

       3.yum使用(推荐使用)

        rpm安装遇到依赖包会一直询问是否安装依赖包,所以更推荐用yum来安装软件

        yum提供了查找、安装、删除某一个、一组甚至全部软件包的命令,而且命令简洁而又好记。

      Yum 是一个Shell前端软件包管理器。基于RPM包管理,能够从指定
    的服务器自动下载RPM包并且安装,可以自动处理依赖性关系, 并
    且一次安装所有依赖的软件包。

    yum的基本指令
    查询yum服务器是否有需要安装的软件
    yum list|grep xx软件列表
    安装指定的yum
    yum install xxx 下载安装


    yum(选项)(参数)
    -h:显示帮助信息;
    -y:对所有的提问都回答“yes”;
    -c:指定配置文件;
    -q:安静模式;
    -v:详细模式;
    -d:设置调试等级(0-10);
    -e:设置错误等级(0-10);
    -R:设置yum处理一个命令的最大等待时间;
    -C:完全从缓存中运行,而不去下载或者更新任何头文件。

    常用命令:

    yum list

    yum install 软件名

    yum update 软件名

    yum remove 软件名

    yum info 软件名

    yum clean all 清除所有仓库缓存

       阿里云配置

    #1. 备份原有的.repo源文件
    cd  /etc/yum.repos.d
    mkdir repobak
    mv * repobak
    
    #2. 下载阿里云的源文件和第三方扩展源文件
    wget -O /etc/yum.repos.d/CentOS-Base.repo http://mirrors.aliyun.com/repo/Centos-7.repo
    
    wget -O /etc/yum.repos.d/epel.repo http://mirrors.aliyun.com/repo/epel-7.repo
    #3.清空yum缓存和创建新的缓存 yum clean all yum makecache #4.安装软件扩展源(依赖) yum install -y epel-release #5. 使用yum工具下载安装nginx yum install nginx 注意: 只要是使用yum安装的软件,都可以使用systemctl进行管理 #6. 启动nginx systemctl start ngxinx #7.浏览器访问ngix http://192.168.226.128
    
    

     三.linux运行级别

      1.指定运行级别

    运行级别说明:
        0:关机
        1:单用户(可以找回丢失的密码)相当于windows的安全模式
        2:多用户没有网络服务
        3:多用户有网络服务
        4:系统未使用保留给客户
        5:图形界面
        6:系统重启
    
    常用的级别是3和5,要修改默认运行级别可修噶文件
    /ect/iniittab文件下的id:5 initdefault这一行中的数字

     

      2.基本语法

    把运行级别从当前切换到指定的运行级别:  
      init 0/1/2/3/4/5/6
    例:init 0 关机
      init 3多用户有网络级别
    忘记root密码该如何:
      思路:用单用户模式(不需要密码就可以登录)修改密码,重启,再进入正常模式用新密码进行登录
      步骤:开机-->在开机因到时候输入enter键--->新的图形界面输入 e-->来到一个新的图形界面--->移动到第二行(编辑内核模式) 输入 e--->
    在这行最后输入 1回车键 --->再输入b进入单用户模式,进入到单用户模式就可以使用passwd命令修改root密码
  • 相关阅读:
    Codeforces 722C. Destroying Array
    Codeforces 722D. Generating Sets
    【BZOJ】3436: 小K的农场
    数论四·扩展欧几里德
    数论三·约瑟夫问题
    数论二·Eular质数筛法
    #1287 : 数论一·Miller-Rabin质数测试
    树的维护
    可持久化线段树
    【NOIP2016】天天爱跑步
  • 原文地址:https://www.cnblogs.com/tjp40922/p/10200876.html
Copyright © 2011-2022 走看看