为什么我在动态视图的根目录中看到所有的根文件系统目录?例如,当我在/view/myview
处设置ls
时,我看到bin
, boot
, dev
, etc
, home
, lib
以及通常位于/
中的其他所有内容。
我可以忽略这些条目并将目录更改为VOB,其他一切都在我期望的地方。我在Windows中使用clearcase已经很多年了。我习惯于只在动态视图的根目录中看到挂载的vob。
我知道VOB在/
中也是可见的,setview
命令将为根VOB条目设置一个特定的视图。
是否有一些选项,我可以关闭/打开以删除这些"额外"条目?
他们在那里有好的理由吗?
这就是MVFS在linux上的工作方式吗?
我在CentOS 7.2上使用clearcase 9.0.0.2。
这些"额外的"目录是需要支持cleartool setview命令的。这个命令在视图根中"根"了一个新的shell。如果不存在各种"实际"根目录条目的这些"镜像",那么您将无法执行当前shell中未编译的大部分操作。
他们有好的理由吗?这就是MVFS在linux上的工作方式吗?
显然如此。
参见"关于位于ClearCase服务器根分区中的/view
视图根目录"
建议和注意事项
永远不要在ClearCase运行时执行递归删除
/view
,因为它会导致严重的数据丢失,原因是上面所描述的。由于
/view/<viewname>
包含整个根文件系统,从/view
开始的递归删除将作用于/
以下的所有文件——甚至是非clearcase文件——导致许多文件被删除。如果递归目录删除是由根用户执行的,则尤其如此,这会导致非常可怕的结果。如果您需要移除
/view
目录挂载点,您必须确保ClearCase完全停止。
另外,不要执行递归删除,而只删除目录挂载点本身。
:
是否有一些选项,我可以关闭/打开以删除这些"额外"条目?
我从未尝试过,但尝试在配置规范的末尾添加一个选择规则,如:
element bin -none
element etc -none
...
看看它是否影响了所有的视图根文件夹内容