我正在编写我的程序的安装脚本,它应该在Linux / Unix操作系统上运行。 什么是以下文件的默认目录:
列表根据Linux文件系统而有所不同。
1) /bin
, /usr/bin
, /usr/local/bin
2/3) /lib
, /usr/lib
, /usr/local/lib
3. /usr/share/lib
4) /etc
是配置数据的只读位置。
5) /usr/local/etc
或通常位于/home
目录下的目录名下,如果配置文件允许bin目录位于/home/user_id/bin
下,其中'user_id'是相关的登录ID。对于用户'jdoe'的例子,他的配置可以被写入/home/jdoe/.configs
或~/.configs
不要依赖于这个,大部分LSB文件系统规定至少应该有: /bin
, /etc
, /usr
, /lib
, /home
例如, /usr
可能位于不同的分区上,对于/home
也是如此
编辑:感谢dtrosset指出我blooper ….
$PREFIX/bin
$PREFIX/lib
$PREFIX/lib
/etc
$HOME/.config
$HOME
是运行应用程序的用户的主目录,在运行时确定。 $PREFIX
取决于分配的方法:
$PREFIX
应该是可配置的,但默认为/usr/local
; $PREFIX
通常应该是/usr/local
(但是/opt
也是常见的)。 $PREFIX
应该是/usr
。 文档和其他独立于架构的文件应该放在$PREFIX/share/doc
; 实例之间共享的程序生成的文件应该放在/var/run
(比如lockfiles,pidfiles和sockets)或者/var/lib
(像共享二进制数据库之类的东西)。
检查文件系统层次结构标准 。
可执行(二进制):
共享:
其他:
如果不知道* nix OS的文件结构,我不确定编写安装脚本是否明智。 除此之外,* nix的每个分布在存储数据的位置上都是略有不同的。
我建议你阅读这个: http : //www.comptechdoc.org/os/linux/commands/linux_crfilest.html
^。^
最简单的方法是制作一个.rpm
的应用程序,然后使用例如alien
来制作一个.deb
。 最后我做了一个deb,这真的很简单。 如果您希望启用它,打包还可以让您进行自动更新,您不需要考虑卸载过程。