MacOS 自动定时开关机

2018-12-18  本文已影响13人  枫林风雨

自动开机只有通过系统偏好设置来设置,而关机可以使用 shell 指令来实现。

一、自动开机

  1. 系统偏好设置->节能->定时->勾选设置定时开机;

说明

  • 定时开机只是把电脑打开,开机之后显示的是用户登录窗,此时系统级别的开机启动配置设置会正常启动,但用户自定义的开机启动的配置需要用户登入相应用户 mac 账号才会执行。想了解开机启动的配置??
  • 基于上面的情况,如果需要开机自动启动用户自己配置的开机启动任务,则要再设置下自动登录,操作如下:系统偏好设置->用户与群组->登录选项->解锁,输入密码->自动登录

二、自动关机

  1. 系统偏好设置->节能->定时->勾选设置定时关机;
  1. 通过 shutdown 指令:
    shutdown -h now 立即关机
    shutdown -h +10 10分钟之后自动关机

说明

  • shutdown 需要超级用户权限,所以正确使用是这样的形式:sudo shutdown -h now,超级用户命令是需要每次都输入密码的,要实现真正的自动化,我们还需要做一点用户权限的配置,配置文件路径:/etc/sudoers,修改这个文件必须、必须、必须是root用户,可以使用 su root 切换用户,如果没有启用 root 用户,请参考

/etc/sudoers 主要设置如下:

# User privilege specification
root    ALL=(ALL) ALL
%admin  ALL=(ALL) ALL

# Uncomment to allow people in group wheel to run all commands
# %wheel        ALL=(ALL) ALL

# Same thing without a password
# %wheel        ALL=(ALL) NOPASSWD: ALL

# Samples
# %users  ALL=/sbin/mount /cdrom,/sbin/umount /cdrom
# %users  localhost=/sbin/shutdown -h now
我们添加的配置,如有别的需要,可参考上面👆
--------------------------------------------
user01 localhost=/sbin/shutdown  
--------------------------------------------
user01$ crontab -e
 # 输入以下指令后再 wq! 保存并退出
 30 5 * * * shutdown -h now  #指定每天的 5:30 执行关机命令 

#关于其它免密码输入的办法

网上有提出方案把密码通过管道传给sudo指令,但我都测试过了,在Mac上行不通。方案包括:

  1. echo 密码 | sudo shutdown -h now
  2. sudo shutdown -h now<<EOF
    密码
    EOF
上一篇下一篇

猜你喜欢

热点阅读