Chu*_*ati 3 unix windows cygwin
我有 Windows 7 64 位 PC。我刚刚在c:\cygwin64目录中安装了 Cygwin 最新版本 2.6.0 。在安装过程中我要确保我选择了这些包:gcc-core,make,openssl,ssh,vim,emacs,scp和ftp。安装成功完成。
现在我正在查看c:\cygwin64目录,发现缺少一些目录:
/bin (目录存在) /sbin (目录存在) /usr/bin (目录不存在) /usr/sbin (目录存在) /usr/local/bin (目录存在) /usr/local/sbin (目录不存在)那么为什么/usr/bin和/usr/local/sbin目录丢失了?它们过时了吗?
谢谢
正如埃里克所说,c:\cygwin64\usr\bin这真的c:\cygwin64\bin是你的情况。至于/usr/local/sbin/,也许不会从这些包中安装任何东西,所以它没有被创建。
4.33. 为什么奇怪的目录结构?为什么 /lib 和 /usr/lib(和 /bin、/usr/bin)指向同一件事?
为什么使用挂载而不是符号链接?
我可以使用磁盘根目录(例如 C:)作为 Cygwin 根目录吗?为什么这令人气馁?
在默认位置进行全新安装后,您的挂载点将如下所示:
Run Code Online (Sandbox Code Playgroud)bash$ mount C:\cygwin\bin on /usr/bin type ntfs (binary,auto) C:\cygwin\lib on /usr/lib type ntfs (binary,auto) C:\cygwin on / type ntfs (binary,auto) C: on /cygdrive/c type ntfs (binary,posix=0,user,noumount,auto)请注意,/bin 和/usr/bin 指向相同的位置,/lib 和/usr/lib 也是如此。这是有意为之,除非您真的知道自己在做什么,否则不应撤消这些挂载。
各种应用程序和软件包可能希望安装在 /lib 或 /usr/lib(类似 /bin 或 /usr/bin)中。与其区分它们并试图跟踪它们(可能需要偶尔的重复或符号链接),不如决定只维护一个实际目录,并使用等效的方式访问它。
为此目的曾考虑过符号链接,但由于它们并不总是适用于 Samba 驱动器而被驳回。此外,挂载的处理速度更快,因为不需要访问磁盘来解决它们。
请注意,非 cygwin 应用程序不会观察 Cygwin 挂载(或与此相关的符号链接)。例如,如果您使用 WinZip 解压 Cygwin 包的 tar 分发包,它可能不会安装到正确的 Cygwin 路径。所以不要这样做!
强烈建议不要使 Cygwin 根目录与驱动器的根目录相同,除非您知道自己在做什么并准备好应对后果。如果 Cygwin 层次结构与 C: 隔离,通常更容易维护它。一方面,您可以避免与可能创建(例如)\bin 和\lib 目录的其他(非cygwin)应用程序发生冲突。(也许您现在没有安装类似的东西,但谁知道您将来可能添加的东西?)