Mudanças entre as edições de "Assessoria de Informática"

De MediaWiki do Campus São José
Ir para navegação Ir para pesquisar
Linha 1: Linha 1:
 
=Para 2010=
 
=Para 2010=
No final deste ano a Assessoria de Informática está a cargo do prof. [[Ederson Torresini]].
+
No final desse ano a Assessoria de Informática está a cargo do prof. [[Ederson Torresini]].
 +
 
 +
=Para 2011=
 +
Para este ano mantém-se o prof. [[Ederson Torresini]] como assessor, e foi proposta uma [[Comissão de Informática]] para ampliar a discussão das políticas no campus.
  
 
=Diário de Atividades=
 
=Diário de Atividades=

Edição das 14h54min de 15 de abril de 2011

Para 2010

No final desse ano a Assessoria de Informática está a cargo do prof. Ederson Torresini.

Para 2011

Para este ano mantém-se o prof. Ederson Torresini como assessor, e foi proposta uma Comissão de Informática para ampliar a discussão das políticas no campus.

Diário de Atividades

11/10/10 a 15/10/10

18/10/10 a 22/10/10

  • Processo de seleção de 3 bolsistas para a COINF.

25/10/10 a 29/10/10

  • Iniciado o processo de migração deste wiki.
  • Avaliação Institucional online? Conversar com prof. Emerson e Rogers. Uma opção encontrada na Internet é o LimeSurvey, já publicado para testes, o qual atende aos seguintes requisitos:
    • Garantia de anonimato.
    • Integração com LDAP.
    • Preenchimento do questionário com salvamento em partes.
    • Convites, notificações e lembretes por email.
    • Importação dos questionários e exportação de relatórios em vários formatos, em especial CSV, XLS e PDF.

04/11/10 a 06/11/10

  • O sistema de questionários é aprovado para a Avaliação Institucional 2010. Nesta semana, foram digitalizados os questionários para docentes e técnicos administrativos, bem como importada da base LDAP a lista de usuários respectivas.

08/11/10 a 12/11/10

  • Acompanhamento do sistema de questionários.
  • Apresentação da nova versão do wiki em fase de teste, para prover melhor integração com outros sistemas (mashups).

16/11/10 a 19/11/10

22/11/10 a 26/11/10

29/11/10 a 03/12/10

  • Assumidos 3 compromissos em reunião:
    • Para esta semana, instalação dos novos computadores e sistema de monitoramento por câmera no Lab. dos Alunos.
    • Para a próxima semana, o mapeamento dos pontos de rede para cabeamento estruturado e rede sem fio.
    • Para os próximos 14 dias, os novos Wiki e portal de São José, além de um sistema ao estilo lan-house no Lab. dos Alunos e Biblioteca, com controle de horário e de conteúdo.

06/12/10 a 10/12/10

13/12/10 a 17/12/10

  • Estudos alternativos para implementar a rede sem fio, por questões (temporariamente) técnicas.
  • Análise do novo modelo (template) da nova versão do portal, reescrita a partir do original - trabalho realizado pelo Mario André.

Anexos

Instalação do Sistema de Questionários

O sistema LimeSurvey, escolhido na semana de 04/11/10 a 06/11/10, possui fácil instalação. A última versão é a 1.90 build 9459.

cd /var/www/
wget "http://downloads.sourceforge.net/project/limesurvey/1._LimeSurvey_stable/1.90%2B/\
limesurvey190plus-build9459-20101109.tar.gz?r=http%3A%2F%2Fsourceforge.net%2Fprojects\
%2Flimesurvey%2F&ts=1289503038&use_mirror=ufpr" -O limesurvey.tgz
tar xzf limeusrvey.tgz
mv limesurvey pesquisa
rm limesurvey.tgz
chown -r www-data:www-data pesquisa
find pesquisa -type d -exec chmod 500 {} \;
find pesquisa -type f -exec chmod 400 {} \;

Migração da versão de wiki

A atual versão, 1.9.3, está defasada. É fortemente recomendado migrar para uma versão mais nova - a última versão estável disponível é a 1.16.0.

Instalação do sistema operacional

