[...]blog:locate 命令:文件查找命令 - 灵魂信息 (soulio.top)[...]
首页
留言
统计
友链
归档
关于
Search
1
typecho博客-SEO优化-永久链接设置-伪静态
89 阅读
2
搭建网站的三种方式:家庭服务器、云服务器、serv00免费服务器
63 阅读
3
DNF:包管理器
53 阅读
4
typecho主题和插件
52 阅读
5
Homebrew:包管理器
47 阅读
网站搭建
Linux命令详解
登录
Search
标签搜索
Linux命令
serv00
Linux
网站搭建
typecho
Excel
正则表达式
PVE
mdx
soulio
累计撰写
146
篇文章
累计收到
2
条评论
今日撰写
0
篇文章
首页
栏目
网站搭建
Linux命令详解
页面
留言
统计
友链
归档
关于
用户登录
登录
搜索到
127
篇与
的结果
2024-09-21
more、less 命令:阅读文本
一、命令简介more 和 less 都是用于查看文本文件内容的命令,但它们在显示方式和功能上有一些区别。简单的说 less 是 more 的升级版:增加了搜索、跳转等功能。所以优先使用 less,可以不用 more 了。二、命令参数基本用法要使用 less 查看文件内容,只需在命令行中输入:less filename 常用选项 -N:显示行号。 -S:禁用折行。 -M 或 -F:在每次按下 Page Down 或 Page Up 时显示百分比和行号。 -i:搜索时忽略大小写。 -x <num>:设置屏幕宽度(字符数)。 常用快捷键 F 或 f:向前滚动一整屏。 B 或 b:向后滚动一整屏。 d:向下滚动半屏。 u:向上滚动半屏。 g:跳转到文件开头。 G:跳转到文件末尾。 更多快捷键不要记忆,用到再查。 空格键 或 Page Down:向下翻页。 b:向上翻页。 上下箭头键:逐行上下移动。 左右箭头键:逐字符左右移动。 G:跳转到文件末尾。 g:跳转到文件开头。 / :向前搜索文本(输入搜索词后按 Enter)。 ? :向后搜索文本(输入搜索词后按 Enter)。 n:重复前一个搜索(与搜索方向相同)。 N:重复前一个搜索(与搜索方向相反)。 d:向下滚动半页。 u:向上滚动半页。 h:显示帮助屏幕。 q:退出 less。 三、命令示例以下是一些使用 less 命令的示例,展示了如何用它来查看文件内容,搜索文本,以及一些其他有用的操作。基本查看文件内容查看名为 example.txt 的文件内容:less example.txt 显示行号查看文件内容并显示行号:less -N example.txt 搜索文本在文件中搜索 "keyword":less example.txt 然后在 less 命令提示符下输入 /keyword 并按 Enter 键。从特定行开始查看从第 100 行开始查看文件:less +100 example.txt 从文件末尾开始查看从文件末尾开始查看,并向上滚动:less +G example.txt 查看多个文件同时查看多个文件,并使用 :n 和 :p 在它们之间切换:less file1.txt file2.txt file3.txt 在 less 中,使用 :n 切换到下一个文件,使用 :p 切换到前一个文件。禁用折行查看文件内容,并禁用折行:less -S example.txt 设置屏幕宽度设置屏幕宽度为 80 个字符:less -x80 example.txt 退出 less在 less 中,按 q 键退出。回顾 ⤴️ 常用快捷键
2024年09月21日
9 阅读
0 评论
0 点赞
2024-09-21
mkdir 命令:创建目录
一、命令简介mkdir 命令用于创建新的目录(文件夹)。二、命令参数mkdir [选项] 目录名 常用选项 -p 或 --parents:递归创建目录,如果父目录不存在,则会创建父目录。mkdir -p path/to/directory 这将创建 path/to/directory 整个路径中的所有必需目录。 -m 或 --mode:设置新建目录的权限(八进制数)。mkdir -m 755 new_directory 这将以 755 权限(即用户读写执行,组和其他读执行)创建新目录。 -v 或 --verbose:打印每个创建的目录名。mkdir -v directory1 directory2 这将创建两个目录,并显示每个创建操作的详细信息。 -Z:设置新建目录的安全上下文(SELinux)。mkdir -Z context_name directory_name 三、命令示例 创建单个目录:mkdir my_directory 同时创建多个目录:mkdir dir1 dir2 dir3 递归创建目录结构:mkdir -p one/two/three 创建目录并设置权限:mkdir -m 700 secure_directory 创建目录并显示详细信息:mkdir -pv path/to/my/directory 使用 mkdir 时,如果尝试创建已经存在的目录,通常会收到错误信息,除非使用 -p 选项,在这种情况下,mkdir 将静默地忽略已存在的目录。
2024年09月21日
6 阅读
0 评论
0 点赞
2024-09-21
mdadm 命令:软RAID管理
一、命令简介mdadm 是 Linux 下用于管理软件 RAID 设备的工具,可以创建、管理和监控软件 RAID 阵列。创建 RAID 需要多个环节,多个命令搭配使用: gdisk 命令创建格式为 Linux RAID 的磁盘分区 mdadm 命令将多个 Linux RAID 分区创建为 软RAID分区 mkfs 命令将 软RAID分区 格式化为 ext4 或其他文件系统 mount 命令将文件系统挂载到目录树 二、命令参数mdadm [选项] [device] 创建 RAID 阵列的选项 --create /dev/md#: 创建一个新的 RAID 设备。 --level=#: 指定 RAID 级别(例如,0、1、5、6、10)。 --raid-devices=#: 指定 RAID 阵列中活动设备的数量。 --spare-devices=#: 指定备用设备的数量。 --chunk=#: 设置 RAID 块大小(默认为 512KB)。 管理现有 RAID 阵列的选项 --add: 添加一个设备到 RAID 阵列。 --remove: 从 RAID 阵列中移除一个设备。 --fail: 标记一个设备为失败。 --replace: 用新设备替换失败的设备。 --grow: 改变 RAID 阵列的某些方面,如大小或模式。 监控和组装 RAID 阵列的选项 --monitor: 启动或停止监控模式。 --assemble: 组装一个已存在的 RAID 阵列。 --scan: 扫描配置文件或 /proc/mdstat 以查找 RAID 阵列。 输出和配置文件选项 --detail: 显示 RAID 阵列的详细信息。 --examine: 检查磁盘的超级块以获取 RAID 信息。 --config: 指定配置文件。 --scan: 将发现的阵列信息添加到配置文件中。 其他选项 --stop: 停止 RAID 阵列。 --readonly: 将阵列设置为只读。 --write-mostly: 将设备设置为“主要写入”,通常用于热备。 --mail: 设置接收警报的电子邮件地址。 --delay: 设置警报的延迟时间。 三、命令示例mdadm 是用于管理 Linux 软件 RAID 的命令行工具。以下是一些常见的 mdadm 示例:1. 创建 RAID 阵列创建 RAID5 示例sudo mdadm --create --verbose /dev/md0 --level=5 --raid-devices=3 /dev/sd[b-d]1 /dev/md0:新创建的 RAID 设备。 --level=5:指定 RAID 级别为 RAID 5。 --raid-devices=3:使用三个设备。 /dev/sd[b-d]1:使用 /dev/sdb1, /dev/sdc1, /dev/sdd1 作为阵列成员。 创建 RAID1 示例sudo mdadm --create --verbose /dev/md1 --level=1 --raid-devices=2 /dev/sdb2 /dev/sdc2 /dev/md0:新创建的 RAID 设备:md1。 --level=1:指定 RAID 级别为 RAID 1。 --raid-devices=2:使用两个设备。 /dev/sdb2 /dev/sdc2:使用 /dev/sdb2, /dev/sdc2 作为阵列成员。 2. 查看 RAID 阵列状态cat /proc/mdstat 显示所有当前活跃的 RAID 阵列及其状态。 或者使用:sudo mdadm --detail /dev/md0 显示指定阵列 /dev/md0 的详细信息。 3. 停止和移除 RAID 阵列停止一个 RAID 阵列:sudo mdadm --stop /dev/md0 删除 RAID 阵列:sudo mdadm --remove /dev/md0 4. 添加新磁盘到现有 RAID 阵列例如,要向现有 RAID 5 阵列中添加新的磁盘:sudo mdadm --add /dev/md0 /dev/sde 5. 从 RAID 阵列中移除磁盘移除一个磁盘之前,先将其标记为故障:sudo mdadm --fail /dev/md0 /dev/sdc 然后移除该磁盘:sudo mdadm --remove /dev/md0 /dev/sdc 6. 监控 RAID 阵列设置 mdadm 在 RAID 阵列出现问题时发邮件通知:sudo mdadm --monitor
[email protected]
--delay=300 --scan
[email protected]
:设置邮件接收者。 --delay=300:每 300 秒检查一次。 7. 保存 RAID 阵列配置为了在重启后自动重新组装 RAID 阵列,使用以下命令保存当前 RAID 配置:sudo mdadm --detail --scan | sudo tee -a /etc/mdadm/mdadm.conf 然后更新 initramfs:sudo update-initramfs -u 这些示例可以帮助你更好地管理和操作 RAID 阵列,具体操作视需求而定。四、零基础RAID教程零基础创建软 RAID 的过程第一步:gdisk 新建磁盘分区使用 gdisk 硬盘设备 命令新建磁盘分区,分区类型为 Linux RAID%sudo gdisk /dev/sdc #1.gdisk命令对磁盘/dev/sdc进行分区管理 Command (? for help): n #2.输入n创建分区 Partition number (1-128, default 1): #3.回车(默认分区号) First sector (34-3907029134, default = 2048) or {+-}size{KMGTP}: #4.回车(默认起点) Last sector (2048-3907029134, default = 3907029134) or {+-}size{KMGTP}: #5.回车(默认终点) Current type is 8300 (Linux filesystem) Hex code or GUID (L to show codes, Enter = 8300): fd00 #6.fd00(Linux RAID 类型) Changed type of partition to 'Linux RAID' Command (? for help): w #7.保存修改输入w(不想保存则输入q) 第二步:mdadm 创建软 RAID创建 RAID1sudo mdadm --create /dev/md1 --level=1 --raid-devices=2 /dev/sdc1 /dev/sdd1 含义:sudo mdadm #mdadm需要超级权限 --create #创建RAID /dev/md1 #mdx是RAID的设备名,可以起名范围为/dev/md0 到 /dev/md127 --level=1 #类型为RAID1。level=0则表示类型为RAID0,其他RAID类推。 --raid-devices=2 #表明RAID由2块硬盘(此处硬盘=硬盘分区)组成 /dev/sdc1 /dev/sdd1 #组成RAID的硬盘(硬盘分区)列表 ➕ 拓展:应到知道1.新创建的 RAID 会自动装配。2.使用 lsblk 也可以看到所有已经创建的&正常运行的 RAID 设备,以下是我在自己主机上创建的 RAID 设备:soulio%k455l:~$ lsblk NAME MAJ:MIN RM SIZE RO TYPE MOUNTPOINTS sdb 8:16 0 931.5G 0 disk ├─sdb1 8:17 0 800G 0 part │ └─md1 9:1 0 799.9G 0 raid1 /mnt/raid1 └─sdb2 8:18 0 120G 0 part /mnt/hd1 sdd 8:48 0 931.5G 0 disk ├─sdd1 8:49 0 800G 0 part │ └─md1 9:1 0 799.9G 0 raid1 /mnt/raid1 └─sdd2 8:50 0 120G 0 part /media/soulio/a7b11035-b3e4-47f6-9df2-b973314 sde 8:64 0 1.8T 0 disk └─sde1 8:65 0 1.8T 0 part └─md127 9:127 0 1.8T 0 raid1 /mnt/raid2T sdf 8:80 0 1.8T 0 disk └─sdf1 8:81 0 1.8T 0 part └─md127 9:127 0 1.8T 0 raid1 /mnt/raid2T ➕ 拓展:关于命名mdx 这样的名字不便于记忆,你可以将 /dev/mdx 替换为 /dev/md/自定义名,例如 /dev/md/RAID1-2T。这是我的命名:当初还是太保守了,2T 没有 RAID1-2T 的分辨率高,但还是比 mdx 好用。sudo mdadm --create /dev/md/2T --level=1 --raid-devices=2 /dev/sdc1 /dev/sdd1 自定义名字的本质:符号链接。soulio@k455l:~% ls -l /dev/md/ 总计 0 lrwxrwxrwx 1 root root 6 5月 15 16:30 1 -> ../md1 lrwxrwxrwx 1 root root 8 5月 15 16:30 2T -> ../md127 查看 RAID 设备的详细信息使用 mdadm 的 --detail 选项查看软 RAID 详细信息,可简写为 -Dmdadm --detail [RAID设备名] 例如~% sudo mdadm -D /dev/md/2T /dev/md/2T: Version : 1.2 Creation Time : Sun Apr 7 11:45:07 2024 Raid Level : raid1 #RAID1 Array Size : 1953381440 (1862.89 GiB 2000.26 GB) #容量 Used Dev Size : 1953381440 (1862.89 GiB 2000.26 GB) Raid Devices : 2 #组成RAID的磁盘数量 Total Devices : 2 Persistence : Superblock is persistent Intent Bitmap : Internal Update Time : Sun Apr 7 18:51:54 2024 State : clean, resyncing #状态 Active Devices : 2 Working Devices : 2 Failed Devices : 0 Spare Devices : 0 Consistency Policy : bitmap Resync Status : 90% complete #首次同步需要数个小时,与磁盘的速度和容量有关 Name : k455l:2T (local to host k455l) UUID : af486467:ad28f90a:b8060fab:b8060fab Events : 5169 Number Major Minor RaidDevice State 0 8 33 0 active sync /dev/sdc1 1 8 49 1 active sync /dev/sdd1 ➕ 拓展:我这个 2T 的 RAID 首次同步大概要花费 8 小时,以下是同步完成后 -D 的输出% sudo mdadm -D /dev/md/2T /dev/md/2T: Version : 1.2 Creation Time : Sun Apr 7 11:45:07 2024 Raid Level : raid1 Array Size : 1953381440 (1862.89 GiB 2000.26 GB) Used Dev Size : 1953381440 (1862.89 GiB 2000.26 GB) Raid Devices : 2 Total Devices : 2 Persistence : Superblock is persistent Intent Bitmap : Internal Update Time : Sun Apr 7 23:07:41 2024 State : clean #状态 Active Devices : 2 Working Devices : 2 Failed Devices : 0 Spare Devices : 0 Consistency Policy : bitmap Name : k455l:2T (local to host k455l) UUID : af486467:ad28f90a:b8060fab:b8060fab Events : 5980 Number Major Minor RaidDevice State 0 8 33 0 active sync /dev/sdc1 1 8 49 1 active sync /dev/sdd1 🔔 为了确保下次开机能够自动加载 RAID,需将 RAID 信息保存到配置文件 /etc/mdadm.confmdadm -D --scan > /etc/mdadm.conf 第三步:mkfs 创建文件系统此时的 RAID 相当于一块新的硬盘分区,与普通硬盘分区一样:需要使用 mkfs 命令将 RAID设备 创建(格式化)为可用的文件系统并挂载到目录树才能被我们使用。格式化命令很简单sudo mkfs.[文件系统格式] [RAID设备名] 以我的 RAID 为例#1.输入命令 $ sudo mkfs.ext4 /dev/md/2T #2.什么都不要做,等待输出完毕即可。 mke2fs 1.46.5 (30-Dec-2021) 创建含有 488345360 个块(每块 4k)和 122093568 个 inode 的文件系统 文件系统 UUID:4e82ff0c-2060-43f2-8846-db1bc53c9298 超级块的备份存储于下列块: 32768, 98304, 163840, 229376, 294912, 819200, 884736, 1605632, 2654208, 4096000, 7962624, 11239424, 20480000, 23887872, 71663616, 78675968, 102400000, 214990848 正在分配组表: 完成 正在写入 inode表: 完成 创建日志(262144 个块): 完成 写入超级块和文件系统账户统计信息: 已完成 #到此名为/dev/md/2T的RAID设备就成功被格式化为ext4格式了 第四步:mount 把文件系统挂载到目录树1.在配置文件 /etc/fstab 中添加新文件系统的挂载信息以我的 RAID 为例,你的 RAID 可能是 /dev/mdx,可以使用 lsblk 命令再次确认 RAID 名字。/dev/md/2T /mnt/raid2T ext4 defaults 0 0 🔔 理解和正确配置 /etc/fstab 对于系统管理来说非常重要!📕 简单介绍每一项的含义,通常只需要根据自己的情况修改前三项的内容。 /dev/md/2T /mnt/raid2T ext4 defaults 0 0 /etc/fstab 配置文件每一项的含义: 文件系统 (fs_spec):这一列指定要挂载的设备或远程文件系统。它可以是实际的设备名(如 /dev/sda1),LABEL,UUID,或者是网络文件系统的地址(如 192.168.1.1:/share)。 挂载点 (fs_file):这一列指定文件系统应该挂载到哪个目录下。 文件系统类型 (fs_vfstype):这一列指定了设备的文件系统类型,如 ext4、xfs、nfs 等。 挂载选项 (fs_mntops):这一列指定了挂载时使用的选项,比如 ro(只读)、rw(读写)、exec(执行权限)、noexec(禁止执行)、auto(启动时自动挂载)、noauto(启动时不自动挂载)等。 转储频率 (fs_freq):这一列指定了文件系统应该被 dump 命令备份的频率,0 意味着从不备份,1 意味着每天备份,2 意味着每两天备份一次,以此类推。 检查顺序 (fs_passno):这一列指定了文件系统在系统启动时应该被 fsck 检查的顺序。根文件系统(/)的检查顺序是 1,其他文件系统是 2 或更高,0 表示不检查。例如,一个 /etc/fstab 文件中的一行可能看起来像这样: UUID=2435c6df-0f08-4c2a-8d1f-318355d5e4e2 / ext4 defaults 0 1 这表示: 使用 UUID 标识的分区(2435c6df-0f08-4c2a-8d1f-318355d5e4e2)会被挂载到根目录(/)。 文件系统类型是 ext4。 使用默认的挂载选项(defaults 包括读写权限、执行权限等)。 不需要定期备份(fs_freq 为 0)。 在启动时首先检查该文件系统(fs_passno 为 1)。 理解和正确配置 /etc/fstab 对于系统管理来说非常重要,因为错误的配置可能导致系统无法正常启动或者数据丢失。2.mount 挂载使用 mount -a 命令挂载 /etc/fstab 配置文件中的文件系统mount -a 使用 lsblk 命令观察已经挂载的文件系统$ lsblk sdc 8:32 0 1.8T 0 disk └─sdc1 8:33 0 1.8T 0 part └─md127 9:127 0 1.8T 0 raid1 /mnt/raid2T sdd 8:48 0 1.8T 0 disk └─sdd1 8:49 0 1.8T 0 part └─md127 9:127 0 1.8T 0 raid1 /mnt/raid2T 必须使用 update-initramfs -u 命令更新 initramfs,否则下次开机时 RAID 无法正确装配。update-initramfs -u 到此一个 软RAID 便被成功创建,并挂载到文件树使用。此例子中的挂载点为 /mnt/raid2T,可以往该挂载点写入信息。第五步:管理软 RAID参考命令示例使用 sudo mdadm --detail --scan 命令扫描主机上所有的 RAID,参考目录第三章节(命令示例)完成管理。注意事项 在使用 mdadm 命令时,请谨慎操作以避免意外删除数据或破坏阵列配置。 在操作软件 RAID 阵列时,了解每个选项和参数的含义非常重要,以免造成数据丢失或损坏。 参考:利用 mdadm 工具构建 RAID 0/1/5/6/10 磁盘阵列实战(超详细)
2024年09月21日
7 阅读
0 评论
0 点赞
2024-09-21
md5deep 命令:哈希值校验
一、命令简介md5deep 命令用于递归计算和验证指定目录下文件的 MD5 哈希值。相关命令:md5sum 命令用于计算和验证文件的 MD5 哈希值。二、命令参数md5deep [选项] 文件 选项和参数 -r, --recursive: 递归处理目录 -l, --list: 从文件中读取哈希值并验证文件 -c, --check: 从文件中读取哈希值并验证文件 -m, --md5: 使用MD5算法计算哈希值 -s, --sha1: 使用SHA-1算法计算哈希值 -h, --help: 显示帮助信息 三、命令示例 递归计算目录的MD5哈希值: md5deep -r /path/to/directory 从文件中读取哈希值并验证文件: md5deep -l checksums.txt -X * 四、md5deep 对比 md5summd5sum md5sum 是大多数Linux发行版中默认包含的一个工具,用于生成文件的MD5校验和。 它通常用于确保文件在传输过程中没有被篡改或损坏。 使用方法简单,直接在命令行中输入 md5sum 文件名 即可得到该文件的MD5值。 它通常不支持递归计算目录中所有文件的MD5值。 md5deep md5deep 是一个更为先进的工具,它可以递归地计算目录及其子目录中所有文件的MD5值。 它支持多种散列算法,不限于MD5,还包括SHA-1、SHA-256等。 md5deep 的使用比 md5sum 更为灵活,功能也更强大。 它可以用来进行安全审计,快速找出文件系统中的重复文件,或者验证大型数据集合的完整性。 使用场景对比 当你需要快速验证单个文件或少量文件的完整性时,md5sum 是一个很好的选择。 如果你需要验证一个目录中所有文件的完整性,或者需要使用不同的散列算法,那么 md5deep 将是更合适的选择。 示例使用 md5sum:md5sum filename 使用 md5deep(计算MD5):md5deep -r directory/ 上面的命令会递归地计算指定目录下所有文件的MD5值。使用 md5deep(计算SHA-256):md5deep -r -e sha256 directory/ 这个命令会递归地计算指定目录下所有文件的SHA-256散列值。在使用这些工具时,应确保来源的可靠性,避免在不安全的环境中泄露敏感信息。同时,需要注意的是,MD5算法在安全性方面已经不被推荐用于加密或安全认证,因为它对碰撞攻击的抵抗力较弱。在需要高安全性的场合,建议使用SHA-256或更高级的散列算法。
2024年09月21日
11 阅读
0 评论
0 点赞
2024-09-21
md5sum 命令:哈希值校验
一、命令简介md5sum 命令用于计算和验证文件的 MD5 哈希值。相关命令:md5deep 命令用于递归计算和验证指定目录下文件的 MD5 哈希值。二、命令参数md5sum [选项] 文件 选项: -b, --binary: 以二进制模式读取文件。 -c, --check: 从文件中读取 MD5 摘要并验证文件。 -t, --text: 以文本模式读取文件。 -w, --warn: 显示警告信息。 -s, --status: 仅显示成功或失败的消息,不显示具体信息。 参数: 文件: 要计算或验证 MD5 摘要的文件。 三、命令示例哈希值根据文件内容生成,修改一个字符生成的哈希值都会大不相同。echo 这是一段文本 > hi #命令 md5sum hi #命令 8b48fcde13fefb87fd534b149ea08ab0 hi echo 这是一段文本,修改一点内容。 > hi #命令 md5sum hi #命令 03d7a4eea1c003e862ab04829f7d5d7f hi 寻常用法步骤 1:生成并保存 md5 摘要(哈希)md5sum example.txt hello.py >hash.txt #命令:分别生成 example.txt 和 helllo.py 的哈希值,存入hash.txt echo hash.txt d41d8cd98f00b204e9800998ecf8427e example.txt adc221dacabb84bf28f6f35fcdab410b hello.py 步骤 2: 验证文件的 MD5 摘要(哈希)md5sum -c hash.txt #命令:从文件读取hash值,校验hash值与指向文件。 example.txt: OK hello.py: OK 注意事项 使用 md5sum 可以帮助您验证文件的完整性,确保文件在传输或存储过程中没有被篡改。但是MD5 算法已经被证明不是最安全的哈希算法,不建议将其用于安全敏感的应用。 在验证文件时,确保 MD5 摘要文件的安全性,以免被篡改导致验证结果不准确。
2024年09月21日
7 阅读
0 评论
0 点赞
1
...
13
14
15
...
26