در نسخه های RHEL 4,5,6، از فایل rc.local برای استارت سرویسها و دستورارت در زمان بوت شدن سیستم استفاده می شود این فایل در نسخه RHEL 7، صرفا برای backward compatibility کماکان در دسترس می باشد. با مشاهده محتوای این فایل، به این مطلب خواهیم رسید:
[root@myhost ~]# cat /etc/rc.local
#!/bin/bash
# THIS FILE IS ADDED FOR COMPATIBILITY PURPOSES
# It is highly advisable to create own systemd services or udev rules
# to run scripts during boot instead of using this file.
# In contrast to previous versions due to parallel execution during boot
# this script will NOT be run after all other services.
# Please note that you must run ‘chmod +x /etc/rc.d/rc.local’ to ensure
# that this script will be executed during boot.
touch /var/lock/subsys/local
همانطور که در این متن قابل مشاهده است، برای انکه فایل rc.local(این فایل لینکی از فایل etc/rc.d/rc.local/ می باشد) کما فی السابق در زمان راه اندازی سیستم، سبب اجرای سرویسها و دستورات شود، باید به این فایل مجوز اجرا داد. قبل از دادن این مجوز، سرویس مربوطه در وضیعت inactive قرار دارد:
[root@myhost ~]# systemctl status rc-local
â rc-local.service – /etc/rc.d/rc.local Compatibility
Loaded: loaded (/usr/lib/systemd/system/rc-local.service; static; vendor preset: disabled)
Active: inactive (dead)
با دادن مجوز اجرا به فایل rc.local و همچنین فعال و استارت کردن سرویس مربوطه، وضیعت ان به active تغییر خواهد کرد و همچنین دستورات و سرویسهایی که در این فایل تعیین شده اند، همراه با بوت شدن سیستم، استارت خواهد شد:
[root@myhost ~]# chmod +x /etc/rc.d/rc.local
[root@myhost ~]# systemctl start rc-local
[root@myhost ~]# systemctl enable rc-local
[root@myhost ~]# systemctl status rc-local
â rc-local.service – /etc/rc.d/rc.local Compatibility
Loaded: loaded (/usr/lib/systemd/system/rc-local.service; static; vendor preset: disabled)
Active: active (exited) since Tue 2018-04-17 17:40:31 +0430; 1s ago
Process: 11334 ExecStart=/etc/rc.d/rc.local start (code=exited, status=0/SUCCESS)
Apr 17 17:40:31 myhost systemd[1]: Starting /etc/rc.d/rc.local Compatibility…
Apr 17 17:40:31 myhost systemd[1]: Started /etc/rc.d/rc.local Compatibility.