Birincil yönetici UID 501 neden?


11

Birincil yönetici kullanıcı bir kullanıcı kimliği verilir * anlıyorum 501ve sonraki kullanıcıların artan rakamları elde ( 502, 503, ...). Ama neden 501? Özel olan nedir 50x, bu seçimin tarihsel / teknik nedeni nedir?

* Harici sabit diskimin neden tüm çöpe atılan dosyaları içerdiğini merak ettiğimde bunu araştırmaya başladım .Trashes/501. Aramam beni sonuca götürdü 501* nix sistemlerindeki birincil yöneticinin kullanıcı kimliği (macOS'tayım), ancak neden değil .


7
Birincil yöneticinin UID'sinin 0 olduğunu düşündüm!
Jeff Schaller

Yanıtlar:


21

Birçok Unix sistemi kullanıcılara belirli bir sayıda UID dağıtmaya başlar. Solaris ilk genel amaçlı kullanıcı UID 100'ü verecek, OpenBSD'de 1000 ve macOS'ta, ilk oluşturulan etkileşimli kullanıcı için UID olacak gibi görünen UID 501, muhtemelen bir macOS yönetici kullanıcısı (aynı değil) kök kullanıcı olarak).

Daha düşük sayıya sahip hesaplar, arka plan vb. İçin sistem kullanıcı hesaplarıdır. Bu, etkileşimli "insan" hesaplarını sistem hizmetleri hesaplarından ayırt etmeyi kolaylaştırır. Bu aynı zamanda çeşitli yazılımlarda kullanıcı yönetimini, kimlik doğrulamasını vs. kolaylaştırabilir. YP / NIS , örneğin birden çok istemci makinede yerel kullanıcılar oluşturmak zorunda kalmadan kullanıcı hesaplarını (ve diğer bilgileri) merkezi bir sunucuda tutmak için biraz modası geçmiş bir sistemdir ve işlemesi gereken kullanıcı hesabı aralığı için bir MINUIDve MAXUIDayarına sahiptir .

Bazı Unices'te, FreeBSD üzerinde 50 ila 999 veya OpenBSD üzerinde 500 ila 999 gibi UID'ler gibi üçüncü taraf yazılımlara bir dizi sistem hizmeti hesabı tahsis edilebilir.

Bu aralıkların tümü, işletim sistemlerinin beklenen ihtiyaçlarına göre bireysel Unices'in üreticileri ve bakımcıları tarafından seçilir. POSIX standardı bunlar hakkında hiçbir şey söylemez. En düşük ve en yüksek ayrılabilir UID (ve GID) genellikle yerel bir yönetici tarafından yapılandırılabilir ( adduserkılavuzunuza bakın ).

Çoğu Unices rootsüper kullanıcı için UID 0 nobodyayırır ve kullanıcıya mümkün olan en yüksek UID'yi (veya en azından bir miktar yüksek değeri) atar (Solaris UID 60001 kullanır, OpenBSD 32768 kullanır, ancak UID'ler bundan çok daha büyük olabilir ).

(UID 0 ile ilgili her zaman var olan root(veya olmayan) yorumlara bakın , bu da bu konunun hafif bir incelemesidir)


Güncelleme: OpenBSD projesi kısa süre önce UID / GID tahsisini rasgele seçme fikrini reddetti .


Bunların yalnızca SÖZLEŞMELER olduğunu da unutmayın. Unix ve Unix benzeri sistemlerde, bir UID hakkında doğal olarak büyülü bir şey yoktur. Kök keyfi olarak 65535 UID verilebilir ve ilk etkileşimli kullanıcı UID 0 olarak atanabilir.
Doug R.

@DougR. Muhtemelen, ancak mevcut yazılım parçalarını kırması muhtemeldir. POSIX, bir işlemin bir kullanıcıya değil, "uygun ayrıcalıklara" ihtiyaç duyduğunu söyleme eğilimindedir . Ayrıca bkz. "Uygun ayrıcalıklar" (bazı sistemlerde UID 0'dan "süper kullanıcı" olarak bahseder): pubs.opengroup.org/onlinepubs/9699919799/xrat/…
Kusalananda

Benim yaptığınız kadar net bir şekilde ifade etmemiş olsam bile, kullanıcı üzerinde ayrıcalık yorumumun noktasıydı. Kırılması gereken tek yazılım, UID'sinin belirli bir aralıkta olmasına dayanan yazılımdır. Ne yaparsa yapsın, emin değilim.
Doug R.15


8

LSB'yi izleyen dağıtımlar için UID'leri ve GID'leri 0-99 statik olarak ayırırlar. 100-499 UID'leri dinamik olarak ayrılır, ancak bunlar aynı zamanda sistem içindir, giriş hesapları için değildir.

Örneğin, yazdırma gibi cinler cupskendi kullanıcı hesaplarına ayrılma eğilimindedir. Dolayısıyla, arka plan programındaki bir güvenlik açığından yararlanırsa, arka plan programı rootsistem üzerinde tam güçte çalışmıyordur . (Ayrıca diğer cinlere müdahale etme gücü de yoktur).

Daha yeni Linux dağıtımlarında, sistem aralığı 999'a kadar genişletilmiştir.

Bu, giriş hesapları için UID'leri 500 yukarı (veya 1000 yukarı) bırakır.

Debian ayrıca aşağıdakiler için statik bir ayırmaya sahiptir:UIDGID 100, bu sapmanın herhangi bir soruna neden olduğunu hayal bile edemiyorum.

UID 500'ü ayıran birer birer sapma ile başka bir sistem hayal etmek kolaydır. (Bunun hala uyumlu olacağını varsayıyorum; tüm Linux'ların bu kadar uzun süredir LSB'yi ihlal ettiğini düşünemiyorum güncellenmektedir).

İlk giriş hesabının yönetici hesabı veya birincil yönetici hesabı olması gerekmez. Sistemlerin mutlaka kullanılması gerekmez sudo(özellikle önceden tarihlendirildiyse :). Bu durumda "birincil yönetici hesabı" olduğunu söyleyebilirsiniz root. Bunun dışında, * nix ve genel amaçlı Linux dağıtımları belirli bir "birincil yönetici hesabını" tanımıyor.


OP özellikle Mac OS X hakkında soru sorduğunda neden Linux hakkında konuştuğunuzdan emin değilsiniz.
CVn

> 7 saat önce düzenlendi> içinde * nix systems
sourcejedi

4
On more recent Linux distributions, the system range is extended up to 999.- Her zaman 1000'den yukarı kullanıcı kimliği vardı ve 2005 yılında Linux kullanmaya başladım. "Son" olarak adlandırmam.
Mirek Długosz

Debian'da 100'ün durağan olduğunu düşündüren nedir? Sistemlerimden birkaçına baktığımda bana dinamik görünüyor (biri sistemd-timesync, diğeri ise sshd).
plugwash

Soru 12:22 UTC'de düzenlendiğinde OP, soru gövdesinde OS X'ten bahsederken [osx] etiketini ekledi. Cevabınız on dakika sonra gönderildi ve bunu hiç dikkate almıyor gibi görünüyor.
CVn
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.