Normal bir kullanıcıyla sistem kullanıcısı arasındaki fark nedir?


124

Yaşadığım bazı belgelerin , kullanıcının 'sistem' kullanıcısı ya da 'normal' kullanıcı olup olmadığına ilişkin bir boolean anahtarı vardır (varsayılan olarak 'normal' olarak).

Bu iki kullanıcı gemisi modu arasındaki fark nedir? Bir kullanıcının ne olduğunu veya neden onlara ihtiyacınız olduğunu ('sahte' olanlar bile) öğrenmem gerekmez, ancak bu özel ayrım benim için sezgisel değildir.

Yanıtlar:


85

Bu teknik bir fark değil örgütsel bir karardır. Örneğin, normal kullanıcılara bir oturum açma iletişim kutusunda gösterilmesi mantıklıdır (böylece kullanıcı adını yazmak yerine tıklamak için tıklayabilirsiniz), ancak sistem hesaplarını (orada çalışanların ve diğer otomatik işlemlerin altında çalıştığı kullanıcı kimlikleri) göstermez. .

Böylece bir sınır tanımlanmış veya iki grup için UID'ler için iki aralık tanımlanmıştır. OpenSUSE'de dosya /etc/login.defsşu satırları içerir:

Useradd içinde otomatik kullanıcı seçimi için # Min / max değerleri
#
# SYS_UID_MIN - SYS_UID_MAX dahil olmak üzere aralığı
# Dinamik olarak tahsis edilmiş idari ve sistem hesapları için UID'ler.
# UID_MIN ila UID_MAX dahil, dinamik olarak UID'lerin aralığıdır
# tahsis edilmiş kullanıcı hesapları.
#
UID_MIN 1000
UID_MAX 60000
# Sistem hesapları
SYS_UID_MIN 100
SYS_UID_MAX 499

ve

Groupadd içinde otomatik gid seçimi için # Min / max değerleri
#
# SYS_GID_MIN - SYS_GID_MAX dahil olmak üzere aralığı
# Dinamik olarak tahsis edilmiş idari ve sistem grupları için GID'ler.
# GID_MIN ila GID_MAX dahil, dinamik olarak GID aralığı
# ayrılmış gruplar.
#
GID_MIN 1000
GID_MAX 60000
# Sistem hesapları
SYS_GID_MIN 100
SYS_GID_MAX 499

3
Debian ve diğerlerinin, UID'lerin 1000'den az veya daha büyük olup olmadığına bağlı olarak ayırt eden, çoğu (gizli (sistem yetkilendirme seçimlerini düzenleyen PAM kurallarında olduğu gibi) gizli sistem kurallarına sahip olacağını belirtmekte fayda var. UID'lerinizi dikkatlice seçin.
Dave

38

Ana fark, hesabın amacıdır, bu nedenle öncelikle yöneticiler ve denetçiler için yararlı bir ayrımdır. Birkaç teknik farklılık var - adduserdokümantasyondan:

Sistem kullanıcıları, yaşlanma bilgisi olmadan oluşturulacak /etc/shadowve sayısal tanımlayıcıları SYS_UID_MIN- yerine ( - ve grup oluşturma için onların GID emsalleri) olarak SYS_UID_MAXtanımlanan - aralıkta seçilecektir ./etc/login.defsUID_MINUID_MAX

Söyleyebildiğim kadarıyla (Kukla'yı tanımıyorum), Kukla bakış açısındaki fark, -rseçeneğe geçip geçmediğidir adduser.

Daha geniş bir perspektif için, bkz . / Etc / passwd'deki bir hesabı "gizlemek" mümkün mü?


CentOS'ta: useradd --system foouserKullanıcı sayfasına göre o kullanıcı için bir giriş dizini oluşturmamasına rağmen useradd(8)(ki: Not : /etc/login.defs (CREATE_HOME) içindeki varsayılan ayardan bağımsız olarak, kullanıcı adının böyle bir kullanıcı için giriş dizini oluşturmayacağını unutmayın. . sen hesabı oluşturmayı mümkün bir sistem için bir ev dizini istiyorsanız, -m seçenekleri belirlemek gerekir. ), yeni kullanıcının ev dizini foouservarolmayan olarak verilir /home/foouseriçinde /etc/passwd.
David Tonhofer

Ek olarak, UID SYS_UID_MAX, genellikle 1000'den geri sayılarak seçilir , bu nedenle örneğin UID 998'e sahibiz foouser.
David Tonhofer
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.