Depois de descarregar e instalar o MoinMoin, irá querer "ter um wiki". Como explicamos no final da ../InstalaçãoBásica, tem de copiar várias directorias e ficheiros. Assim, poderá ter os wikis que quiser, e poderá actualizar o MoinMoin facilmente: apenas os ficheiros originais serão sobrepostos, as suas cópias não.

Sempre que copiar esses ficheiros (e modificar a configuração do seu servidor de acordo), está a criar uma instância do wiki. Cada instância do wiki é independente das outras, com uma configuração diferente, páginas diferentes, utilizadores diferente, etc.

Alguns dos passos que tem de executar dependem do servidor web e do sistema operativo utilizado. São descritos em páginas específicas, que deve ler (pelo menos o início) antes de ler esta página. Existem outros passos comuns a todos os servidores web e sistemas operativos (copiar ficheiros, definir permissões), que são descritos aqui.

Os utilizadores de Linux podem utilizar createinstance.sh (um script que cria a instância) em vez de executar todos os passos manualmente:

  1. Se não for claro, leia as secções em baixo para mais dicas.
  2. Verifique se todas as configurações para a sua instalação estão correctas no script antes de o executar:
    • USER e GROUP devem ser o utilizador e o grupo utilizados pelo seu servidor web para executar o moin.
    • SHARE é o local para onde os ficheiros partilhados são copiados. Veja o install.log do passo setup.py install

  3. O script tem um único parâmetro: a sua directoria instance do wiki (veja a secção "Escolher uma directoria" em baixo):
    # ./createinstance.sh /path/to/mywiki
  4. Agora avance para a secção "Afinar a configuração"

Leia isto primeiro

Avisos de segurança

/!\ Aviso: Certifique-se de que a sua directoria data e os seus ficheiros de configuração não estão acessiveis através do seu servidor web. Não coloque a sua directoria wiki no public_html, Sites ou em qualquer outra directoria a que o seu servidor web possa aceder. O servidor web apenas precisa de aceder ao ficheiro na directoria htdocs e ao script moin.cgi! (Ou qualquer outro script que o seu servidor utilize para iniciar o MoinMoin.)

/!\ Aviso: Certifique-se de que a directoria data e respectivas sub-directorias não são legíveis nem editáveis por utilizadores que não o utilizador do servidor web. Se precisar de atribuir permissões globais de leitura e escrita para a pôr a funcionar, esteja ciente de que está a fazer uma instalação muito insegura, que pode ser comprometida por qualquer outro utilizador ou programa no seu computador.

Nota para os utilizadores de Windows

Todos os comandos apresentados em baixo são comandos Linux. As descrições de texto que os apresenta devem ser suficientes para o ajudar a perceber o que tem de fazer. Utilize o Explorador do Windows, ou os comandos em modo de texto apropriados.

Escolher um nome de wiki

Escolha um nome único para a nova instância do wiki que pretende criar. Deve ser uma palavra curta, algo que reflicta o tipo de utilização que lhe pretende dar, como o nome da sua empresa, da sua equipa, do projecto em que está a trabalhar, etc.

O nome "mywiki" é utilizado como um exemplo nos diversos comandos apresentados em baixo.

Escolher uma directoria

Escolha uma directoria no seu disco, ela irá conter todos os ficheiros necessários à instância do seu wiki. Inicialmente, a instância do seu wiki utilizará aproximadamente 10MB de espaço em disco. Depois obviamente, irá crescer dependendo da forma de utilização do seu wiki. Um wiki pessoal, mesmo com muitas páginas, poderá vir apenas a ocupar até 30 MB ou 40 MB de espaço em disco. Um wiki concorrido, ou um wiki com muitos ficheiros anexados às páginas, podem utilizar muito mais evidentemente.

Se for o administrador (ou root) do servidor, pode utilizar o que quiser ou o que fizer sentido para si, por exemplo /usr/local/var/moin, /mnt/wikis, etc.

Se for um simples utilizador, provavelmente só será autorizado a editar na sua directoria "home" pessoal. Escolha uma sub-directoria que faça sentido para si, por exemplo a sub-directoria share/moin.

Recolher alguns dados importantes

É aqui que as instruções diferem conforme o servidor web e o sistema operativo utilizado, e dependendo se é o administrador ou um simples utilizador. Veja as páginas apropriadas à combinação do seu servidor web e do seu sistema operativo.

Em Linux, o comando export será utilizado para guardar a informação recolhida. Os utilizadores de Windows devem tomar nota dessa informação cuidadosamente (talvez cortando e colando numa janela do Notepad), ou guardá-la em variáveis de ambiente se utilizarem a linha de comandos.

  • PREFIX é o prefixo que utilizou na ../InstalaçãoBásica

  • SHARE é o nome da directoria share, como se refere no fim do tópico ../InstalaçãoBásica

  • WIKILOCATION é o nome da directoria que irá conter a instância do seu wiki

  • INSTANCE é a directoria que contém a instância do wiki. Não pode ser uma directoria existente legível através de Apache, senão não funcionará.

