和许多(大多数?)其他人一样,我通过 编辑我的 crontab crontab -e
,在其中保留所有日常操作,例如增量备份、ntpdate、各种 rsync 操作,以及使我的桌面背景每年一次以圣诞节为主题。据我了解,在全新安装或新用户中,如果文件不存在,这也会自动创建该文件。但是,我想将此文件复制给另一个用户,那么我正在编辑的实际文件在哪里?
如果这在发行版之间有所不同,我使用的是 Centos5 和 Mint 17
答案1
cron
个人用户的文件位置是/var/spool/cron/crontabs/
。
从man crontab
:
每个用户都可以有自己的 crontab,尽管这些是 中的文件
/var/spool/cron/crontabs
,但它们不适合直接编辑。
答案2
希梅尔是正确的关于 Linux 上 crontab 文件的位置,但在其他操作系统上可能有所不同,并且“理论上”也可能位于 Linux 上的不同位置。本质上,当提供特殊接口来访问文件时,您应该使用它。这将确保cron
在安装文件之前检查文件,确保文件具有所需的权限,等等......
因此,您应该使用该界面将 crontab 从一个用户复制到另一个用户,如下所示,而不是直接访问文件。
crontab -u <user1> -l | crontab -u <user2>