Systemverwaltungshandbuch: Oracle Solaris Container - Ressourcenverwaltung und Solaris Zones

Verwalten von Projekten

ProcedureSo definieren Sie ein Projekt und zeigen das aktuelle Projekt an

Im folgenden Beispiel wird gezeigt, wie Sie einen Projekteintrag mit dem Befehl projadd hinzufügen und diesen Eintrag dann mit dem Befehl projmod ändern.

  1. Melden Sie sich als Superuser an oder nehmen Sie eine entsprechende Rolle an.

    Rollen umfassen Autorisierungen und privilegierte Befehle. Weitere Informationen zu Rollen finden Sie unter Using the Solaris Management Tools With RBAC (Task Map) in System Administration Guide: Basic Administration.

  2. Zeigen Sie die Standarddatei /etc/project auf dem System mit dem Befehl projects -l an.


    # projects -l
    system:0::::
    user.root:1::::
    noproject:2::::
    default:3::::
    group.staff:10::::system
            projid : 0
            comment: ""
            users  : (none)
            groups : (none)
            attribs: 
    user.root
            projid : 1
            comment: ""
            users  : (none)
            groups : (none)
            attribs: 
    noproject
            projid : 2
            comment: ""
            users  : (none)
            groups : (none)
            attribs: 
    default
            projid : 3
            comment: ""
            users  : (none)
            groups : (none)
            attribs: 
    group.staff
            projid : 10
            comment: ""
            users  : (none)
            groups : (none)
            attribs: 
  3. Fügen Sie ein Projekt mit dem Namen booksite hinzu. Weisen Sie das Projekt dem Benutzer mark mit der Projekt-ID 4113 zu.


    # projadd -U mark -p 4113 booksite
    
  4. Zeigen Sie die Datei /etc/project noch einmal an.


    # projects -l
    system
            projid : 0
            comment: ""
            users  : (none)
            groups : (none)
            attribs: 
    user.root
            projid : 1
            comment: ""
            users  : (none)
            groups : (none)
            attribs: 
    noproject
            projid : 2
            comment: ""
            users  : (none)
            groups : (none)
            attribs: 
    default
            projid : 3
            comment: ""
            users  : (none)
            groups : (none)
            attribs: 
    group.staff
            projid : 10
            comment: ""
            users  : (none)
            groups : (none)
            attribs: 
    booksite
            projid : 4113
            comment: ""
            users  : mark
            groups : (none)
            attribs: 
  5. Fügen Sie einen Kommentar, der das Projekt beschreibt, in das Kommentarfeld ein.


    # projmod -c `Book Auction Project' booksite
    
  6. Zeigen Sie die Änderungen in der Datei /etc/project an.


    # projects -l
    system
            projid : 0
            comment: ""
            users  : (none)
            groups : (none)
            attribs: 
    user.root
            projid : 1
            comment: ""
            users  : (none)
            groups : (none)
            attribs: 
    noproject
            projid : 2
            comment: ""
            users  : (none)
            groups : (none)
            attribs: 
    default
            projid : 3
            comment: ""
            users  : (none)
            groups : (none)
            attribs: 
    group.staff
            projid : 10
            comment: ""
            users  : (none)
            groups : (none)
            attribs: 
    booksite
            projid : 4113
            comment: "Book Auction Project"
            users  : mark
            groups : (none)
            attribs: 
Siehe auch

Wie Sie Projekte, Aufgaben und Prozesse an einen Pool binden, können Sie unter Einrichten von Pool-Attributen und Binden an einen Pool nachlesen.

ProcedureSo löschen Sie ein Projekt aus der Datei /etc/project

