Bu klasör / run / user / 1000 nedir?


84

Bu klasör nedir: /run/user/1000Fedora sistemimde ve ne işe yarıyor?

~ $ df -h
Filesystem      Size  Used Avail Use% Mounted on
tmpfs           1.2G   20K  1.2G   1% /run/user/1000

EDIT: 7 Haziran 2019.

İki cevabım, hangi yerde ya da bu yerde depolanan dosyaların nerede olduğu konusunda aynı fikirde değil:

Patrick :

Öncesinde systemd, bu uygulamalar tipik olarak dosyalarını saklar /tmp.

Ve yine burada:

/tmpFHSYerel tarafından belirtilen ve tüm kullanıcılar tarafından yazılabilen tek yer buydu.

Braiam :

Bu dizinin amaçlarına bir zamanlar hizmet edildi /var/run. Genel olarak, programlar geriye dönük uyumluluk amacıyla /var/runbelirlenen gereklilikleri yerine getirmeye devam edebilir /run.

Ve yine burada:

Kullanmaya göç eden programlar , bölümünde belirtilenler dışında /run, kullanımlarını durdurmalıdır ./var/run/var/run

Öyleyse hangisi babasıydı /run/user/1000, neden diğerinin daha önce kullanılan rehberle ilgili söylediklerini yanıtlamada neden bahsedilmiyor /run/user.


Her ikisinin de yanıtında söz konusu olanın / run / user kullanmadan önce kullanılan dizin hakkında söylediklerine değinmeyin, çünkü yalnızca biri gerçekten bunu tartışıyor. Braiam'ın cevabı / run / user yerine / run öncesi kullanılan dizini tartışır.
David Yockey

1
"/ Run / user / 1000'in babası" sorusuna bir cevap, Patrick tarafından gerekçeli fakat asılsız bir ifade olarak sunulmuştur. Braiam bu soruyu ele almıyor. Geçmişte süreçleri çalıştıran, yani geçici dosyaları kullanan dosyaların depolandığı yerin standart / tmp dizini olduğu varsayılmıştır. Öyleyse, kanıtlamak zor olurdu, çünkü çok az kişi konvansiyonel veya açık olanın yazılı kaydını sağlar. Doğrulanmış bir cevap sağlamak için muhtemelen bilgisayar tarihine bir miktar eşlik etmelisiniz.
David Yockey

Girişiniz için teşekkür ederiz
şey, bir şey

Yanıtlar:


94

/run/user/$uidtarafından yaratılır pam_systemdve bu kullanıcı için işlemleri çalıştırarak kullanılan dosyaları depolamak için kullanılır. Bunlar anahtarlık arka plan planınız, pulseaudio vb. Gibi şeyler olabilir.

Systemd'den önce , bu uygulamalar tipik olarak dosyalarını saklarlar/tmp . Onlar bir konumu kullanamadı /home/$userev dizinleri genellikle ağ dosya sistemleri üzerinde monte gibidir ve bu dosyalar ana sunucular arasında paylaşıldığı edilmemelidir. FHS/tmp tarafından belirtilen ve yerel olan ve tüm kullanıcılar tarafından yazılabilen tek yer .

Bununla birlikte, tüm bu dosyaları saklamak herkes tarafından yazılabilir /tmpolduğu gibi sorunludur /tmpve oluşturulan dosyalar üzerindeki sahipliği ve modu değiştirebiliyorken, üzerinde çalışılması daha zordur.

Böylece sistem geldi ve yarattı /run/user/$uid. Bu dizin sistemde yereldir ve sadece hedef kullanıcı tarafından erişilebilir. Bu nedenle, yerel olarak dosyaları depolamak isteyen uygulamaların erişim kontrolü konusunda endişelenmesine artık gerek yok.
Aynı zamanda işleri güzel ve düzenli tutar. Bir kullanıcı oturumu kapattığında ve etkin oturum kalmadığında, dizini pam_systemdsiler /run/user/$uid. Etrafa dağılmış çeşitli dosyalar varken /tmpbunu yapamazsınız.


18
O, $ XDG_RUNTIME_DIR denilen en belgelenmiştir belirtelim standards.freedesktop.org/basedir-spec/basedir-spec-latest.html
o11c

Olursa: Bir "arkaplan" hesaplama sürecini başlattım nohupve ara sonuçlarını / verilerini geçici bir dosyaya kaydeder. İşlem devam ederken silinmemesine güvenebilir miyim, yoksa silinecek ve başladığım işlem nohupverilerini kaybedecek mi?
imz - Ivan Zakharyaschev

Silinmesi muhtemel değildir, ancak / run / user, fedora'daki bir tmpfs dosya sistemidir, bu nedenle kendisine ayrılan alanla sınırlı olacaktır. Yukarıdaki df çıkışına bakın.
jsbillings

Ne pidfile root altında çalışan bir servis ise? PID / var / run veya / var / run / user / 0 altında mı olmalı? Etkin oturum olmadığından beri kaldırılacak mı?
TSG

11

Göre FHS (Hiyerarşi Standart Dosya) en son taslağına , / çalıştırın:

Bu dizin, başlatıldığından beri sistemi tanımlayan sistem bilgisi verilerini içerir. Bu dizindeki dosyalar önyükleme işleminin başında temizlenmeli (uygun şekilde kaldırılmalı veya kesilmelidir).

Bu dizinin amaçları bir zamanlar / var / run tarafından sunuldu. Genel olarak, programlar geriye dönük uyumluluk amacıyla / koşusu için öngörülen şartları yerine getirmek için / var / run kullanmaya devam edebilir. Kullanım / çalıştırmaya geçiş yapan programlar / var / run bölümünde belirtilenler dışında, / var / run kullanımlarını durdurmalıdır.

Programlar alt dizininde / run; bu, birden fazla çalışma zamanı dosyası kullanan programlar için teşvik edilir. Kullanıcılar ayrıca / run alt dizinine sahip olabilirler, ancak / run dizisinin ve diğer alt dizinlerin yetkisiz kullanımını önlemek için erişim haklarının uygun şekilde sınırlandırılmasına özen gösterilmelidir.

/run/userDizin durumunda, kilit dosyaları ve soketleri için bir yere ihtiyaç duyan dconf, pulse, systemd vb. Gibi farklı kullanıcı servisleri tarafından kullanılır. Sistemde farklı kullanıcı UID'leri kayıtlı olduğu kadar dizin var.

Sitemizi kullandığınızda şunları okuyup anladığınızı kabul etmiş olursunuz: Çerez Politikası ve Gizlilik Politikası.
Licensed under cc by-sa 3.0 with attribution required.