我的运维笔记

第一部分:新手必须掌握的Linux命令

1、强大好用的Shell

       Shell(也称为终端或壳)充当的是人与内核(硬件) 之间的翻译官,用户把一些命令“告诉”终端,它就会调用相应的程序服务去完成某些工作。 现在包括红帽系统在内的许多主流 Linux 系统默认使用的终端是 Bash(Bourne-Again SHell) 解释器。主流 Linux 系统选择 Bash 解释器作为命令行终端主要有以下 4 项优势,读者可以在 今后的学习和生产工作中细细体会 Linux 系统命令行的美妙之处,真正从心里爱上它们。

   ● 通过上下方向键来调取过往执行过的 Linux 命令;

   ● 命令或参数仅需输入前几位就可以用 Tab 键补全;

   ● 具有强大的批处理脚本;

   ● 具有实用的环境变量功能;

命令参数的长格式与短格式

长格式:man --help

短格式:man -h

▲ man命令

man 命令中常用按键以及用途

空格键 向下翻一页

PaGe down 向下翻一页

PaGe up 向上翻一页

home 直接前往首页

end 直接前往尾页

/ 从上至下搜索某个关键词,如“/linux”

? 从下至上搜索某个关键词,如“?linux”

n 定位到下一个搜索到的关键词 N 定位到上一个搜索到的关键词

q 退出帮助文档

man 命令帮助信息的结构以及意义

NAME 命令的名称

SYNOPSIS 参数的大致使用方法

DESCRIPTION 介绍说明

EXAMPLES 演示(附带简单说明)

OVERVIEW 概述

DEFAULTS 默认的功能

OPTIONS 具体的可用选项(带介绍)

ENVIRONMENT 环境变量

FILES 用到的文件

SEE ALSO 相关的资料

HISTORY 维护历史与联系方

▲ echo命令

在终端输出字符串或变量提取后的值

echo [字符串 | $变量]

实例:将指定字符串输出到终端屏幕命令为:

echo Linuxprobe.com

结果为:Linuxprobe.com

实例:使用$符号提取shell变量的值:

echo $SHELL

结果为:/bin/bash

 

▲ date命令

参数及作用

%t   跳格[Tab 键]

%H   小时(00~23)

%I   小时(00~12)

%M   分钟(00~59)

%S   秒(00~59)

%j   今年中的第几天

 

▲  reboot命令

用于重启系统

实例:[root@linuxprobe]# reboot

说明:由于重启系统会涉及到硬件资源管理权限,因此只能使用root管理员来重启。

 

  poweroff命令

用于关闭系统

实例:[root@linuxprobe]# reboot

说明:和reboot一样,需要硬件资源管理权限,因此只能使用root管理员来关闭计算机。

 

▲ wget 命令

用于在终端中下载网络文件

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

参数及作用:

-b 后台下载模式

-P 下载到指定目录

-t 最大尝试次数

-c 断点续传

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

-r 递归下载

 

▲ ps命令

用于查看系统中的进程状态

格式:ps [参数]

ps 命令的参数以及作用

-a 显示所有进程(包括其他用户的进程)

-u 用户以及其他详细信息

-x 显示没有控制终端的进程

5 种常见的进程状态:

R(运行):进程正在运行或在运行队列中等待。

S(中断):进程处于休眠中,当某个条件形成后或者接收到信号时,则脱离该 状态。

D(不可中断):进程不响应系统异步信号,即便用 kill 命令也不能将其中断。 

Z(僵死):进程已经终止,但进程描述符依然存在, 直到父进程调用 wait4()系统函数 后将进程释放。

T(停止):进程收到停止信号后停止运行。

实验:使用 ps -aux  命令查看进程状态

说明:如前面所提到的,在 Linux 系统中的命令参数有长短格式之分,长格式和长格式之 间不能合并,长格式和短格式之间也不能合并,但短格式和短格式之间是可以合并的, 合并后仅保留一个-(减号)即可。另外 ps 命令可允许参数不加减号(-),因此可直接 写成 ps aux 的样子。

 

▲ top命令

用于动态地监视进程活动与系统负载等信息

格式:top

top 命令执行结果的前 5 行为系统整体的统计信息,其所代表的含义如下。

 第 1 行:系统时间、运行时间、登录终端数、系统负载(三个数值分别为 1 分钟、5 分钟、15 分钟内的平均值,数值越小意味着负载越低)。

第 2 行:进程总数、运行中的进程数、睡眠中的进程数、停止的进程数、僵死的进程 数。

 第 3 行:用户占用资源百分比、系统内核占用资源百分比、改变过优先级的进程资源 百分比、空闲的资源百分比等。

注: 第 3 行中的数据均为 CPU 数据并以百分比格式显示,例如“97.1 id”意味着有 97.1% 的 CPU 处理器资源处于空闲。

 第 4 行:物理内存总量、内存使用量、内存空闲量、作为内核缓存的内存量。

 第 5 行:虚拟内存总量、虚拟内存使用量、虚拟内存空闲量、已被提前加载的内存量。

 

▲ pidof 命令

命令用于查询某个指定服务进程的 PID 值