Im folgenden Beispiel wird gezeigt, wie Sie ein Projekt mit dem Befehl projdel löschen.

  1. Melden Sie sich als Superuser an oder nehmen Sie eine entsprechende Rolle an.

    Rollen umfassen Autorisierungen und privilegierte Befehle. Weitere Informationen zu Rollen finden Sie unter Using the Solaris Management Tools With RBAC (Task Map) in System Administration Guide: Basic Administration.

  2. Entfernen Sie das Projekt booksite mit dem Befehl projdel.


    # projdel booksite
    
  3. Zeigen Sie die Datei /etc/project an.


    # projects -l
    system
            projid : 0
            comment: ""
            users  : (none)
            groups : (none)
            attribs: 
    user.root
            projid : 1
            comment: ""
            users  : (none)
            groups : (none)
            attribs: 
    noproject
            projid : 2
            comment: ""
            users  : (none)
            groups : (none)
            attribs: 
    default
            projid : 3
            comment: ""
            users  : (none)
            groups : (none)
            attribs: 
    group.staff
            projid : 10
            comment: ""
            users  : (none)
            groups : (none)
            attribs: 
  4. Melden Sie sich als der Benutzer mark an und geben Sie projects ein, um die Projekte anzuzeigen, die diesem Benutzer zugeordnet sind.


    # su - mark
    # projects
    default

So validieren Sie den Inhalt der Datei /etc/project

Wenn keine Bearbeitungsoptionen angegeben sind, validiert der Befehl projmod den Inhalt der Datei project.

Zum Validieren einer NIS-Map melden Sie sich als Superuser an und geben Folgendes ein:


# ypcat project | projmod -f —

Hinweis –

Der Befehl ypcat project | projmod -f - ist noch nicht implementiert.


Zum Überprüfen der Syntax der Datei /etc/project geben Sie Folgendes ein:


# projmod -n

So beziehen Sie Informationen zur Projektmitgliedschaft

Geben Sie den Befehl id mit der Option -p ein, um die aktuelle Projektmitgliedschaft des aufrufenden Prozesses anzuzeigen.


$ id -p
uid=100(mark) gid=1(other) projid=3(default)

ProcedureSo erstellen Sie eine neue Aufgabe

  1. Melden Sie sich als ein Mitglied des Zielprojekts booksite an.

  2. Erstellen Sie eine neue Aufgabe im Projekt booksite. Geben Sie dazu den Befehl newtask mit der Option -v (verbose) ein, um die System-Aufgaben-ID zu beziehen.


    machine% newtask -v -p booksite
    16

    Die Ausführung von newtask erstellt eine neue Aufgabe im angegebenen Projekt und platziert die Standard-Shell des Benutzers in dieser Aufgabe.

  3. Zeigen Sie die aktuelle Projektmitgliedschaft des aufrufenden Prozesses an.


    machine% id -p
    uid=100(mark) gid=1(other) projid=4113(booksite)

    Der Prozess ist jetzt Mitglied des neuen Projekts.

ProcedureSo verschieben Sie einen laufenden Prozess in eine neue Aufgabe

Im folgenden Beispiel wird gezeigt, wie Sie einen laufenden Prozess einer anderen Aufgabe und einem neuen Projekt zuweisen. Um diese Aktion auszuführen, müssen Sie entweder als Superuser angemeldet oder Eigentümer des Prozesses und Mitglied des neuen Projekts sein.

  1. Melden Sie sich als Superuser an oder nehmen Sie eine entsprechende Rolle an.

    Rollen umfassen Autorisierungen und privilegierte Befehle. Weitere Informationen zu Rollen finden Sie unter Using the Solaris Management Tools With RBAC (Task Map) in System Administration Guide: Basic Administration.


    Hinweis –

    Wenn Sie Eigentümer des Prozesses oder Mitglied des neuen Projekts sind, können Sie diesen Schritt überspringen.


  2. Beziehen Sie die Projekt-ID des Prozesses book_catalog.


    # pgrep book_catalog
    	8100
  3. Ordnen Sie den Prozess 8100 der neuen Aufgaben-ID im Projekt booksite zu.


    # newtask -v -p booksite -c 8100
    	17

    Die Option -c gibt an, dass newtask auf den bestehenden benannten Prozess angewendet wird.

  4. Bestätigen Sie die Zuordnung der Aufgabe zur Prozess-ID.


    # pgrep -T 17
    	8100