Articles of path

通过删除环境variables名来防止带有FSpath值的环境variables的bash选项卡完成

朋友们, 我在Linux上使用GNU bash作为我的shell: $ bash –version GNU bash, version 4.2.45(1)-release (x86_64-pc-linux-gnu) Copyright (C) 2011 Free Software Foundation, Inc. License GPLv3+: GNU GPL version 3 or later <http://gnu.org/licenses/gpl.html> This is free software; you are free to change and redistribute it. There is NO WARRANTY, to the extent permitted by law. $ 当我设置一个FSpath作为它的值的环境variables时,它的行为非常奇怪。 假设我想将/ opt / database […]

是否可以跨FC和iSCSI多path?

也许这是一个愚蠢的问题,但我想知道是否可以通过FC连接和iSCSI连接多存储一个存储arrays? 考虑到多path的主要观点似乎是在硬件故障面前增加弹性,似乎合乎逻辑的是,提供依赖于networking硬件的存储path将是依赖FC的path的适当的弹性替代scheme。 我很欣赏两者的性能可能不尽相同,但是如果没有足够的多个FC连接(和结构)的预算,这可能不是一个可接受的低成本解决scheme吗?

从SAN安装磁盘(RHEL 5.9)

存储pipe理员告诉我,他从我的服务器上放了一个3TB硬盘,我被要求挂载它。 我知道的唯一信息是它在LUN 1上,磁盘是3TB。 多path设置,我安装了QLogic驱动器。 我不确定现在该怎么做,但是…有这么多的磁盘我怎么find正确的一个挂载? 我告诉存储人员,我看到了SAN上的所有东西,但是我刚刚从他那里得到了“我不知道Linux”。 我不知道要问什么问题来弄清楚要挂载什么磁盘。 这是fsdisk -l的输出: Disk /dev/cciss/c0d0: 299.9 GB, 299959511040 bytes 255 heads, 63 sectors/track, 36468 cylinders Units = cylinders of 16065 * 512 = 8225280 bytes Device Boot Start End Blocks Id System /dev/cciss/c0d0p1 * 1 13 104391 83 Linux /dev/cciss/c0d0p2 14 36468 292824787+ 8e Linux LVM Disk /dev/dm-0: 32.2 […]

奇怪的path,当通过ldap使用sudoers

我有一个可用的LDAP身份validation环境。 LDAP服务器在Ubuntu 12.04机器上,而客户机都是Centos 6.4机器。 最近我在这篇文章中configuration了LDAP的sudoers。http ://www.malaya-digital.org/configure-ldap-for-sudo-support-in-ubuntu-server-11-04-64-bit/ 一切正常,但使用sudo执行命令时,PATH很奇怪。 这是sudo的path # sudo printenv PATH "/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin" 似乎上面显示的PATH中列出的每个命令都可以执行,除了/ bin。 例如 # sudo which node /usr/local/bin/node # sudo which zip /usr/bin/zip # sudo which ip /sbin/ip # sudo which ls which: no ls in ("/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin") #WTF?? # sudo ls / sudo: ls: command not found 但是,使用完整path在/ bin中执行命令时,它将起作用。 # sudo /bin/ls […]

为所有用户更改PATH环境variables。 (Ubuntu的)

我最近在Ubuntu 8.04服务器上编译了Ruby Enterprise Edition(REE)。 我想更新我的path,以确保这个新版本的Ruby(在/opt/ruby_ee/bin )取代/usr/local/bin的旧版本。 (尽pipe如此,我仍然想要旧版本。) 我想这些PATH更改影响所有用户和crontabs。 尝试解决scheme#1: REE文档build议将REE bin文件夹放置在/etc/environment中的全局PATH开头。 我改变了这个文件中的PATH来读取: PATH="/opt/ruby_ee/bin:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/usr/games" 这完全不影响我的PATH 。 试图解决scheme2: 接下来,我按照这些说明更新了/etc/login.defs和/etc/crontab的PATH设置。 (我没有改变/etc/sudoers 。) 即使注销并重新启动服务器,也不会影响我的PATH 。 其他信息: 我似乎在这里描述了同样的问题 。 我正在使用命令“ echo $PATH ”和“ ruby -v ”进行testing。 我的壳是bash。 我的.bashrc不覆盖我的path。 是的,我听说过Ruby Version Manager项目。 ;)

