【Linux】深入理解 Linux 系统命令:系统信息查询、进程管理与用户管理

在 Linux 系统中,掌握基本命令是用户有效管理系统的基础。本文将涵盖系统信息查询、进程管理与用户管理相关的的常用命令及其使用方法,并对每个命令进行详细解释和注释。

一、系统信息查询命令

1. uname - 显示当前操作系统名称

功能说明
uname 命令用于显示当前操作系统的名称及相关信息。这对于了解系统环境尤其重要。

语法格式

uname [选项]

使用实例

# uname -a
Linux localhost.localdomain 2.6.9-89.ELsmp #1 SMP Mon Sep 28 10:34:33 EDT 2009 i686 i686 i386 GNU/Linux

本例中打印了包括操作系统名称在内的所有系统相关信息。

选项参数

  • -a, --all:打印出所有信息,包括内核名称、主机名、内核发行号等。
  • -s, --kernel-name:仅打印内核名称。
  • -n, --nodename:打印网络上主机名称。
  • -r, --kernel-release:打印操作系统发行版本。
  • -v, --kernel-version:打印内核版本信息。
  • -m, --machine:打印电脑硬件类型。
  • -p, --processor:显示处理器类型(如果未能识别则返回 unknown)。
  • -i, --hardware-platform:显示硬件平台类型(如果未能识别则返回 unknown)。
  • -o, --operating-system:打印正在运行的操作系统。

2. hostname - 显示或设置系统的主机名称

功能说明
hostname 命令用于显示或设置系统的主机名称,这在网络管理中尤为重要。

语法格式

hostname [选项]

使用实例

# hostname
localhost.localdomain

本例显示了系统的当前主机名称。

选项参数

  • -n:显示主机在网络节点上的名称。
  • -o:显示操作系统类型。
  • -r:显示内核发行版本。
  • -s:显示内核名称。

3. date - 显示和设置日期

功能说明
date 命令用于显示和设置系统的日期和时间,适用于时区管理和时间同步。

语法格式

date [选项] [日期]

选项参数

  • -d, --date=datestr:显示由 datestr 描述的日期。
  • -s, --set=datestr:设置系统时间为 datestr 描述的日期。
  • -u, --universal:显示或设置为协调世界时间(UTC)。

日期格式说明

  • %H:小时(00…23)
  • %I:小时(01…12)
  • %k:小时(0…23)
  • %l:小时(1…12)
  • %M:分钟(00…59)
  • %p:显示AM或PM
  • %r:时间(hh:mm:ss AM或PM),12小时制
  • %s:从1970年1月1日00:00:00到现在经历的秒数
  • %S:秒(00…59)
  • %T:时间(24小时制,hh:mm:ss)
  • %X:显示时间的格式(%H:%M:%S)
  • %Z:时区
  • %a:星期几的简称(Sun…Sat)
  • %A:星期几的全称(Sunday…Saturday)
  • %b:月的简称(Jan…Dec)
  • %B:月的全称(January…December)
  • %c:日期和时间(Mon Nov 8 14:12:46 CST 1999)
  • %d:一个月的第几天(01…31)
  • %D:日期(mm/dd/yy)
  • %h:与%b相同
  • %j:一年中的第几天(001…366)
  • %m:月(01…12)
  • %w:一个星期的第几天(0代表星期天)
  • %W:一年中的第几个星期(00…53,星期一为第一天)
  • %x:显示日期的格式(mm/dd/yy)
  • %y:年最后两个数字(例如:1999则为99)
  • %Y:完整年份(例如:1970,1996等)

使用实例

  1. 显示当前日期和时间

    date
    
  2. 设置特定日期

    sudo date -s "2023-09-28 10:41:30"
    
  3. 显示某个格式的日期

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

4. cal - 显示日历

功能说明
cal 命令用于显示一个指定月份或全年日历,便于查看日期。

语法格式

cal [选项] [年份]

使用实例

# cal

默认显示当前月份的日历。

选项参数

  • -m:以星期一作为每周的第一天显示日历。
  • -j:以凯撒历显示,即以一月一日起的天数显示。
  • -y:显示当前年份的完整日历。

5. uptime - 显示系统运行时长

功能说明
uptime 命令显示系统自上次启动以来的运行时间,以及当前登录用户数量和负载平均值。

语法格式

uptime

使用实例

# uptime
10:34:24 up 10:50, 3 users, load average: 0.01, 0.05, 0.07

本例显示了当前时间、开机时长、在线用户数和系统负载信息。

6. dmesg - 显示开机信息

