Linux【实操篇】—— 组管理、权限管理、定时任务调度

Linux【实操篇】—— 组管理、权限管理、定时任务调度Linux 操作系统组管理 权限管理 定时任务的设置方式 含详细案例

目录

一、组管理

1. 所有者

2. 所在组

3. 其他组

二、权限管理

1. 文件/目录详细信息的字段含义

2. rwx 权限详解

3. 修改权限-chmod

三、定时任务调度

1. 任务调度 crond

2. 一次性定时任务 at


一、组管理

        在 Linux 操作系统中,每个用户都属于一个组,可以切换组但必须属于一个组,除此之外每个文件也与组有着一些联系。Linux 组相关概念有 所有者所在组其他组

1. 所有者

所有者就是文件的创建者,用户创建了一个文件,这个文件的所有者就是该用户。

查看文件的所有者使用指令:ls -ahl(提示:查看目录下的文件时,白色代表文件,蓝色代表目录,红色代表压缩文件)

举例:进入 home 目录,查看 home 下所有文件的所有者分别是谁。如下,标红的一列即为目录或者文件的所有者。

Linux【实操篇】—— 组管理、权限管理、定时任务调度

修改所有者使用指令 chown

  • chown 新所有者 文件/目录  //修改文件或目录的所有者
  • chown 新所有者:新组 文件/目录  //改变文件的所有者和所在组
  • chown -R 新所有者 目录  //将目录下的所有文件和目录的所有者都改为新所有者(递归)

举例:文件 xiaoma 的所有者是 xiaoma,我们将它修改为 zhangsan; 

Linux【实操篇】—— 组管理、权限管理、定时任务调度

2. 所在组

当用户创建了一个文件,那么用户所属的组就是这个文件的所在组,所在组内的所有用户对该文件都会有一定的管理权限。

查看文件所在组使用指令 ls -ahl,与查看所有者相同;

举例:为了便于操作,我们先创建一个组 master,然后创建一个用户 ma 并将其放入 master 组,如下;

Linux【实操篇】—— 组管理、权限管理、定时任务调度

使用用户 ma 进行登录;新建一个文件 a.txt;

Linux【实操篇】—— 组管理、权限管理、定时任务调度

此时我们查看 a.txt 的所在组,标红的一列即为所在组名,可以看到,文件 a.txt 的所有者为 ma,所在组是 master。这是因为用户 ma 是在组 master 中创建的,那么用户 ma 创建的文件 a.txt 的所在组就是 master;

Linux【实操篇】—— 组管理、权限管理、定时任务调度

修改文件所在组使用指令:chgrp

  • chgrp 新组 文件/目录  //修改文件或目录的所在组
  • chgrp -R 新组 目录  //将目录下的所有文件和目录的所在组都改为新组(递归)

举例:root 用户下新建文件 b.txt,如下文件 b.txt 的所有者和所在组都是 root;

Linux【实操篇】—— 组管理、权限管理、定时任务调度

接下来我们将 b.txt 切换至 master 组中,现在 b.txt 的所有者为 root,所在组为 master;

Linux【实操篇】—— 组管理、权限管理、定时任务调度

3. 其他组

除了文件所在组,其他的组就称为其他组,其他组的用户对于所在组内的文件也具有一定的管理权限。 

在添加用户时,可以指定将用户添加到某个组,也可以使用 root 管理权限改变用户的所在组;

改变用户所在组使用指令:usermod -g 组名 用户名,也可使用指令 usermod -d 目录名 用户名 改变用户登录时的初始目录,前提是该用户必须要有进入新目录的权限。

二、权限管理

1. 文件/目录详细信息的字段含义

        我们使用 ls -l 命令查看当前路径下所有文件或目录的详细信息时,会显示如下格式的数据;

Linux【实操篇】—— 组管理、权限管理、定时任务调度

接下来我们从左到右按照位数对该信息进行介绍: 

drwxr-xr-x. 2 root root 6 3月 4 17:23 公共

  • 0 位:也就是第一列中的第一个字符,它代表文件类型;
    • – 代表普通文件
    • b 代表快设备,如硬盘
    • c 代表设备文件,入鼠标、键盘等
    • d 代表目录,相当于 Windows 中的文件夹
    • l 代表链接,相当于 Windows 中的快捷方式
  • 1~3 位:文件的所有者对该文件的权限,如  rwx 就代表读、写、执行的权限;
  • 4~6 位:文件所在组中的用户对该文件的权限;
  • 7~9 位:其他组用户对该文件的权限;
  • 10 位:文件的硬连接数或者目录的子目录数;
  • 第 10 位之后分别位所有者、所在组、文件大小、最后修改日期、文件名;