Instalado o sistema Debian lenny virtualizado sobre VMWare.

Instalação de servidor Web com suporte a PHP e MySQL

aptitude install apache2 php5 libapache2-mod-php5 php5-mysql

Instalação de código do Mediawiki

cd /var/www
wget http://download.wikimedia.org/mediawiki/1.16/mediawiki-1.16.0.tar.gz
tar xvzf mediawiki-1.16.0.tar.gz
rm -f mediawiki-1.16.0.tar.gz
mv mediawiki-1.16.0 wiki
chown -R www-data:www-data wiki
find wiki -type d -exec chmod 500 {} \;
find wiki -type f -exec chmod 400 {} \;
chmod 700 wiki/images

Configuração do CMS

aptitude install php5-gd php5-imagick php5-ldap imagemagick

Extensões

A lista de extensões do Mediawiki pode ser vista por uma página especial: Especial:Versão.

Bibtex

Embora a versão tenha suporte "oficial" até a versão 1.10, é possível utilizar a extensão para versões posteriores:

wget http://gsc2.cemif.univ-evry.fr/images/3/30/Mediawiki-Bibtex-0.9.1.tar.gz
tar xvzf Mediawiki-Bibtex-0.9.1.tar.gz
rm -f Mediawiki-Bibtex-0.9.1.tar.gz
chown -R www-data:www-data Mediawiki-Bibtex-0.9.1
chmod 500 Mediawiki-Bibtex-0.9.1
chmod 400 Mediawiki-Bibtex-0.9.1/*
mv Mediawiki-Bibtex-0.9.1 Bibtex

É preciso atualizar o código do arquivo extensions/Bibtex/bibtex.php. Abaixo, uma correção (patch), conforme discussão:

--- bibtex.php-old	2010-10-30 00:35:45.486951000 -0200
+++ bibtex.php	2010-10-30 00:39:15.621595840 -0200
@@ -4,7 +4,8 @@
 // Jean-Yves Didier, November, the 4th 2005.
 
 include_once 'bibstyle.php';
-include_once 'Image.php';
+// 20101030 Ederson Torresini: informando o novo local do arquivo
+include_once 'includes/filerepo/Image.php';
 
 // First declaration for mediawiki bibtex extension
 $wgExtensionFunctions[] = "wfBibtexExtension";
@@ -568,6 +569,8 @@
 	  $links .= "\n";
 	  $text .= $links;
      }
+	// 20101030 Ederson Torresini: retornando algo (parece óbvio, mas...)
+	return true;
 }
 
 ?>

o que na prática significa alterar a referência do arquivo Image.php (linha 7) e adicionar um retorno à função bibtexHook (linha 570).

E, por último, adicionar a linha no arquivo LocalSettings.php:

require_once("extensions/Bibtex/bibtex.php");

Graphviz

aptitude install graphviz
cd /var/www/wiki/extensions
wget http://mwextensions.cvs.sourceforge.net/*checkout*/mwextensions/mediawikiextensions/Graphviz.php
chown www-data:www-data Graphviz.php
chmod 400 Graphviz.php

No arquivo /var/www/wiki/LocalSettings.php foram adicionadas as linhas:

include("extensions/Graphviz.php");
$wgGraphVizSettings->dotCommand = "/usr/bin/dot";

GeshiCodeTag

A extensão depende de outra extensão, geshi:

