我正在开发一个需要存储大量应用程序数据的守护进程,我注意到在我的系统 (Fedora 15) 上有一个/usr/local/etc目录。
我决定将我的守护进程安装到/usr/local/bin,我需要一个地方来放置我的配置文件。
我在维基百科上没有看到这个。这是非标准的还是实际上这是安装程序/usr/local/bin以存储配置文件的标准位置?
原因是,我想向系统管理员推销这个,而犯这样的错误并不是一个很好的卖点......
什么是“标准”——我应该将应用程序(不仅仅是二进制文件,而是整个发行版)放到 /usr/local 或 /usr/local/share 中。
例如 scala 或 weka —— 它包含示例、二进制文件、库等。所以它会
/usr/local/scala-2.9.1
Run Code Online (Sandbox Code Playgroud)
或者
/usr/local/share/scala-2.9.1
Run Code Online (Sandbox Code Playgroud)
由于我是唯一的管理员,这对我来说没什么大不了的,但我更喜欢使用广泛使用的东西,而不是我自己的习惯。
重要提示:我不是在询问您应该将应用程序拆分为 /usr/local/bin、/usr/local/lib 等的情况。相反,我问的是您必须为整个应用程序保留一个主目录的情况。
我们的系统管理员在服务器上安装了一个软件应用程序 (Maven),并告诉每个人将该/usr/local/maven/bin/文件夹添加到他们的路径中。
我认为从/bin文件夹(或每个人在其路径中拥有的其他文件夹)链接该文件夹中的几个程序可能会更方便,如下所示:
ln -s /usr/local/maven/bin/* /bin
Run Code Online (Sandbox Code Playgroud)
这样对吗?我的建议是否有一些隐藏的副作用?
最初在 Unix 中,/usr用于用户(主)目录。因此,如果我有一个名为 的用户alex,我的主目录将是/usr/alex. (有趣的是,Unix 的后继者Plan 9 中仍然有用户目录/usr。)
现在,当然,我们将主目录存储在/home. (至少在 GNU/Linux 上。我不知道其他的 Unices,但 OS X 不算数。)这在什么时候成为标准做法?它出现在什么 Unix 风格中?其他 Unices 的采用需要多长时间?先后/home已通过大家?
我在这里做了一些搜索,但什么也没找到。
我想知道这两者之间的区别是什么:
~/somedirectory/file.txt
Run Code Online (Sandbox Code Playgroud)
和
~/.somedirectory/file.txt
Run Code Online (Sandbox Code Playgroud)
在谷歌上问这个真的很困难,因为我不知道如何解释.当我什至不知道该怎么称呼它时。但是有人可以描述包含点和排除它之间的区别吗?
在 linux 文件系统中,node.js/express web 应用程序的常规接受位置在哪里?
目前我有一个子目录,/opt/但我想听听其他人对此的看法......
来自 Windows 世界,我发现大多数文件夹目录名称都非常直观:
\Program Files 包含程序使用的文件(惊喜!)
\Program Files (x86) 包含 64 位操作系统上 32 位程序使用的文件
\Users(以前Documents and Settings)包含用户的文件,即文档和设置
\Users\USER\Application Data 包含特定于应用程序的数据
\Users\USER\Documents 包含属于用户的文档
\Windows 包含属于 Windows 本身操作的文件
\Windows\Fonts 存储字体文件(惊喜!)
\Windows\Temp 是一个全局临时目录
等等。即使我不知道这些文件夹做了什么,我也可以从它们的名字中准确地猜测出来。
现在我正在仔细研究 Linux,并且对如何绕过文件系统感到非常困惑。
例如:
/bin包含二进制文件。但也是如此/sbin,/usr/bin, /usr/sbin, 可能还有更多我不知道的。哪个是哪个??它们之间有什么区别?如果我想制作一个二进制文件并将它放在系统范围内的某个地方,我应该把它放在哪里?
/media包含外部媒体文件系统。但也是如此/mnt。目前它们都没有在我的系统上包含任何内容;一切似乎都在/dev。有什么不同?哪里是我的硬盘的其他分区,像C:和D:那名在Windows?
/home包含用户文件和设置。这是直观的,但是,应该进入/usr什么?为什么/root仍然是分开的,即使它是一个拥有文件和设置的用户?
/lib包含共享库,如 DLL。但也是如此/usr/lib。有什么不同?
什么是 /etc?它真的代表“et cetera”还是其他什么意思?什么类型的文件应该放在那里——全局的还是本地的?对于没有人知道放在哪里的东西,它是一个包罗万象的东西,还是有一个特定的用例?
什么是/opt,/proc和/var …
在 FHS-2.3 中,我们拥有/media可移动媒体(如 CD-ROM)的挂载点,我们/mnt拥有临时挂载的文件系统。
另一方面,我们有/run/media和/run/mount。对我来说,CD 和 USB 安装在 /run/media 上。
我没有看到它们之间有任何明显的区别( /media, /mnt, /run/mount) 。它们的区别是什么?
我在 Fedora 20 - GNOME 3.10.4 和 ubuntu 14.04.1(安装在虚拟机上)和 GNOME 3.10.4 中看到了类似的趋势(安装在 /run/media 上)。但是当我在装有 Centos 6 和 GNOME 2.28.2 的系统上插入 USB 闪存(带有自动安装脚本)时,它被安装在/media
/lib和/usr/lib和有什么不一样/var/lib?有些文件是“复制”其他目录内容的符号链接。