2. rwx 权限详解

rwx 作用于文件和目录时,代表的权限并不相同;当作用于文件时:

当 rwx 作用于目录时:

便于理解,请看如下案例:

Linux【实操篇】—— 组管理、权限管理、定时任务调度

3. 修改权限-chmod

        通过指令 chmod 可以修改文件或者目录的权限;第一种方式是通过符号 “+”、“-”、“=” 来变更权限;修改权限之前我们需要先知道所有者、所在组、其他组等分别表示的字母含义:

        u 所有者、g 所在组、o 其他人、a 所有人(u g o 的总和),如下命令:

  • chmod u=rwx,g=rw,o=x 文件/目录名   //为文件或目录的所有者赋予读、写、执行的权限、为所在组赋予读、写权限、为其他人赋予执行的权限;
  • chmod o+w 文件/目录名  //为文件或目录的其他人赋予写权限;
  • chmod a-x 文件/目录名  //为文件或目录的所有人去掉执行权限;

        第二种方式是通过数字来变更权限,r(读)权限为 4,w(写)权限为 2,x(执行)权限为 1,为文件或者目录设置权限时根据需要使用数字之和即可,如下两条命令等同:

  • chmod u=rwx,g=rw,o=x 文件/目录名  
  • chmod 761 文件/目录名  

三、定时任务调度

1. 任务调度 crond

        任务调度是指系统在某个时间执行的特定程序命令,它是一个后台程序,所以一直在运行。使用指令 crontab 可进行定时任务调度的设置:

  • crontab  //设置定时任务
  • crontab -e  //编辑 crontab 定时任务
  • crontab -l  //查询 crontab 定时任务
  • crontab -r  //删除当前用户所有的 crontab 定时任务
  • service crond restart  //重启任务调度

如下我们设置并编辑一个定时任务,输入语句 */1 * * * * ls-l;

Linux【实操篇】—— 组管理、权限管理、定时任务调度

注意该语句含义:*/1 * * * * ls-l,每过一分钟执行一次 ls -l 指令;

字符 含义 范围
第一个 * 一小时的第几分钟 0~59
第二个 * 一天中的第几个小时 0~23
第三个 * 一月中的第几天 1~31
第四个 * 一年中的第几月 1~12
第五个 * 一周中的星期几 0~7(0、7均为星期日)

输入结束后 wq 保存即创建了新的定时任务;

Linux【实操篇】—— 组管理、权限管理、定时任务调度

Linux【实操篇】—— 组管理、权限管理、定时任务调度

任务调度 crond 其他特俗符号含义如下:

  • *】:任何时间
  • ,:不连续时间,例如  [0 8,10,14 * * * 指令] 代表每天的 8:00、10:00、14:00 都执行一次命令
  • :连续时间,例如 [20 16 * * 1-5 指令] 代表每周的周一到周五的 16:20 都执行一次该指令
  • */n:每隔多久执行一次,例如 [*/5 * * * * 指令] 代表每隔 5 分钟执行一次指令

2. 一次性定时任务 at

        通常的定时任务调度是按照周期反复执行的,如果我们希望某个定时任务是一次性的,也就是只在规定的时间执行一次,那么就需要用到定时任务 at。

设置一次性定时任务使用指令 at 选项 时间 ,输入后两次按下 Ctrl+D 结束输入。at 命令各选项如下:

选项 含义
-m 指定的任务完成后,给用户发送邮件
-i 查询任务,相当于指令 atq
-d 删除任务,相当于指令 atrm
-v 显示任务被执行的时间
-c 打印(输出)任务内容
-v  显示版本信息
-q<队列> 使用指定队列
-f<文件> 从指定文件读取任务而不是从标准输入
-t<时间参数> 以时间参数的形式提交要运行的任务

at 命令时间的指定格式如下:

  • 使用小时:分钟式指定时间,如 06:00 代表今天的凌晨六点支持,如果此时间已过去,则放到第二天;
  • 使用英文单词指定,比如 noon(中午)、teatime(下午茶时间,下午4点)、midnight(半夜)等,时间表示比较模糊;
  • 使用 12 小时进制,然后再在时间后面加上 pm(下午)、am(上午)来说明一天的时间,例如 6am 就是早上六点;
  • 使用标准时间格式,如 mm/dd/yy、dd.mm.yy、或者 12:00 2022-04-04;
  • 使用相对计时法,now 表示现在,然后在 now 后加上需要的时间以及单位,例如 now+5hours 表示距现在五小时后,还有其他单位如 minutes(分钟)、days(天)、weeks(星期);
  • 直接使用 today(今天)、tomorrow(明天)来指定。

