![cronjob 用于创建两个大小各为 2 GB 的文件](https://linux22.com/image/1391957/cronjob%20%E7%94%A8%E4%BA%8E%E5%88%9B%E5%BB%BA%E4%B8%A4%E4%B8%AA%E5%A4%A7%E5%B0%8F%E5%90%84%E4%B8%BA%202%20GB%20%E7%9A%84%E6%96%87%E4%BB%B6.png)
我需要创建一个每小时运行一次的 cron 作业。
这个 cron 作业应该创建两个文件,每个文件大小为 2GB,一个应该从 /dev/urandom 创建,另一个应该从 /dev/zero 创建,并且应该写入特定的文件系统/目录。
我该如何做呢?
答案1
您可以使用dd
以下命令创建这些文件:
dd if=/dev/zero of=/tmp/ZeroFile count=10000 bs=200000
dd if=/dev/urandom of=/tmp/UrandomFile count=10000 bs=200000
为了使用 cron 安排这个作业,您必须将此命令放入您的 cronjob 中:
crontab -e
- 写下来:
0 */2 * * * /path/to/your/command
答案2
编辑用户 crontab
crontab -e
然后添加以下几行
0 * * * * dd if=/dev/random of=/tmp/myfile1.dat bs=$(( 1024 * 1024 * 1024 )) count=2
0 * * * * dd if=/dev/zero of=/tmp/myfile2.dat bs=$(( 1024 * 1024 * 1024 )) count=2
或者编辑 /etc/crontab 并将 user_to_run_as 替换为您要以该用户身份运行命令的用户
0 * * * * user_to_run_as dd if=/dev/random of=/tmp/myfile1.dat bs=$(( 1024 * 1024 * 1024 )) count=2
0 * * * * user_to_run_as dd if=/dev/zero of=/tmp/myfile2.dat bs=$(( 1024 * 1024 * 1024 )) count=2
我尝试过了,使用 /dev/random 并不能提供准确的文件大小。“为什么 /dev/random 中的 dd 会产生不同的文件大小?”似乎对此作出了解释