Linux equivalente ao Registro do Windows

57

Qual é o equivalente Linux do Windows Registry? Se não houver uma estrutura equivalente ou semelhante no Linux, como são feitas as coisas que são feitas pelo Registro do Windows no Linux?

serena
fonte

Respostas:

54

Os aplicativos Linux normalmente armazenam suas configurações em um arquivo baseado em texto específico para o aplicativo. As configurações específicas da máquina geralmente são armazenadas na árvore de diretórios / etc. As configurações específicas do usuário geralmente estão no diretório inicial dos usuários e geralmente em arquivos "ocultos" que começam com um "." (use 'ls -a' para vê-los).

uSlackr
fonte
5
Também podemos acrescentar que esses arquivos de texto são legíveis por humanos e geralmente incluem comentários que descrevem o item de configuração específico. Portanto, a documentação geralmente está bem na sua frente quando você precisa alterar alguma coisa. Você também pode adicionar suas próprias anotações, por exemplo, por que mudou alguma coisa. O registro do Windows não contém "metadados".
Keith
Certamente, essa resposta é falha porque o objetivo do registro não é manter configurações, mas registrar componentes como dlls e extensões de shell no sistema operacional. Armazenando a configuração do programa lá É uma técnica desaprovada.
Adam Casey
12
Não tenho certeza sobre "desaprovado", mas é feito regularmente. A maioria dos programas da Microsoft e muitos dados de configuração de armazenamento de terceiros lá.
uSlackr
7
@ Dotmister: Esse era realmente o seu objetivo ... nos dias do Windows 3.1. A partir do Windows de 32 bits (95 e NT), o Registro se tornou um banco de dados para dados de configuração .
grawity
Hein ... então o Linux essencialmente faz o que o Registro do Windows foi projetado para impedir?
Iszi
11

/proc para coisas relacionadas ao kernel

/etc para coisas relacionadas a software

A configuração do Gnome também pode ser considerada semelhante ao Registro do Windows.

Mas como as filosofias principais do Linux e do Windows são diametralmente diferentes (Linux - aberto e compatível, Windows - fechado e obstrutivo), não há paralelo direto.

Edit: para quem discorda, aqui está um pouco da história para você: http://www.faqs.org/docs/artu/ (leitura incrível, não importa qual seja sua formação)

Deixe me ser
fonte
28
Não vejo o que a filosofia de design de software tem a ver com as particularidades de implementações específicas de armazenamento de configuração. A razão pela qual não existe um paralelo direto é porque são arquiteturas fundamentalmente diferentes, não apenas porque a Microsoft odeia a liberdade.
Shinrai
8
@Shinrai A filosofia fundamental de design do Unix (e Linux) é usar formatos de texto padronizados. O Registro do Windows é um formato binário proprietário. "A Microsoft odeia a liberdade" está totalmente fora de contexto aqui. O Windows foi projetado para ser o mais incompatível com o Unix possível e ignorou todos os possíveis padrões internacionais (ao criar o seu). Esta é uma história antiga, mas é daí que o registro do Windows vem.
Let_Me_Be
7
@Let_Me_Be - Sinto muito, sua redação me leu para pensar que você quis dizer "Código aberto é o melhor! Microsoft é o mal encarnado!" como tantos fanáticos * nix na web, em vez de uma discussão sobre o formato literal do conteúdo. O comentário foi retirado, mas você pode reformular para ser um pouco mais claro, pois algumas pessoas parecem ter lido o texto exatamente como eu. (Eu acho que 'obstrutiva' especialmente dá a impressão errada aqui.)
Shinrai
12
@Let_Me_Be: A padronização de formatos de texto? Você deve estar brincando. O Windows é péssimo de várias maneiras, mas uma API de registro comum é uma coisa que faz bem.
grawity
7
@Let_Me_Be: A palavra foi "padronizada", não "documentada". Eu prefiro distribuir um .regarquivo (ou .ini, .xml, .json, o que você quiser) sobre máquinas X que tem que Regexp o inferno fora de vinte arquivos de configuração diferentes /etc/ao tentar configurações de toda a rede de mudança, mas mantêm adições locais não relacionados ... enquanto você Se você não encontrar uma explicação perfeitamente detalhada para as seções do registro do Windows, sua estrutura não é totalmente um segredo . (sai da guerra)
grawity
7

As configurações gerais do sistema estão localizadas nos arquivos /etc, e as configurações por usuário geralmente estão localizadas como arquivos ocultos (inicie com a.) No diretório inicial dos usuários. Para obter mais informações sobre um programa específico, consulte a página de manual - man [program name].

