Solaris'in Gizli Özellikleri / OpenSolaris


9

Tipik bir Linux dağıtımında bulunmayan Solaris veya OpenSolaris'te bulabileceğiniz yararlı komutlar, araçlar veya püf noktaları nelerdir?

Yanıtlar:


13

ZFS kullanan Live Upgrade, işletim sistemi önyükleme ortamının yazılabilir anlık görüntülerini oluşturur. Live Upgrade ile bir anlık görüntü önyükleme ortamına yamalar uygulayabilir ve ardından bu anlık görüntüyü önyüklenebilir hale getirebilirsiniz. Bir sonraki yeniden başlatma işleminde yamalanmış bir işletim sistemi ortamı elde edersiniz. Bir yama ile ilgili bir sorun fark ederseniz, eski anlık görüntüyü önyüklenebilir hale getirebilir, yeniden başlatabilir ve değişikliklerinizi geri alabilirsiniz. Yama için oldukça etkileyici bir çözüm.

Önyükleme ortamı için ZFS, Solaris 10u6 veya daha yenisini gerektirir.

Ayrıca, Solaris Bölgeleri uygulama izolasyonu için oldukça kullanışlıdır. Açıkçası DTrace çok güzel ama RedHat Sistem Tap ile yakalamak oynuyor.


1
Canlı Yükseltme UFS ile de yapılabilir.
TCampbell

Her zaman ortalama linux yükseltmenizle karşılaştırıldığında canlı yükseltmenin solaris yükseltmelerine dahil olan acıyı telafi ettiğini düşünmüştüm.
Cian

14

ZFS, DTrace ve SMF, Solaris'i daha önce duymuş olan herkes de duyduğundan, neredeyse hiç gizlenmeyen özellikler.

Solaris'in bazı gizli / daha az bilinen özelliklerini tanımak istiyorsanız , Jörg Möllenkamp'ın Az bilinen Solaris Özellikleri e- kitabını okumanızı tavsiye ederim .


1
Az bilinen Solaris Özellikleri e-kitabı, solaris üzerine yazılmış en iyi kitaplardan biridir.
matt

7

SMF'yi (Servis Yönetimi) unutmayın. Henüz linux için karşılaştırılabilir bir şey görmedim (minnetle kabul edilen herhangi bir işaretçi). Beni ve meslektaşlarımı çok fazla bilet işleme kurtardı :)


Elma çerçevesinin açık kaynak kodlu olduğunu düşünüyorum. developer.apple.com/MacOsX/launchd.html
Martin M.

güzel okumak! Buna bakacağım, ama ilk bakışta, SMF'nin tüm işlevlerini sunmuyor (örneğin, yeniden
deniyor

Yakın zamanda OpenSolaris'e geçen biri olarak, SMF'yi seviyorum. Ayrıca bir sürü OS X sunucusunu yönetiyorum ve evet launchd, başarısız olursa bir hizmet başlangıcını yeniden denemeyi destekliyor, demek istediğin buysa.
Kamil Kisiel

Init komut dosyaları işe yaramaz hata iletileri veren bir shite programı tarafından denetlenen xml sarılmış? Umarım linux'da böyle bir şey bulamam.
theotherreceive

upstart aynı şey hakkında, en azından bağımlılık tabanlı bit yapıyor ..
Cian

6

Solaris'in sahip olduğu Linux insanlarının sahip olmasını istedikleri birçok özelliği vardır. Bunlar:

  • ZFS : şu anda mevcut olan her şeyden daha fazla esneklik sağlayan bir dosya sistemi. Dinamik büyüme ve azalma, anlık görüntüler, klonlar ve daha fazlası - hepsi ücretsiz.
  • DTrace : Çekirdeğin nasıl çalıştığına dair ayrıntıları size sunabilecek bir hata ayıklayıcı. Çekirdeklerin yazılma şekli nedeniyle DTrace, doğası gereği SystemTap'ten çok daha esnektir.
  • SMF : Sistem V başlangıç ​​komut dosyalarının yerini alan başka bir sistem - ancak bu sistemin diğer kullanıcılardan daha fazla ilgisi olduğu görülüyor.
  • Bölgeler ve Kapsayıcılar : bunlar çok esnektir ve çok sayıda insanın heyecanları vardır: çok esnek sanallaştırma sağlarlar.

