共计 811 个字符,预计需要花费 3 分钟才能阅读完成。
linux 里面有很多文件实现的功能类似,但是深究其实还是有点区别,一般来说可能不重要,但是涉及到的时候一定要注意区别。
1. /etc/profile 和 .bashrc
- 什么是
/etc/profile
文件
/etc/profile
文件为系统的每个用户设置环境变量信息,此文件的修改会影响到所有用户。想了解更多细节内容可以用:vim /etc/profile
命令进行查看。
/etc/profile
文件和.bashrc
文件的区别
/etc/profile
影响所有用户,.bashrc
影响当前用户。
/etc/profile
文件妙用
当需要某些操作在系统运行起来就自动执行时,可以考虑将该部分代码写到 /etc/profile
文件中。
2. /etc/rc.local 脚本和 /etc/init.d 中脚本区别
/etc/init.d/**
init.d
目录中的脚本都是以服务的形式启动的,顾名思义,服务会在后台一直运行。
系统在执行 init.d
目录中的服务脚本时,会分别单独为每个服务脚本启动一个非登录非交互式 shell 来始终在后台运行服务脚本一直到用户退出登录,关闭系统,这些始终运行在各个非登录非交互式的 shell 中的服务脚本才会停止运行。
/etc/rc.local
打开这个脚本看看,发现默认只有一行命令: exit 0
说明,这个脚本要以 0 这个返回参数来结束这个脚本的运行,而系统则要以是否得到0这个返参来决定是否继续进行下一步开机步骤。
/etc/rc.local
这个脚本中的命令不能像服务脚本那样始终占用这个系统为了执行 rc.local
而启动的非登录非交互式 shell,而应该每一条命令都可以自动执行完毕,一直执行到:exit 0
这句命令,而且是必须执行到这句命令,否则系统将卡在这个脚本,无法继续开机。
运行 rc.local 的 shell 必定要退出关闭(否则无法开机),所以 rc.local 这个脚本中,不要写设置系统环境变量的命令,或者是设置 alias 别名的语句
提醒:本文发布于484天前,文中所关联的信息可能已发生改变,请知悉!