Guia de administração do sistema: gerenciamento de recursos Oracle Solaris Containers e Oracle Solaris Zones

Administração de projetos

ProcedureComo definir um projeto e visualizar o projeto atual

Este exemplo mostra como usar o comando projadd para adicionar uma entrada de projeto e o comando projmod para alterar essa entrada.

  1. Torne-se superusuário ou assuma uma função equivalente.

    Funções contêm autorizações e comandos privilegiados. Para obter mais informações sobre funções, consulte Using the Solaris Management Tools With RBAC (Task Map) no System Administration Guide: Basic Administration .

  2. Visualize o arquivo /etc/project padrão no sistema usando 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. Adicione um projeto com o nome booksite. Atribua o projeto a um usuário nomeado mark com o número do ID de projeto 4113.


    # projadd -U mark -p 4113 booksite
    
  4. Visualize novamente o arquivo /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. Adicione um comentário que descreva o projeto no campo de comentário.


    # projmod -c `Book Auction Project' booksite
    
  6. Visualize as alterações no arquivo /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: 
Consulte também

Para vincular projetos, tarefas e processos a um grupo, consulte Definição de atributos de grupos e vinculação a um grupo.

ProcedureComo excluir um projeto do arquivo /etc/project

Este exemplo mostra como usar o comando projdel para excluir um projeto.

  1. Torne-se superusuário ou assuma uma função equivalente.

    Funções contêm autorizações e comandos privilegiados. Para obter mais informações sobre funções, consulte Using the Solaris Management Tools With RBAC (Task Map) no System Administration Guide: Basic Administration .

  2. Remova o projeto booksite usando o comando projdel.


    # projdel booksite
    
  3. Exiba o arquivo /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. Efetue login como usuário mark e digite projects para visualizar os projetos atribuídos a esse usuário.


    # su - mark
    # projects
    default

Como validar o conteúdo do arquivo /etc/project

Se nenhuma opção de edição for fornecida, o comando projmod validará o conteúdo do arquivo project.

Para validar um mapa NIS, como superusuário, digite o seguinte:


# ypcat project | projmod -f —

Observação –

O comando ypcat project | projmod -f — ainda não está implementado.


Para verificar a sintaxe do arquivo /etc/project, digite o seguinte:


# projmod -n

Como obter informações sobre o membro do projeto

Use o comando id com o sinalizador -p para exibir o membro do projeto atual do processo que faz a chamada.


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

ProcedureComo criar uma nova tarefa

  1. Efetue login como membro do projeto de destino, booksite.

  2. Crie uma nova tarefa no projeto booksite usando o comando newtask com a opção (verbosa) - v para obter o ID de tarefa do sistema.


    machine% newtask -v -p booksite
    16

    A execução de newtask cria uma nova tarefa no projeto especificado e coloca o shell padrão do usuário nessa tarefa.

  3. Visualize o membro do projeto atual no processo que chama.


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

    O processo é agora um membro do novo projeto.

ProcedureComo mover um processo em execução para uma nova tarefa

Este exemplo mostra como associar um processo em execução com uma tarefa diferente e um novo projeto. Para executar esta ação, é necessário ser superusuário ou ser proprietário do processo, ou ser um membro do novo projeto.

  1. Torne-se superusuário ou assuma uma função equivalente.

    Funções contêm autorizações e comandos privilegiados. Para obter mais informações sobre funções, consulte Using the Solaris Management Tools With RBAC (Task Map) no System Administration Guide: Basic Administration .


    Observação –

    Se você for o proprietário do processo ou um membro do novo projeto, ignore esta etapa.


  2. Obtenha o ID de processo do processo book_catalog.


    # pgrep book_catalog
    	8100
  3. Associe o processo 8100 a um novo ID de tarefa no projeto booksite.


    # newtask -v -p booksite -c 8100
    	17

    A opção -c especifica que newtask opera no processo nomeado existente.

  4. Confirme a tarefa para processar o mapeamento do IDE.


    # pgrep -T 17
    	8100