Se for um administrador, ainda será necessário recolher o seguinte:

  • USER é o nome do utilizador do servidor web

  • GROUP é o nome do grupo ao qual pertence o servidor web

Agora, pessoal de Linux, vamos guardar estas definições na memória:

> export PREFIX=/usr                # isto pode ser outra coisa
> export SHARE=$PREFIX/share/moin   # isto deve estar correcto parra a maioria das pessoas
> export WIKILOCATION=$SHARE        # isto é apenas um exemplo
> export INSTANCE=mywiki            # isto é apenas um exemplo

Os administradores precisarão ainda de mais duas linhas:

> export USER=www-data              # isto é apenas um exemplo
> export GROUP=www-data             # isto é apenas um exemplo

Copiar os ficheiros

Para criar uma nova instância, precisa de criar, em primeiro lugar, uma directoria com o mesmo nome da sua instância, dentro de WIKILOCATION. Depois, é necessário copiar as directorias data e underlay da sua directoria SHARE para a sua directoria instance. Por último, é necessário copiar o ficheiro wikiconfig.py da directoria config para a directoria instance.

O pessoal de Linux apenas necessita de escrever estes comandos:

> cd $WIKILOCATION
> mkdir $INSTANCE                   # cria uma directoria para esta instância
> cp -R $SHARE/data $INSTANCE       # copia a directoria template data
> cp -R $SHARE/underlay $INSTANCE   # copia a directoria underlay data 
> cp $SHARE/config/wikiconfig.py $INSTANCE   # copia o ficheiro exemplo de configuração do wiki
  • /!\ Repare que é apenas necessária uma directoria underlay no seu sistema se estiver a executar vários wikis (ex. numa farm.)

Definir permissões

Administradores

Os administradores precisam de restringir as permissões dos ficheiros, para que apenas o servidor web (e o administrador obviamente) possa lê-los e editá-los. Para obter segurança máxima, nenhum outro utilizador na máquina deve ser capaz de ler ou escrever na directoria instance do wiki. Não se esqueça que esta directoria contém dados importantes, nomeadamente as senhas (cifradas) dos utilizadores do wiki.

Em Linux, os seguintes comandos devem ser suficientes:

> chown -R $USER.$GROUP $INSTANCE   # verifique se o USER e o GROUP estão correctos
> chmod -R ug+rwX $INSTANCE         # USER.GROUP pode ler e editar
> chmod -R o-rwx $INSTANCE          # todos os outros utilizadores serão rejeitados

Utilizadores normais

Os utilizadores normais, pelo contrário, precisam de alargar as permissões dos ficheiros, para que o servidor web possa lê-los e editá-los. Nas versões mais recentes de Windows, e em algumas versões de Linux e outros sistemas, as listas de controlo de acesso podem ser utilizadas para este efeito. No entanto, elas são poderosas e complicadas, não sendo abrangidas por este documentos. Pergunto a um conhecedor sobre elas.

Sem elas, os utilizadores normais têm de autorizar o acesso a todos para aceder à directoria instance. É a única forma do servidor web lhe aceder e executar o seu trabalho. Claro que isto é MUITO INSEGURO, uma vez que qualquer outro utilizador ou programa do servidor pode ler a directoria. Não deve fazer este tipo de instalação para um wiki aberto ao público.

Em Linux, os seguintes comandos abrem a directoria instance a todos:

> chmod -R a+rwX $INSTANCE

Nota:

  • pode também colocar o servidor web e o utilizador normal no mesmo grupo, e abrir a directoria instance apenas aos membros desse grupo. Isto é um pouco mais seguro (dependendo de quem mais se inclui no grupo), mas necessita da cooperação do administrador do servidor; é ele quem define os grupos.

  • a outra melhor alternativa seria o administrador do servidor configurar o suexec para executar scripts CGI nas directorias dos utilizadores, sob o id desse utilizador. Desta forma, não é necessário atribuir permissões globais, sendo uma instalação segura, mas também necessita da cooperação do administrador.

Afinar a configuração

Agora, é necessário afinar a configuração do seu servidor web da instância do seu wiki. Procure na página de ajuda apropriada ao seu servidor web, e depois volte aqui para afinar as definições da instância do seu wiki.

Edite o wikiconfig.py. As definições por omissão devem funcionar correctamente na maioria dos casos, mas existem algumas coisas que deve quer alterar, como o nome e logótipo do seu wiki! :) Leia os comentários do ficheiro wikiconfig.py. Eles irão guiá-lo neste processo.

/!\ Aviso: Não se esqueça de reiniciar o seu servidor web para efectivar as alterações no wikiconfig.py

O tópico AjudaNaConfiguração contém todos os detalhes sobre todas as opções, no caso dos comentários existentes em wikiconfig.py não serem suficientes.