目录
在 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等)
使用实例
-
显示当前日期和时间:
date
-
设置特定日期:
sudo date -s "2023-09-28 10:41:30"
-
显示某个格式的日期:
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系统的理解与操作能力。