原理:定时任务 at 拥有守护进程 atd,守护进程会每 60 秒检查任务队列,如果该任务的运行时间与设置的时间匹配,则运行此任务,否则停止任务。

使用 at 指令的前提是 atd 进程已启动,可使用指令 ps -ef | grep atd 检测当前正在运行的进程。如下说明 atd 进程已启动。

Linux【实操篇】—— 组管理、权限管理、定时任务调度

举例:两天后的上午 7 点执行命令 ls /home;

Linux【实操篇】—— 组管理、权限管理、定时任务调度

如上图信息,第一列为进程编号,删除进程时使用指令 atrm 编号 即可;

Linux【实操篇】—— 组管理、权限管理、定时任务调度


下期:Linux 磁盘分区、网络配置。

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请联系我们举报,一经查实,本站将立刻删除。

发布者:全栈程序员-站长,转载请注明出处:https://javaforall.net/232780.html原文链接:https://javaforall.net

(0)
全栈程序员-站长的头像全栈程序员-站长


相关推荐

  • android toast用法_android五种布局的特点

    android toast用法_android五种布局的特点Toast用于向用户显示一些帮助/提示。下面我做了5中效果,来说明Toast的强大,定义一个属于你自己的Toast。1.默认效果代码Toast.makeText(getApplicationContext(),"默认Toast样式",     Toast.LENGTH_SHORT).show(); 2.自定义显示位置效果代码toast=Toast.mak…

    2022年9月12日
    3
  • 画完三角形再画谢尔宾斯基地毯

    画完三角形再画谢尔宾斯基地毯照样废话不说,看代码看注释importjava.awt.Color;importjava.awt.Dimension;importjava.awt.Graphics;importjava.awt.Toolkit;importjava.awt.event.MouseAdapter;importjava.awt.event.MouseEvent;import…

    2022年7月13日
    16
  • 线程安全Map比较

    线程安全Map比较线程安全 Map 比较 ConcurrentHa 以下简称 CHM 是 JUC 包中的一个类 Spring 的源码中有很多使用 CHM 的地方 之前已经翻译过一篇关于 ConcurrentHa 的博客 如何在 java 中使用 ConcurrentHa 里面介绍了 CHM 在 Java 中的实现 CHM 的一些重要特性和什么情况下应该使用 CHM 需要注意的是 上面

    2025年7月9日
    5
  • Fuel 5.1安装openstack I版本号环境

    Fuel 5.1安装openstack I版本号环境

    2022年1月3日
    43
  • 真实机下 ubuntu 18.04 安装GPU +CUDA+cuDNN 以及其版本选择(亲测非常实用)

    真实机下 ubuntu 18.04 安装GPU +CUDA+cuDNN 以及其版本选择(亲测非常实用)ubuntu18.04安装GPU+CUDA+cuDNN:目前,大多情况下,能搜到的基本上都ubuntu14.04.或者是ubuntu16.04的操作系统安装以及GPU环境搭建过程,博主就目前自身实验室环境进行分析,总结一下安装过程。1.实验室硬件配置(就需要而言):gpu:GeForcetitanxp12G显存内存:6…

    2022年5月4日
    53
  • 算法基础课acwing下载_十进制数135转换为八进制数

    算法基础课acwing下载_十进制数135转换为八进制数杭州人称那些傻乎乎粘嗒嗒的人为 62(音:laoer)。杭州交通管理局经常会扩充一些的士车牌照,新近出来一个好消息,以后上牌照,不再含有不吉利的数字了,这样一来,就可以消除个别的士司机和乘客的心理障碍,更安全地服务大众。不吉利的数字为所有含有 4 或 62 的号码。例如:62315,73418,88914 都属于不吉利号码。但是,61152 虽然含有 6 和 2,但不是 连号,所以不属于不吉利数字之列。你的任务是,对于每次给出的一个牌照号区间 [n,m],推断出交管局今后又要实际上给多少辆新的士车上牌

    2022年8月11日
    4

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

关注全栈程序员社区公众号