Linux等效的注册表

What is registry equivalent for Linux?

本文关键字:注册表 Linux      更新时间:2023-10-16

最近我参与了从Windows到Linux 的代码移植。我遇到了许多Windows功能,这些功能可以检索注册表键并进行编辑。我不确定Linux的等效方法是什么。我知道注册表只是一个Windows数据库,它将数据存储在" key = value" 格式中。我正在考虑 INI文件。除此之外,还有什么更有效的吗?

i是不要从存储角度询问。我的问题与Linux中的注册表有关。我们如何在Linux中实现注册表结构?

将配置存储在Linux中的典型方法是将其存储在/home/username/.someapp中,其中someapp是您程序的名称。我实际上在Linux中喜欢它,因为当我移至另一台计算机时,我要做的就是保存/移动主目录,这将保存我的所有配置。

在Windows上,注册表具有用户零件HKEY_CURRENT_USER,而其他代表任何用户(例如HKEY_LOCAL_MACHINE(都是整个系统的全局。对于用户零件,您应该像以前那样将配置放入用户目录中,因为它不需要任何超级用户特权。您可以选择要选择的本地计算机零件,然后将每个用户都具有单独的配置,或将其放入/var/lib/someapp之类的内容,但请记住,它将仅阅读。

有了所有这些,请记住,您应该创建自己的配置格式,或使用某些库,例如libconfig,xml或json。

Linux具有XDG基本目录规范。如果要使用config file(s(作为应用程序(您喜欢哪种格式 - INI,JSON,YAML,SQLITE数据库等(,请将其存储在目录$XDG_CONFIG_HOME/your_app_name

通常许多软件在 /etc中获取配置文件,但这是我认为的静态配置。如果您从软件(用户或外部事物之后(更改了某些更改的配置,那么我想将其放入/var/lib/(your_project_short_name)/(your_project_config_files)中,就像使用MySQL一样,用于数据库文件和PostgreSQL的配置文件等。

<</p> <</p> <</p> <<//div>