格式:pidof [参数] [服务名称]

 每个进程的进程号码值(PID)是唯一的,因此可以通过 PID 来区分不同的进程。

实验:查看本机sshd服务程序的PID

[root@linuxprobe ~] pidof sshd

 

▲ kill命令

用于终止某个指定 PID 的服务进程

格式:kill [参数] [进程PID]

实验:使用kill命令,将使用pidof查询到的PID进程终止

[root@linuxprobe ~] kill 1557

说明:这种操作的效果等同于强制停止 sshd 服务。

 

▲ killall命令

用于终止某个指定名称的服务所对应的全部进程

格式:killall [参数] [进程名称]

说明:

如果我们在系统终端中执行一个命令后想立即停止它,可以同时按下 Ctrl + C 组合 键(生产环境中比较常用的一个快捷键),这样将立即终止该命令的进程。或者,如果 有些命令在执行时不断地在屏幕上输出信息,影响到后续命令的输入,则可以在执 行命令时在末尾添加上一个&符号,这样命令将进入系统后台来执行。

 

▲ ifconfig命令

用于获取网卡配置与网络状态等信息

格式:ifconfig [网络设备] [参数]

实验:查看本机的网络配置信息

[root@linuxprobe ~] ifconfig

eno16777728: flags=4163<up,broadcast,running,multicast> mtu 1500

inet 192.168.10.10 netmask 255.255.255.0 broadcast 192.168.10.255

inet6 fe80::20c:29ff:fec4:a409 prefixlen 64 scopeid 0x20

ether 00:0c:29:c4:a4:09 txqueuelen 1000 (Ethernet)

RX packets 36 bytes 3176 (3.1 KiB)

RX errors 0 dropped 0 overruns 0 frame 0

TX packets 38 bytes 4757 (4.6 KiB)

TX errors 0 dropped 0 overruns 0 carrier 0 collisions 0

lo: flags=73<up,loopback,running> mtu 65536

inet 127.0.0.1 netmask 255.0.0.0

inet6 ::1 prefixlen 128 scopeid 0x10 loop txqueuelen 0 (Local Loopback)

RX packets 386 bytes 32780 (32.0 KiB)

RX errors 0 dropped 0 overruns 0 frame 0

TX packets 386 bytes 32780 (32.0 KiB)

TX errors 0 dropped 0 overruns 0 carrier 0 collisions 0

 

▲ uname命令

用于查看系统内核与系统版本等信息

格式:uname [-a]

说明:在使用 uname 命令时,一般会固定搭配上-a 参数来完整地查看当前系统的内核名称、主 机名、内核发行版本、节点名、系统时间、硬件名称、硬件平台、处理器类型以及操作系统 名称等信息。

实验:查看系统内核及版本信息

[root@linuxprobe ~] uname -a

Linux linuxprobe.com 3.10.0-123.el7.x86_64 #1 SMP Mon May 5 11:16:57 EDT 2014 x86_64 x86_64 x86_64 GNU/Linux

如果要查看当前系统版本的详细信息,则需要查看 redhat-release 文件,其命 令以及相应的结果如下:

[root@linuxprobe ~]# cat /etc/redhat-release Red Hat Enterprise Linux Server release 7.0 (Maipo)

 

▲ uptime命令

用于查看系统的负载信息

格式:uptime

说明:显示当前系统时间、系统已运行时间、启用终端数量以 及平均负载值等信息。平均负载值指的是系统在最近 1 分钟、5 分钟、15 分钟内的压力情 况(下面加粗的信息部分);负载值越低越好,尽量不要长期超过 1,在生产环境中不要 超过 5。

实验:查看系统负载情况

[root@linuxprobe ~] uptime

09:23:21 up 1:38, 2 users, load average: 0.01, 0.02, 0.05

 

▲ free命令

用于显示当前系统中内存的使用量信息

格式:free [-h]

执行 free -h 命令后的输出信息

    内存总量 已用量   可用量   进程共享的 内存量   磁盘缓存的 内存量   缓存的 内存量

    total   used     free      shared      buffers         cached

Mem  1.8GB   1.3GB   542MB     9.8MB       1.6MB        413MB

-/+ buffers/cache   869MB   957MB

Swap   2.0GB   0       2.0GB

 

▲ who命令

用于查看当前登入主机的用户终端信息

格式:who

实验:查看本机登入用户名及终端信息

[root@linuxprobe ~] who

 

▲ last 命令

用于查看所有系统的登录记录

格式:last

实验:查看本机登录记录

[root@linuxprobe ~] last

说明:由于这些信息都是以日志文件的形式保 存在系统中,因此黑客可以很容易地对内容进行篡改。千万不要单纯以该命令的输出信息而 判断系统有无被恶意入侵!

 

▲ history命令

用于显示历史执行过的所有命令

格式:histroy

 

posted @   本物面朝黄土  阅读(55)  评论(0编辑  收藏  举报
相关博文:
阅读排行:
· 地球OL攻略 —— 某应届生求职总结
· 周边上新:园子的第一款马克杯温暖上架
· Open-Sora 2.0 重磅开源!
· 提示词工程——AI应用必不可少的技术
· .NET周刊【3月第1期 2025-03-02】
点击右上角即可分享
微信分享提示