我正在使用以下命令执行权限修复:
sudo find . -type f -exec chmod 470 {} \;
有成千上万个文件需要更新权限。它还会在运行期间导致 CPU 使用率激增。
使用纯 chmod 递归更新进一步修改文件权限的后续调用不会造成 CPU 峰值
sudo chmod 770 -R /path/to/directory
我正在寻找:
- 减少此调用期间 CPU 使用率的方法
- 可能过滤需要更新权限的文件
答案1
用于nice
在运行命令时设置较低的调度优先级,或用于renice
更改已经运行的进程的优先级。
sudo nice -n 19 find . -type f -exec chmod 470 {} \;
您可以将 find 更改为不返回已与您设置的模式匹配的文件:
sudo nice -n 19 find \! -perm 0470 -and -type f -exec chmod 470 {} \;
答案2
CPU 的峰值是由于磁盘活动引起的,因此减少 CPU 的唯一方法是加快磁盘速度。