cd /tmp
wget -r --no-parent http://mediawiki.googlecode.com/svn/trunk/extensions/geshi/geshi/
mv mediawiki.googlecode.com/svn/trunk/extensions/geshi/geshi/ /var/www/wiki/extensions/
cd /var/www/wiki/extensions/geshi
rm -f index.html geshi/index.html
chown -R www-data:www-data .
chmod 500 geshi
chmod 400 geshi.php geshi/*
mkdir DESATIVADOS
chown www-data:www-data DESATIVADOS
chmod 500 DESATIVADOS
for linguagem in smarty vbnet objc xpp diff vhdl asp ini lisp apache latex asm vb actionscript idl robots div; \
do mv geshi/${linguagem}.php DESATIVADOS; done

Uma vez instalada a dependência, é possível habilitar a extensão:

cd /var/www/wiki/extensions
vi GeshiCodeTag.php
chown www-data:www-data GeshiCodeTag.php
chmod 400 GeshiCodeTag.php

Obs.: o conteúdo do arquivo foi copiado a partir da sua página. No arquivo /var/www/wiki/LocalSettings.php foi adicionada a linha:

include("extensions/GeshiCodeTag.php");

EmbedVideo

cd /var/www/wiki/extensions/
wget http://github.com/Whiteknight/mediawiki-embedvideo/tarball/v1.0
tar xvzf v1.0
rm -f v1.0
mv Whiteknight-mediawiki-embedvideo-f0c57ad EmbedVideo
chown -R www-data:www-data EmbedVideo
chmod 500 EmbedVideo
chmod 400 EmbedVideo/*

No arquivo /var/www/wiki/LocalSettings.php foi adicionada a linha:

require_once("extensions/EmbedVideo/EmbedVideo.php");

ParserFunctions

A versão foi descarregada da página da extensão - a última versão estável disponível é a r75335.

cd /var/www/wiki/extensions/
wget http://upload.wikimedia.org/ext-dist/ParserFunctions-trunk-r75335.tar.gz
tar xvzf ParserFunctions-trunk-r75335.tar.gz
rm -f ParserFunctions-trunk-r75335.tar.gz
chown -R www-data:www-data ParserFunctions
chmod 500 ParserFunctions
chmod 400 ParserFunctions/*

No arquivo /var/www/wiki/LocalSettings.php foi adicionada a linha:

require_once("extensions/ParserFunctions/ParserFunctions.php" );

LdapAuthentication

A versão foi descarregada da página da extensão - a última versão estável disponível é a r61987.

cd /var/www/wiki/extensions/
wget http://upload.wikimedia.org/ext-dist/LdapAuthentication-MW1.16-r61987.tar.gz
tar xvzf LdapAuthentication-MW1.16-r61987.tar.gz
rm -f LdapAuthentication-MW1.16-r61987.tar.gz
chown -R www-data:www-data LdapAuthentication
chmod 500 LdapAuthentication
chmod 400 LdapAuthentication/*

e a configuração para a base LDAP de acesso externo. No arquivo /var/www/wiki/LocalSettings.php foram adicionadas as linhas:

require_once( "extensions/LdapAuthentication/LdapAuthentication.php" );
$wgAuth = new LdapAuthenticationPlugin();
$wgLDAPDomainNames = array( "IF-SC" );
$wgLDAPServerNames = array( "IF-SC"=>"200.135.37.79" );
$wgLDAPEncryptionType = array( "IF-SC"=>"clear" );
$wgLDAPSearchStrings = array( "IF-SC"=>"uid=USER-NAME,ou=SaoJose,ou=Usuarios,dc=cefetsc,dc=edu,dc=br" );
$wgLDAPSearchAttributes = array( "IF-SC"=>"uid" );
$wgLDAPBaseDNs = array( "IF-SC"=>"dc=cefetsc,dc=edu,dc=br" );
$wgLDAPGroupBaseDNs = array( "IF-SC"=>"ou=Grupos,dc=cefetsc,dc=edu,dc=br" );
$wgLDAPUserBaseDNs = array( "IF-SC"=>"ou=SaoJose,ou=Usuarios,ou=Usuarios,dc=boidacarapreta,dc=homeunix,dc=net" );
$wgLDAPGroupUseFullDN = array( "IF-SC"=>false );
$wgLDAPGroupAttribute = array( "IF-SC"=>memberUid );
$wgLDAPUseLocal = true;

Essa última linha, em particular, mantém as contas da base SQL (autenticação local) em paralelo com as do LDAP.

Lockdown

A versão foi descarregada da página da extensão - a última versão estável disponível é a r70092.

cd /var/www/wiki/extensions/
wget http://upload.wikimedia.org/ext-dist/Lockdown-MW1.16-r70092.tar.gz
tar xvzf Lockdown-MW1.16-r70092.tar.gz
rm -f Lockdown-MW1.16-r70092.tar.gz
chown -R www-data:www-data Lockdown
chmod 500 Lockdown
chmod 400 Lockdown/*

e a configuração para controlar o acesso. No arquivo /var/www/wiki/LocalSettings.php foi adicionada a linha para carregar a extensão:

require_once( "extensions/Lockdown/Lockdown.php" );

A partir desse ponto, é possível controlar o acesso para uma namespace em particular. A Comissão de Engenharia solicitou um espaço reservado para rascunhar a proposta do curso, a qual será liberada quando o documento estiver finalizado. Até lá, apenas os membros da Comissão terão acesso ao material. Primeiro, a criação de uma namespace específica:

define("NS_ENGENHARIA", 102);
define("NS_ENGENHARIA_TALK", 103);
$wgExtraNamespaces[NS_ENGENHARIA] = "Engenharia";
$wgExtraNamespaces[NS_ENGENHARIA_TALK] = "Engenharia Talk";

Em seguida, foi criado o grupo de controle e ativadas as suas permissões de uso:

$wgGroupPermissions['Engenharia']['read'] = true;
$wgGroupPermissions['Engenharia']['createpage'] = true;
$wgGroupPermissions['Engenharia']['edit'] = true;
$wgGroupPermissions['Engenharia']['createtalk'] = true;
$wgGroupPermissions['Engenharia']['minoredit'] = true;
$wgGroupPermissions['Engenharia']['move-subpages'] = true;
$wgGroupPermissions['Engenharia']['move'] = true;
$wgGroupPermissions['Engenharia']['movefile'] = true;
$wgGroupPermissions['Engenharia']['reupload-shared'] = true;
$wgGroupPermissions['Engenharia']['reupload'] = true;
$wgGroupPermissions['Engenharia']['sendemail'] = true;
$wgGroupPermissions['Engenharia']['upload'] = true;
$wgGroupPermissions['Engenharia']['writeapi'] = true;
$wgGroupPermissions['Engenharia']['delete'] = true;
$wgGroupPermissions['Engenharia']['undelete'] = true;

e, por último, aplicadas as suas permissões à namespace "Engenharia":

$wgNamespacePermissionLockdown[NS_ENGENHARIA]['*'] = array('Engenharia');
$wgNamespacePermissionLockdown[NS_ENGENHARIA_TALK]['*'] = array('Engenharia');

Interpretação de Fórmulas Matemáticas

O Mediawiki pode interpretar e apresentar fórmulas matemáticas assim como o LaTeX. Para ativar essa função, deve-se primeiramente instalar os pacotes de sistema para análise léxica e sintática:

aptitude install ocaml cjk-latex

Em seguida, compilar o programa textvc, conforme manual oficial:

aptitude install build-essential
cd /var/www/wiki/math
make clean all
chown www-data:www-data *
chmod 400 *
chmod 500 texvc texvc_test texvc_tex

E, por último, ativar o uso do texvc na configuração (arquivo LocalSettings.php):

$wgUseTeX = true;

Ficando assim:

Cópia dos arquivos carregados (upload)

Testes:

  1. Cópia bruta de servidor antigo para novo: sucesso. A estrutura de diretórios e arquivos manteve-se compatível entre as versões.

Transferência da base de dados (exportação e importação)

No servidor antigo

Primeiramente, foi feita uma cópia da base de dados do atual servidor:

mysqldump -u <usuário> -p <base_original> > /var/backups/<base_original>_20101029.sql
chmod 400 /var/backups/<base_original>_20101029.sql

Em seguida, o arquivo foi copiado para o novo servidor...

scp /var/backups/<base_original>_20101029.sql <servidor_novo>:/var/backups/

No servidor novo

... e importado, usando para tal o servidor de bases <servidor_SQL>:

mysql -h <servidor_SQL> -u <usuário> -p <base> < /var/backups/<base_original>_20101029.sql

Como as versões antiga e nova são diferentes, é preciso atualizar o formato das tabelas no banco, conforme documentação:

cd /var/www/wiki/
php maintenance/update.php

E, por último, manter a compatibilidade com conteúdo gerado em antigas versões do MySQL, ativando o parâmetro wgDBmysql5 no arquivo /var/www/wiki/LocalSettings.php:

$wgDBmysql5 = false;