V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
chen887625as
V2EX  ›  推广

阿里云体验实验室 体验教程《 Linux 指令入门-系统管理》

  •  
  •   chen887625as · 2020-09-08 14:51:39 +08:00 · 1439 次点击
    这是一个创建于 1541 天前的主题,其中的信息可能已经有所发展或是发生改变。

    体验平台简介

    阿里云开发者实验室提供免费云资源和丰富的场景化实践,旨在帮助开发者在学习应用技术,了解阿里云产品的特性。

    阿里云体验实验室地址:https://developer.aliyun.com/adc/labs/

    教程介绍

    本场景将介绍 Linux 中常用的系统工作命令以及系统状态检测命令

    场景体验

    场景内容选自 阿里云体验实验室
    本场景将提供一台配置了 Aliyun Linux 2 的 ECS 实例(云服务器)。您可以参考本教程学习 Linux 系统中的文本编辑工具 Vim 以及文本处理命令。

    阿里云 Aliyun Linux 2 的 ECS 实例资源https://developer.aliyun.com/adc/scenario/c8d3efc90d634366bc012a69129c9aef

    涉及以下云产品和服务

    [云服务器 ECS] 云服务器( Elastic Compute Service,简称 ECS )是阿里云提供的性能卓越、稳定可靠、弹性扩展的 IaaS ( Infrastructure as a Service )级别云计算服务。云服务器 ECS 免去了您采购 IT 硬件的前期准备,让您像使用水、电、天然气等公共资源一样便捷、高效地使用服务器,实现计算资源的即开即用和弹性伸缩。阿里云 ECS 持续提供创新型服务器,解决多种业务需求,助力您的业务发展。

    [Aliyun Linux 2] Aliyun Linux 2 是阿里云推出的下一代 Linux 发行版,它为云上应用程序环境提供 Linux 社区的最新增强功能,在提供云上最佳用户体验的同时,也针对阿里云基础设施做了深度的优化。Aliyun Linux 2 OS 镜像可以运行在阿里云全规格系列 VM 实例上,包括弹性裸金属服务器 (神龙)。

    目录一:常用系统工作命令

    echo

    命令描述:echo 命令用于在终端输出字符串或变量提取后的值。

    命令格式:echo [字符串 | $变量]。

    命令用法示例:

    显示普通字符串

    echo "Hello World"
    

    显示变量 首先在 shell 环境中定义一个临时变量 name 。

    export name="Tom"
    

    使用 echo 命令将变量 name 的值显示到终端。

    echo $name
    

    输出结果:

    在这里插入图片描述

    显示结果定向至文件 以下命令会将文本 This is a test text.输出重定向到文件 test.txt 中,如果文件已存在,将会覆盖文件内容,如果不存在则创建。其中>符号表示输出重定向。

    echo "This is a test text." > test.txt
    

    如果您希望将文本追加到文件内容最后,而不是覆盖它,请使用>>输出追加重定向符号。

    显示命令执行结果 以下命令将会在终端显示当前的工作路径。

    echo `pwd`
    

    注意:pwd 命令是用一对反引号(``)包裹,而不是一对单引号('')。

    使用$(command)形式可以达到相同效果。

    echo $(pwd)
    

    输出结果:

    在这里插入图片描述

    date

    命令描述:date 命令用于显示和设置系统的时间和日期。

    命令格式:date [选项] [+格式]。

    其中,时间格式的部分控制字符解释如下:

    | 字符 | 说明 |

    |--|--|

    | %a | 当地时间的星期名缩写(例如: 日,代表星期日) |

    | %A |当地时间的星期名全称 (例如:星期日)|

    | %b |当地时间的月名缩写 (例如:一,代表一月) |

    | %B |当地时间的月名全称 (例如:一月)|

    | %c |当地时间的日期和时间 (例如:2005 年 3 月 3 日 星期四 23:05:25 ) |

    | %C |世纪;比如 %Y,通常为省略当前年份的后两位数字(例如:20 )|

    | %d | 按月计的日期(例如:01 ) |

    | %D |按月计的日期;等于%m/%d/%y|

    | %F | 完整日期格式,等价于 %Y-%m-%d |

    | %j |按年计的日期( 001-366 )|

    | %p | 按年计的日期( 001-366 ) |

    | %r |当地时间下的 12 小时时钟时间 (例如:11:11:04 下午)|

    | %R | 24 小时时间的时和分,等价于 %H:%M |

    |%s |自 UTC 时间 1970-01-01 00:00:00 以来所经过的秒数|

    | %T | 时间,等于%H:%M:%S |

    | %U |一年中的第几周,以周日为每星期第一天( 00-53 )|

    | %x | 当地时间下的日期描述 (例如:12/31/99 ) |

    | %X |当地时间下的时间描述 (例如:23:13:48 )|

    | %w | 一星期中的第几日( 0-6 ),0 代表周一 |

    | %W | 一年中的第几周,以周一为每星期第一天( 00-53 )|

    命令用法示例:

    按照默认格式查看当前系统时间

    date
    

    输出结果:

    在这里插入图片描述

    按照指定格式查看当前系统时间

    date "+%Y-%m-%d %H:%M:%S"
    

    输出结果:

    在这里插入图片描述

    查看今天是当年中的第几天

    date "+%j"
    

    输出结果:

    在这里插入图片描述

    将系统的当前时间设置为 2020 年 02 月 20 日 20 点 20 分 20 秒

    date -s "20200220 20:20:20"
    

    输出结果:

    在这里插入图片描述

    校正系统时间,与网络时间同步 a. 安装 ntp 校时工具

    yum -y install ntp
    
    b. 用 ntpdate 从时间服务器更新时间
    
    ntpdate time.nist.gov
    
    输出结果:
    

    在这里插入图片描述

    wget

    命令描述:在终端中下载文件。

    命令格式:wget [参数] 下载地址。

    参数说明:

    | 参数 | 作用|

    |--|--|

    | -b | 后台下载 |

    | -P |下载到指定目录|

    | -t | 最大重试次数 |

    | -c |断点续传|

    | -p | 下载页面内所有资源,包括图片、视频等 |

    | -r |递归下载|

    命令使用示例:

    下载一张图片到路径 /root/static/img/中,-p 参数默认值为当前路径,如果指定路径不存在会自动创建。

    wget -P /root/static/img/ http://img.alicdn.com/tfs/TB1.R._t7L0gK0jSZFxXXXWHVXa-2666-1500.png
    

    输出结果:

    在这里插入图片描述

    ps 命令描述:ps 命令用于查看系统中的进程状态。

    命令格式:ps [参数]。

    命令参数说明:

    | 参数 | 作用 |

    |--|--|

    | -a | 显示现行终端机下的所有程序,包括其他用户的程序 |

    | -u |以用户为主的格式来显示程序状况|

    | -x | 显示没有控制终端的进程,同时显示各个命令的具体路径 |

    | -e |列出程序时,显示每个程序所使用的环境变量|

    | -f | 显示当前所有的进程 |

    | -t |指定终端机编号,并列出属于该终端机的程序的状况|

    命令使用示例:

    ps -ef | grep sshd
    

    输出结果:

    在这里插入图片描述

    top

    命令描述:top 命令动态地监视进程活动与系统负载等信息。

    命令使用示例:

    top
    

    输出结果: 在这里插入图片描述

    命令输出参数解释:

    以上命令输出视图中分为两个区域,一个统计信息区,一个进程信息区。

    统计信息区

    • 第一行信息依次为:系统时间、运行时间、登录终端数、系统负载(三个数值分别为 1 分钟、5 分钟、15 分钟内的平均值,数值越小意味着负载越低)。
    • 第二行信息依次为:进程总数、运行中的进程数、睡眠中的进程数、停止的进程数、僵死的进程数。
    • 第三行信息依次为:用户占用资源百分比、系统内核占用资源百分比、改变过优先级的进程资源百分比、空闲的资源百分比等。
    • 第四行信息依次为:物理内存总量、内存使用量、内存空闲量、作为内核缓存的内存量。
    • 第五行信息依次为:虚拟内存总量、虚拟内存使用量、虚拟内存空闲量、预加载内存量。

    进程信息区

    | 列名 | 含义 |

    |--|--|

    | PID | 进程 ID |

    | USER |进程所有者的用户名|

    | PR | 进程优先级 |

    | NI |nice 值。负值表示高优先级,正值表示低优先级|

    | VIRT | 进程使用的虚拟内存总量,单位 kb |

    | RES | 进程使用的、未被换出的物理内存大小,单位 kb|

    | SHR | 共享内存大小,单位 kb |

    | S | 进程状态 D:不可中断的睡眠状态 R:正在运行 S:睡眠 T:停止 Z:僵尸进程 |

    | %CPU| 上次更新到现在的 CPU 时间占用百分比|

    | %MEM |进程使用的物理内存百分比|

    | TIME+ | 进程使用的 CPU 时间总计,单位 1/100 秒|

    | COMMAND |命令名|

    按 q 键退出监控页面。

    pidof

    命令描述:pidof 命令用于查询指定服务进程的 PID 值。

    命令格式:pidof [服务名称]。

    命令参数说明:

    | 参数 | 说明 |

    |--|--|

    |-s | 仅返回一个进程号 |

    | -c |只显示运行在 root 目录下的进程,这个选项只对 root 用户有效|

    | -o | 忽略指定进程号的进程 |

    | -x |显示由脚本开启的进程|

    命令使用示例:

    查询出 crond 服务下的所有进程 ID 。

    pidof crond
    

    输出结果:

    在这里插入图片描述

    kill

    命令描述:kill 命令用于终止指定 PID 的服务进程。

    kill 可将指定的信息送至程序。预设的信息为 SIGTERM(15),可将指定程序终止。若仍无法终止该程序,可使用 SIGKILL(9)信息尝试强制删除程序。

    命令格式:kill [参数] [进程 PID]。

    命令使用示例:

    删除 pid 为 1247 的进程。

    kill -9 1247
    

    killall

    命令描述:killall 命令用于终止指定名称的服务对应的全部进程。

    命令格式:killall [进程名称]。

    命令使用示例:

    删除 crond 服务下的所有进程。

    killall crond
    

    reboot

    命令描述:reboot 命令用来重启系统。

    命令格式:reboot [-n] [-w] [-d] [-f] [-i]。

    命令参数说明:

    -n:保存数据后再重新启动系统。 -w:仅做测试,并不是真的将系统重新开机,只会把重新开机的数据写入记录文件 /var/log/wtmp 。 -d:重新启动时不把数据写入记录文件 /var/tmp/wtmp 。 -f:强制重新开机,不调用 shutdown 指令的功能。 -i:关闭网络设置之后再重新启动系统。 命令使用示例:

    reboot
    

    poweroff

    命令描述:poweroff 命令用来关闭系统。

    命令使用示例:

    poweroff
    

    目录二:系统状态检测命令

    ifconfig

    命令描述:ifconfig 命令用于获取网卡配置与网络状态等信息。

    命令示例:

    在这里插入图片描述

    命令输出说明:

    • 第一部分的第一行显示网卡状态信息。
      • eth0 表示第一块网卡。
      • UP 代表网卡开启状态。
      • RUNNING 代表网卡的网线被接上。
      • MULTICAST 表示支持组播。
    • 第二行显示网卡的网络信息。
      • inet ( IP 地址):172.16.132.195 。
      • broadcast (广播地址):172.16.143.255 。
      • netmask (掩码地址):255.255.240.0 。
      • RX 表示接收数据包的情况,TX 表示发送数据包的情况。
      • lo 表示主机的回环网卡,是一种特殊的网络接口,不与任何实际设备连接,而是完全由软件实现。与回环地址( 127.0.0.0/8 或 ::1/128 )不同,回环网卡对系统显示为一块硬件。任何发送到该网卡上的数据都将立刻被同一网卡接收到。

    uname

    命令描述:uname 命令用于查看系统内核与系统版本等信息。

    命令语法:uname [-amnrsv][--help][--version]

    命令使用示例:

    显示系统信息。

    uname -a
    

    命令输出结果:

    在这里插入图片描述

    显示当前系统的硬件架构。

    uname -i
    

    命令输出结果:

    在这里插入图片描述

    显示操作系统发行编号。

    uname -r
    

    命令输出结果:

    在这里插入图片描述

    显示操作系统名称。

    uname -s
    

    命令输出结果:

    在这里插入图片描述

    显示主机名称。

    uname -n
    

    命令输出结果:

    在这里插入图片描述

    uptime

    命令描述:uptime 用于查看系统的负载信息。

    命令使用示例:

    在这里插入图片描述

    命令输出说明:

    | 负载信息 | 命令输出值 |

    |--|--|

    | 当前服务器时间 | 14:20:27 |

    | 当前服务器运行时长 |2 min|

    | 当前用户数 | 2 users |

    | 当前负载情况 |load average: 0.03, 0.04, 0.02 (分别取 1min,5min,15min 的均值)|

    free

    命令描述:free 用于显示当前系统中内存的使用量信息。

    命令语法:free [-bkmotV][-s <间隔秒数>]。

    命令参数说明:

    | 参数 | 说明 |

    |--|--|

    | -b | 以 Byte 为单位显示内存使用情况 |

    | -k |以 KB 为单位显示内存使用情况|

    | -m | 以 MB 为单位显示内存使用情况 |

    | -h | 以合适的单位显示内存使用情况,最大为三位数,自动计算对应的单位值。 |

    命令使用示例:

    在这里插入图片描述

    命令输出说明:

    | 参数 | 说明 | |--|--| | total | 物理内存总数 |

    | used |已经使用的内存数|

    | free | 空间的内存数 |

    | share |多个进程共享的内存总额|

    | buff/cache | 应用使用内存数 |

    | available |可用的内存数|

    | Swap | 虚拟内存(阿里云 ECS 服务器默认不开启虚拟内存) |

    who

    命令描述:who 命令显示关于当前在本地系统上的所有用户的信息。

    命令使用示例:

    • 显示当前登录系统的用户

      在这里插入图片描述

    • 显示用户登录来源

    在这里插入图片描述

    • 只显示当前用户

    在这里插入图片描述

    • 精简模式显示

    在这里插入图片描述

    last

    命令描述:last 命令用于显示用户最近登录信息。

    命令使用示例:

    在这里插入图片描述

    由于这些信息都是以日志文件的形式保存在系统中,黑客可以很容易地对内容进行篡改,所以该命令输出的信息并不能作为服务器是否被入侵的依据。

    history

    命令描述:history 命令用于显示历史执行过的命令。

    bash 默认记录 1000 条执行过的历史命令,被记录在~/.bash_history 文件中。

    命令使用示例:

    • 显示最新 10 条执行过的命令。

    在这里插入图片描述

    清除历史记录。

    history -c
    

    阿里云体验实验室地址:https://developer.aliyun.com/adc/labs/

    目前尚无回复
    关于   ·   帮助文档   ·   博客   ·   API   ·   FAQ   ·   实用小工具   ·   3795 人在线   最高记录 6679   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 25ms · UTC 10:34 · PVG 18:34 · LAX 02:34 · JFK 05:34
    Developed with CodeLauncher
    ♥ Do have faith in what you're doing.