Linux
在 CentOS/Fedora 中如何必須(不是如何)可以從任何地方獲取程序
我正在從 MySQL 閱讀此連結: https ://dev.mysql.com/doc/refman/5.6/en/mysql-cluster-install-linux-binary.html
shell> cp support-files/mysql.server /etc/rc.d/init.d/ shell> chmod +x /etc/rc.d/init.d/mysql.server shell> chkconfig --add mysql.server
在mysql.server文件中的內容說:
PATH=$PATH:/usr/local/SomeDir/mysql/bin export PATH
但是檢查*$PATH*變數 / usr/local/SomeDir/mysql/bin沒有被添加。
現在,我正在尋找適當的解決方案。
我找到了這些連結:
Edit your .bashrc to add the desired directory on the PATH environmental variable. export PATH=/usr/local/google_app_engine/bin:$PATH then, either start new terminal or do, source ~/.bashrc Now try to run the script from anywhere.
If you just export PATH=$PATH:. at the command line it will only last for the length of the session though. If you want to change it permanently add export PATH=$PATH:. to your ~/.bashrc file (just at the end is fine).
Create a file with the name of mysql.sh at the path /etc/profile.d/ # vi /etc/profile.d/mysql.sh #!/bin/sh PATH=$PATH:/usr/local/mysql/bin export PATH
[root@CentOS ~]# echo "export PATH=$PATH:/usr/local/mysql/bin" >>/etc/profile [root@CentOS ~]# source /etc/profile
問題
在 CentOS 6.x 中,放置此文件和指令的正確位置(路徑或位置)是什麼?
評論:也許在解決方案起作用之前,我的問題是,必須如何提出我的指示。我的問題是關於樣式…
謝謝
這個問題的第一部分是指一些如何做,這不是讓程序在任何地方都可用——它是讓程序從那個特定的初始化腳本中可用,這是此類任務的正確解決方案。
第二部分列出了使其隨處可用的正確解決方案。如果您看到 的手冊頁
bash(1)
,您可以看到描述的不同:/etc/profile The systemwide initialization file, executed for login shells ~/.bashrc The individual per-interactive-shell startup file
所以區別是
- 載入文件時:shell啟動或登錄
- 如果它適用於特定使用者或所有使用者
不同的
profile.d
版本只是你把它寫在其他文件中,但我認為你可以彌補它與放入/etc/profile
.