Linux服务器运维宝典(二)

  1. 用户、用户组:
    1. 用户组管理(需要用 root 用户执行):
      1. 创建用户组:
        groundadd  用户组名
      2. 删除用户组:
        groupdel  用户组名
      3. 用户添加组:
        gpasswd [-M -a -d] 用户名    用户组
        1. 空:表示给群组设置密码,仅 root 用户
        2. -M:将多个用户加入群组,用户以 ' ,' 分割,仅 root 用户
        3. -a:将用户添加到群组中
        4. -d:将用户从组群中移除
      4. 用户管理(需要 root 用户执行):
        1. 创建用户:
          useradd [-g  -d]  用户名
          1. -g:指定用户的组
            1. 不指定 -g,会创建同名组并自动加入
            2. 指定 -g 需要组已经存在,如已经存在同组名,必须使用 -g
          2. -d:指定用户 HOME 目录
            1. 不指定:HOME 目录默认在: /home/用户名
        2. 删除用户:
          userdel  [-r]  用户名
          1. -r:删除用户的 HOME 目录
            1. 不使用 -r:删除用户时,HOME 目录保存
        3. 查看用户所属组:
          id  [用户名]
          1. 用户名:被查看的用户,如果不填写,则查看自身
        4. 修改用户所属组:
          usermod  -aG  用户组  用户名
          1. 将指定用户加入指定的用户组
        5. getent:
          getent  passwd   查看当前系统中有哪些用户
          getent  group    查看当前系统中有哪些组
          1. 用户信息为:
            1. 用户名:x(密码):用户ID:组ID:描述信息(无用):HOME目录:执行终端(默认 bash)
  2. ALC权限命令:
    1. getfacl:查看 ACL 权限命令
      1. 语法:getfacl 文件名(目录名)
    2. setfacl:设置 ACL 权限
      1. 语法:
        setfacl  [-m -R]  文件名
        1. -m:设定 ACL 权限
          1. 给用户设置: u:用户名:权限
          2. 给用户组设置:g:组名:权限
        2. -R:递归设定 ACL 权限
  3. 权限控制:
    1. 权限细节:
      1. 1:表示文件、文件夹的权限控制信息
        1. 文件细节
        2. 首位:
          1. - :表示文件
          2. d:表示文件夹
          3. l:表示软连接
        3. 属主权限:
          1. r:可读
          2. w:可写
          3. x:可执行
        4. 属组权限:
          1. r:可读
          2. w:可写
          3. x:可执行
        5. 其他用户:
          1. r:可读
          2. w:可写
          3. x:可执行
      2.  2:表示文件、文件夹所属组
      3.  3:表示文件、文件夹的权限信息
  4. chmod:修改文件、文件夹的权限信息
    1. 注意:只有文件、文件夹的所属用户或 root 用户可以修改
    2. 语法:
      chmod  [-R] 权限  文件或文件夹
      1. -R:对文件内的全部内容应用同样的操作
    3. 权限的数字序号:
      1. 权限可以用 3 位数字来代表,第一位数字表示属主,第二位表示属组,第三位表示其他用户
      2. r 记为 4,w 记为 2,x 记为 1:
        1. 0:无任何权限:---
        2. 1:仅有 x 权限:--x
        3. 2:仅有 w 权限:-w-
        4. 3:有 w 和 x 权限:-wx
        5. 4:仅有 r 权限:r--
        6. 5:有 r 和 x 权限:r-x
        7. 6:有 r 和 w 权限:rw-
        8. 7:有全部权限:rwx
  5. chown:修改文件、文件夹的所属用户和用户主
    1. 注意:普通用户无法修改所属组为其它用户或组,所以此命令只适用于 root用户执行
    2. 语法:
      chown  [-R]  [用户] [:] [用户组]  文件或文件夹
      1. -R:同 chmod,对文件夹内部全部内容应用相同规则
      2. 用户:修改所属用户
      3. 用户组:修改所属用户组
      4. :用于分隔用户和用户组
  6. 快捷键:
    1. 强制停止:ctrl + c
    2. 退出或登录:ctrl + d
    3. 查询历史命令:history
    4. 历史搜索命令:
      1. !:命令前缀
      2. ctrl + r:输入内容匹配历史命令
        1. 回车直接可以执行
        2. 键盘左右键,可以得到此命令(不执行)
      3. 光标移动快捷键:
        1. ctrl + a:跳到命令开头
        2. ctrl + e:跳到命令结尾
        3. ctrl + 键盘左键:向左跳一个单词
        4. ctrl + 键盘右键:向右跳一个单词
      4. 清屏:
        1. ctrl + l:清空终端内容
        2. clear:同样效果
  7. 软件安装
    1. yum:Linux命令行内的 "应用商店"
      1. 注意:
        1. yum 命令需要 root 权限或使用 sudo 提权
        2. yun 需要联网
      2. 语法:
        chown  [-R]  [用户] [:] [用户组]  文件或文件夹
        1. -y:自动确认,无需收到确认安装或卸载过程
        2. install:安装
        3. remove:卸载
        4. search:搜索
  8. systemctl 命令:
    1. Linux 系统很多软件(内置或第三方)均支持使用 systemctl 命令:
      1. 启动、停止、开机自启
    2. 能够被 systemctl 管理的软件, 
    3. 语法:
      systemctl start | stop | status |enable | disable  服务名
      1. start:启动
      2. stop:关闭
      3. status:查看状态
      4. enable:开启开机自启
      5. disable:关闭开机自启
    4. 系统内置的服务:
      1.  NetworkManager:主网络服务
      2. network:副网络服务
      3. firewalld:防火墙服务
      4. sshd:ssh服务(FinalShell 远程登录,Linux 使用的就是这个服务)
    5. 第三方软件安装后也可以 systemctl 进行控制
      1. yum  install -y  ntp:安装 ntp 软件
        1. 可以通过 ntpd 服务名,配合 systemctl 进行控制
      2. yum  install  -y  httpd:安装 apache 服务软件
        1. 可以通过 httpd 服务名,配合 systemctl 进行控制
    6. 注意:部分软件安装后没有集成到 systemctl 中,我们可以手动添加
  9. 软连接:
    1. 在系统中创建软连接,可以将文件、文件夹连接到其它位置
    2. 类似 windows 系统中 "快捷键"
    3. In:创建软连接
      ln -s  参数1  参数2
      1. -s:创建软链接
      2. 参数1:被链接的文件或文件夹
      3. 参数2:要链接去的目的地
    4. 例:
      ln -s /home/centos/dir1 /dir1
      
  10. data:在命令行中查看系统的时间
    1. 语法:
      date [-d] [+格式化字符串]
      1. -d:按照给定的字符串显示日期,一般用于日期计算
        date -d "+1 day" +%Y-%m+%d
        date -d "-1 day" +%Y-%m+%d
        date -d "+1 mouth" +%Y-%m+%d
        date -d "-1 mouth +%Y-%m+%d
        date -d "+1 year" +%Y-%m+%d
        date -d "-1 year" +%Y-%m+%d
      2. 时间标记:
        1. year:年
        2. Month:月
        3. day:天
        4. hour:小时
        5. Minute:分钟
        6. second:秒
      3. -d 选项可和格式化字符配合一起使用
    2. 格式化字符串:通过特定的字符串标记,来控制显示的日期格式
      1. %Y:年
      2. %y:年份后两位数字(00 - 99)
      3. %m:月份(01 - 12)
      4. %d:日(01 - 31)
      5. %H:小时(00 - 23)
      6. %M:分钟(00 - 59)
      7. %S:秒(00 - 60)
      8. %s:自 1970-01-01 00:00:00 UTC 到现在的秒数
    3. 查看的日期不准确:
      1. 因为:系统默认时区非中国的东八区
      2. 切换到东八区:
        1.删除时间信息
        rm -f /etc/localtime
        
        2.创建软链接。添加时间信息
        ln -s /usr/share/zoneinfo/Asia/Shanghai /etc/localtime
      3. ntp 程序:自动校准时间
        1.安装ntp
        yum -y install ntp
        
        2.设置开机自启
        systemctl start ntpd
        systemctl enable ntpd
        
        3.手动校准
        ntpdate -u ntp.aliyun.com
  11. IP地址:
    1. 通过命令:ifconfig 查看本机的 ip 地址,如无法使用 ifconfig 命令,可以安装:
      yum -y install net-tools
    2. 特殊 IP 地址:
      1. 127.0.0.1:代指本机
      2. 0.0.0.0:特殊IP地址
        1. 可以用于代指本机
        2. 可以在端口绑定中用来绑定关系
        3. 在一些 IP 地址限制中,表示所有 IP 的意思,如:放行规则设置为 0.0.0.0,表示允许任意 IP 访问
    3. 主机名:
      1. 查询:hostname
      2. 修改主机名:
        hostnamectl set-hostname 主机名
  12. 域名解析(主机名映射):
    1. 主机名映射:可以通过主机名找到对应计算机的 IP 地址
    2. 先通过系统本地的目录去寻找 IP 地址,如果没有再去公开的 DNS 服务器去查找
  13. 虚拟机配置固定 IP:
    1. DHCP:动态获取 IP 地址,即每次重启设备后都获取依次,可能导致 IP 频繁变更
    2. 为什么需要固定 IP:
      1. 原因1:如果 IP 地址经常变化,我们就要频繁修改适配
      2. 原因2:IP 频繁更改,需要频繁更新映射关系
    3. 在 VMware Workstation中配置固定 IP:
      1. 在 VMware Workstation(或 Fusion)中配置 IP 地址网关和网段(IP 地址的范围)
      2. 在 Linux 系统中手动修改配置文件,固定 IP
        1. 第一步:
        2. 第二步:
          1. 使用 vim 编辑 /etc/sysconfig/network-scripts/ifcfg-文件名
          2. 填写如下:
          3. 执行:
            systemctl restart network
  14. ping:检查指定的网络服务器是否可联通状态:
    1. 语法:
      ping [-c num] ip或主机名
      1. -c:检查的次数
      2. 不使用 -c 将无限次持续检查
  15. wget:
    1. 非交互式的文件下载器,可以在命令行内下载网络文件
    2. 语法:
      wget [-b] url
      1. -b:后台下载,会将日志写入到当前工作目录的 wget-log 文件
      2. url:下载链接
  16. curl:
    1. 发送 http 网络请求、
    2. 可用于:下载文件、获取信息等
    3. 语法:
      curl [-O] url
      1. -O:用于下载文件,当 url 是下载链接时,可以使用此选项保存文件
      2. url:要发起请求的网络地址
  17. 端口:
    1. 是设备与外界通讯交流的出入口
      1. 计算程序之间的通讯,通过 IP 只能锁定计算机,但是无法锁定具体的程序
      2. 通过端口可以锁定计算机上具体的程序,确保程序之间进行沟通
      3. IP 相当于小区,端口相当于门牌号
    2. 端口可以分为:物理端口和虚拟端口
      1. 物理端口:又可称为接口,是可见的端口,如 USB接口,TJ45接口,HTMI接口等
      2. 虚拟接口:指计算机内部的端口,是不可见的,是用来操作系统和外部进行交互的
    3. 虚拟端口分类:
      1. 可支持 65536 个端口,分为三类来使用
      2. 公认端口:1 ~ 1023
        1. 通常用于一些系统内置或知名程序的预留使用,如 SSH 服务的 22 端口,HTTPS 服务的 443端口。
        2. 非特殊需要,不要占用此范围的端口
      3. 注册端口:1024 ~ 49151
        1. 通常可以随意使用,用于松散的绑定一些程序或服务
      4. 动态端口:49152 ~ 65535
        1. 通常不会固定绑定的程序,而是当程序对外进行网络连接时,用于临时使用
  18. 查看端口占用情况:
    1. nmap:查看端口
      1. 安装 nmap:
        yum -y install nmap
      2. 语法:
        nmap  被查看的 IP 地址
    2. netstat:查看指定端口的占用情况
      1. 安装 netstat:
        yum -y install net-tools
      2. 语法:
        netstat -anp | grep 端口号
  19. 进程:
    1. 每个程序在运行的时候,会注册一个进程
    2. 每个进程都分配一个独有的进程 ID(进程号)
  20. ps:
    1. 查看 Linux 系统中的进程信息
    2. 语法:配个管道命令符使用
      ps [-e -f]
      1. -e:显示出全部的进程
      2. -f:以完全格式化的形式展示信息(展示全部信息)
      3. 固定用法:ps  -ef  列出全部进程的全部信息
    3. 进程信息:
    4. 从左到右分别是:
      1. UID:进程所属的用户 ID
      2. PID:进程的进程号 ID
      3. 进程的父 ID(启动此进程的其他进程)
      4. C:此进程的 CPU 占用率(百分比)
      5. STIME:进程的启动时间
      6. TTY:启动此进程的终端序号,如显示 ?:表示非终端启动 
      7. TIME:进程占 CPU 的时间
      8. CMD:进程对应的名称或启动路径或启动命令
  21. kill:关闭进程
    1. 语法:
      kill [-9] 进程ID
    2. -9:表示强制关闭进程
      1. 不使用此选项会向进程发送信号要求其关闭,但是否关闭看进程自身的处理机制
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值