从终端/ shell调用的几个Linux程序使用配置文件,其中放置了通常放入程序调用命令行字符串的选项。例如Vim,例如curl及其配置文件~/.vimrc
,~/.curlrc
。
如果要使用curl和Vim,他们会在主目录中查找这样的文件(至少根据他们的手册页以这种方式工作)。
但是我知道没有主目录的Linux设置。例如NAS。
已知的NAS包含若干共享卷/目录,这些卷/目录将通过若干协议和注册用户从客户端设备访问。但是,默认情况下,NAS不会为新注册的每个用户创建主目录。管理员不愿意启用选项“create home directory for this user
”(如果仅出于上述目的而需要)。
那么在这种设置上使用程序的配置文件根本不可能吗?
答案 0 :(得分:0)
当调用curl时,它总是(除非使用-q)检查a 默认配置文件,如果找到则使用它。默认配置文件是 按以下顺序检查以下地点:
1)curl试图找到" home dir"它首先检查 CURL_HOME然后是HOME环境变量。失败了,它 在类Unix系统上使用getpwuid()(返回给定的主目录) 您系统中的当前用户)。在Windows上,它然后检查 APPDATA变量,或作为最后的手段,%USERPROFILE%\ Application 数据'
2)在Windows上,如果主目录中没有_curlrc文件,则检查 对于同一目录中的一个,可以放置curl可执行文件。在类Unix上 系统,它只会尝试从确定的家中加载.curlrc DIR。
因此,只需要一个主目录来存储配置文件,在curl
的情况下,可以设置指向任何位置的变量CURL_HOME
。
其他程序也有类似的机制。
但我问自己:可以作为没有主目录的用户登录(通过ssh?)吗?