zoukankan      html  css  js  c++  java
  • Linux04

    1.定时任务调度

    2.磁盘分区 磁盘管理

    3.网络配置

    4.进程管理

    5.动态监听进程

    6.rpm-yum

    一.定时任务调度

    示意图:

     1.基本语法

    crontab [选项]
    
        -e : bianji crontab定时任务
        -l : 查询crontab
        -r : 删除当前用户所有的crontab任务
    
    例子:
    每分钟执行查看一次/ect目录,把目录内容写进/tml/a.txt下
    
    具体实现步骤:
    1.crontab –e
    2.*/ 1 * * * * ls -l /etc >> /tmp/a.txt
    3.保存退出

    2.参数细节说明

    时间参数案例:
    1.每天22点45分执行
    2.每周一的17点执行
    3.每月1号的15号的凌晨5点执行
    4.每周一到周五的凌晨4点40份执行
    5.每天的凌晨4点,每隔10分钟执行一次命令

    3.案例

    1.每隔 1 分钟,就将当前的日期信息,追加到 /tmp/mydate  文件中
    2.每隔 1 分钟, 将当前日期和日历都追加到 /home/mycal  文件中

    二.磁盘分区 磁盘管理

    1.分区方式 有2种分区方式

    分区基础知识

    mbr分区:
    1.最多支持四个主分区
    2.系统只能安装在主分区上
    3.扩展分区要占一个主分区
    4.mbr最大只支持2TB,但拥有最好的兼容性
    
    
    gpt分区:
    1.支持无限多个主分区(但操作系统会限制,比如windows下最多支持128个主分区)
    2.最大支持18EB的容量(1EB=1024PB)
    3.windows7 64位后支持gpt模式

    windows下的磁盘分区

     2.Linux分区

    原理介绍

    1.Linux 来说无论有几个分区,分给哪一目录使用,它归根结底就只有一个根目录,一个独立且唯一的文件结构 , 
    Linux 中每个分区都是用来组成整个文件系统的一部分
    2.Linux 采用了一种叫“载入”的处理方法,它的整个文件系统中包含了一整套的文件和目录, 且将
    一个分区和一个目录联系起来。这时要载入的一个分区将使它的存储空间在一个目录下获得

     硬盘说明

    现在主要的硬盘都是scsi硬盘
    
    linux中对scsi硬盘的标识为"sdx~"
    
    如:
    
    sda1:表示该磁盘的分区1
    
    sda2:表示该磁盘的分区2

    3.挂载点的经典案例

    需求是给我们的 Linux 系统增加一个新的硬盘,并且挂载到/home/newdisk
    
    步骤:
    1.虚拟机添加硬盘
    2.分区
        fdisk /dev/sdb
        m    选择帮助
        n    增加分区
        p    划主分区
        1    主分区1
        1    默认
        w    写入分区信息并退出
    
    3.格式化
        mkfs -t ext4 /dev/sdb1
    
    4.挂载
        mount /dev/sdb1 /home/newdisk
    
    
    5.设置自动挂载
        vim /etc/fstab
        (内容如下)
        mount -a   立即生效

     4.磁盘情况查询

    查询系统整体磁盘使用情况
    df -lh

     查询指定目录的磁盘占用情况

    du             /目录
        -h    带计量单位
        -s    指令目录占用磁盘大小
        -a    含文件
        -c  列出明细,并显示汇总值
        --max-depth=1    子目录深度
    
    例子:
    查询  /opt 目录的磁盘占用情况,深度为 1
    
    du -ach --max-depth=1 /opt

    常见案例

    1.统计/home 文件夹下文件的个数
        ls -l /home | grep '^-' | wc -l
    2.统计/home 文件夹下目录的个数
        ls -l /home | grep '^d' | wc -l
    3.统计/home 文件夹下文件的个数,包括子文件夹里的
        ls -lR /home | grep '^-' | wc -l
    4.统计文件夹下目录的个数,包括子文件夹里的
        ls -lR /home | grep '^d' | wc -l

    三.网络配置

    1.Linux网络配置原理图(NAT)

     2.查看网络ip和网关

    2.1.查看虚拟网络编辑器

    2.2修改ip地址(修改虚拟网络的ip)

     2.3查看网关

     2.4查看windows环境中的VMnet8

    网络配置(ipconfig指令)

    1.使用命令查看:ipconfig

    2.界面查看

     3.ping测试主机之间网络连通

    3.1基本语法

    ping 目标ip                测试当前服务器是否可以连接目的主机

    3.2小例子

    测试当前服务器是否可以连接百度
    ping www.baidu.com

    4.Linux网络环境配置

    4.1第一种方法(自动获取)

     此方法的缺点:

    linux 启动后会自动获取 IP,缺点是每次自动获取的
    ip 地址可能不一样。这个不适用于做服务器,因为我们的服务器的
    ip 需要时固定的。

    4.2第二种方法(指定固定ip)

    直 接 修 改 配 置 文 件 来 指 定  IP, 并 可 以 连 接 到 外 网    
    vim  /etc/sysconfig/network-scripts/ifcfg-eth0

     修改配置文件后,要重启网络服务才能生效

    service network restart

    四.进程管理

    1.基本介绍

    1.在 LINUX 中,每个执行的程序(代码)都称为一个进程。每一个进程都分配一个 ID 号
    2.每一个进程,都会对应一个父进程,而这个父进程可以复制多个子进程
    3.每个进程都可能以两种方式存在的。前台与后台,所谓前台进程就是用户目前的屏幕上可以进行操作的。
    后台进程则是实际在操作,但由于屏幕上无法看到的进程,通常使用后台方式执行
    4.一般系统的服务都是以后台进程的方式存在,而且都会常驻在系统中。直到关机才才结束

    2.显示系统执行的进程

    查看进行使用的指令是     ps ,一般来说使用的参数是 `ps -aux`,`ps -ef`,正常与`grep`连用

     

     3.指令详解

    BSD风格 详解

    user             用户名称
    pid                进程号
    %cpu            进程占用cpu百分比
    %%mem            进程占用物理内存的百分比
    vsz                进程占用虚拟内存的大小
    rss                进程占用物理内存的大小
    tty                终端名称(后台则为?)
    stat            进程状态
        S:睡眠
        s:会话的先导进程
        N:进程拥有比普通优先级更低的优先级
        R:正在运行
        D:短期等待
        Z:僵尸进程
        T:被跟踪或者被停止
    start            进程启动时间
    time            使用cpu总时间
    command            启动进程所用的命令和参数,如果过长会被截断显示

    system V 风格详解

    uid             用户id
    pid                进程id
    ppid            父进程id
    C                进程占cpu百分比
    stime            进程启动时间
    tty                终端名称(后台则为?)
    cmd                启动进程所用的命令和参数

    列子:

    查看sshd进程的父进程id是多少
        ps -ef | grep sshd

    4.终止进程kill和killall

    说明:

    若是某个进程执行一半需要停止时,或是已消了很大的系统资源时,此时可以考虑停止该进程。

    基本语法:

    kill 进程号
        -9 强迫进程立即停止
    killall 进程名称

    例子:

    1.踢掉某个非法登录用户
    2.终止远程登录服务
    sshd, 在适当时候再次重启
    sshd 服务
    
    3.终止多个 gedit  编辑器 【killall
    ,  通过进程名称来终止进程】
    4.强制杀掉一个终端
    
    ​    -9   强杀

    5.查看进程树pstree

    pstree [选项]
        -p    查看进程pid
        -u      查看进程所属用户

    6.服务(service)管理

    说明:

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

     基本使用:

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

    例子:
    1.查看当前防火墙的状况,关闭防火墙和重启防火墙(iptables)

    service这种方式关闭或者打开服务只是临时生效

    重启后,还是回到以前对服务的设置

    查看服务名:

    /etc/init.d    此文件夹下放着系统都有哪些服务
    
    ls -l /etc/init.d

     服务器运行级别(runlevel)

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

    开机流程说明:

    chkconfig指令:

    说明:
    通过 chkconfig 命令可以给每个服务的各个运行级别设置自启动/关闭

    基本语法:

    chkconfig                              查看每个服务的配置
    chkconfig 服务名                          查看具体服务的配置
    chkconfig --level 5 服务名  on/off     给服务设置是否自动启动

    例子:

    1.请显示当前系统所有服务的各个运行级别的运行状态
    2.请查看 sshd 服务的运行状态
    3.将 sshd 服务在运行级别 5 下设置为不自动启动,看看有什么效果?
    4.当运行级别为 5 时,关闭防火墙。
    5.在所有运行级别下,关闭防火墙
    6.在所有运行级别下,开启防火墙

    **chkconfig 重新设置服务后自启动或关闭,需要重启机器 reboot 才能生效

    五.动态监听进程

    说明:

    top
    与 ps 命令很相似。它们都用来显示正在执行的进程。Top 与 ps 最大的不同之处,在于
    top 在执行一段时间可以更新正在运行的的进程

    基本语法:

    top [选项]
        -d            指定每隔几秒更新,默认3秒
        -i            不显示任何闲置或者僵尸进程
        -p id号        监听指定进程
    
    
    交互操作:
    P        以cpu使用率排序,默认就这个
    M        以内存使用率排序
    N        以pid排序
    u        监听具体用户
    k        终止指定进程
    q        退出top

    六.rpm-yum

     1.rpm包的管理

    介绍:

    一种用于互联网下载包的打包及安装工具.它生成具有.RPM
    扩展名的文件。RPM
    是 RedHat
    Package Manager(RedHat 软件包管理工具)的缩写,类似
    windows 的 setup.exe

    rpm包的简单查询指令:

    rpm    –qa                查询已安装的 rpm 列表

    rpm包名的基本格式:

    一个 rpm 包名:firefox-45.0.1-1.el6.centos.x86_64.rpm
    
    firefox:名称
    45.0.1-1:版本号
    el6.centos.x86_64:centos6.X---64位

    rpm其他指令:

    rpm -q 软件包名                     查看是否已经安装
    rpm -qi 软件包名                 查看软件包信息
    rpm -ql 软件包名                 查看软件包中的文件安装位置
    rpm -qf 文件(如:/etc/passwd)     查看某个文件属于哪个rpm包

    卸载rpm包:

    rpm -e 包名
    
    例子:
    rpm -e firefox

    包依赖问题:

    如果其它软件包依赖于你要卸载的软件包,卸载时则会产生错误信息
    
     rpm -e --nodeps 包名                强制删除

    安装rpm包:

    rpm -ivh RPM 包全路径名称
    
    i:install 安装
    v:verbose 提示
    h:hash 进度条

    2.yum

    说明:

    Yum
    是一个
    [Shell ](https://baike.baidu.com/item/Shell)前端软件包管理器。
    基于 [RPM ](https://baike.baidu.com/item/RPM)包管理,能够从指定的服务器自动下载 RPM 包并且安装,可以自动处理依赖性关系,并且一次安装所有依赖的软件包。使用 yum 的前提是可以联网。 类型python中的pip

    基本指令:

    yum list|grep xx        查询yum服务器上是否有需要安装的包
    yum install xxx            下载安装
  • 相关阅读:
    _bzoj1061 [Noi2008]志愿者招募【最小费用最大流】
    _bzoj2243 [SDOI2011]染色【树链剖分】
    _bzoj1013 [JSOI2008]球形空间产生器sphere【高斯消元】
    _bzoj1002 [FJOI2007]轮状病毒【瞎搞】
    leetcode 273 Integer to English Words
    leetcode 12 Integer to Roman
    leetcode 1071 Greatest Common Divisor of Strings
    lc6 ZigZag Conversion
    lc13 Roman to Integer
    leetcode 171 Excel Sheet Column Number
  • 原文地址:https://www.cnblogs.com/zahngyu/p/12070192.html
Copyright © 2011-2022 走看看