Tak nám zabili NetInfo, paní Müllerová - MujMAC.cz - Apple, Mac OS X, Apple iPod

Odběr fotomagazínu

Fotografický magazín "iZIN IDIF" každý týden ve Vašem e-mailu.
Co nového ve světě fotografie!

 

Zadejte Vaši e-mailovou adresu:

Kamarád fotí rád?

Přihlas ho k odběru fotomagazínu!

 

Zadejte e-mailovou adresu kamaráda:

Soutěž

Sponzorem soutěže je:

IDIF

 

Jaký fotograf/ka získal/a cenu za nejpopulárnější příspěvek v Nikon Photo Contest?

V dnešní soutěži hrajeme o:

Seriály

Více seriálů



Informace

Tak nám zabili NetInfo, paní Müllerová

16. listopadu 2007, 10.00 | Jednou z novinek Leoparda, jež nepotěší, je to, že neustále omezovaná podpora geniálně navržené síťové databáze NetInfo dospěla do bodu nula: 10.5 NetInfo nepoužívá, a také samozřejmě nenabízí prostředky pro práci s ním. Pojďme si ukázat, co je k dispozici místo toho.

Jednou z novinek Leoparda, jež nepotěší, je to, že neustále omezovaná podpora geniálně navržené síťové databáze NetInfo dospěla do bodu nula: 10.5 NetInfo nepoužívá, a také samozřejmě nenabízí prostředky pro práci s ním.

Naštěstí jsme nezůstali zcela bez náhrady, ačkoli některá řešení jsou podstatně méně pohodlná a musíme sestoupit od příjemné aplikace s GUI na úroveň Terminálu. Pojďme se dnes podívat na dvě věci: zpřístupnění účtu superuživatele a přístup k atributům uživatelských kont.

Zpřístupnění účtu superuživatele

Mnozí pro usnadnění správy počítače zpřístupňují konto superuživatele ("root"), tak, aby bylo možné se do něj standardním způsobem přihlásit. Osobně to nepovažuji za rozumné a domnívám se, že daleko lepší je využívat odpovídající autentizační služby jednotlivých aplikací (a sudo v Terminálu), avšak proti Gustovi není dišputace :)

Každopádně v Leopardu je jistý problém: konto superuživatele se totiž vždy aktivovalo (nebo naopak deaktivovalo) příkazem aplikace NetInfo Manager, které žel není více.

Tento problém má naštěstí řešení velmi snadné – stačí spustit aplikaci Directory Utility (jež nahradila "tygří" Directory Access), a v její nabídce "Edit" najdeme staré známé příkazy "Enable Root User" a "Change Root Password". Prvý z nich je k dispozici poté, co se v rámci aplikace (pomocí standardního "zámku" v levém dolním rohu okna) přihlásíme jako administrátor; druhý v době, kdy je konto superuživatele aktivní.

Zobrazení a změna uživatelského nastavení

S obecnými atributy uživatelských kont je to horší; ačkoli na WWDC 2006 zástupci Apple slibovali, že je bude možné nastavovat ze systémového preferenčního panelu "Accounts", v praxi tomu tak žel není, panel nezpřístupní z těchto atributů takřka nic.

Zde bohužel nezbývá, než sestoupit na úroveň shellu – zatímco aplikace s grafickým uživatelským rozhraním, jež by zpřístupnila (kromě jiného také) atributy uživatelských kont, v Leopardu neexistuje (alespoň nakolik je mi známo – pokud se mýlím, jistě mne někdo v diskusi opraví), nový terminálový příkaz ano; jeho jméno je dscl (a mimochodem byl již k dispozici v Tygru - jen tam díky tomu, že v něm dosud NetInfo fungovalo, nebylo zapotřebí využívat jeho služeb).

Příkaz nabízí poměrně bohatou paletu služeb, jejichž seznam si můžeme zobrazit pomocí "man dscl", případně spuštěním příkazu dscl bez argumentů – to jej spustí v interaktivním režimu – a zadáním podpříkazu help v jeho vlastní příkazové řádce. My si zde nebudeme popisovat kompletní možnosti dscl; ukážeme si jen přístup k atributům uživatele a jejich změnu.

Načtení atributů daného uživatelského konta je poměrně jednoduché – stačí v terminálu zadat příkaz

dscl . -read /Users/<jméno konta>

Příkaz vypíše všechny jemu známé atributy v relativně čitelné podobě seznamu typu "<jméno>: <hodnota>", asi takto:

22 ~> dscl . -read /Users/ocs
...
NFSHomeDirectory: /Users/ocs
PrimaryGroupID: 20
RealName:
 Ondřej Čada
UniqueID: 501
UserShell: /bin/zsh
23 ~> 

Chceme-li některou hodnotu změnit – můžeme kupříkladu chtít změnit výchozí shell ze standardního bashe na zsh, pokud stojíme o výhody zsh a používáme příkaz su – použijeme přepínač "change". Samozřejmě je zapotřebí mít k tomu rootovskou autentifikaci (můžeme např. volat dscl prostřednictvím příkazu sudo); kromě toho je zapotřebí zadat nejen nově požadovanou, ale také původní hodnotu (to proto, že dscl obecně umožňuje pracovat s více různými hodnotami téhož typu).

Kupříkladu to, abych měl v Leopardu – jak již ukazuje minulý výpis – nastaven zsh jako výchozí shell, jsem zajistil pomocí tohoto příkazu (je vidět, že proběhl ještě v původním bash :))

bash-3.2# dscl . -change /Users/admin UserShell /bin/bash /bin/zsh

Obsah seriálu (více o seriálu):

Tématické zařazení:

 » Rubriky  » Informace  

 » Rubriky  » Agregator  

 » Rubriky  » Tipy a Triky  

 » Rubriky  » Software  

 

 

 

 

Přihlášení k mému účtu

Uživatelské jméno:

Heslo: