Linux 实操篇 组管理和权限管理、定时任务调度、Linux磁盘分区和挂载

news2025/2/21 6:38:16

一、组管理和权限管理

(1)Linux组基本介绍

在linux中的每个用户必须属于一个组,不能独立于组外

在linux中每个文件有所有者所在组其他组的概念

(2)文件/目录 所有者

一般为文件的创建者,谁创建了该文件,就自然地成为该文件的所有者

1.2.1查看文件的所有者

  1. 指令
    ls -ahl

  2. 说明

1.2.2修改文件的所有者

  1. 指令
    chown 用户名 文件名
  2. 应用案例:将文件apple.txt的所有者修改成tom
    chown tom apple.txt
  3. 注意:使用该命令修改文件所有者时,文件的所在组 默认不会改变 

(3)组的创建

1.3.1基本指令

groupadd 组名

1.3.2应用实例

  1. 创建一个组,monster:
    groupadd monster
  2. 创建一个用户fox,并放入monster组中:
    useradd -g monster fox

(4)文件/目录 所在组

当某个用户创建了一个文件后,这个文件的所在组默认就是该用户所在的组

1.4.1查看文件/目录所在组

  1. 基本指令
    ls -ahl
  2. 应用实例使用fox创建一个文件,看看该文件属于哪个组?

1.4.2修改文件/目录所在组

  1. 基本指令
    chgrp 组名 文件名
  2. 应用实例使用root用户创建文件orange.txt,看看当前这个文件属于哪个组,然后将这个文件所在组,修改到fruit组

(5)其它组

除文件的所有者和所在组的用户外,系统的其他用户都是文件的其他组

(6)改变用户所在组

在添加用户时,可以指定将该用户添加到哪个组中,同样的,用root的管理权限可以改变某个用户所在的组

1.6.1改变用户所在组

usermod -g 新组名 用户名

usermod -d 目录名 用户名 改变该用户登录的初始目录(特别说明:用户需要有进入到新目录的权限)

1.6.2应用实例

  1. 题目将zwj这个用户从原来所在组,修改到wudang组
  2. 指令
    usermod -g wudang zwj

(7)权限的基本介绍

  1. 第一列一共有10位,分别用0-9表示,下面是0-9位的说明:
  2. 第0位确定文件类型(d,-,l,c,b)
  3. 第 1-3 位确定所有者(该文件的所有者)拥有该文件的权限。 —User
  4. 第 4-6 位确定所在组(同用户组的)拥有该文件的权限。—Group
  5. 第 7-9 位确定其他用户拥有该文件的权限。—Other

(8)RWX权限详解,难点

1.8.1rwx作用到文件

  1. [r]代表可读(read):可以读取,查看
  2. [w]代表可写(write):可以修改,但是不代表可以删除该文件,删除一个文件的前提条件是对该文件所在的目录有写权限,才能删除该文件
  3. [x]代表可执行(execute):可以被执行

1.8.2rwx作用到目录

  1. [r]代表可读(read):可以读取,ls查看目录内容
  2. [w]代表可写(write):可以修改,对目录内创建+删除 或者 重命名目录
  3. [x]代表可执行(execute):可以进入该目录

(9)文件及目录权限实际案例                                                                 

  1. 10个字符确定不同用户能对文件干什么
    1. 第一个字符代表文件类型:-代表该文件是普通文件
    2. 其余字符每3个一组(rwx)
    3. 第一组rwx:文件拥有者的权限是读、写和执行
    4. 第二组rw-:所在组的用户的权限是读、写但不能执行
    5. 第三组r--: 其他组的用户的权限是读不能写和执行
  2. 可用数字表示:r=4,w=2,x=1,因此rwx=4+2+1=7,数字可以进行组合

(10)修改权限—CHMOD

1.10.1基本说明

通过chmod(change mod)指令,可以修改文件或目录的权限

1.10.2第一种方式:+、-、=变更权限

  1. u:所有者 g:所有组 o:其他人 a:所有人(u、g、o的总和
    1. chmod u=rwx,g=rx,o=x 文件/目录名
    2. chmod o+w 文件/目录名
    3. chmod a-x 文件/目录名
  2. 案例演示
    1. 给abc文件的所有者读写执行的权限,给所在组读执行权限,给其他组读执行权限
      chmod u=rwx,g=rx,o=rx abc
    2. 给abc文件的所有者除去执行的权限,增加组写的权限
      chmod u-x,g+w abc
    3. 给abc文件的所有用户添加读的权限
      chmod a+r abc

1.10.3第二种方式:通过数字变更权限

  1. r=4 w=2 x=1 rwx=4+2+1=7
  2. chmod u=rwx,g=rx,o=x 文件目录名 相当于 chmod 751 文件目录名
  3. 案例演示:将/home/abc.txt 文件的权限修改成rwxr-xr-x,使用给数字的方式实现

(11)修改文件所有者—CHOWN

1.11.1基本介绍

chown newowner 文件/目录    #改变所有者

chown newowner:newgroup 文件/目录    #改变所有者和所在组

-R    如果是目录,则使其下所有子文件或目录递归生效

1.11.2案例演示

  1. 请将/home/abc.txt文件的所有者修改成tom
  2. 请将/home/test目录下所有的文件和目录的所有者都修改成tom
    chown tom /home/abc.txt
    
    chown -R tom /home/test

(12)修改文件/目录所在组—CHGRP

1.12.1基本介绍

chgrp newgroup 文件/目录    #改变所在组

1.12.2案例演示

  1. 请将/home/abc.txt文件的所在组修改成shaolin(少林)
    chgrp shaolin /home/abc.txt
  2. 请将/home/test目录下所有的文件和目录的所在组都修改成shaolin(少林)
    chgrp -R shaolin /home/test

(13)最佳实践—警察和土匪游戏

  1. 创建组、创建用户
  2. jack创建一个文件,自己可以读写,本组人可以读,其他组没有任何权限
  3. jack修改该文件,让其他组可以读,本组人可以读写:
  4. xh投靠警察,看看xh是否可以读写
  5. 结论:如果想对目录内的文件进行读/写等操作,必须先拥有对该目录的相应权限

二、定时任务调度

(1)crond 任务调度

2.1.1概述

  1. crontab 进行 定时任务的设置
  2. 任务调度:系统在某个时间执行的特定的命令或程序
  3. 任务调度分类:
    1. 系统工作:如有些重要工作必须周而复始地执行
    2. 个别用户工作:个别用户可能希望执行某些程序,如对mysql数据库的备份

2.1.2基本语法

crontab [选项]

2.1.3常用选项

  1. -e:编辑当前用户的定时任务表,会用默认文本编辑器打开文件供你添加、修改或删除任务
    crontab -e
  2. -l:列出当前用户的定时任务表
    crontab -l
  3. -r:删除当前用户的定时任务表,操作不可逆
    crontab -r
  4. -u <用户名>:以指定用户的身份执行 crontab 操作,需足够权限(如 root)才能用
    sudo crontab -u jack -e    #编辑用户jack的任务表
    
    sudo crontab -u jack -l    #列出用户jack的任务表
    
    sudo crontab -u jack -r    #删除用户jack的任务表
  5. -h:显示 crontab 命令的帮助信息,列出可用选项及说明
    crontab -h

2.1.4快速入门

  1. 设置个人任务调度:corontab -e
  2. 在调度文件中输入任务:*/1 * * * * ls -l /etc/ > /tmp/to.txt
  3. 特殊符号说明:

2.1.5应用实例

  1. 每隔1分钟,就将当前的日期信息,追加到/tmp/mydate文件中:
    */1 * * * * date >>/tmp/mydate
  2. 每隔1分钟,将当前日期和日历都追加到/home/mycal文件中:
  3. 每天凌晨2:00将mysql数据库testdb,备份到文件中。提示:指令为mysqldump -u root -p密码 数据库

2.1.6crond相关指令

  1. 重启任务调度(CentOS7及以上)
    systemctl restart crond
  2. 重启任务调度(CentOS6及以下)
    service crond restart

(2)at 定时任务

2.2.1基本介绍

  1. .at命令是一次性定时计划任务,at的守护进程atd会以后台模式运行,检查作业队列来运行
  2. 默认情况下,atd守护进程每60秒检查作业队列,有作业时,会检查作业运行时间,如果时间与当前时间匹配,则运行此作业
  3. at命令是一次性定时计划任务,执行完一个任务后不再执行此任务了
  4. 在使用at命令的时候,一定要保证atd进程的启动,可以使用相关指令来查看
    ps -ef|grep atd
  5. 示意图                                                                                                                                         

2.2.2at命令格式

  1. at [选项] [时间]
  2. Crtl + D 结束at命令的输入(按两次

2.2.3at命令选项

    2.2.4at时间定义

    1. 具体时间点
    2. 特定日期与时间组合
    3. 相对计时法
    4. 特定时间表述

    2.2.5应用案例

    1. 案例1:2天后的下午5点执行        /bin/ls/home
    2. 案例2:atq命令来查看系统中没有执行的工作任务
    3. 案例3:明天17点钟,输出时间到指定文件内 比如/root/date100.log
    4. 案例4:2分钟后,输出时间到指定文件内 比如/root/date200.log
    5. 案例5:删除已经设置的任务,atrm 编号(也可以使用at -d 任务编号:来删除设置的任务)

    三、Linux磁盘分区和挂载

    (1)Linux分区

    3.1.1原理介绍

    1. 单一根目录与统一文件结构:在 Linux 系统中,无论存在多少个分区以及这些分区分配给哪些目录使用,系统只有一个根目录/,并形成一个独立且唯一的文件系统结构。每个分区都是这个整体文件系统的组成部分
    2. 挂载机制:Linux 采用 “挂载” 的方式来管理存储设备。整个文件系统包含了一系列的文件和目录,通过挂载操作,可以将一个分区(如硬盘分区、外部存储设备等)与文件系统中的某个目录关联起来。挂载后,该分区的存储空间就如同是该目录的一部分,用户可以通过这个目录来访问分区中的文件和目录
    3. 示意图

    3.1.2硬盘说明

    1. IDE硬盘分区标识:IDE硬盘用 hd 表示,后面跟盘号(a - d 对应不同IDE通道的主从盘)和分区号。1 - 4 号是主分区或扩展分区,5 及以后是逻辑分区,如 hda3、hdb2
    2. SCSI等硬盘分区标识:SCSI、SATA、NVMe 等硬盘用 sd 表示,盘号和分区号规则和IDE硬盘一样,像 sda5、sdb3
    3. 如图所示:                                                                                                                                 

    3.1.3查看所有设备挂载情况

    1. -aall):显示所有块设备,包含空设备(如未挂载、无分区的设备)
    2. -d(nodeps,即no dependencies的缩写):只显示设备本身,不显示设备的子分区
    3. -f(fs,即file system的缩写):显示文件系统相关信息,如文件系统类型、UUID 等
    4. -o(output):自定义输出列,可指定要显示的信息字段
    5. 输出信息说明: UUID(通用唯一识别码)主要是用来标识硬盘分区

    (2)挂载的经典案例

    3.2.1如何增加一块硬盘

    右键虚拟机,选择[设置],点击添加,选择硬盘,然后一路[下一步],中间只有选择磁盘大小的地方需要修改,直到完成。然后重启系统(才能识别)!

    3.2.2虚拟机增加硬盘步骤1

    1. 分区命令 fdisk /dev/sdb
    2. 开始对/sdb分区                                                                                                                          
    3. 说明:开始分区后输入n,新增分区,然后选择p,分区类型为主分区。两次回车默认剩余全部空间。最后输入w写入分区并退出,若不保存退出输入q

    3.2.3虚拟机增加硬盘步骤2

    格式化磁盘:

    1. 格式化命令:-t是type的缩写,意味着要创建的文件系统的类型是什么(make filesystem)
      mkfs -t ext4 /dev/sdb1
    2. 其中ext4是分区类型
    3. 格式化之前,sdb1还没有UUID
    4. 输入命令,格式化磁盘
    5. 再看,此时就拥有UUID了

    3.2.4虚拟机增加硬盘步骤3

    1. 挂载:将一个分区与一个目录关联起来
      mount 设备名称 挂载目录

      例如:mount /dev/sdb1 /newdisk(必须先创建/newdisk目录)

    2. 卸载
      umount 设备名称 或者 挂载目录

      例如:umount /dev/sdb1 或者 umount /newdisk

    3. 注意:用命令行挂载重启后会失效

    3.2.5虚拟机增加硬盘步骤4

    1. 永久挂载:通过修改/etc/fstab(filesystem table)实现自动挂载
    2. 添加完成后 执行 mount -a 即刻生效(或者执行reboot也会自动生效)
    3. 最后两个数字的含义:

    (3)磁盘情况查询

    3.3.1查询系统整体磁盘使用情况

    1. 基本语法:df是disk free的缩写
      df -h    #以人类可读的格式显示
      
      df -T    #显示文件系统类型
    2. 应用实例:

    3.3.2 查看指定目录的磁盘占用情况

    1. 基本语法:du是disk usage的缩写
    2. 选项说明
      1. -h
      2. -s
    3. 查询指定目录的磁盘占用情况,不指定则默认查询当前目录
    4. 应用实例:查询/opt目录的磁盘占用情况,深度为1

    (4)磁盘情况—工作使用指令

    1. 关于wc命令
    2. 统计/opt文件夹下的文件的个数
      ls -l /opt|grep "^-"|wc -l
    3. 统计/opt文件夹下的目录的个数
      ls -l /opt|grep "^d"|wc -l
    4. 统计/opt文件夹下的文件的个数,包括子文件夹里的
      ls -lR /opt|grep "^-"|wc -l
    5. 统计/opt文件夹下目录的个数,包括子文件夹里的
      ls -lR /opt|grep "^d"|wc -l

    6. 以树状显示目录结构:tree 目录(注意:如果没有tree指令,则使用yum install tree,前提网络是畅通的)                                                                                                                             

    本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/2301767.html

    如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

    相关文章

    MySql中的事务、MySql事务详解、MySql隔离级别

    文章目录 一、什么是事务&#xff1f;二、事务四大特性ACID 2.1、原子性&#xff08;Atomicity&#xff09;2.2、一致性&#xff08;Consistency&#xff09;2.3、隔离性&#xff08;Isolation&#xff09;2.4、持久性&#xff08;Durability&#xff09; 三、事务操作/事务的…

    10、k8s对外服务之ingress

    service和ingress的作用 service的作用 NodePort&#xff1a;会在每个节点开放一个端口&#xff0c;端口号30000-32767。 也是只能用于内网访问&#xff0c;四层转发。实现负载均衡。不能基于域名进行访问。 clusterip&#xff1a;service的默认类型&#xff0c;只能在集群…

    【STM32】舵机SG90

    1.舵机原理 舵机内部有一个电位器&#xff0c;当转轴随电机旋转&#xff0c;电位器的电压会发生改变&#xff0c;电压会带动转一定的角度&#xff0c;舵机中的控制板就会电位器输出的电压所代表的角度&#xff0c;与输入的PWM所代表的角度进行比较&#xff0c;从而得出一个旋转…

    个人简历html网页模板,科技感炫酷html简历模板

    炫酷动效登录页 引言 在网页设计中,按钮是用户交互的重要元素之一。这样一款黑色个人简历html网页模板,科技感炫酷html简历模板,设计效果类似科技看板图,可帮您展示技能、任职经历、作品等,喜欢这种风格的小伙伴不要犹豫哦。该素材呈现了数据符号排版显示出人形的动画效…

    <2.20>Leetcode哈希、双指针

    还可以用双指针的做法 我们要找等于9 排序后从两边开始左右指针 2 3 7 9 如果29>9那么9肯定不能要 去掉 左边也一样 2 3 5 6 26小于9 那么2肯定不能要 去掉 package Leetcode; import java.util.*;public class 两数之和 {public int[] twoSum(int[] nums,int target…

    vxe-table 如何实现跟 Excel 一样的数值或金额的负数自动显示红色字体

    vxe-table 如何实现跟 Excel 一样的数值或金额的负数自动显示红色字体&#xff0c;当输入的值为负数时&#xff0c;会自动显示红色字体&#xff0c;对于数值或者金额输入时该功能就非常有用了。 查看官网&#xff1a;https://vxetable.cn gitbub&#xff1a;https://github.co…

    【Word转PDF】在线Doc/Docx转换为PDF格式 免费在线转换 功能强大好用

    在日常办公和学习中&#xff0c;将Word文档转换为PDF格式的需求非常普遍。无论是制作简历、撰写报告还是分享文件&#xff0c;都需要确保文档格式在不同设备上保持一致。而小白工具的“Word转PDF”功能正是为此需求量身打造的一款高效解决方案。 【Word转PDF】在线Doc/Docx转换…

    陶瓷膜分离技术保障食品工业原料用水‌安全

    陶瓷膜分离技术在食品工业中应用广泛&#xff0c;尤其是在保障原料用水的安全性方面发挥着重要作用。下面将从几个方面介绍陶瓷膜分离技术如何保障食品工业原料用水的安全&#xff1a; 高效过滤杂质&#xff1a;陶瓷膜具有非常细小的孔径(通常在纳米级别)&#xff0c;能够有效去…

    蓝桥杯 2.基础算法

    蓝桥杯 2.基础算法 文章目录 蓝桥杯 2.基础算法基础算法时空复杂度枚举模拟编程11-16递归编程17进制转换编程18-19前缀和编程20-22差分编程23-27离散化贪心编程28-37二分双指针编程38-45构造编程46-49位运算编程50-55 排序冒泡排序选择排序插入排序快速排序归并排序编程56-65 基…

    Linux中的Ctrl+C与Ctrl+Z

    CtrlC与CtrlZ的区别 在Linux中&#xff0c;当我们在执行一个命令运行代码时&#xff0c;由于运行时间过长或中途出现报错&#xff0c;此时&#xff0c;我们可能需要终止该操作&#xff0c;这时候&#xff0c;该使用CtrlC还是CtrlZ呢&#xff1f; 1、CtrlC CtrlC&#xff1a;终…

    【深度学习】手写数字识别任务

    数字识别是计算机从纸质文档、照片或其他来源接收、理解并识别可读的数字的能力&#xff0c;目前比较受关注的是手写数字识别。手写数字识别是一个典型的图像分类问题&#xff0c;已经被广泛应用于汇款单号识别、手写邮政编码识别等领域&#xff0c;大大缩短了业务处理时间&…

    Linux-GlusterFS操作子卷

    文章目录 分布式卷添加卷分布式卷删除子卷删除总卷 &#x1f3e1;作者主页&#xff1a;点击&#xff01; &#x1f916;Linux专栏&#xff1a;点击&#xff01; ⏰️创作时间&#xff1a;2025年02月20日19点30分 分布式卷添加卷 Node1上进行操作 扩容 #服务器端 gluster volu…

    修改阿里云服务器内网ip

    运维同事问能不能改我自己的服务内网ip&#xff0c; 买了一台服99元服务器&#xff0c;以为不能结果&#xff0c;结果还真改成功了&#xff0c; 分享一下经验。 首先最后关闭服务器-关机&#xff0c;必须要关闭服务 访问vpc控制台&#xff0c;就是要新建立一个网络 https://…

    用DeepSeek零基础预测《哪吒之魔童闹海》票房——从数据爬取到模型实战

    系列文章目录 1.元件基础 2.电路设计 3.PCB设计 4.元件焊接 5.板子调试 6.程序设计 7.算法学习 8.编写exe 9.检测标准 10.项目举例 11.职业规划 文章目录 **一、为什么要预测票房&#xff1f;****二、准备工作****三、实战步骤详解****Step 1&#xff1a;数据爬取与清洗&am…

    医院管理系统方案-基于蓝牙室内定位技术的院内智能导航系统:技术详解、功能设计及核心优势

    文面向IT技术员、医院信息化负责人及物联网应用开发者&#xff0c;本文介绍了一款基于蓝牙室内定位技术的智能导航系统。该系统通过高精度定位与智能路径规划&#xff0c;极大提升了患者就医体验与医院运营效率。 如需获取院内智能导航系统技术文档可前往文章最下方获取&#x…

    聊一聊vue如何实现角色权限的控制的

    大家好&#xff0c;我是G探险者。 关于角色与权限控制&#xff0c;通常是分为两大类&#xff1a;一种是菜单权限&#xff1b;一种是操作权限。 菜单权限是指&#xff0c;每个角色对应着可以看到哪些菜单&#xff0c;至于每个菜单里面的每个按钮&#xff0c;比如增删改查等等这类…

    TensorFlow深度学习实战——构建卷积神经网络实现CIFAR-10图像分类

    TensorFlow深度学习实战——构建卷积神经网络实现CIFAR-10图像分类 0. 前言1. CIFAR-10 数据集介绍2. CIFAR-10 图像分类3. 提升模型性能3.1 增加网络深度3.2 数据增强 4. 模型测试相关链接 0. 前言 我们已经学习了卷积神经网络 (Convolutional Neural Network, CNN) 的基本概…

    服务器创建conda环境并安装使用jupyter

    1.创建conda环境 conda create --name myenv python3.8 conda activate myenv其中 myenv 是您想要创建的环境名称&#xff0c;可以根据需要替换为其他名称。2.安装juypter conda install jupyter3.启动juypter jupyter notebook复制链接到浏览器打开 4.设置jupyter使用的 …

    【HarmonyOS Next】鸿蒙监听手机按键

    【HarmonyOS Next】鸿蒙监听手机按键 一、前言 应用开发中我们会遇到监听用户实体按键&#xff0c;或者扩展按键的需求。亦或者是在某些场景下&#xff0c;禁止用户按下某些按键的业务需求。 这两种需求&#xff0c;鸿蒙都提供了对应的监听事件进行处理。 onKeyEvent 默认的…

    【Spring详解五】bean的加载

    五、bean的加载 当我们显示或者隐式地调用 getBean() 时&#xff0c;则会触发加载 bean 阶段。示例代码如下&#xff1a; public class AppTest {Testpublic void MyTestBeanTest() {BeanFactory bf new XmlBeanFactory( new ClassPathResource("spring-config.xml"…