这是一个与Linux相关的问题.我四处搜寻但没有得到很好的解释.
在我看来,两个文件在我登录时配置设置,但是有什么区别吗?我注意到在确定应该分成两个不同文件的内容时似乎存在"一些规则".例如,如果我需要为$ PATH添加特定的搜索路径,我应该在〜/ .bashrc中进行.但是,如果我决定改变一些系统设置,比如
/sys/class/backlight
Run Code Online (Sandbox Code Playgroud)
要么
/sys/devices/cpu/cpu#/online
Run Code Online (Sandbox Code Playgroud)
然后我必须在/etc/rc.local中执行此操作,否则它将无法正常工作.
是因为这些配置在用户之间无法区分吗?
谢谢.
Har*_*rry 14
不同之处在于它们何时运行以及它们在运行时运行的是谁,即rc.local在运行级别的更改上运行并且以root身份运行.bashrc是特定于bash的,并作为特定用户在非登录shell上运行.
你可以在rc.local
这里找到一个很好的解释
脚本/etc/rc.local供系统管理员使用.传统上,在切换到多用户运行级别的过程结束后,在所有正常系统服务启动之后执行.您可以使用它来启动自定义服务,例如安装在/ usr/local中的服务器.大多数安装不需要/etc/rc.local,它是为需要的少数情况提供的.
你可以找到你需要的东西 bashrc
man bash
Run Code Online (Sandbox Code Playgroud)
当启动不是登录shell的交互式shell时,如果该文件存在,bash将从〜/ .bashrc读取并执行命令.使用--norc选项可以禁止此操作.--rcfile文件选项将强制bash从文件而不是〜/ .bashrc读取和执行命令.
在这个问题上有关于bashrc的更多信息......
https://superuser.com/questions/49289/what-is-the-bashrc-file
李哲源*_*李哲源 14
这个问题是我一个月前问的,虽然后来我意识到堆栈溢出并不是这个Linux问题的最佳站点.感谢之前回答过这个问题的人,但我想在这里补充一些解释.
基本上(至少)有三个阶段,用户可以在Linux中更改系统环境:
/etc/...
.例如,在我原来的问题中,可以用这种方式设置背光以及某些CPU的在线/离线管理,这/etc/rc.local
是我应该编辑的正确的shell脚本.通过"永久",这意味着此更新将影响使用该系统的所有用户.~/
(或HOME
)下的文件应该是正确的查找位置.例如,~/.profile
(历史上称为./bash_profile
或~/bash_login
)是在登录时运行的shell脚本.~/pam_environment
是不是一个shell脚本,但是设置环境变量有用的(见Ubunte官方维基-environmental_variables了解更多信息).~/.bashrc
.例如,PATH
可以在此处更改环境变量.希望这个摘要比技术更直观.
归档时间: |
|
查看次数: |
17313 次 |
最近记录: |