当前位置: 首页 > news >正文

linux系统管理

一、磁盘设备与文件系统管理

(一)文件系统管理基础

文件系统管理的核心基础是磁盘和磁盘分区管理。在 Linux 世界里,磁盘和磁盘分区都以设备文件的形式存在。这些设备文件的命名规则因设备类型而异,其实质是将设备抽象成可编程接口,方便用户通过各类系统工具进行操作。

(二)磁盘和磁盘分区操作

  1. 分区命令
    • fdisk:这是一款经典的命令行磁盘分区工具,主要适用于 MBR 分区表。比如,当我们要对/dev/sda磁盘进行分区时,在终端输入sudo fdisk /dev/sda即可开启操作。此外,fdisk -l能用来查看文件系统分区的具体情况。另外,lsblk命令可列出块设备信息,blkid则用于查看块设备的文件系统类型、LABEL 以及 UUID 等信息
    • parted:功能更为强大,支持 GPT 分区表,能够对分区进行更复杂的操作。若要对/dev/sdb磁盘进行分区,使用sudo parted /dev/sdb命令就可以开始相关操作。
  2. 格式化命令
    mkfs命令主要用于在分区上创建文件系统。例如,要将/dev/sda1分区格式化为 ext4 文件系统,可执行sudo mkfs -t ext4 /dev/sda1 ,其中-t选项用于明确指定要创建的 Linux 文件系统类型。
  3. 挂载命令
    mount命令的格式为mount [选项] 设备文件(磁盘分区) 挂载点(目标目录) ,作用是把文件系统挂载到指定的挂载点。比如,要将/dev/sda1分区挂载到/mnt/data目录下,使用sudo mount /dev/sda1 /mnt/data 。值得注意的是,直接使用mount命令可以查看已挂载的文件系统。而卸载操作则通过umount命令来完成,格式为umount 设备文件名/用于挂载文件系统的目录名 。
  4. 磁盘空间使用情况查看命令
    • dfdf [选项] [目录/文件] ,无参数时会显示所有已挂载的文件系统的磁盘空间使用情况(默认以 1k 块为单位);当有参数时,会显示包含该文件或目录的文件系统信息。使用-h选项,能以更易读的形式展示磁盘空间使用情况(使用合适的单位来展示)。
    • dudu [选项] [目录/文件] ,默认以磁盘块为单位输出,无参数时会递归显示当前目录下的目录占用总和。

合理的分区策略能够有效隔离系统文件和用户数据,避免单点故障的扩散。格式化操作通过初始化元数据结构,为文件的高效读写提供保障。

磁盘设备文件的命名遵循<接口类型><磁盘编号><分区编号>的规则,例如/dev/xxxxyn ,其中xxxx代表接口类型,y是磁盘编号(从a开始),n是分区编号(从1开始) ,像sda1就表示 SCSI 磁盘的 1 号磁盘的 1 分区。

二、归档和压缩文件

把多个文件打包成一个文件,这个文件就被称为打包文件或归档文件,常用于文件备份、传输以及存储等场景。

(一)打包操作

使用tar -cvf 打包后的文件名 文件/目录 ,其中c表示创建归档文件,v用于显示打包文件信息,f指定生成的存档文件名。

(二)列出打包内容

tar -tvf 打包的文件名 ,这里t列出文件内容,v显示文件的详细信息,f指定存档的文件名。

(三)解包文件

tar -xvf xxxx.tar ,x用于还原打包文件。还可以只解包打包文件中的特定文件,如tar -xvf xxx.tar innerfile1 。

(四)压缩与解压缩

若需要进行压缩,可使用选项zjZ 。打包命令为tar -cvzf 指定的名字 文件/目录 ,解包命令为tar -xvzf 名字 ,并且这里可以配合通配符使用,比如tar -cvf xxx.tar * ,可以将当前目录下所有文件打包。

另外,gzip用于压缩单个文件,语法为gzip 文件名 ;

gunzip用于解压缩文件,语法为gunzip 文件名 ,

这两个命令一般和tar联合使用来实现压缩打包解包解压缩

三、任务管理

(一)一次性任务

使用at [时间] ,输入任务命令后按Ctrl + D ,即可将任务添加到作业队列,由atd守护进程在后台执行,它会检查任务队列并在指定时间运行任务。

时间参数若不写日期,默认是今天。

at命令常用选项有:

l列出所有at命令提交的作业;

m表示作业完成时,向用户发送一个确认消息;

rat调度算法作业中删除指定的作业号。

实例:

(二)周期性任务

crontab用于设置周期性任务,语法格式为crontab [-u 用户名] 文件 或crontab [-u 用户名] {-l | -r | -e} 。

其中,l列出用户定时任务的详细内容;

u设定某个用户的定时任务;

r删除用户的所有定时任务;

e编辑用户的定时任务。

crontab -e的编辑语法为f1 f2 f3 f4 f5 命令 ,一行执行一个命令,fx之间用空格或制表符分割.

*是通配符,表示 “每” 的意思 ,比如f1上是* ,则表示每分钟都会执行。

