2009-03-02 17 views
5

Bir kabuk komut dosyası, bir Solaris örneğindeki bazı hizmetleri ve uygulamaları yükler ve yapılandırır. Bu hizmetlerden biri NTP'dir - ancak NTP, global olmayan bir bölgede çalışamaz (iyi olabilir, ancak saati ayarlamaya çalışırken xntpd başarısız olur; bunun yerine bölge, global bölgeden saati miras alır).Bir kabuk senaryosu bir Solaris bölgesinde çalıştığını nereden biliyor?

Kabuk betiği, aslında global olmayan Solaris bölgesinde çalıştığı için bu durumlarda NTP yapılandırma adımını atlayabildiğini nasıl söyleyebilir?

cevap

5

kullanın zonename(1). Global bölgede (veya herhangi bir bölge olmayan bağımsız bir sunucuda), bu global dizgesini döndürür.

NAME 
    zonename - print name of current zone 

SYNOPSIS 
    zonename 

DESCRIPTION 
    The zonename utility prints the name of the current zone. 

... 
1

Ayrıca, zoneadm list -cv deneyebilirsiniz küresel bölgede aşağıdaki gibi çıktı göreceksiniz: Başka bölgesinde sadece, örneğin söz konusu bölgeyi görecekti oysa

# zoneadm list -cv 
ID NAME    STATUS   PATH 
0 global   running  /
1 zone1   running  /zones/zone1 

# zoneadm list -cv 
ID NAME    STATUS   PATH 
1 zone1   running  /zones/zone1 
1

Eh, bölge içindeki komut dosyası çalıştıran ve bölge çalıştığından emin olmak isteyen vardır sonra yukarıdaki çıkışında 1 doğrultusunda global bölge görebilirsiniz komuta

arp -a |grep SP 

altında çalışacak komut. Bu çıktının temelinde komut dosyanızda kontrol uygulamak yararlı olabilir.