fstab
fstab 是 file system table 的缩写,即文件系统表。 它是一个纯文本文件,位于 /etc/fstab。它的主要作用是记录系统在启动时需要自动挂载的文件系统。 每当系统启动时,init 或 systemd 都会读取 /etc/fstab 文件的内容,并按照其中定义的规则,自动将硬盘分区、网络文件系统或其它存储设备挂载到指定的目录。/etc/fstab 是 Linux/Unix 系统的文件系统静态信息表,它决定了系统启动时如何挂载分区、设备、远程文件系统。 定义 设备 → 挂载点 → 文件系统类型 → 挂载选项。 可以控制: 磁盘分区挂载 网络文件系统(NFS、CIFS、GlusterFS 等) 伪文件系统(tmpfs、proc、sysfs 等) 特殊挂载(swap、UUID 绑定) fstab 文件格式fstab 文件中的每一行都代表一个需要挂载的文件系统,并且由六个字段组成。每个字段之间用空格或 Tab 键分隔。 1<device> <mount point> <fs_type> ...
xargs
什么是 xargs?xargs 的全称是 extend args,即“扩展参数”。它的核心功能是: 将标准输入中的数据,转换成命令行参数,然后传递给另一个命令。 为什么需要它?因为大多数命令(如 echo, rm, cp)不能直接从标准输入(stdin)接收参数。例如,你不能直接 echo "file1.txt" | rm。xargs 的出现,正是为了弥补这个不足。 xargs 的基本用法xargs 的基本语法是: 1some_command | xargs another_command some_command 的输出会作为 another_command 的参数。 实例 1:批量删除文件 假设你想要删除所有 *.bak 文件。 1find . -name "*.bak" | xargs rm 解析: find . -name "*.bak":这个命令会找到当前目录下所有 .bak 结尾的文件,并将它们的文件名输出到标准输出,每行一个。 |:管道,将 find 的输出导向 xargs。 xargs...
seq与大括号扩展
seq 属于 通用工具命令(Utility Command),主要用于在脚本和命令行中生成一个数字序列。它不是核心系统管理命令,但它作为一种管道(pipe)和循环的辅助工具,在自动化和批处理任务中非常常见。由于需要启动一个新进程,在处理大量数字时,它的执行速度比大括号扩展慢,大括号扩展是 Bash Shell 的内置功能。它在 Shell 内部直接完成,不需要启动任何外部程序。 seq一、基本语法与三种调用形式123seq [OPTION]... LASTseq [OPTION]... FIRST LASTseq [OPTION]... FIRST INCREMENT LAST FIRST/INCREMENT/LAST 都可为整数或浮点数;步长可为负(降序)。 seq 包含端点:从 FIRST 开始,按步长累加/累减,只要不超过 LAST 的方向边界就输出。 二、常用参数 -s, --separator=STRING:自定义分隔符(默认换行)。最后仍有一个换行结尾。 -w,...
task scheduling manager
cron,这是 Linux 系统中用于定时执行任务的核心服务,也是实现自动化运维的基石。 cron - Linux 任务计划调度器一、cron 概念 是什么:cron 是一个在后台持续运行的守护进程 (daemon),名为 crond。它会根据一个名为 crontab (cron table) 的配置文件,在指定的时间、日期或间隔自动执行预设的命令或脚本。 用途: 系统维护:定时清理日志文件、更新软件包、检查系统状态。 数据处理:定时备份数据库、同步文件、生成报表。 应用任务:定时执行爬虫、发送邮件通知、运行批处理作业。 监控脚本:定时运行我们之前讨论过的性能监控脚本(如检查内存、磁盘空间)并发送告警。 二、crontab 配置文件cron 的所有调度规则都定义在 crontab 文件中。每个用户都可以拥有自己的 crontab 文件,此外还有一个系统级的 crontab 文件。 用户 crontab: 这是最常用的方式。每个用户定义的任务都以该用户的身份运行。 文件通常存储在 /var/spool/cron/ (CentOS/RHEL) 或...
Performance Monitoring Tools
Linux 内存与性能监控 Linux 系统中用于监控性能的核心命令行工具,从高层级的系统概览到深入的进程级分析。 第一部分:高层级系统概览这些工具可以让你快速了解系统的健康状况、运行时间和资源利用率的总体情况。 1. uptime - 快速系统健康检查uptime 命令是检查系统当前负载和已运行时间的最简单方法。 作用:显示当前时间、系统已运行时长、登录用户数以及过去 1、5、15 分钟的系统平均负载。 目的:快速评估系统是否近期重启过,以及当前是否处于高负载状态。 基本语法与用法1uptime 输出示例: 114:21:33 up 12 days, 3:42, 2 users, load average: 0.07, 0.14, 0.11 输出详解 **14:21:33**:当前的系统时间。 **up 12 days, 3:42**:系统自上次启动以来已运行的总时长。如果时长很短,可能意味着系统发生了意外重启或崩溃。 **2 users**:当前登录到系统的用户会话数。 **load average: 0.07, 0.14,...
rsync
数据同步利器:rsync1. rsync 是什么?rsync(remote synchronize)是一款在 Linux 系统中用于文件和目录同步的强大工具。它最大的特点是采用**“增量同步”**技术,只传输源文件与目标文件之间有差异的部分,极大地提高了同步效率,尤其在处理大型文件或通过网络传输时,优势非常明显。 2. rsync 命令基本格式1rsync [OPTIONS] SOURCE DESTINATION SOURCE:源文件或目录。 DESTINATION:目标文件或目录。 3. 核心参数详解 (必备)以下是运维工作中最高频使用的参数,掌握它们就等于掌握了 rsync 的精髓。 **-a (archive)**:归档模式。这是一个组合参数,等同于 -rlptgoD,它能以递归方式同步目录,并完整保留文件的所有属性,包括: **-r**:递归同步子目录。 **-l**:同步软链接。 **-p**:保留文件权限。 **-t**:保留文件时间戳。 **-g**:保留文件属组。 **-o**:保留文件属主。 -D(devices): 同步设备文件(慎用) **-v...
perl regex
Perl 以其强大的正则表达式引擎而闻名,它为文本处理提供了无与伦比的灵活性和力量。 Perl 正则表达式正则表达式 (Regular Expression,简称 Regex 或 Regexp) 是一种用来描述、匹配字符串模式的强大工具。在 Perl 中,正则表达式是语言的核心部分,被广泛用于字符串搜索、替换、分割和数据验证。 1. 基本概念与操作符Perl 主要通过以下三个操作符来使用正则表达式: 匹配操作符 m// (或 /): 用于查找字符串中是否包含某个模式。 替换操作符 s///: 用于查找并替换字符串中的模式。 转换操作符 tr/// (或 y///): 用于将字符串中的字符一对一地转换。 默认情况下,这些操作符作用于特殊变量 $_。 示例:基本匹配 1234my $text = "Hello, world!";if ($text =~ /world/) { print "找到了 'world'。\n";} 2. 元字符 (Metacharacters) -...
samba
SMB (Server Message Block) ,SMB 是一种网络文件共享协议,允许 Windows、macOS 和 Linux 客户端访问服务器上的共享文件夹。我们将使用 Samba 软件包来实现 SMB 服务。 Samba 是一套开源软件套件,它实现了 SMB/CIFS 协议,从而使 Linux 服务器能够与 Windows 客户端进行文件和打印机共享。 1. 安装 Samba12345678910# Ubuntu/Debian 系统sudo apt updatesudo apt install samba# 完整安装sudo apt install samba smbclient cifs-utils# CentOS/RHEL 系统sudo yum updatesudo yum install samba 在 Ubuntu/Debian 系统上安装 Samba 时,通常会安装一系列核心软件包和相关的依赖,以便提供文件和打印共享服务。主要会安装以下软件包和涉及的服务: 1. 主要安装的软件包 (及其核心二进制文件)当安装 samba...
dnsmasq
dnsmasq 详解dnsmasq 是一个轻量级的网络服务软件,它集成了 DNS 转发器 (DNS Forwarder)、DHCP 服务器 (DHCP Server) 和 TFTP 服务器 (TFTP Server) 功能。因其小巧、易用和高效的特点,dnsmasq 在家庭网络、小型办公室 (SOHO) 环境以及嵌入式设备(如路由器)中非常流行。 1. 什么是 dnsmasq?简单来说,dnsmasq 可以被视为一个本地的 DNS 缓存服务器和 DHCP 服务器。 DNS 转发器:当你的设备需要解析一个域名时,它首先会向 dnsmasq 发送请求。如果 dnsmasq 已经缓存了这个域名的 IP 地址,它会立即返回;如果没有,它会将请求转发给上游的 DNS 服务器(例如你的 ISP 的 DNS 或公共 DNS 如 8.8.8.8),获取结果后缓存并返回给客户端。 DHCP 服务器:它可以为连接到网络的设备自动分配 IP 地址、网关、DNS 服务器等网络配置信息。 TFTP 服务器:用于简单的文件传输,常用于网络启动 (PXE boot) 或固件升级。 2. dnsmasq...
dig
dig 命令参数大全dig (Domain Information Groper) 是一个强大的命令行工具,用于查询 DNS 域名服务器。它提供了高度的灵活性和详细的输出,是网络管理员和开发者诊断 DNS 问题的首选工具。 1. 基本语法1dig [@server] [name] [type] [options] **@server (可选)**:指定要查询的 DNS 服务器的 IP 地址或主机名。 示例:@8.8.8.8 (Google Public DNS), @1.1.1.1 (Cloudflare DNS) **name (必选)**:要查询的域名。 示例:example.com, www.google.com **type (可选)**:要查询的 DNS 记录类型。如果不指定,默认查询 A 记录。 示例:A, AAAA, MX, NS, CNAME, TXT, SRV, SOA, PTR, ANY **options (可选)**:控制 dig 命令行为的各种选项,通常以 + 开头。 2. 常用记录类型 (type)这些参数用于指定你希望 dig...