Komut satırından MacOS X'te bir kullanıcı oluşturmanın doğru yolu nedir? Örneğin, Apache httpd için zaten '_www' kullanıcısı var, ancak yeni uygulama için kendi hesabını kullanmak istiyorum.MacOS X'de bir daemon çalıştırmak için kullanıcı oluşturuyor musunuz?
cevap
"adduser" komutu yok. Mac yaklaşımı, "Dizin Hizmeti Komut Satırı Yardımcı Programı" olan dscl komutunu kullanmaktır. Dizin Hizmetleri, LDAP kavramına benzer, ancak farklı bir çözümdür.
Aşağıdaki örnekler, 'mydaemon' öğesini istenen hesap olarak kullanacaktır, ancak tipik olarak daemon uygulamanızın adıyla eşleşen bir değer kullanırsınız.
Tüm daemon kullanıcılarına _www gibi bir alt çizgi eklenmiştir. (Burada 300 seçtik)
sudo dscl . -read /Users/_www
bir kullanıcı oluşturmadan önce, kullanılmayan bir grup kimliği seçerek bir grup oluşturmak:
varolan girişini özelliklerini listelemek için
kez yapılansudo dscl . -create /Groups/_mydaemon
sudo dscl . -create /Groups/_mydaemon PrimaryGroupID 300
, yeni bir kullanıcı oluşturuyoruz (grup için yaptığımız gibi aynı kimliği kullanıyoruz, bu bir kabuk kullanmıyor; bu, bir kabuk kullanmayacak:
sudo dscl . -create /Users/_mydaemon UniqueID 300
sudo dscl . -create /Users/_mydaemon PrimaryGroupID 300
sudo dscl . -create /Users/_mydaemon UserShell /usr/bin/false
Yukarıdakiler çeşitli bilgi kaynaklarının okunmasına ve sürecin benimsenmesine dayanmaktadır. Bir referans, yararlı bulduğu olmasıdır:
http://minecraft.gamepedia.com/Tutorials/Create_a_Mac_OS_X_startup_daemon
Not (MacOS X 10.10 dayalı konumu) GUI DSCL sürümü de var:
/System/Library/CoreServices/Uygulamalar/Dizin \ Utility.app/
Son kullanılan GID, 'dscacheutil -q grubu | grep gid | kuyruk -n 1 ' – Sphinges
[@sphinges] tarafından önerilen komut (https://stackoverflow.com/users/1710017/sphinges) yanlıştır. Grup kimlikleri zorunlu olarak artan sırada listelenmez, bu nedenle en son ancak zorunlu olarak en yüksek değer döndürülmez '' 'dscacheutil -q grubu | grep gid | awk '{print $ 2}' | sort -n | kuyruğu -n 1''' daha iyi çalışmalı, son 15'i görmeyi tercih etsem de, 260’ın üzerinde olduğundan oldukça seyrek davranıyorlar '' 'dscacheutil -q grubu | grep gid | awk '{print $ 2}' | sort -n | kuyruk-15 '' – Scott