SMF'ye sahip olduklarını bilecek bir linux insanı henüz bulamadım. Ve OpenVX iyi bir bölge / konteyner değişimidir.
Cian

5

Birkaç kişisel deneyim ...

Bölgeleri o kadar kolay ve kullanışlı buluyorum ki, evde çalıştığım her hizmet için bir tane oluşturdum - bu şekilde hepsini çöpe atmadan bir şeyler oynayabilir ve test edebilirim. Bölgelerden biri ters proxy (Sun Web Java Proxy), böylece farklı web sunucularıyla kolayca oynayabilirim.

Ayrıca opencsw (daha önce Blastwave olarak biliniyordu) paketleri hiyerarşisini daha önce görülen her şeyden çok daha iyi buluyorum - her zaman tüm bağımlılıklarla ilgileniyor.

Ve - unutmamak için - ikili uyumluluk. Bir uygulamanın 1.2.3_4 çekirdeğine sahip Linux'a ihtiyacı olduğu belirtilirse, daha iyi bir uygulamaya sahip olmalısınız. Solaris'te her şey gelecekteki sürümlerde çalışır. Benim için bu istediğim zaman yükseltme demek ve bunu yaparken stres yok.

Daha derine inmek istiyorsanız birkaç ilginç belge: Daha az bilinen Solaris özellikleri

Sadece tatmak için - Yönetici spesiyaliteleri:

Canlı Yükseltme Hizmet Yönetimi Tesisi Kaynak Yönetimi kaynaştırıcı / ihracat / ev? /ev? autofs? çekirdek ve kilitlenmeler hakkında CacheFS Jumpstart Enterprise Toolkit

(reklam gibi geliyor muyum? Üzgünüm ...)


1
Blastwave hala var - opencsw bir çatal.
TRS-80

4

Solaris'in en büyük ve zorlayıcı iki nedeni DTrace ve ZFS'dir; bunların ikisi de doğrudan Linux için mevcut değildir.


4

kstat her türlü müthiş çekirdek istatistiklerini elde eder.


3

Mutlaka gizli değil, ama Linux insanlar için açık değil süreç gözlem yardımcı programları: pstack, pmap, pflags, pfiles, pcred, psig ve pldd. Ayrıca yukarıdan aşağıya eşdeğer olan ancak aynı zamanda kullanıcı, bölge, proje ve ekran mikro-hesap muhasebesine göre kaynak kullanımını toplayabilen prstat.

Bir işletim sistemi örneğinde çok sayıda uygulamayı yönetmek için projelere ve görevlere bakın.

Muhtemelen bir yere / proc dağılmış olsa da, Linux'ta coreadm'e eşdeğer bir şey bilmiyorum.

Logadm biraz geniş ama logrotate için iyi bir alternatif ve genellikle daha güçlü / esnek.

Çok seviyeli güvenlik (roller, yetkiler, profiller) düzenlemesi Linux'tan (SELinux bağlamları, AppArmor) farklıdır.

OpenSolaris'teki Görüntü Paketleme Sistemi (IPS) oldukça temizdir, ancak yine de ağır geliştirme aşamasındadır.

Ayrıca, LiveUpgrade için +1. Özellikle ZFS anlık görüntüleri ile harika.

Alıştığınız GNU kullanıcı alanı öğelerinin çoğu kullanılabilir ve muhtemelen varsayılan olarak yeterince yeni bir Solaris'e yüklenir.


2