功能说明
dmesg 命令用于显示系统启动时的消息和内核环形缓冲区的信息,对故障排查非常有帮助。

语法格式

dmesg [选项]

使用实例

# dmesg
Linux version 2.6.9-89.ELsmp
(newuser@hs20-bc1-2.build.redhat.com)
(gcc version 3.4.6 20060404 (Red Hat 3.4.6-11))
#1 SMP Sat Sep 28 10:55:26 EDT 2024
BIOS-provided physical RAM map:
BIOS-e840: 0000000000000000 - 000000000009f600
(usable)
BIOS-e840: 000000000009f600 - 00000000000a0000
(reserved)
……
Installing knfsd (copyright (C) 1996
okir@monad.swb.de).
eth0: no IPv6 routers present
VMCIUtil: Updating context id from 0xffffffff to
0x43b6d2c7 on event 0

显示与系统启动有关的大量信息。

选项参数

  • -c:显示信息后,清除环形缓冲区中的内容。
  • -s:设置显示的缓冲区大小。
  • -n level:设置记录的信息级别。

二、进程管理

1. ps (Process Status) - 显示进程状态

功能说明
ps命令用于显示当前系统中的进程状态,包括每个进程的ID、状态等信息。

语法格式

ps [选项] [进程号]

使用实例

ps -ef

使用实例

UID        PID  PPID  C STIME TTY          TIME CMD
root         1     0  0 Jun24 ?        00:00:03 init [5]
root         2     1  0 Jun24 ?        00:00:00 [migration/0]
root         3     1  0 Jun24 ?        00:00:00 [ksoftirqd/0]
...
root     19508 10018  0 03:30 pts/2    00:00:00 bash
root     22561 10018  0 05:20 pts/1    00:00:00 bash

选项参数

  • -e:显示所有进程。
  • -f:以全格式显示进程信息,包括父PID、用户等。
  • -l:以长格式输出,显示更多的列信息。
  • -u:按用户名和启动时间的顺序显示进程。
  • -j:以任务格式显示进程。
  • -f:用树形结构显示进程。
  • -a:显示所有用户的所有进程(包括其他用户)。
  • -x:显示无控制终端的进程。
  • -r:仅显示正在运行的进程。
  • -ww:避免详细参数被截断。

2. kill (Terminate Process) - 终止进程

功能说明
kill命令用于终止指定的进程。

语法格式

kill [选项] 进程号

使用实例

kill 31630

选项参数

  • -s:指定需要发送的信号,可以使用信号名或数字。
  • -p:仅显示进程的PID,不发送结束信号。
  • -l:显示信号名称列表,可在/usr/include/linux/signal.h文件中找到。

三、用户管理

1. who - 显示登录到系统的所有用户

功能说明
who命令显示当前登录到系统的所有用户。

语法格式

who

使用实例

who

输出示例

root     :0          Jun 17 11:30
root     pts/1      Jun 17 17:03 (:0.0)
root     pts/2      Jun 17 15:13 (:0.0)

2. whoami - 显示当前用户名

功能说明
whoami命令显示当前用户的用户名。

语法格式

whoami

使用实例

whoami

输出示例

root

3. last - 显示近期登录信息

功能说明
last命令显示近期登录的用户及其登录时间。

语法格式

last

使用实例

last

输出示例

root     pts/3 :0.0      Sat Sep 28 10:20 - 10:26  (00:36)
root     pts/3 :0.0      Sat Sep 27 09:41 - 10:09  (01:50)
root     pts/1 :0.0      Sat Sep 26 18:06 - still logged in

本例显示了最近登录到系统的3个用户。

4. passwd - 设置或修改用户密码

功能说明
passwd命令用于设置或修改用户密码。

语法格式

passwd [用户名]

使用实例

passwd

输出示例

Changing password for user root.
New UNIX password:
BAD PASSWORD: it is too simplistic/systematic
Retype new UNIX password:
passwd: all authentication tokens updated successfully.

备注
在输入新密码时,系统不会显示任何字符,以保护密码的安全性。如果密码过于简单,系统会提示“BAD PASSWORD”并要求重新输入。

总结

以上是Linux系统中一些常用的系统信息查询、进程管理和用户管理命令的详细介绍。这些命令都是日常系统管理中不可或缺的工具,通过理解这些命令的用法及其参数,熟练掌握这些命令,能够有效地管理系统进程和用户,提高系统的安全性和效率,使你在处理系统问题时更加得心应手。希望本篇博客能帮助你更好地理解和使用Linux命令行,并能为你提供实用的参考,提升你对Linux系统的理解与操作能力。


评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

丶2136

谢谢老板。

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值