过去几个小时我一直在testing这个,没有运气。 当启动一个Ubuntu 12.04 EC2微型实例时,我通过SSH连接,创build一个新用户并继续在新用户下安装Ruby版本pipe理器 $ curl -L get.rvm.io | bash -s stable 这将以下内容写入/home/user/.bashrc PATH=$PATH:$HOME/.rvm/bin # Add RVM to PATH for scripting 在/home/user/.bashrc中也需要这些行以保持shellconfiguration [[ -s "$HOME/.profile" ]] && source "$HOME/.profile" [[ -s "$HOME/.rvm/scripts/rvm" ]] && source "$HOME/.rvm/scripts/rvm" 在将行添加到/home/user/.bashrc ,我仍然能够在/home/user下执行任务,但是如果切换到root然后返回到/home/user ,terminal将挂起。 我还注意到一个新实例,在编辑.bashrc之后重新启动实例,AWS控制台在Status Checks下显示一条警报,读取1/2 checks passed 。 我不确定问题是什么,有什么build议吗?
我试图通过脚本使用Plink运行一些ruby(bundler / rvm)命令。 我注意到这是抱怨不知道某些命令在哪里。 看起来好像我的$PATHvariables不同于我使用交互式shell的时候,以及当我用Plink指定一个命令文件的时候。 在我的.bash_profile我有这个: [[ -s "$HOME/.profile" ]] && source "$HOME/.profile" # Load the default .profile [[ -s "$HOME/.rvm/scripts/rvm" ]] && source "$HOME/.rvm/scripts/rvm" # Load RVM into a shell session *as a function* 如果我理解正确,当不在交互模式时,应该读取.bashrc而不是.bash_profile 。 所以,如果这是正确的,这是我的.bashrc的最后一行: export PATH="$PATH:$HOME/.rvm/bin" # Add RVM to PATH for scripting 那会告诉我,我应该在我的道路上看到,但我不知道。 这是我得到我的$PATH : /usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/usr/games:/usr/local/games 这看起来像我默认的$PATHvariables。 为什么当我尝试通过ssh运行命令时,我的.bashrc不会被find? 我已经添加echo "the […]
我的Ubuntu ID由NIS / yellowpagepipe理。 出于某种原因,当我login时,我收到这个消息。 cat@local:~$ ssh catserver cat@catserver's password: Welcome to Ubuntu 15.10 (GNU/Linux 4.2.0-25-generic x86_64) Last login: Thu Apr 21 11:46:22 2016 from xxxx -bash: can't find configuration file /usr/local/etc/profile.global; exiting. Connection to catserver closed. 如果我在这个服务器上创build一个空的/usr/local/etc/profile.global文件,那么它就可以工作。 但我不明白为什么我的bash脚本试图加载这个文件。 我search了这些文件: /etc/profile , /etc/bashrc , ~/.bash_profile和~/.bashrc 。 而且他们都没有代码来加载profile.global 。 我该如何解决这个问题? 这是我的bashconfiguration文件问题或一些NIS问题?
我正在使用ansible-playbook将我的django应用程序部署到Ubuntu服务器上。 我将我的django环境variables存储在服务器中的用户ubuntu的.bashrc文件中。 但是我的ansible-playbook并没有在.bashrc中使用envvariables,即使我以ubuntu用户身份运行。 有没有什么方法可以让我使用剧本来访问这些envvariables。
我有一些机器集群。 我必须从单个系统控制所有configuration。 为此,我决定在Centos 7服务器中使用.bashrc(我通过单机上的rsync在每个系统中推送相同的.bashrc)。 我面临一个问题,每个系统都有像/dev/sdb /mnt/2c511624-12ea-48d9-853a-54af000e7239一样的外置硬盘。 硬盘的名称因机器而异。 这个名字怎么可能对每台机器都是正确的。 然后我必须在每个系统的每个磁盘上自动传输一些数据。 我尽力解释我的问题,如果还不清楚的话请评论一下?
爱丽丝有sudo权利。 鲍勃不(这是不可更改的),但知道密码给爱丽丝的帐户。 如果Bob想要执行pipe理命令,他必须: su alice 填写爱丽丝的密码su sudo whoami 填写Alice的sudo密码 命令被执行超级用户权限 为了缩短这个,我使用: su -m alice -c 'sudo whoami' 。 不过,我想用常规的sudo命令来build立一个别名命令来代替这个单调乏味的命令。 所以我做了这个: alias sudo="su -m alice -c 'sudo $@'" 。 2注意事项: 它不起作用 它总是要求Alice的su密码,它记得的sudo密码 我怎样才能做得更好? 谢谢!
目标:SSHlogin(+消除警告消息)/运行2个命令/保持login状态: 编辑:哎呀,我犯了一个错误(见下文): 这个代码达到了我想要做的95% # .bashrc # Run two commands and stay logged in to new server. alias gr='ssh -t -p 5xx4x [email protected] 2> /dev/null "cd /var; ls; /bin/bash -i"' 现在,成功login后/validation用户login= root pts / 0 2011-01-30 22:09 尝试“注销”= bash:注销:不loginshell:使用`exit' 我似乎没有login到shell的完整的root权限? (“/ bin / bash -i”被添加到“保持login状态”,但没有达到预期的效果)仅供参考:问题是“如何获得此SSHlogin工作” ,它已基本解决,对不起,我做了一团糟… … .. 。 原问题在这里: # .bashrc # Run two commands […]
我在我的Mac上安装了XAMPP,并且我想让命令行PHP使用与XAMPP相同的可执行文件,因为我已经定制了php的php.ini文件。 我想要的php二进制文件位于: /Applications/XAMPP//xamppfiles/bin/php 快速检查我的CLI从哪里来的说: Casey-Flynns-MacBook-Air:~ casey$ whereis php /usr/bin/php 我已经尝试将以下行添加到我的〜/ .bash_profile: export PATH=/Applications/XAMPP//xamppfiles/bin/:$PATH 我的$ PATH全球快速testing说: Casey-Flynns-MacBook-Air:~ casey$ echo $PATH /Applications/XAMPP//xamppfiles/bin/:/Applications/SenchaSDKTools-2.0.0-Developer-Preview/jsbuilder:/Applications/SenchaSDKTools-2.0.0-Developer-Preview/command:/Applications/SenchaSDKTools-2.0.0-Developer-Preview:/opt/local/bin:/opt/local/sbin:/sw/bin:/sw/sbin:/usr/bin:/bin:/usr/sbin:/sbin:/usr/local/bin:/usr/local/git/bin:/usr/X11/bin:/opt/local/bin:/usr/X11R6/bin:/Users/casey/.ec2/bin 但是当我从命令行执行'php'时,它使用了我不想要的二进制文件。 任何人都知道可能会发生什么?
我已经devise了我的bash提示符,像这样\u@\h> 当我现在使用adduser创buildUser example时,我的提示看起来像example@host>但是当我使用useradd创build用户时,我的提示看起来像\u@\h> PS1: \[\e]0;\u@\h: \w\a\]${debian_chroot:+($debian_chroot)}\[\033[01;31m\]\u\[\033[01;33m\]@\[\033[01;36m\]\h \[\033[01;33m\]\w \[\033[01;35m\]\$ \[\033[00m\] PS2: > PS3:空的 PS4: + 任何想法如何解决这一问题?
我需要将一个目录添加到红帽服务器上非loginshell的path。 ssh user@server echo \$PATH 回报 /usr/local/bin:/bin:/usr/bin 我如何添加一个目录到这个path。 我尝试把export PATH=$PATH:/my/path放在/etc/bashrc和~/.bashrc但是在这两种情况下, ssh user@server echo \$PATH的结果与上面相同。 那么在哪里是魔术的地方添加my/path $PATH的非login炮弹?