Guía de administración de sistemas: administración de recursos y contenedores de Oracle Solaris y zonas de Oracle Solaris

Administración de proyectos

ProcedureCómo definir un proyecto y ver el proyecto actual

En este ejemplo se describe cómo utilizar el comando projadd para añadir una entrada de proyecto y el comando projmod para modificar dicha entrada.

  1. Conviértase en superusuario o asuma una función similar.

    Las funciones incluyen autorizaciones y comandos con privilegios. Para obtener más información sobre las funciones, consulte Using the Solaris Management Tools With RBAC (Task Map) de System Administration Guide: Basic Administration.

  2. Visualice el archivo /etc/project predeterminado en el sistema utilizando projects -l.


    # 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. Añada un proyecto con el nombre booksite. Asigne el proyecto a un usuario con el nombre mark con el número de ID de proyecto 4113.


    # projadd -U mark -p 4113 booksite
    
  4. Vuelva a visualizar el archivo /etc/project.


    # 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. Añada un comentario que describa el proyecto en el campo de comentarios.


    # projmod -c `Book Auction Project' booksite
    
  6. Visualice los cambios en el archivo /etc/project.


    # 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: 
Véase también

Para vincular proyectos, tareas y procesos con una agrupación, consulte Configuración de atributos de agrupaciones y vinculación a una agrupación.

ProcedureCómo eliminar un proyecto del archivo /etc/project

En este ejemplo se muestra cómo utilizar el comando projdel para eliminar un proyecto.

  1. Conviértase en superusuario o asuma una función similar.

    Las funciones incluyen autorizaciones y comandos con privilegios. Para obtener más información sobre las funciones, consulte Using the Solaris Management Tools With RBAC (Task Map) de System Administration Guide: Basic Administration.

  2. Elimine el proyecto booksite utilizando el comando projdel.


    # projdel booksite
    
  3. Visualice el archivo /etc/project.


    # 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. Inicie sesión como usuario mark y escriba projects para ver los proyectos asignados al usuario.


    # su - mark
    # projects
    default

Cómo validar el contenido del archivo /etc/project

Si no se facilitan opciones de edición, el comando projmod valida el contenido del archivo project.

Para validar una asignación NIS, como superusuario, escriba:


# ypcat project | projmod -f —

Nota –

El comando ypcat project | projmod -f — no se ha implementado todavía.


Para comprobar la sintaxis del archivo /etc/project, escriba:


# projmod -n

Cómo obtener información sobre la pertenencia de un proyecto a un grupo

Utilice el comando id con la etiqueta -p para mostrar la pertenencia del proyecto actual a un grupo del proceso que ejecuta el comando.


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

ProcedureCómo crear una tarea

  1. Inicie sesión como miembro del proyecto de destino, booksite.

  2. Cree una tarea en el proyecto booksite utilizando el comando newtask con la opción -v (detallado) para obtener el ID de tarea del sistema.


    machine% newtask -v -p booksite
    16

    La ejecución de newtask crea una tarea en el proyecto especificado, y coloca el shell predeterminado del usuario en esta tarea.

  3. Visualice la pertenencia del proyecto actual a un grupo del proceso que ejecuta el comando.


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

    El proceso ahora es miembro del nuevo proyecto.

ProcedureCómo mover un proceso en ejecución a una nueva tarea

Este ejemplo muestra cómo asociar un proceso en ejecución con una tarea diferente y un proyecto nuevo. Para ejecutar esta acción, debe ser un superusuario o el propietario del proceso y miembro del proyecto nuevo.

  1. Conviértase en superusuario o asuma una función similar.

    Las funciones incluyen autorizaciones y comandos con privilegios. Para obtener más información sobre las funciones, consulte Using the Solaris Management Tools With RBAC (Task Map) de System Administration Guide: Basic Administration.


    Nota –

    Si es el propietario del proceso o un miembro del proyecto nuevo, puede omitir este paso.


  2. Obtenga el ID de proceso de catálogo_guías.


    # pgrep book_catalog
    	8100
  3. Asocie el proceso 8100 con un nuevo ID de tarea en el proyecto booksite.


    # newtask -v -p booksite -c 8100
    	17

    La opción -c especifica que newtask opera en el proceso con nombre existente.

  4. Confirme la tarea para procesar la asignación de ID.


    # pgrep -T 17
    	8100