• 【运维】Linux基础(学习笔记)


    Linux基础

    Linux概要

    • 操作系统:管理计算机软硬件的程序
    • Linux特点
      • 基本思想
        • 一切都是文件
        • 每个软件都有确定的用途
      • 支持多平台
      • 开源免费

    用户操作

    账号管理

    • 账号管理需要root权限
    • 登陆用户:su 用户名
    • 推出登陆:Ctrl + D
    • 上下键能出现之前的命令
    1. 创建用户:useradd (选项) 用户名

    2. 设置密码:passed (选项) 用户名

      • 密码不显示
      • 密码要求
        • 数字/字母
        • 大于8位
        • 不能设置回文
    3. 修改用户:usermod ...

      • 修改用户名:usermod -l rex wmh
    4. 删除用户:userdel (选项) 用户名

      • 强制删除:userdel -r -f 用户名

    显示用户信息

    • 显示登录账号的信息
    • 语法:logname [--help][--version]
    • 选项:
      1. –help:帮助
      2. –version:版本信息

    切换用户

    • 语法:su 用户名
    • 选项
      • su -c 命令 用户名:用此账户执行条命令

    用户组

    1. 创建用户组:groupadd [选项] 用户组名
    2. 修改用户组:groupmod [选项] 用户组名
    3. 查询用户所属组:groups 用户组名
    4. 删除用户组:groupdel 用户组名

    用户管理

    • 语法:gpasswd(选项)组名

    • 选项

      1. -a:添加用户到组
      2. -d:从组删除用户
      3. -A:指定管理员
      4. -M:指定组成员和-A的用途差不多
      5. -r:删除密码
      6. -R:限制用户登入组,只有组中的成员才可以用newgrp加入该组。
    • 查看组内成员: grep 'kafazu' /etc/group

    系统管理

    日期管理

    • 查询日期:date [参数]
    • 选项
      1. -d<字符串>:显示字符串所指的日期与时间,字符串加双引号
        • 字符串格式:“yyyy-mm-dd hh:mm:ss”
      2. -s<字符串>:根据字符串来设置日期与时间,字符串加双引号
        • 需要root权限
      3. -u:显示GMT
        • CST:北京时间
      4. –help:帮助
      5. –version :显示版本信息

    id命令

    • 查询登录账户的信息:id

    sudo命令

    • 提高普通账号的权限:sudo 命令

    top命令

    • 实时显示process动态:top [参数]
      • PID:每个进程的id
      • USER:进程所属的用户
      • PR/NI:优先级
      • VIRT:虚拟内存量
      • S:运行状态
        • R:run
        • S:sleep
    • 结束监控快捷键:q
    • 参数
      1. -c:显示完整command命令
      2. -p pid:监控指定进程

    ps命令

    • 静态查看正在运行的进程信息:ps [参数]
    • 参数
      • -A:查看全部的进程信息
      • -ef:查看全部的进程信息(完整)
      • -u 用户名:查看属于指定用户的进程信息

    kill命令

    • 中断进程:
      • kill pid
      • kill -参数 pid
    • 参数
      • -9:强制结束(酒杀)
    • 中断用户的使用进程
      • kill -9 $(ps -ef | grep 用户名)
      • killall -u 用户名

    关机命令

    • 关机:shutdown

      • CentOS7默认延迟一分钟关机
      • 立即关机:shutdown -h now
    • 延迟关机:shutdown +n "xxx"

      • n:指n分钟之后关机
      • “xxx”:关机的警告信息
    • 重启:shutdown -r +n "xxx"

    • 取消关机:shutdown -c

    重启命令

    • 立即重启:reboot

    who命令

    • 显示当前登录系统的用户:who [参数]
    • 参数
      • -H:带标题显示

    timedatectl命令

    • ntp时间服务器:用于同步计算机时间
    • 相关命令
      1. 查看服务器时间与时区:timedatectl
      2. 设置时区:timedatectl set-timezone "Asia/Shanghai"
      3. ntp关闭:timedatectl set-ntp false
      4. ntp开启:timedatectl set-ntp true

    clear命令

    • 清屏幕:clear

    目录管理

    目录概要

    切换目录

    • 切换目录:cd 目录名
      • 相对路径:以当前目录
      • 绝对路径:从根目录/开始
    • 目录回退:cd ..

    展示目录

    • 展示目录:ls [参数] 目录名称
    • 参数:
      • -l:详细信息
      • -a:显示隐藏文件
      • -al:所有文件的详细信息
        1. 权限:
          1. d:目录
          2. -:文件
        2. 属主
        3. 属组
        4. 大小
        5. 最后一次访问时间
        6. 文件名

    当前目录

    • 查看当前目录:pwd [-P]

    创建目录

    • 创建目录:mkdir 文件夹名称
    • 创建多级目录:mkdir -p 文件夹名称1/文件夹名称2

    删除空目录

    • 删除空文件夹:rmdir 文件夹名称
    • 删除多级空文件夹:rmdir -p 文件夹名称1/文件夹名称2

    删除文件

    • 删除单个目录/文件:rm 文件路径
    • 删除多层目录与其文件:rm -r 文件路径
    • 忽略提醒:rm -p 目录

    复制文件

    • 复制单个文件:cp aaa/a.txt bbb
    • 复制整个文件夹:cp -r aaa/* bbb

    移动文件/重命名

    • 移动文件:mv 文件 目录
    • 文件重命名:mv 文件 文件
    • 文件夹移动/重命名:mv 目录 目录

    目录权限属性

    • 符号权限:

      • 权限分类

        1. -:没有权限
        2. r:读
        3. w:写
        4. x:执行
      • 位数含义:

        1. 第1位:格式

          • -:文件

          • d:目录

          • l:链接文件

        2. 2-4位:属主权限:u

        3. 5-7位:属组权限:g

        4. 8-10位:其他用户权限:o

        5. 全部身份:a

      • 符号

        1. +:加权限
        2. -:减权限
        3. =:设定权限
    • 数字权限

      权限缩写数字符号
      r4
      w2
      执行x1
      无权限-0

      数字权限 = 数字和

    目录权限修改

    chgrp命令
    • 更改目录的属组:chgrp -v 属组名 目录
    chown命令
    • 更改目录的属主:chown 属主名 目录
    • 更改目录的属主和属组:chown [参数] 属主名:属组名 目录
      • -R:处理目录及其子目录
    chmod命令
    • 更改目录的访问权限:
      • 数字权限:chmod -R 符号权限 目录
      • 符号权限:
        • chmod u=rwx,g=rw,o=r 目录
        • chmod -R a=rwx 目录
        • chamod -R g+x,o+r 目录

    文件管理

    touch命令

    • 创建一个文件/修改时间属性:touch a.txt

    • 创建多个空文件:touch a{1..5}.txt

    • 查看文件详细属性:stat 文件名

    vim编辑器

    vi/vim简介
    • vi
      • 只能编辑文本,不能排版
      • 不支持鼠标
      • 没有菜单
      • 只有命令
    • vim
      • vi的升级版
      • 代码补全,编译…
    vim的三种模式
    • 三种模式
      • 阅读:命令模式
      • 编辑:编辑模式
      • 保存:末行模式
    • 模式的切换:
      • 命令 --> 编辑:i
      • 编辑 --> 命令:Esc
      • 命令 --> 末行::
      • 末行 --> 命令:Esc Esc
    打开文件
    • 打开文件:vim 文件名
      • 如果文件存在:打开文件
      • 如果文件不存在:打开临时文件,保存退出后会新建文件
    进入编辑模式
    • i:当前字符前插入
    • I:行首插入
    • a:当前字符后插入
    • A:行末插入
    • o:行后添加一行
    • O:行前添加一行
    保存文件
    • :q:无操作退出
    • :q!:不保存退出
    • :wq:正常保存退出
    • :wq!:强行保存退出
    vim定位行
    • 查看文件并定位到指定行数:vim 文件名 +行号
    异常处理
    • 若vim异常退出,磁盘中会存有交换文件(.swp)
    • 删除交换文件即可

    文件查看

    cat命令
    • 查看小型文件内容:cat 文件
    • 查看小型文件内容(显示行号):cat -n 文件
    less命令
    • 查看大型文件内容:less 文件

    • 查看大型文件内容(显示行号):less -N 文件

    • 退出阅读:q

    tail命令
    • 查看文件的最后十行:tail 文件
    • 查看文件的最后…行:tail -... 文件
    • 动态显示最后十行:tail -[...]f 文件
      • 指定最后…行,默认10
      • 退出:Ctrl + C
    • 显示文件最后…个字符:tail -c ... 文件
    grep命令
    • 查找文本:grep [参数] 关键字 文件
      • -n:带行号查找
      • -a:忽略大小写
      • -v:不展示
    • 查找进程:ps -ef | grep sshd
      • 求进程个数:ps -ef | grep -c sshd

    重定向输出

    • 重定向:将需要输出打印的文本保存到文件
    • 语法:
      • 覆盖:cat a.txt > b.txt
      • 追加:cat a.txt > b.txt

    管道

    • 管道:将一个命令的输出作为另一个命令的输入
    • 语法:
      • ps -ef | grep java
      • ls --help | more

    echo命令

    • 展示文本:echo 字符串

    • 覆盖写入到文件:echo 字符串 > 文件

    • 追加写入到文件:echo 字符串 >> 文件

    • 追加保存错误信息:错误语法 &>> 文件

    软连接

    • 软连接:快捷方式
    • 原理:软连接 --> 文件名的地址 --> 文件名 --> 文件数据
    • 生成软连接:ln -s 原目录 新目录

    find命令

    • 查找文件/目录
      • 本目录下按名称查找:find . -name "*.txt"
      • 根目录下按时间(…天内)查找:find / -cname -...

    压缩

    gzip命令

    • 压缩文件:gzip 文件
    • 解压文件:gzip -dv 文件

    gunzip命令

    • 解压文件:gunzip 文件

    tar命令

    • 打包文件:tar -cvf 打包文件名 文件名
      • xxx.tar
    • 压缩文件:tar -zcvf 压缩包名 文件夹/文件名
      • xxx.gz
    • 查看压缩包:tar -ztvf 压缩包名
    • 解压:tar -zxvf 压缩包名

    zip压缩

    • 压缩文件:zip -q -r 压缩包名 文件/文件夹

      • xxx.zip
    • 查看压缩包:unzip -l 压缩包名

    • 解压文件:unzip -d 解压目录 压缩包名

    网络

    hostname命令

    • 查看主机名:hostname
    • 更改主机名(临时):hostname xxx
    • 改配置文件:/etc/sysconfig/network

    ifconfig命令

    • 显示网卡信息:ifconfig
    • 关闭网卡:ifconfig 网卡名 down
    • 启用网卡:ifconfig 网卡名 up
    • 配置ip地址:ifconfig 网卡名 ip地址
    • 配置ip地址和子网掩码:ifconfig 网卡名 ip地址 netmask 子网掩码

    ping命令

    • 检测是否联通:ping ip/域名
    • 指定接收包…次:ping -c ... ip/域名

    netstat命令

    • 详细连接情况:netstat -a

    • 网卡列表:netstat -i

    域名映射

    • 域名映射:主机名作为ip地址解析
    • 修改/etc/hosts文件

    yum命令

    • yum:用于查找安装下载卸载软件
    • 安装tree:yum -y install tree
    • 卸载tree:yum remove tree
    • 查找tom开头的软件:yum list tom*

    更改yum源文件

    1. 安装下载工具:wgetyum install -y wget

    2. 下载阿里云的Centos-7.repo文件:wget-OCentOS-Base.repohttp://mirrors.aliyun.com/repo/Centos-7.repo

    3. 清理之前的缓存,并重新加载yum:yum clean all

    4. 建立一个缓存文件:yum makecache

    5. 查找软件,验证阿里云的yum源是否可以正常使用:yum search tomcat

    rpm与yum

    • rpm:只能本地安装程序
    • yum:在线下载并安装

    JDK

    • 步骤:
      • 卸载(centos自带精简版jdk)
      • 下载并安装
      • 配置path
  • 相关阅读:
    23种设计模式 9组合模式
    提示3D标题编辑器仍在运行怎么解决,以及3D标题编辑器怎么使用
    contenteditable格式化html文本转svg
    【AI视野·今日CV 计算机视觉论文速览 第271期】Thu, 19 Oct 2023
    使用opera/火狐浏览器将网页固定到桌面和任务栏
    Moonbeam于Moonbase Alpha构建新式XCM对EVM跨链功能
    【无标题】
    VCP-DCV VMware vSphere,即将开课~想了解点击查看
    DocTemplateTool - 可根据模板生成word或pdf文件的工具
    我的个人网站,终于上线了!
  • 原文地址:https://blog.csdn.net/wmh1024/article/details/133898141