O que é esta pasta / run / user / 1000?

67

O que é essa pasta: /run/user/1000 no meu sistema Fedora e o que ela faz?

~ $ df -h
Filesystem      Size  Used Avail Use% Mounted on
tmpfs           1.2G   20K  1.2G   1% /run/user/1000
    
por somethingSomething 18.10.2014 / 22:44

2 respostas

78

/run/user/$uid é criado por pam_systemd e é usado para armazenar arquivos usados pela execução processos para esse usuário. Estas podem ser coisas como o daemon do seu anel de chaves, pulseaudio, etc.

Antes do systemd , esses aplicativos normalmente armazenavam seus arquivos em /tmp . Eles não podiam usar um local em /home/$user , já que os diretórios base são montados em sistemas de arquivos de rede, e esses arquivos não devem ser compartilhados entre os hosts. /tmp foi o único local especificado pelo FHS que é local e gravável por todos os usuários.

No entanto, armazenar todos esses arquivos em /tmp é problemático, pois /tmp é gravável para todos e, embora você possa alterar a propriedade & modo nos arquivos que estão sendo criados, é mais difícil trabalhar com ele.

Então o systemd apareceu e criou o /run/user/$uid . Este diretório é local para o sistema e somente acessível pelo usuário de destino. Portanto, os aplicativos que desejam armazenar seus arquivos localmente não precisam mais se preocupar com o controle de acesso.
Também mantém as coisas boas e organizadas. Quando um usuário efetua logout e nenhuma sessão ativa permanece, pam_systemd limpará o diretório /run/user/$uid . Com vários arquivos espalhados em torno de /tmp , você não poderia fazer isso.

    
por 19.10.2014 / 00:13
11

De acordo com para o rascunho mais recente do FHS (File Hierarchy Standard) , / run:

This directory contains system information data describing the system since it was booted. Files under this directory must be cleared (removed or truncated as appropriate) at the beginning of the boot process.

The purposes of this directory were once served by /var/run. In general, programs may continue to use /var/run to fulfill the requirements set out for /run for the purposes of backwards compatibility. Programs which have migrated to use /run should cease their usage of /var/run, except as noted in the section on /var/run.

Programs may have a subdirectory of /run; this is encouraged for programs that use more than one run-time file. Users may also have a subdirectory of /run, although care must be taken to appropriately limit access rights to prevent unauthorized use of /run itself and other subdirectories.

No caso do diretório /run/user , é usado pelos diferentes serviços do usuário, como dconf, pulse, systemd, etc., que precisam de um local para seus arquivos de bloqueio e soquetes. Existem tantos diretórios quantos os usuários diferentes estão registrados no sistema.

    
por 18.10.2014 / 23:02