OpenSolaris için Hızlı Yeniden Başlatma , x86 donanımında normal HW Problama / BIOS POST / GRUB işlemini atlayarak ~ 2mins yerine <10 saniye içinde yeniden başlatma yapılmasına izin verir. Hatta diğer Önyükleme Ortamlarını önyüklemeyi de destekler (örneğin, botch yükseltmeyi geri alma).


Hatta panik yeniden başlatmayı destekler! Bir sunumdan nasıl çalıştığı hakkında daha fazla bilgi Sherry Moore (proje lideri) NYC OpenSolaris kullanıcı grubuna verdi: scribd.com/doc/16925842/DeveloperDayFastreboot
notpeter

Ancak, Linux da bunu yapabilir. "Kexec" i arayın.
knweiss

1

ZFS ve SMF harika, ancak solaris ile ilgili gerçek bir acı, paket yöneticisinin linux muadillerinin gerisinde kaldığı.

Ayrıca tüm araçlar ince yollardan farklıdır (kimseyi killall?), Çoğu zaman linux makinelerini yönetirseniz, solaris'e geçmek, man sayfalarını tekrar tekrar okumak anlamına gelir. Sucky "daha" çağrı cihazı ve her zaman biraz yanlış yapılandırılmış terminaller hayatınızı zorlaştırır.


Bilmiyorum, "ihracat PAGER = az" benim için yeterince iyi çalışıyor. Ve pkill ile Solaris'te killall'den daha iyi. Sucky termcap / terminfo şeyler hakkında haklısın (ekran için terminfo yok? GTFO!).
Rob Chanter

killall ile ilgili olarak şunu sağlayan procps'a geçtim: pkill, pgrep. Killall çok daha iyi olması için bu bulmak olanlar Solaris I altında GNU araçları ile klipsli olmalıdır
Martin M.

pkill (ve pgrep ve diğer p-yardımcı programları) (Open) Solaris üzerindeki çekirdek sistem paketinin bir parçasıdır. Linux procps'unda (en azından pkill / pgrep / pmap).
Rob Chanter

1
Solaris paket yöneticisi OpenSolaris / Solaris 11'de büyük bir revizyondan geçiyor
Toto


1

kssl, çekirdek SSL modülü. Alıntı: ksslcfg (1M)

ksslcfg, Çekirdek SSL proxy modülü için smf (5) örneklerini yönetir. SSL özellikli bir web sunucusu, HTTPS paketlerinin işlenmesi performansını artırmak için Çekirdek SSL proxy'sinin hizmetlerini kullanabilir.


1

Linux'tan farklı olarak, "lsof -o" (dosya ofsetlerini göster) çalışır. Bu, bir işlemin büyük miktarda veri okurken veya yazarken ne kadar ilerlediğini göstermek için yararlı olabilir.



0

Muhtemelen yeni oyuncular için en büyük tuzak, tipik bir Linux kullanıcısı bir Solaris ana bilgisayarında killall çalıştırmak için cazip olabilir ;

System Administration Commands                        killall(1M)

NAME
     killall - kill all active processes

SYNOPSIS
     /usr/sbin/killall [signal]

DESCRIPTION
     killall is used by shutdown(1M) to kill all active processes
     not directly related to the shutdown procedure.

     killall terminates all processes with open files so that the
     mounted file systems will be unbusied and can be unmounted.

     killall sends signal (see kill(1)) to the active  processes.
     If no signal is specified, a default of 15 is used.

     The killall command can be run only by the super-user.

ATTRIBUTES
     See attributes(5) for descriptions of the  following  attri-
     butes:

     ____________________________________________________________
    |       ATTRIBUTE TYPE        |       ATTRIBUTE VALUE       |
    |_____________________________|_____________________________|
    | Availability                | SUNWcsu                     |
    |_____________________________|_____________________________|

SEE ALSO

     kill(1), ps(1), fuser(1M), shutdown(1M), signal(3C),  attri-
     butes(5)

SunOS 5.10          Last change: 14 Sep 1992                    1
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.