daalbert
fonte
Pode querer mencionar .*rcarquivos no diretório inicial do usuário. /etcé apenas o material do sistema.
Mike DeSimone 11/06
5

A maioria dos aplicativos usa arquivos de configuração baseados em texto (geralmente cada programa tem seu próprio formato, embora alguns usem XML ou JSON). A configuração do sistema é mantida em baixo /etc.

A configuração do usuário geralmente é armazenada no diretório inicial do usuário, nos chamados "arquivos de ponto" (nomes de arquivos começando com " ."; use ls -apara exibi-los). Para evitar a "fluência do dotfile", recentemente os programas começaram a manter sua configuração de ~/.config/acordo com a especificação do Diretório base do XDG .

Vários ambientes de área de trabalho têm suas próprias APIs semelhantes ao Registro: Gconf (obsoleto) e dconf / GSettings (novo) no GNOME; Xfconf no Xfce.

gravidade
fonte
3

É dividido no Linux. Não há um único lugar.

Para programas executados por usuários, geralmente está em $ HOME / .someprogramrc se for um arquivo ou $ HOME / .somedirname se for complicado o suficiente para garantir um subdiretório. Todos os aplicativos do KDE encontram subáreas de $ HOME / .kde, acredito, geralmente não gerando seu próprio diretório.

A ação comum para listar diretórios é tratar os arquivos iniciados .como ocultos; portanto, você precisará usar a ls -Apartir da linha de comando ou usar a show hidden filesconfiguração da sua GUI.

Para programas executados pelo sistema, geralmente é um arquivo em algum lugar em /etc/Não há uma convenção de nomenclatura verdadeira, etc., embora os diretórios sejam geralmente significados .dno final.

Para o kernel, está dentro /etc/sysconfig.confou um script de inicialização no /etc/init.d que grava em / proc / sys / *

A maioria das configurações do sistema está disponível /etcpara facilitar o backup de um sistema. Manter apenas arquivos de configuração e não binários, /etc/portanto , tende a ser pequeno.

Rich Homolka
fonte
0

Não há registro no linux. Mas você deve dar uma olhada no gconf-editor e no dconf-editor ... e também nos arquivos / pastas ocultos dentro do seu diretório pessoal (com nomes começando com ponto), principalmente arquivos simples (TXT) contendo alguma configuração para um programa específico.

saeedgnu
fonte
-1

O registro do Windows foi criado para automatizar os vários arquivos .ini e outros arquivos de configuração do sistema operacional e dos programas, para que o carregamento fosse mais rápido. Todas as informações no registro também estão contidas em outras partes do computador, mas hoje elas geralmente estão protegidas contra gravação. O Linux usa o Vi (editor visual) ou outro editor para acessar esses arquivos de configuração no Linux e editá-los.

builder7
fonte
2
Olá e bem-vindo ao superuser.com. Embora eu acredite que o que você está tentando dizer ao cartaz está correto, ele não sai muito bem em sua resposta. A menos que você tenha um entendimento decente de como o Linux e o Windows funcionam, acredito que é difícil entender o que você está tentando obter. Repensar e reescrever sua resposta para que qualquer pessoa possa entendê-la.
Mogget 11/12
-1

Windows: - Armazena os dados em arquivos dentro da hierarquia de diretórios - Esses arquivos são como o .dll mencionado e outros arquivos de suporte - Em seguida, os arquivos são gerenciados através de sistemas de gerenciamento como bancos de dados (o Registro) para facilitar a interação com o (s) usuário (s) . - Isso significa que apontamos e clicamos, mas toneladas de dados são gravadas em segundo plano para facilitar o uso, acessibilidade mais rápida e armazenamento desnecessário de dados em nome do uso mais fácil.

Linux: - Os arquivos são armazenados nas partições separadas (é preciso lembrar, no Linux, podemos acessar o hardware mais diretamente, incluindo a tela - tudo é acessível através da CLI). - Esses arquivos estão nas hierarquias de diretórios já existentes (no sistema de armazenamento do sistema operacional, semelhante ao Windows, mas não apenas separados por pastas) - Os arquivos são mais legíveis, fáceis de acessar, mas requerem o conhecimento das CLIs para ser capaz de utilizá-los.

