• linux基础命令


    linux系统
    系统启动级别: /etc/inittab
    0 ---- halt 关机
    1 ---- single user mode 单用户模式
    2 ---- Multiuser,without NFS 多用户模式,不支持网络文件系统
    3 ---- Full multiuser mode 完全多用户
    4 ---- unused 未使用
    5 ---- Xll 图形化
    6 ---- reboot 重启
    ------ id:5:initdefault: 设定当前默认启动级别

    rhel6中破解密码:

    重启--》 按e截停 --》 再按e --》找到中间kernel一行,再按e --》 在quiet后,按空格,在输入一个1,然后回车 --》 按b启动 --》 进入到命令行 ,去修改密码即可;修改后重启生效

    rhel7中破解密码:

    重启 --》 按e截停 --》 找到/vmlinuz一行,在该后去添加 rd.break console=tty0 --》 ctrl+x 启动 --》进入到命令行模式,执行如下操作

    #mount -o remount,rw /sysroot 重新挂载根文件系统

    #chroot /sysroot 切换到根文件系统中

    #echo "redhat" | passwd --stdin root 修改密码

    #touch /.autorelabel 重新打标签,千万写准确;只有执行动作后,必须重新打标签

    #exit
    #exit 退出重启

    开启路由功能 echo 1 /proc/sys/net/ipv4/ip_forward
    《一》文件管理
    1.简单管理
    命令方式:命令+[选项]+[参数]
    基本命令:pwd cd(切换目录; 目录结构:倒状的树状结构。根目录 “/” 根目录无需自己定义,它是内核的功能,可以自引用。) ls 查看
    -------》根目录下常见的功能:
    /bin /sbin :binary(二进制),二进制可以执行文件(命令)
    /boot:操作系统启动文件
    /dev:设备文件
    /etc:可配置文件:存放可修改文件
    /home:普通用户家目录
    /lib /lib64:动态库文件;代码片段
    /mnt:做临时挂载使用
    /proc /sys:内存和内核映射文件
    /var:可变化文件
    /root:root用户家目录
    ls命令详解 (ls + 选项+ 参数)
    ls : -l -a -A -d -h -r -Z -R
    (一) 基本文件管理:
    ------@别名 :alias
    文件:
    查:ls -l 查看文件基本信息 文件类型:- d l c b p 权限.......等
       cat tac head tail more less
    增: touch
    改: vim
    删: rm
    复制:cp
    剪切:mv
          目录:
              增:mkdir : -p递归创建
              查:ls
              删:rmdir   rm:  -rf
              改:cp: -r 递归复制  mv:改名
      
    (二)文件压缩与解压缩
       压缩目的:节约磁盘空间 节约网络带宽 对数据加密
       压缩原理;靠一定数学算法,将文件内容重新排列
       zip (压缩打包) bzip2  gzip xz :只压缩(压缩比=(原文件大小-压缩后文件大小)/×100% 压缩比 压缩级别关系)
       tar :-cvf    -xvf    -rf    -tf   -z  -j  -J  

    (三)文件搜索
       locate :本地数据库(updatedb.conf)搜索,搜索速度快,非实时。 更新本地数据库:updatedb
       find  :根据文件基本属性搜索 ,实时搜索,慢于locate。 
     选项:type perm user group size  name atime ctime mtime
      执行:exec +动作:rm -rf... 等{} + \;
       ------扩展》特殊查看:stat(文件状态) which(命令的绝对路径) type(查看命令类型) file(查看文件内容类型)

    (四) 软链接和硬链接
    1·高级文件系统管理:****了解概念关系图解****
    文件系统划分:源数据区域 数据区域
    源数据 :inode号 block位图 inode位图 超级块
    inode作用 :存放文件基本属性信息 **指向了该文件所引用的磁盘块
    超级块 :负责管理inode和磁盘块;所有磁盘块被使用的调度器
    inode位图 :标识inode是否被占用
    block位图 : 标识block是否被占用
    目录下 :存放的为inode与文件名的对应关系
    2·硬链接;
    创建:ln 源文件 链接文件(新)
    *****特点:原文件和链接文件使用相同inode
    修改原文件,链接文件变化
    修改链接文件,原文件变化
    删除原文件或者链接文件,对方不受影响
    硬链接不能跨文件系统
    3·软链接:
    创建:ln -s 源文件 链接文件(新)
    *****特点: 原文件和链接文件使用不同的inode
    修改链接文件,原文件变化
    修改原文件,链接文件变化
    删除链接文件;原文件不受影响
    删除原文件,链接文件不可用
    软链接可以跨文件系统;也可以针对目录

    (五) 文件内容统计:wc 【-l ,-w ,-c 】 文件名

    (六)文件内容过滤:grep "字符串" 文件名

    《二》用户和用户组管理
      
    (一) 用户管理
          增:useradd 选项:-u -g -c -d -s -r -M  +用户名
          查:id    选项;-u -g -n              +用户名  存储用户基本信息文件:/etc/passwd
          删:userdel 选项:-r                    +用户名
          改:usermod 选项;-u -g -c -d -s        +用户名  修改用户密码:(一)passwd (二)echo
      -----》密码加密方式:一·单向加密:一般为提取文件或字符串的特征码
    二·双向加密:对称加密 :加密和解密使用同一种秘钥
    非对称加密:私钥和公钥;私钥加密、公钥解密;公钥加密、私钥解密
    证书 :有机构认证的公钥
    第一列 1: 代表使用md5算法加密    
    5: 代表使用sha256算法加密
        6: 代表使用sha512算法加密:

    第二列 salt:加密的杂质,随机取  

    第三列 单项加密 :定长输出,只加密不解密,雪崩效应
                  
    扩展:md5sum 加密方式
    -----》扩展:查看当前登录用户:whoami 
    查看当前系统中,有多少个用户登录:#uaers #who #w 
    查看当前登录的终端:#tty
              将用户从终端踢出:pkill -kill -t 终端名   
    在终端中切换用户: 临时切换 su

    (二)用户组管理
    增:groupadd -g +组名
    查:tail /etc/group 查看存放组的文件
    删:groupdel +组名
    改:groupmod -g +组名 修改组密码:gpasswd +组名 (存放组密码文件:/etc/gshadow)
    用户组内成员管理
    <一> user(用户方式):

    给指定组内建立新用户---> :useradd : -g (主要组) | -G(附属组)+已存在的组id或组名 +新建立的用户名

    给指定组内添加用户 ---> :usermod : -g(主要组)| -G(附属组【-a 给用户非覆盖添加附属组】)+已存在的组id或组名 +已建立的用户名

    <二> group(组方式) :指定用户为组内管理员---> : gpasswd : -A +用户名 +组名
    :指定用户为组内成员 ---> : gpasswd : -a +用户名 +组名
    :删除用户为组内 ---> : gpasswd : -d +用户名 +组名
    手动编辑文件,创建用户和组
    #vim /etc/passwd :在文件内手动添加一行

    (三)修改文件的所有者和所属组
    修改文件所属组 : chgrp +组名 +文件名
    修改文件所有者 : chown +用户名 +文件名
    一并修改 : chown +用户名.组名 +文件名
    参照修改 : chmod --reference 原文件 目标文件

    ------------存储用户基本信息的文件: /etc/passwd
    #tail /etc/passwd
    tom:x:500:500::/home/tom:/bin/bash

    该文件用冒号(:)分隔为了7段:
    第一段: 用户名
    第二段: 密码占位,x仅仅是个占位符,不是真正密码
    第三段: 用户的uid,用户的id号,可以标识用户
    第四段: 用户的gid,用户组的id
    第五段: 用户的描述信息;默认为空
    第六段: 用户的家目录
    第七段: 登录shell,来标识用户是否可登录,/bin/bash代表可登录,/sbin/nologin代表不可登录

    ------------存放密码的文件: /etc/shadow
    loring:!!:18096:0:99999:7:::
    该文件,用冒号分隔为九段:
    第一段: 用户名
    第二段: 密码
    第三段: 时间戳,距离1970年1月1日有多少天(1970年为数据元年)
    第四段: 密码最小使用周期,如果0代表可以随时修改,如果给3,代表密码至少使用3天才可以修改
    第五段: 密码的最大使用周期,99999代表没有限定,永不过期
    第六段: 密码到期前几天提醒
    第七段: 密码到期---》失效 的时间
    第八段: 密码失效--》 过期 的时间
    第九段: 保留位,未被使用

    ------------查看组: 查看存放组的文件 /etc/group
    #tail /etc/group
    group100:x:504:
    该文件用冒号分隔为了四段:
    第一段: 组名
    第二段: 组密码占位
    第三段: 组的id号,gid
    第四段: 组中的用户成员
    《三》权限管理
    一·基本权限:ugo=a
    权限: 对用户设定,能让用户对文件具有哪些能力 (*能不能删除一个文件,只跟文件所在的父目录权限有关,与对文件的权限没有任何关系*)
    增改删:chmod u;g;o;a = (rwx) 文件名
    chmod u;g;o;a + / — (rwx) 文件名
    chmod 数值方式:r=4 w=2 x=1 文件名
    --------@扩展:(umask方向掩码作用:umask决定了用户创建文件或者目录的默认权限
    #查看配置文件 /etc/profile 或 /etc/bashrc) 查:#umask 改:#umask 025
    --------@扩展:查看当前用户可使用的变量(环境变量) : #env
    二·特殊权限:对用户及用户组设定 chmod
    suid : (提权) chmod u + — s 文件
    sgid :(继承) chmod g + — s 目录
    sticky : (删除) chmod o + — s 目录或文件
    三·acl访问控制:
    查:getfacl 文件名(目录名)
    增改:setfacl -m u:用户名:权限(rwx) 文件或目录 设定默认:setfacl -d -m u:用户名:权限 文件或目录
    删:setfacl -x u:用户名 文件或目录 清空acl :setfacl -b 文件或目录
    四·系统权限:attr
    查:lsattr 文件名
    改:chattr + — i (只能查看) a (文件追加,查看,执行) A (锁定访问时间) + 文件名

    ----------------基本权限各权限对文件和目录的作用

    对文件:(总结:x权限与r 组合才有意义;r与w组不组和都有各自意义)

    ---: 不能读;不能修改;也不能执行
    r: 可以读;不能修改;也不能执行
    w: 不能读;能强制写入,原文件内容丢失;不能执行
    x: 不能读;不能修改;也不能执行;毫无意义
    rx: 可以读;不能修改;可以执行
    rw: 可以读;可以修改;不能执行
    wx: 不能读;能强制写入,原文件内容丢失;不能执行;等同于单独具有w
    rwx: 可以读;可以修改;也可以执行

    对目录:(总结:w权限与x 组合才有意义;r与x组不组和都有各自意义)

    ---: 不能查看;也不能创建文件;不能进入
    r: 能查看,只能查看一级子目录;不能创建文件;也不能进入
    w: 不能查看;不能创建文件;不能进入;毫无意义
    x: 不能查看;不能创建文件;能够进入;对子目录的操作不受影响
    rx: 能正常查看;不能创建文件;能够进入
    rw: 能查看,只能查看一级子目录;不能进入;等同于单独具有r权限
    wx: 不能查看;能创建和删除文件,但是删除文件不支持通配(*?);能够进入
    rwx: 能正常查看;能创建和删除文件;能够进入


    《四》磁盘管理
    一·基本磁盘管理
    磁盘类型:----磁盘命名:----磁盘结构:----- 基础逻辑划分:-----

    磁盘类型:
    并口设备: IDE hdx
    串口设备: SATA SCSI sdx
    磁盘结构:
    盘片、主轴、磁头、机械臂、永磁铁、停泊区、空气过滤器

    基础的逻辑划分:
    扇区: 单位时间内,磁头划过的区域;扇区固定大小为512字节
    磁道: 磁头划过的周长
    柱面: 将磁道向多盘片延伸的一个柱状;固定大小为8MB

    MBR: master boot record 主引导记录
    MBR占用硬盘的第一个扇区(前512字节);不属于任何分区
    MBR分为三部分:
    446字节:bootloader,设备运行时,运行的第一段代码;可以去加载驱动或内核
    64字节 :分区表;每个分区占16字节
    2字节 :标识整个MBR是否可用

    查:fdisk -l [设备名]
    增删改:fdisk 磁盘名 --help
    ----->通知内核重读分区列表 :rhel6 (partx -a 分区名) rhel7 (partprobe)
    ----->格式化 : mkfs -t ext4 /dev/sdb swap分区格式化:mkswap /dev/sdb
    **低级格式化:装载MBR..... 高级格式化:创建文件系统**
    ----->挂载:为文件系统提供入口:1·手动挂载(临时):mount 设备名 挂载点
    2·自动挂载(永久):利用文件/etc/fstab 三种:一设备名 二uuid 三卷标 # mount -a
    (查看设备UUID:blkid 查看磁盘分区情况:lsblk 查看卷标:e2label 设备名)
    3·查看挂载 :df -Th 或 mount swap查看验证:swapon -s 或 free -m
    4·挂载选项 :-o remount(不卸载挂载)
    ----->卸载 :umount 挂载点或设备名
    二·swap分区 :交换分区 (buffer:缓冲 cache:缓存)-->加速缓存
    swap分区作用: 页面的换进换出,来临时充当内存角色
    扩展:查看系统中页面的换进换出 #dstat 扩展:系统中的hash缓存查看:#hash 清空缓存:#hash -r
    ----->格式化 : swap分区格式化:mkswap /dev/sdb
    ----->开启使用: swapon 文件系统 (关闭:swapoff 文件系统)
    ----->查看挂载: swap查看验证:swapon -s 或 free -m
    三·靠文件实现
    --------->创建文件: dd if= of= bs= [seek=] count=
    扩展:查看文件真实大小 :#du -h
    四·逻辑卷:
    在原有分区基础上,再抽象出一层;在线文件系统扩展(拉伸)
    物理卷管理:指定物理卷 :pvcreate 分区
    查看物理卷 :pvs pvscan pvdisplay 删除物理卷 :pvremove 分区名
    卷组管理 :创建卷组 :vgcreate 【-s 大小(指定pe块大小)】 卷组名 物理卷名
    查看卷组 :vgs vgscan vgdisplay 删除卷组 :vgremove 卷组名
    扩展卷组 :vgextend 卷组名 新物理卷名
    缩减卷组 :vgreduce 卷组名 物理卷名 (移除物理卷之前查看pvdisplay中所移除的卷是否被占用)
    修改卷组名 :vgrename 源卷组名 新卷组名
    逻辑卷管理:创建逻辑卷 :lvcreate -l pe数量 -n 逻辑卷名 卷组名
    lvcreate -L 逻辑卷大小 -n 逻辑卷名 卷组名
    查看逻辑卷 :lvs lvscan lvdisplay
    删除逻辑卷 :lvremove :逻辑卷的绝对路径
    扩展逻辑卷 :lvextend -L 500M 逻辑卷绝对路径 代表扩展到500M
    lvextend -L +500M 逻辑卷绝对路径 代表多添加500M
    逻辑卷改名 :lvrename 旧卷名 新卷名
    五·磁盘配额
    限定用户或者用户组对磁盘的使用量
    1,分区·通知内核·格式化
    2·挂载:添加挂载选项 ---> -o usrquota,grpquota /dev/sdb 挂载点
    3·磁盘配额初始化:(生成记录配额数据文件)quotacheck -cugv 挂载点 (#需设定selinux#)
    4·开启磁盘配额 :quotaon 挂载点 (关闭:quotaoff)
    5·设定磁盘配额 :edquota -u 用户名 【-g 组名】 -f 挂载点
    6`查看磁盘配额 :repquota -a
    7·设定宽限时间 :edquota -t (宽限时间作用:.......)
    ------@扩展:设定selinux :工作模式(三种)permissive(警告不拒绝) enforcing(拒绝) disabeld(禁用)
    临时修改 setenforce 0 查看为:permissive
    永久修改 vim /etc/selinux/config 中对SELINUX=? 进行修改
    清空防火墙规则 :查看规则#iptables -L 清空规则#iptables -F
    六·靠parted分区:超2T,GPT格式,突破4个主分区限制,(支持非交互)
    1·分区格式切换 :#parted 分区名 mklabel msdos或gpt (切换数据丢失)
    2·非交互创建(可交互):#parted 分区名 mkpart part-type [logical/physical] 【fs-type:ext2】 start-size end-size
    3·非交互查看 :#parted 分区名 print
    4·非交互删除 :#parted 分区名 rm 分区号
    七·raid (了解功能)
    raid :独立冗余磁盘阵列
    硬件 :硬raid 一·靠嵌入主板上的raid控制器实现;性能高,价格贵,不灵活
    二·靠raid卡实现:性能略低,价格便宜,较灵活
    软件 :软件模拟方式实现,靠内核功能;用户空间管理工具(命令)
    raid级别 : 代表了硬盘阵列方式不同
    了解读写冗余利用率 : *raid0:条带化技术(条带拆分) *raid1:靠镜像技术(镜像备份) *raid5:靠校验技术(所有磁盘轮流做校验)
    *组合:raid10 raid01 raid50
    raid10: raid10效率要高于raid01
    至少4块磁盘
    写性能: 会提升
    读性能: 会提升
    冗余能力: 可以任意损坏2块磁盘(不能同组)与raid01比较,较可靠
    磁盘利用率: 50%

    raid01:
    至少4块磁盘
    写性能: 会提升
    读性能: 会提升
    冗余能力: 可以任意损坏2块磁盘(可以损坏任意一组,不能为相同编号)
    磁盘利用率: 50%

    raid50:
    至少6块磁盘
    写性能: 会提升
    读性能: 会提升
    冗余能力: 每组可以任意损坏一块
    磁盘利用率: 2/3 * 100%
    了解:raid4 raid6 raid7(磁盘独立,独立cpu)
    《五》软件管理
    概念:程序:程序员编写的能实现某些功能的代码;以人类可读语言编写
    软件:程序+程序运行时所需的文件
    模块:能实现某些功能的代码片段;动态库文件(.so-->share object);不同的引用,实现的功能可能略有不同,因为调用模块时,
    可以给模块传递参数;windows中以.dll结尾的文件,为动态库文件 *****
    函数:能实现某些功能的代码片段,一般体积小于模块;模块由多个函数组成
    程序运行的方式: 编译运行 (高级语言) 解释运行 (脚本语言)
    软件安装的本质:拷贝文件、创建文件、创建链接;生成新文件
    一.redhat中软件的类型:
    源码包 :将程序员编写的程序+程序所需的文件一起打包

    rpm格式 :将源码包制作成为rpm格式,在制作中已经做了编译处理

    二进制格式 :将安装后软件的所有相关文件打包,解压可以直接使用

    对平台的依赖性:
    二进制格式平台依赖性最高,软件版本和能使用的系统版本必须对应
    rpm格式对平台依赖略高,有些软件是不能做系统版本运行
    源码包对平台依赖性最低,移植性最高,可以多系统版本运行

    二·rpm
    1·rpm软件包位置 : 官网:redhat fedora(EPEL) centos(vaults.centos.org)
    安装光盘中:虚拟光驱 .iso文件 ----->挂载使用
    2·安装软件包 :#rpm -ivh 软件包绝对路径
    3·查看是否安装 :#rpm -q 软件包短名
    4·卸载软件 :#rpm -e 软件包短名
    5·查看所有安装软件 :#rpm -qa
    6·查看已安装软件下的文件:#rpm -ql 软件包短名
    7·查看已安装软件详细信息:#rpm -qi 软件包短名
    a·查看未安装软件详细信息:#rpm -qpi 软件包全名
    b·查看未安装软件下的文件:#rpm -qpl 软件包全名
    c·查看软件依赖关系 :已安装#rpm -qR 短名 未安装#rpm -qpR 全名
    -----》》&·反向查看:文件由哪个软件安装 :#rpm -qf 文件名
    8·改:更新软件:#rpm -U 软件包全名
    9·导入秘钥(公钥):“谁提供软件包,谁提供秘钥” :#rpm --import
    @测试动作:不会真正执行 : #rpm 【选项】--test 软件包名
    -----执行完动作后,查看执行命令的真假:#echo $? 输出值为0代表为真;其他为假
    跳过依赖关系:#rpm 【选项】 --nodeps
    三·yum工具
    为解决rpm软件包之间的依赖关系 -----靠repodata目录下的repomd.xml文件实现
    1·配置yum源 :***创建yum仓库,告诉yum工具repodata目录的位置*** -----》vim /etc/yum.repos.d/xxx.repo {保证yum仓库都可用}
    2·查看可用软件包 :#yum list
    3·查看可用的yum仓库 :#yum repolist
    4·yum子命令 :#yum `clean all ` install `update`update-to`check-update`remove`info`
    provides`makecache`search`localinstall`reinstall`group...`
    5·下载软件包 :#yumdownloader 软件包名
    6·构建本地yum源 :创建本地依赖包-#createrepo 软件包所在目录 (之后在创建yum源)
    四·编译安装:针对源码包
    1·下载软件包并解压 :tar zxvf nginx-1.6.0.tar.gz
    2·预处理 :作用: 向程序中传递参数值;程序要引用哪些模块;决定了软件安装后具有哪些特点和功能
    ./configuer --help 预处理帮助:当前软件有效 (--prefix=/usr/local/nginx)
    3·编译 :make
    4·编译安装 :make install
    5·启用该软件 :进入安装目录下的sbin/ #./nginx 启动
    6·验证是否启动 :查看网络连接状态 #netstat -anltup


    《六》进程管理
    一·查看进程
    1·静态查看:ps -elf -aux ;pstree -aup
    ps {没有加任何选项,默认显示依赖当前终端产生的进程,每个进程都需要有自己的id号,系统中唯一,信息保存在/proc目录}
    ps -e 显示所有的进程,包括其它终端和不依赖终端进程
    ps -l long;长格式显示
    ps -f full;全格式显示

    ps -a 显示所有依赖终端的进程
    ps -u VSZ: 虚拟内存指令集 **** RSS: 常驻内存指令集 ****
    ps -x 查看所有进程,包括不依赖终端的进程

    pstree -a 显示所有进程,同名进程会展开;进程可以同名,但是不能使用相同pid
    pstree -u 显示进程的所有者
    pstree -p 显示进程的pid号
    2·动态查看
    #top PR: PRI进程的优先级 NI: nice值 VIRT:虚拟内存指令集 RES:常驻内存指令集 SHR:共享内存
    #top -d 3 指定进程刷新时间,默认为3秒刷新一次
    二·进程前后台运行
    1·进程后台运行 :命令末端加 &
    2·查看后运行进程 :#jobs
    3·前台运行 :#fg 进程号
    4·激活后台进程 :#bg 进程号
    三·进程间通信 :杀进程
    1·进程间通信的三种方式:
    消息: message queue MQ 消息队列 rabbitMQ activeMQ
    信号: signal
    共享内存: share memery
    2·靠信号实现进程间通信:
    查看当前系统中支持的所有信号: #kill -l 小写的L
    常见信号:
    1的信号: 不重启进程,重读进程配置 #kill -1 进程号

    2的信号: 中断信号 #kill -2 进程号

    9的信号: Kill signal 杀进程,进程必死 #kill -9 进程号

    15的信号:Termination signal 终止信号;进程不一定死 #kill -15 进程号

    20的信号:stop 停止进程,让进程变为stopping状态 #kill -20 进程号

    18的信号:激活stop进程 #kill -18 进程号

    #killall 进程名称 杀死所有同名的进程 ****

    #pkill -U uid或用户名 根据进程的所有者杀进程

    #pkill -U apache

    #xkill 图形化杀进程
    四·进程优先级:
    优先级-nice值=固定值 (每次所有进程的修改都基于固定值上变化)
    nice值越小,优先级数值越小,代表了优先级越高
    #nice -优先级 程序 #nice -19 ./a.sh &
    在运行时,指定优先级 #renice nice值 进程的pid
    《七》计划任务
    一·一次性计划任务 at命令
    1·创建计划任务 : #at 时间 [日期] at>ctrl+d(结束编写)
    2·查看计划任务 : #atq
    3·删除计划任务 : #atrm 计划任务号
    4·查看计划任务详细信息: #at -c 计划任务号
    二·周期性计划任务: crond 服务实现
    1·安装软件 :#yum install -y cronie
    2·查看安装哪些文件:
    3·创建计划任务 :#crontab -u 用户名 -e
    4·管理服务 :#service crond restart 重启
    5·查看计划任务 :#crontab -u 用户名 -l
    6·清空计划任务 :#crontab -u 用户名 -r
    7·时间的编写 :
    0 10 * * * echo hello 每天10:00整运行 *****
    25 10 * * * echo hello 每天10:25运行
    1,5,9 10 * * * echo hello 每天10:01、10:05和10:09运行
    1-9 10 * * * echo hello 每天10:01到10:09运行
    * 10 * * * echo hello 每天10:00到10:59,每分钟运行一次
    1-30/3 10 * * * echo hello 每天10:01到10:30之间,每个3分钟运行一次
    */5 10 * * * echo hello 在10点一段,每隔5分钟运行一次
    */5 * * * * echo hello 每隔五分钟运行一次
    8·编辑文件实现: /var/spool/cron目录中编写
    《八》时间同步---ntp服务(ntp协议)*****端口123
    ----@扩展:
    1·系统时间; 查看:date 修改:date -s "2019-09-02 08:00:00"
    2·硬件时间; 查看:hwclock 修改:通过bios修改
    3·系统时间同步到硬件: #hwclock --systohc
    4·硬件时间同步到系统:#hwclock --hctosys
    一. rhel6: ntp服务
    1·安装软件: #yum install -y ntp
    2·查看安装哪些文件:
    3·修改配置文件:谁能来访问我服务器(restrict),我与谁同步(server)
    *server最多可以指定4个,而且是自上而下搜索同步;一旦与其中一个同步,则不再向下搜索
    127.127.1. 是本地时钟的ip地址
    4·配置客户端:靠命令:#ntpdate 服务器ip
    靠ntp服务:如果当客户端,只需修改server,将server地址执行时间服务器的ip地址
    5·重启服务
    二· rhel7:chrony服务 (同理ntp)
    《九》日志管理(rhel6以后:rsyslog服务)
    -----@扩展: rhel6中 查看内核:#uname -r 查看系统版本用:#cat /etc/redhat-release 或者 #cat /etc/issue 查看cpu:#lscpu 或者 #cat /proc/cpuinfo
    一·服务简介

    1.修改配置文件:{#$ModLoad imudp
    #$UDPServerRun} : 该段 实现日志的远端存储,要开启该项

    modload imudp 代表加载了该模块

    查看系统中可使用的模块:#lsmod

    $IncludeConfig /etc/rsyslog.d/*.conf 在/etc/rsyslog.d下,所有以.conf结尾的文件,也是配置文件的一部分

    *.info;mail.none;authpriv.none;cron.none /var/log/messages

    $template SpiceTmpl,"%TIMESTAMP%.%TIMESTAMP:::date-subseconds% %syslogtag% %syslogseverity-text%:%msg:::sp-if-no-1st-sp%%msg:::drop-last-lf% "
    这是用来定义记录日志的格式,两个%间的字符串叫作宏,可以理解成是变量
    二·分析日志文件
    1·分类:内核及系统日志:(/var/log/messages) 用户日志(/var/log/wtmp /var/log/btmp /var/log/lastlog):程序日志(程序单独):
    2·查询当前登录的用户情况:users,who,w
    查询用户登录的历史记录:last,lastb
    3·常见日志文件:
    /var/log/cron crond 计划任务产生的事件信息
    /var/log/dmesg 引导过程中产生的信息
    /var/log/maillog 记录电子邮件活动信息
    /var/log/lastlog 用户最近登录信息
    /var/log/secure 与认证有关的信息
    /var/log/wtmp 记录用户登录、注销、系统启动、关键等信息
    /var/log/btmp 记录失败或者是错误的登录信息和验证
    /var/log/messages 记录系统一般信息的日志 (常用)
    4·日志消息的级别
    0 emerg 会导致主机系统不可用的情况
    1 alert 必须马上采取措施解决的问题
    2 crit 比较严重的情况
    3 err 运行出现问题
    4 warning 可能影响系统功能,需要提醒用户的重要事件
    5 notice 不会影响正常功能,但是需要注意的事件
    6 info 一般信息
    7 debug 程序或系统调试信息等
    8 none 不记录
    4·服务名称

    auth # 认证相关的 (pam)
    authpriv # 权限,授权相关的 (ssh,ftp等)
    cron # 任务计划相关的
    daemon # 守护进程相关的
    kern # 内核相关的
    lpr # 打印相关的
    mail # 邮件相关的
    mark # 标记相关的
    news # 新闻相关的
    security # 安全相关的,与auth 类似
    syslog # syslog自己的
    user # 用户相关的
    uucp # unix to unix cp 相关的
    local 0 到 local 7 # 用户自定义使用,通常都是在配置文件中定义的
    * # *表示所有的facility
    5·日志切割:logrotate
    编辑滚动文件:
    #vim /etc/logrorate.d/haha

    /var/log/loring {
    daily ------weekly,monthly
    create
    rotate 4 -----保存4个旧的日志文件
    dateext -----是否使用日期作为旧日志文件名的一部分
    compress -----是否对旧文件压缩
    }
    minsize 1M 文件最小要达到1M才会滚动
    maxsize 100M 文件一旦到达了该值,立即滚动
    missingok 没有滚动成功忽略通知

    手动滚动:
    #logrotate -vf 文件名
    《十》启动流程
    ***** 一·流程
    肉击 --》
    主板供电 --》
    固件bios加电自检 --》
    检测硬件 --》
    根据bios决定启动介质 --》
    寻找磁盘上的MBR;加载bootloader --》
    由bootloader去引导和加载内核 (根据grub.conf文件指定的位置)--》
    加载内核到内存; 开始一个临时文件系统,负责解压和运行内核 --》
    init进程 --》
    系统初始化 --》
    读取各种文件,开启进程。

    各种文件:
    /etc/inittab判断启动级别 --》 读取/etc/rc.d/rcX.d下的脚本文件,运行各种应用软件 --》/etc/rc.local文件,进入到登录界面 --》输入用户账号和密码 --》 /etc/profile
    二·概念点
    1· BIOS(Basic Input Output System,基本输入输出系统)
    2· MBR:Master Boot Record主引导记录
    大小是512字节,其中bootloader占了446字节,分区表占了64字节,最后2字节是结束标志(是否可用)
    《十一》自动挂载 (autofs)
    实现文件系统(分区)自动挂载功能,一旦使用则挂载,一定时间不使用会自动卸载


    ------@@

    date命令使用:
    查看时间:
    #man date
    %d 日
    %D same as %m/%d/%y
    %F same as %Y-%m-%d
    %H 小时;24小时制
    %I 小时;12小时制
    %j 今天是一年中的第几天
    %m 月
    %M 分钟
    %S 秒
    %s 时间戳
    %Y 年,完整格式[2019]
    %y 年,显示后两位

    #date 显示时间+日期

    #date +%Y-%m-%d 显示年月日,其中-是分隔符,可以自定义

    #date +%H:%M:%S

    修改时间:

    #date -s "年-月-日 小时:分钟:秒"

    #date -s "2019-8-8 10:10:00"


    创建一个文件,文件名中具有日期或时间: *****

    #touch hello-`date +%F`.txt

    `` : 在反单引号中,写一个date命令;去引用引号中命令执行的结果

    #touch hello-$(date +%F).txt

    $()的作用等同于``,都代表了命令替换,替换命令执行的结果

    ------------------------ Windows 网络命令 ----------------------------------------------

    1.ping
    作用:检测自己和目标主机的连通性,默认ping4次,ping包使用的协议为ICMP协议,
    -t 持续ping目标主机直到收到停止信号 结束使用ctrl+c

    -a 将目标IP地址解析成为主机名
    例:ping -a 192.168.0.24
    正在 Ping PJW4YP95CDD5ITZ [192.168.0.24] 具有 32 字节的数据:
    PJW4YP95CDD5ITZ 为主机名

    -n 对目标主机ping的次数
    例:ping -n 3 192.168.0.1

    -l ping包的大小
    ping包默认大小为32字节,最多指定大小为65500字节
    例:ping -l 3000 192.168.0.1

    *-f 设置IP包的DF位
    *DF:不进行分片(物理设备有最大发送数据大小的,一般以太网限制为1500)

    2.ipconfig
    作用:查看主机的配置信息,默认列出所有网卡的配置信息
    /all 显示所有适配器的TCP/IP配置
    /renew 更新适配器DHCP配置
    /release 释放IP地址
    /displaydns 显示DNS缓存信息


    3.nslookup
    作用:做DNS查询
    例:nslookup www.baudu.com或 ping www.baudu.com
    -querytype 查询类型
    例:nslookup -querytype=mx baidu.com 查询这个域内的邮件服务记录


    4.arp
    查询ARP记录(IP地址到MAC地址)
    -a 显示所有ARP信息

    -s 绑定静态ARP
    例:arp -s IP地址 MAC地址

    -d 删除ARP信息
    ARP -d IP地址

    5.netstat
    -a 显示所有连接及监听端口
    -e 显示以太网信息
    -n 不进行IP到主机的解析
    -p 只显示指定的协议
    -s 显示每个协议的状态

    6.tracert
    作用:用来做追踪的,底层也是用ICMP协议,用来追踪自己到目标经过了多少个路由器
    -d 不进行IP地址到主机名的解析
    例:tracert 主机名
    -h 指定最大的搜索跳数
    例: tracert -h 5 主机名
    -w 超时时间


    7.route
    作用:查看当前主机上路由表的
    route print 打印路由表
    route add 网段 子网掩码 网关 跳数 添加路由条目
    route change 网段 子网掩码 网段 子网掩码 更改路由条目
    route delete 网段 删除路由条目


  • 相关阅读:
    python3 入门
    Python2 的列表排序
    数据库阻塞SQL的隔离级别
    数据库阻塞讲解设计应用程序时避免阻塞的八个准则
    DELPHI学习简单类型
    DELPHI学习结构类型
    InsideVCL第3章面向对象程序语言和Framework
    数据库阻塞分析死锁并处理
    面向对象开发实践之路
    DELPHI hint 的应用
  • 原文地址:https://www.cnblogs.com/zhangshan-log/p/13745221.html
Copyright © 2020-2023  润新知