我正在编写使用chef-solo安装jsk的练习方法,我需要更新.bashrc文件来设置JAVA_HOME和PATH变量.我不知道怎么做.任何人都可以告诉我该怎么做.我的一些代码是......
file "/home/user/.bashrc" do
owner "root"
#something goes here.... i don't know what. but i write
#%{bash -i -c "source /etc/bash/bashrc && bashrc update"}
content "JAVA_HOME=/usr/java/jdk1.1.0.05"
content "PATH=$PATH:JAVA_HOME/bin"
end
Run Code Online (Sandbox Code Playgroud)
我不明白command%{bash -i -c"source/etc/bash/bashrc && bashrc update"}是什么意思.谢谢
首先,/etc/skel/是创建新用户时复制的目录。更改 bashrc 不会影响您现有的用户,因此您可能想更改其他文件?
其次,注释掉的命令启动一个新的 bash shell,并在该 shell 中提供源代码/etc/bash/bashrc(以重新加载它),然后执行bashrc update. 我不知道那是做什么的,它可能是你机器上的 shell 脚本?
为什么你想这么称呼?它甚至不引用您更改的文件。
第三,您调用content两次,这意味着该文件中只有第二行。
您可能想要做的是:
创建一个文件files/default/bashrc并将整个 bashrc (包括 Java 行)复制到其中。
将上面的代码替换为:
file "/home/whateveruseryouwant/.bashrc" do
owner "whateveruseryouwant"
group "whateveruseryouwant"
source "bashrc"
end
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
4998 次 |
| 最近记录: |