Vi que o GNU/Linux recente está usando o ConsoleKit e o PolicyKit. Para que servem? Como eles funcionam?
A melhor resposta deve explicar que tipo de problema cada um tenta resolver e como eles conseguem resolvê-lo.
Sou um usuário de longa data do GNU/Linux, de uma época em que essas coisas não existiam. Eu tenho usado o Slackware e recentemente o Gentoo. Como sou um usuário/administrador/desenvolvedor avançado, a resposta pode (e deve!) Ser a mais detalhada e precisa possível. Quero entender como essas coisas funcionam, para que eu possa usá-las (como usuário ou desenvolvedor) da melhor maneira possível.
Em resumo, o consolekit é um serviço que rastreia as sessões do usuário (ou seja, onde o usuário está logado). Ele permite alternar usuários sem fazer logout (muitos usuários podem fazer login no mesmo hardware ao mesmo tempo com um usuário ativo). Também é usado para verificar se uma sessão é "local", isto é, se um usuário tem acesso direto ao hardware (que pode ser considerado mais seguro que o acesso remoto). documentação do ConsoleKit .
PolicyKit permite recursos aprimorados em um ambiente de área de trabalho. Tradicionalmente, apenas um usuário privilegiado (raiz) tinha permissão para configurar a rede. No entanto, enquanto estiver em um ambiente de servidor, é razoável supor que seria muito limitante não ser permitido conectar-se a um ponto de acesso no laptop, por exemplo. No entanto, você ainda pode não querer conceder privilégios totais a essa pessoa (como instalar programas) ou limitar as opções para algumas pessoas (por exemplo, nos laptops de seus filhos, apenas redes 'confiáveis' com filtros dos pais podem ser usadas). Tanto quanto me lembro, funciona como:
[~ # ~] edite [~ # ~] atualmente o ConsoleKit é amplamente substituído por logind , que faz parte de - systemd , embora exista uma versão independente elogind .