Versteckte Funktionen von Solaris / OpenSolaris


9

Welche nützlichen Befehle, Tools oder Tricks finden Sie unter Solaris oder OpenSolaris, die in einer typischen Linux-Distribution nicht verfügbar sind?

Antworten:


13

Live Upgrade, das ZFS verwendet, erstellt beschreibbare Snapshots der Startumgebung des Betriebssystems. Mit Live Upgrade können Sie Patches auf eine Snapshot-Boot-Umgebung anwenden und diesen Snapshot dann bootfähig machen. Beim nächsten Neustart erhalten Sie eine gepatchte Betriebssystemumgebung. Wenn Sie ein Problem mit einem Patch feststellen, können Sie den alten Snapshot bootfähig machen, neu starten und Ihre Änderungen zurücksetzen. Es ist eine ziemlich beeindruckende Lösung für das Patchen.

Für ZFS für die Boot-Umgebung ist Solaris 10u6 oder höher erforderlich.

Außerdem sind Solaris-Zonen für die Anwendungsisolation sehr nützlich. Natürlich ist DTrace sehr nett, aber RedHat holt Aufholjagd mit System Tap.


1
Live-Upgrades können auch mit UFS durchgeführt werden.
TCampbell

Ich habe immer gedacht, dass ein Live-Upgrade die mit Solaris-Upgrades verbundenen Schmerzen im Vergleich zu einem durchschnittlichen Linux-Upgrade kompensiert.
Cian

14

ZFS, DTrace und SMF sind kaum versteckte Funktionen, da jeder, der jemals von Solaris gehört hat, auch davon gehört hat.

Wenn Sie einige versteckte / weniger bekannte Funktionen von Solaris wirklich kennenlernen möchten, empfehlen wir Ihnen, das eBook " Weniger bekannte Solaris-Funktionen" von Jörg Möllenkamp zu lesen .


1
Das weniger bekannte Solaris Features E-Book ist eines der besten Bücher, die jemals über Solaris geschrieben wurden.
Matt

7

Vergessen Sie nicht SMF (Service Management). Ich habe noch nichts Vergleichbares für Linux gesehen (alle Hinweise dankbar angenommen). Es hat mir (und meinen Kollegen) viel Ticket-Handling erspart :)


Ich glaube, dass Apple Framework als Open Source verfügbar ist. developer.apple.com/MacOsX/launchd.html
Martin M.

schön gelesen! Ich werde es untersuchen, aber auf den ersten Blick bietet es nicht alle Funktionen von SMF (z. B. Wiederholungsversuche)
Vincent De Baere

Als jemand, der kürzlich zu OpenSolaris gewechselt ist, liebe ich SMF. Ich verwalte auch eine Reihe von OS X-Servern, und ja, launchd unterstützt das Wiederholen eines Dienststarts, wenn dies fehlschlägt, wenn Sie das meinen.
Kamil Kisiel

Init-Skripte in XML, die von einem Shite-Programm gesteuert werden, das nutzlose Fehlermeldungen ausgibt? Ich hoffe, dass ich so etwas unter Linux nie finde.
Theotherreceive

upstart macht ungefähr das Gleiche, zumindest das abhängigkeitsbasierte Bit.
Cian

6

Solaris bietet eine Reihe von Funktionen, die Linux-Benutzer gerne hätten. Diese schließen ein:

  • ZFS : Ein Dateisystem, das vor allem jetzt extreme Flexibilität bietet. Dynamisches Wachstum und Reduzierung, Schnappschüsse, Klone und mehr - alles kostenlos erhältlich.
  • DTrace : Ein Debugger, der Ihnen Details zur Funktionsweise des Kernels anzeigen kann. Aufgrund der Art und Weise, wie die Kernel geschrieben werden, ist DTrace von Natur aus viel flexibler als SystemTap.
  • SMF : Ein weiteres System, das System V-Init-Skripte ersetzt - aber dieses scheint mehr Leute zu interessieren als jedes andere.
  • Zonen und Container : Diese sind sehr flexibel und begeistern viele Menschen: Sie sorgen für eine sehr flexible Virtualisierung.

Ich habe noch keine Linux-Person gefunden, die klug ist, SMF zu haben. Und OpenVX ist ein guter Ersatz für Zonen / Container.
Cian

5

Ein paar persönliche Erfahrungen ...

Ich finde Zonen so einfach und nützlich, dass ich einfach eine für jeden Dienst erstellt habe, den ich zu Hause betreibe - auf diese Weise kann ich Dinge spielen und testen, ohne alles zu zerstören. Eine der Zonen ist der Reverse Proxy (Sun Web Java Proxy), damit ich problemlos mit verschiedenen Webservern spielen kann.

Außerdem finde ich die Hierarchie der opencsw-Pakete (früher bekannt als Blastwave) viel besser als alles, was bisher gesehen wurde - sie kümmert sich immer um alle Abhängigkeiten.

Und - nicht zu vergessen - Binärkompatibilität. Wenn für eine App angegeben ist, dass sie Linux mit Kernel 1.2.3_4 benötigt, ist dies besser. Unter Solaris funktioniert alles nur in zukünftigen Versionen. Für mich bedeutet dies ein Upgrade, wenn ich möchte, und keinen Stress, es zu tun.

Hier sind einige interessante Dokumente, wenn Sie tiefer gehen möchten: Weniger bekannte Solaris-Funktionen

Nur für den Geschmack - Verwaltungsspezialitäten:

Live Upgrade Service Management Facility Ressourcenverwaltung pfiles Fixiereinheit / Export / Home? /Zuhause? Autofs? lockfs Informationen zu Kernen und Abstürzen CacheFS Jumpstart Enterprise Toolkit

(Klinge ich wie eine Anzeige? Entschuldigung ...)


1
Blastwave ist immer noch da - opencsw ist eine Gabel.
TRS-80

4

Die beiden größten und zwingendsten Gründe für Solaris scheinen DTrace und ZFS zu sein, von denen keiner direkt für Linux verfügbar ist.


4

kstat, um alle Arten von fantastischen Kernel-Statistiken zu erhalten.


3

Nicht unbedingt versteckt, aber für Linux-Benutzer nicht offensichtlich sind die Dienstprogramme zur Prozessbeobachtung: pstack, pmap, pflags, pfiles, pcred, psig und pldd. Auch prstat, das mehr oder weniger top entspricht, aber auch die Ressourcennutzung nach Benutzer, Zone, Projekt und Anzeige der Mikrozustandsabrechnung aggregieren kann.

Sehen Sie sich Projekte und Aufgaben zum Verwalten vieler Anwendungen in einer Betriebssysteminstanz an.

Ich kenne kein Äquivalent zu coreadm unter Linux, obwohl es wahrscheinlich irgendwo in / proc verstreut ist.

Logadm ist etwas stumpf, aber ein guter Ersatz für Logrotate und im Allgemeinen leistungsfähiger / flexibler.

Die Anordnung der mehrstufigen Sicherheit (Rollen, Berechtigungen, Profile) unterscheidet sich von Linux (SELinux-Kontexte, AppArmor).

Das Image Packaging System (IPS) in OpenSolaris ist ziemlich ordentlich, befindet sich aber noch in der Entwicklung.

Auch +1 für LiveUpgrade. Es ist großartig, besonders mit ZFS-Snapshots.

Die meisten der gewohnten GNU-Userland-Inhalte sind verfügbar und werden wahrscheinlich standardmäßig auf einem ausreichend neuen Solaris installiert.


2

Der schnelle Neustart für OpenSolaris überspringt den normalen HW-Test- / BIOS-POST / GRUB-Prozess auf x86-Hardware und ermöglicht einen Neustart in <10 Sekunden anstelle von ~ 2 Minuten. Unterstützt sogar das Booten alternativer Boot-Umgebungen (z. B. Zurücksetzen eines verpfuschten Upgrades).


Es unterstützt sogar Panik-Neustart! Weitere Informationen zur Funktionsweise finden Sie in einer Präsentation, die Sherry Moore (Projektleiterin) der NYC OpenSolaris-Benutzergruppe gegeben hat: scribd.com/doc/16925842/DeveloperDayFastreboot
notpeter

Linux kann das aber auch. Achten Sie auf "kexec".
Knweiss

1

ZFS und SMF sind großartig, aber ein echtes Problem bei Solaris ist, dass der Paketmanager schon lange hinter seinen Linux-Kollegen zurückliegt.

Außerdem unterscheiden sich alle Dienstprogramme auf subtile Weise (töten Sie alle?). Wenn Sie Linux-Computer die meiste Zeit verwalten, bedeutet der Wechsel zu Solaris, dass Sie immer wieder Manpages lesen. Ein blöder "mehr" Pager und immer leicht falsch konfigurierte Terminals machen Ihnen das Leben schwer.


Ich weiß nicht, "export PAGER = less" funktioniert gut genug für mich. Und mit pkill sind Sie unter Solaris besser dran als mit killall. Sie haben Recht mit dem blöden Termcap / Terminfo-Zeug (kein Terminfo für Bildschirm? GTFO!).
Rob Chanter

In Bezug auf Killall bin ich zu Procps gewechselt, das Folgendes bietet: pkill, pgrep. Diese sollten mit den GNU-Tools unter Solaris verfügbar sein. Ich finde, dass diese viel besser sind als killall
Martin M.

pkill (und pgrep und die anderen p-Dienstprogramme) sind Teil des Kernsystempakets unter (Open) Solaris. Sie sind (zumindest pkill / pgrep / pmap) in Procps unter Linux.
Rob Chanter

1
Solaris Paketmanager wird in OpenSolaris / Solaris 11 grundlegend überarbeitet.
Toto


1

kssl, Kernel-SSL-Modul. Zitat aus ksslcfg (1M)

ksslcfg verwaltet smf (5) -Instanzen für das Kernel-SSL-Proxy-Modul. Ein SSL-fähiger Webserver kann die Dienste seines Kernel-SSL-Proxys verwenden, um die Leistung der HTTPS-Paketverarbeitung zu verbessern.


1

Im Gegensatz zu Linux funktioniert "lsof -o" (Datei-Offsets anzeigen). Dies kann hilfreich sein, um zu zeigen, wie weit ein Prozess beim Lesen oder Schreiben großer Datenmengen fortgeschritten ist.



0

Ein typischer Linux-Benutzer ist wahrscheinlich die größte Falle für neue Spieler und könnte versucht sein, killall auf einem Solaris-Host auszuführen .

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
Durch die Nutzung unserer Website bestätigen Sie, dass Sie unsere Cookie-Richtlinie und Datenschutzrichtlinie gelesen und verstanden haben.
Licensed under cc by-sa 3.0 with attribution required.