Diferença primária: o Windows adiciona a "camada" dos bancos de dados à interface do sistema operacional para gerenciar as interações do usuário, sistema etc. Isso torna "mais fácil" a utilização da GUI para acessar e executar tudo, mas também torna o usuário e o sistema altamente dependente desse sistema de banco de dados para a maioria das funcionalidades. Por outro lado, o Linus permite a interface direta com os componentes, o que significa que você precisa conhecer o "idioma" para digitar, em vez dos métodos de apontar e clicar do Windows. Sim, você pode utilizar uma CLI pelo Windows, mas não está realmente comparando a comparação do Windows com o Linux. As diferenças estão em como o usuário acessa os dados, em como o sistema os utiliza e em como o Windows simplesmente adiciona mais "gerenciamento" (pelo sistema) para produzir um "mais fácil"

É uma comparação compreensível avaliar como alguém novo no ambiente CLI / Linux, mas faz muito mais sentido quando você aplica primeiro a intenção de ambos os sistemas. O Linux não está "subvertendo as tentativas feitas pelo Microsvck com a integração de um Registro", está dando ao usuário mais poder ao eliminar camadas de abstração entre o usuário e o hardware.

Para imaginar isso, pense em uma máquina de escrever. Você pressiona as teclas, elas movem as engrenagens e você martela a tinta no papel, produzindo dados. No Linux, um usuário digita comandos para interagir com o kernel do sistema para executar ações no hardware. Em um ambiente Windows, você tem mais camadas em potencial entre o usuário e o hardware. Os aplicativos podem chamar comandos que se comunicam com o sistema operacional, que faz interface com o sistema / kernel, que depois trabalha com o hardware. Esse processo se torna mais complicado no Windows, à medida que mais variáveis ​​entram na equação, como os comandos que precisam interagir com o Registro para recuperar informações antes de poder executar as coisas ... e é por isso que o Windows usa mais recursos para executar, executar tarefas básicas e tarefas complexas. Serviços e processos pré-carregados são carregados para permitir o gerenciamento de funções que o Linux exigiria que o usuário chamasse. E sim, existem processos que são executados no Linux, mas estou tentando apenas fornecer uma idéia básica de como os sistemas diferem para melhor exibir por que alguns outros comentários foram imprecisos. A idéia de usar o Linux é minimizar as interfaces entre usuário e hardware, simplificando as coisas com muito menos confusão. O Windows adapta-se aos usuários e tenta abranger mais funcionalidades de uma maneira mais facilmente acessível, mas tem o custo de sistemas de gerenciamento complexos (que podem facilmente se tornar confusos e problemáticos). O Registro também pode fornecer uma trilha digital de todas as conexões físicas e outras interações físicas com o hardware que acabou de ser salvo e salvo (a menos que seja limpo por um usuário / programa). EU' prefiro ter arquivos legíveis que eu possa excluir manualmente quando não for usado, em comparação com a limpeza de vários / muitos pontos que precisam de limpeza regular no Windows (e potencialmente arriscando grandes problemas b / c do Registro). É apenas mais uma camada para gerenciar as coisas nos bastidores e estabelecer mais uma trilha digital que o usuário fica impedido de armazenar.

Infelizmente, muitos usuários estão condicionados ao Windows e têm muito medo do Linux antes do julgamento. Existem muitos sabores, alguns com comandos, conchas, etc. diferentes, que se tornam difíceis de escolher para iniciantes. Depois de removermos o nosso "condicionamento do Windows", fica mais claro que as distribuições do Linux são superiores em muitos aspectos (sem o software inchado). O único cenário que considero pessoalmente superior ao Windows é jogar. Torna-se mais perturbador à medida que a MS empurra mais para unificar um SO de cada vez, sempre desejando obter mais dados de você. É uma boa habilidade ter, e jogar com uma distribuição Linux pode potencialmente responder a essas perguntas para novos usuários que lêem essas postagens.

Mike Hawk
fonte
3
Isso parece mais um discurso retórico do que uma resposta. É duvidoso se ele realmente tenta responder à pergunta, conforme solicitado. Também é totalmente errado em vários lugares. (Arquivos no Linux armazenados em partições separadas? Arquivos no Linux requerem conhecimento da CLI para acessar? Linux eliminando a abstração de hardware em comparação com o Windows? Usuários do Linux interagindo diretamente com o kernel? Realmente, WTF?) Convido você a fazer um tour pelo site para aprenda como fazemos as coisas e leia Como escrever uma boa resposta para sugestões. Você pode editar isso.
a CVn
11
@ MichaelKjörling: embora você esteja certo sobre a qualidade desta resposta, ela contém uma coisa que é muito importante: o registro do Windows (programa regedit) é um aplicativo, mostrando os internos como se estivessem armazenados em um banco de dados de configuração, enquanto esses arquivos estão espalhados por todo o PC. Isso transforma a pergunta original em "Existe uma ferramenta Linux que fornece um resumo da configuração geral da máquina, algo como o regedit no Windows?"
Dominique