四、用户管理

(一)用户类型

  1. 根用户账户:即root,拥有对系统不受限制的完全控制权。
  2. 系统账户:主要用于对系统特定组件进行操作。
  3. 普通用户账户:供用户日常使用系统,提供对系统的交互式访问,但对关键的系统文件和目录访问权限有限。

(二)用户组账户

组是具有相同特性的用户集合,是一种对用户进行资源分配的方式。按照性质划分,可分为系统组和私有组账户。组账号不能用于登录计算机,其存在意义在于方便权限的统一管理和分配。

(三)用户管理配置文件

  1. /etc/passwd:保存用户账户信息,只有root账户具有可读可写权限,其他用户仅可读。一行信息格式为 “用户名:x: 用户 ID: 主组 ID: 用户详细信息:家目录地址:启动时启动的 shell 地址” ,这里的x表示设置了密码,真实的密码保存在/etc/shadow 。
  2. /etc/shadow:专门保存用户密码信息。
  3. /etc/group:用于保存组账户信息。

(四)用户管理命令

useradduseradd [选项] 用户名 , 常用选项包括u指定用户名c指定账户详细信息;g指定用户的主组;d指定账户的家目录;s指定用户的默认 shell 。默认情况下,useradd创建的用户没有设置密码,无法直接登录,可使用passwd 用户名来设置密码。还可以通过id 用户名来查看用户的基本信息(包括uid用户 id、gid主组 id、groups所有组 id,涵盖附加组和主组) 。

usermod:usermod [选项] 用户名 ,l修改账户名;u修改uid;c修改账户详细信息;g修改用户的主组;d修改用户的家目录;s修改用户启动时的默认 shell ;m必须和d连用,单独使用-d选项只是在/etc/passwd配置文件中把源目录名改成指定的新目录名,不会移动源目录下的内容;-m与-d一起使用时,会将原有的家目录移动到指定目录并根据需要改名,同时把源目录下的内容也移动到新目录 ,并确保目标目录拥有与源目录相同的权限和所有权。例如,修改linuxer的家目录为/home/linuxer 同时修改用户名为unixer 。

userdel:userdel [选项] 用户名 ,删除用户账号后会默认保留家目录,若要删除对应的家目录,可使用-r选项。

(五)组用户管理

    1. groupadd:用于添加用户组,若不使用-g选项指定组 id,系统会自动分配。
    2. groupmod:使用-n修改组名 ,使用-g修改组 id 。
    3. groupdel:用于删除空组,若要删除非空组,可使用-f选项。

    (六)身份切换

    su命令用于切换到另外一个用户,格式为su [-] 用户名 。

    使用-时 ,会切换工作环境(包括用户的 shell、环境变量、当前目录打开的文件和窗口等);若不使用- ,则会继承当前的环境。平级切换和升级切换需要输入密码,而降级切换不需要输入密码。

    http://www.xdnf.cn/news/351217.html

    相关文章:

  1. Java+Selenium+快代理实现高效爬虫
  2. 通用外设驱动模型(四步法)
  3. 探索大型语言模型的 LLM 安全风险和 OWASP 十大漏洞
  4. (x ^ 2 + 2y − 1) ^ 3 − x ^ 2 * y ^ 3 = 1
  5. React Native 前瞻式重大更新 Skia WebGPU ThreeJS,未来可期
  6. AI客服问答自动生成文章(基于deepseek实现)
  7. JAVA简单例题+抽象+继承
  8. openssl中BIO的使用
  9. PostgreSQL创建只读账号
  10. 数据中台建设系列(五):SQL2API驱动的数据共享与服务化实践
  11. 游戏引擎学习第266天:添加顶部时钟概览视图。
  12. TensorFlow深度学习实战(15)——编码器-解码器架构
  13. 可视化图解算法36: 序列化二叉树-I(二叉树序列化与反序列化)
  14. 用 Java 实现 哲学家就餐问题
  15. 数字信号处理|| 离散序列的基本运算
  16. IPv6协议
  17. 基于Transformer与SHAP可解释性分析的神经网络回归预测模型【MATLAB】
  18. 英文单词 do、play、go 的区别
  19. 大模型的RAG技术系列(二)
  20. ADV7842KBCZ - 5 富利威长期稳定供应
  21. MLX-Audio:高效音频合成的新时代利器
  22. 【图片识别内容改名】图片指定区域OCR识别并自动重命名,批量提取图片指定内容并重命名,基于WPF和阿里云OCR识别的解决
  23. wpf UserControl 更换 自定义基类
  24. 三款实用电脑工具
  25. 【CTFSHOW_Web入门】命令执行
  26. K8S - GitLab CI 自动化构建镜像入门
  27. 按位宽提取十六进制值
  28. OpenCV的 ccalib 模块用于自定义标定板的检测和处理类cv::ccalib::CustomPattern()----函数calibrate
  29. uniapp开发的项目上传到国内主流应用市场(华为、小米、oppo、vivo)
  30. COLT_CMDB_aix_diskinfo.sh