PATHvariables和引号(窗口)

我在Windows下的PATHvariables有一个奇怪的问题: 我的应用程序位于文件夹c:\ app \ bin中,此应用程序的DLL位于c:\ app \ runtime文件夹中。 要运行我的程序,我通常使用以下脚本通过* .bat文件修改PATHvariables: set PATH="c:\app\bin";"c:\app\runtime";%PATH% 这将使path上的可执行文件和DLL。 但是,在我的一个Windows Server 2008 R2系统上,这是行不通的。 这意味着,如果我在一个命令窗口中执行上述命令,我可以从c:\ app \ bin启动exe文件,但是应用程序立即抱怨它无法find一些需要的dll文件(“程序无法启动,因为…. dll从您的计算机中丢失…“)。 这些dll文件应该在c:\ app \ runtime下。 我进行了一些尝试,指出有三种解决方法: 使用“系统属性”对话框永久修改PATHvariables 在上面的DLL文件的path命令中省略引号,例如设置PATH="c:\app\bin";c:\app\runtime;%PATH% 将DLL文件复制到exe所在的目录 关于解决scheme2的奇怪的部分是,如果我为第一个path添加引号,或者如果我改变path的顺序,它不会改变任何forms。 有人有线索为什么我原来的脚本不起作用? 我需要运行它,因为它是由程序自动创build的,我不能更改生成bat文件的应用程序。

覆盖特定用户的二进制文件path

我的问题似乎是微不足道的,但我没有设法find任何有用的互联网。 我有一个二进制 /urs/bin/binary 但是已经过时了,例如在一些安装上可以使用更新的版本 /mount/new_version/binary 有一个bash脚本以类似的forms调用这个二进制文件 binary -doSomething 我需要这个脚本来调用新版本的二进制文件,而不是旧的,但我没有权限改变这个脚本。 是以某种方式覆盖它的path,但只为我的用户? 任何帮助,将不胜感激。

是“对我撒谎?

我通过apt-get安装了git,但是发现版本已经过时了,于是我从源代码安装了git 。 最终的结果令人费解: $ git –version git version 1.7.0.4 $ which git /usr/local/bin/git $ /usr/local/bin/git –version git version 1.7.6 看来which在骗我……这似乎不太可能。 这里究竟发生了什么事情,我怎样才能让git运行正确的版本?

为什么'ansible -a'env''返回一个不同于我的用户的环境path?

当我SSH入远程服务器并运行env我回来以下path: PATH=/usr/lib64/qt-3.3/bin:/usr/local/bin:/bin:/usr/bin:/usr/local/sbin:/usr/sbin:/sbin:/home/myusername/bin 相反,当我执行ansible- ansible -a "env"命令时,我得到以下path: PATH=/usr/lib64/qt-3.3/bin:/usr/local/bin:/bin:/usr/bin 可以想象,当尝试运行sbin命令(如service , ntpdate等)时会导致问题,因为它需要inputsbin命令的完整path。 (是的,我知道有一些可行的模块可以做到这一点,但我试图解决为什么PATH正在缩短/截断。) 任何人都知道这是为什么发生? 编辑:我问这个问题的原因是,我正在阅读Ansible for DevOps一书中的例子,因为这个原因,一些例子没有工作。 我试图去做的例子是从书中的第28页开始的: $ ansible multi -s -a "service ntpd stop" $ ansible multi -s -a "ntpdate -q 0.rhel.pool.ntp.org" $ ansible multi -s -a "service ntpd start" 这些命令总是会引发错误。 但是,如果我改变他们包括完整的path,他们的工作。 $ ansible multi -s -a "/sbin/service ntpd stop" $ ansible multi -s -a […]

为什么我的$ PATHvariables在使用su root时不同于root?

当我试图以普通用户身份(在CentOS 5上)运行chkconfig时,我意识到我无法访问它,因为目录sbin不在$ PATH中。 当我su根源,它仍然无法正常工作。 我意识到,$ PATHvariables是相同的,我从普通用户切换。 但是,当以root用户身份login时,$ PATHvariables对于root来说是正确的,我可以运行该命令。 这是应该这样工作吗? 如何让普通用户临时访问只能以root身份运行的命令? 谢谢