JavaScript is required to for searching.
跳过导航链接
退出打印视图
Oracle Solaris 管理:常见任务     Oracle Solaris 11 Information Library (简体中文)
search filter icon
search icon

文档信息

关于本书

1.  查找有关 Oracle Solaris 命令的信息

2.  管理用户帐户和组(概述)

3.  管理用户帐户和组(任务)

4.  引导和关闭 Oracle Solaris 系统

5.  使用 Oracle Configuration Manager

6.  管理服务(概述)

7.  管理服务(任务)

8.  使用 Fault Manager

9.  管理系统信息(任务)

10.  管理系统进程(任务)

11.  监视系统性能(任务)

12.  管理软件包(任务)

13.  管理磁盘使用(任务)

14.  调度系统任务(任务)

创建和编辑 crontab 文件(任务列表)

自动执行系统任务的方法

用于调度重复性作业:crontab

用于调度单个作业:at

调度重复性系统任务 (cron)

crontab 文件内

cron 守护进程处理调度的方法

crontab 文件项的语法

创建和编辑 crontab 文件

如何创建或编辑 crontab 文件

如何验证 crontab 文件是否存在

显示 crontab 文件

如何显示 crontab 文件

删除 crontab 文件

如何删除 crontab 文件

控制对 crontab 命令的访问

如何拒绝 crontab 命令访问

如何将 crontab 命令访问限制于指定的用户

如何验证受限的 crontab 命令访问

使用 at 命令(任务列表)

调度单个系统任务 (at)

at 命令的说明

控制对 at 命令的访问

如何创建 at 作业

如何显示 at 队列

如何验证 at 作业

如何显示 at 作业

如何删除 at 作业

如何拒绝对 at 命令的访问

如何验证 at 命令访问已被拒绝

15.  使用 CUPS 设置和管理打印机(任务)

16.  管理系统控制台、终端设备和电源服务(任务)

17.  管理系统故障转储信息(任务)

18.  管理核心文件(任务)

19.  系统和软件问题的故障排除(任务)

20.  其他系统和软件问题的故障排除(任务)

索引

控制对 crontab 命令的访问

可以使用 /etc/cron.d 目录中的以下两个文件来控制对 crontab 命令的访问:cron.denycron.allow。这些文件只允许指定的用户执行 crontab 命令任务,例如创建、编辑、显示或删除自己的 crontab 文件。

cron.denycron.allow 文件包含用户名的列表,每行一个用户名。

这些访问控制文件按以下方式协同工作:

编辑或创建 cron.denycron.allow 文件需要超级用户特权。

在 SunOS 软件安装期间创建的 cron.deny 文件包含以下用户名:

$ cat /etc/cron.d/cron.deny
daemon
bin
smtp
nuucp
listen
nobody
noaccess

缺省 cron.deny 文件中的用户名都不能访问 crontab 命令。您可以编辑此文件,以添加被拒绝访问 crontab 命令的其他用户名。

未提供缺省的 cron.allow 文件。因此,在安装 Oracle Solaris 软件后,所有用户(缺省 cron.deny 文件中列出的用户除外)都可以访问 crontab 命令。如果创建 cron.allow 文件,则只有这些用户可以访问 crontab 命令。

如何拒绝 crontab 命令访问

  1. 成为 root 角色。
    $ su -
    Password:
    #

    注 - 无论 root 是用户还是角色,此方法都是可行的。


  2. 编辑 /etc/cron.d/cron.deny 文件并添加用户名,每个用户占据一行。将拒绝访问 crontab 命令的用户包括在内。
    daemon
    bin
    smtp
    nuucp
    listen
    nobody
    noaccess
    username1
    username2
    username3
    .
    .
    .
  3. 验证 /etc/cron.d/cron.deny 文件是否包含新项。
    # cat /etc/cron.d/cron.deny
    daemon
    bin
    nuucp
    listen
    nobody
    noaccess

如何将 crontab 命令访问限制于指定的用户

  1. 成为 root 角色。
  2. 创建 /etc/cron.d/cron.allow 文件。
  3. root 用户名添加到 cron.allow 文件中。

    如果未将 root 添加到该文件中,则会拒绝超级用户访问 crontab 命令。

  4. 添加用户名,每行一个用户名。

    将允许使用 crontab 命令的用户包括在内。

    root
    username1
    username2
    username3
    .
    .
    .

示例 14-6 将 crontab 命令访问限制于指定的用户

以下示例显示一个 cron.deny 文件,该文件用于禁止用户名 jonestempvisitor 访问 crontab 命令。

$ cat /etc/cron.d/cron.deny
daemon
bin
smtp
nuucp
listen
nobody
noaccess
jones
temp
visitor

以下示例显示一个 cron.allow 文件。用户 rootjonessmith 是仅有的可以访问 crontab 命令的用户。

$ cat /etc/cron.d/cron.allow
root
jones
smith

如何验证受限的 crontab 命令访问

要验证特定用户是否可以访问 crontab 命令,请在使用该用户帐户登录后执行 crontab -l 命令。

$ crontab -l

如果用户可以访问 crontab 命令并已创建 crontab 文件,则会显示该文件。否则,如果用户可以访问 crontab 命令但不存在 crontab 文件,则会显示与以下消息类似的消息:

crontab: can't open your crontab file

此用户已列在 cron.allow 文件中(如果存在该文件),或者该用户未列在 cron.deny 文件中。

如果用户不能访问 crontab 命令,则无论是否存在以前的 crontab 文件,都会显示以下消息:

crontab: you are not authorized to use cron. Sorry.

此消息表明,该用户未列在 cron.allow 文件(如果该文件存在)中,或者该用户已列在 cron.deny 文件中。