dilluns, 13 de juliol del 2009

Material disponible properament a la wiki de Linkat


Hola,

Us faig saber que el material disponible al bloc es posarà a la wiki del portal Linkat. Val a dir que ara que el curs ja s'ha acabat, disposo de més temps per anar escrivint les "receptes" amb més detall.

Gràcies per tot,



Joan de Gracia

divendres, 10 de juliol del 2009

Com substituir el servidor windows 2000 de primària

Per substituir el servidor windows 2000 per un servidor Linkat 2/3 cal que seguiu aquestes passes:

1- Copiar el contingut de la unitat S a la unitat de programari
2- Copiar el contingut de la unitat P a la unitat de professorat
3- Copiar el contingut de la unitat T a la unitat de treball

la còpia de fitxers es pot fer des de qualsevol màquina tot utilitzant l'entorn de xarxa de windows/samba.

Posteriorment cal modificar lleugerament la modificació del servei samba per la qual cosa editarem el fitxer: /etc/samba/smb.conf i hi afegirem les línies següents:

netbios aliases = argo1

[S]
comment = Programari
path = /srv/exports/S
read only = yes
browseable = no
guest ok = yes
printable = no
[T]
comment = Treball
path = /srv/exports/T
read only = no
force group = nogroup
force user = nobody
writeable = yes
browseable = no
guest ok = yes
printable = no
write ok = true
force create mode = 777
force directory mode = 777
[P]
comment = Professorat
path = /srv/exports/P
read only = no
writeable = yes
browseable = no
guest ok = no
printable = no
write ok = true
force create mode = 775


Un cop feta aquesta modificació, cal definir l'usuari argo dins del servidor de centre a través del YaST i dins de la pestanya "Connectors" s'habilita l'ítem: "Gestiona els paràmetres del compte de Samba"

Finalment, només cal eliminar la contrasenya a l'usuari argo de samba, això s'aconsegueix mitjançant aquesta comanda:

smbpasswd -a -n argo

Manuals sobre programació Bash

Manuals sobre bash:

http://www.ibiblio.org/pub/Linux/docs/HOWTO/other-formats/pdf/Bash-Prog-Intro-HOWTO.pdf

http://www.ibiblio.org/pub/Linux/docs/HOWTO/other-formats/pdf/Bash-Prompt-HOWTO.pdf

http://tldp.org/LDP/abs/abs-guide.pdf

http://tldp.org/LDP/Bash-Beginners-Guide/Bash-Beginners-Guide.pdf


Repositori de scripts fets amb bash: http://www.shell-fu.org/

Comandes GNU/Linux: http://www.taringa.net/posts/linux/2828043/Comandos-Linux.html

Guia de línia de comandes: http://www.pixelbeat.org/cmdline_es_AR.html

dijous, 9 de juliol del 2009

LTSP 5 en Linkat 3


La URL original del projecte es troba a:

http://en.opensuse.org/Ltsp


La instal·lació de la versió 5 de LTSP es realitza, des de Linkat 3, instal·lant el paquet:

kiwi-ltsp-prebuilt

No és necessari afegir cap repositori ja que Linkat 3 porta tots els paquets necessaris per fer la instal·lació de la nova versió.

Per configurar la versió 5 de LTSP podeu seguir l'enllaç següent:

http://en.opensuse.org/LTSP/Configuration


Accessing a remote Linux desktop through X

Nota: Per a Windows, podeu descarregar-vos el programa xmins (http://www.iteisa.com/xmins/) que permetrà la connexió entre la màquina windows i Linkat.


Article original:

This document (7002963) is provided subject to the disclaimer at the end of this document.

Environment

SUSE Linux Enterprise Desktop or Server (SLED or SLES)
openSUSE

Situation

The X server can be used to display a complete desktop session from a remote system that is also running X. It is not a secure connection so should only be used on an internal, secure network. In some corporate environments Windows has been used to connect to the Linux or Unix systems in this way by installing an additional product that provides the X server software.

Resolution

These instructions are for the products mentioned above. If you have a host system running a different Linux distribution or Unix operating system that has been configured to allow the xdmcp connection then you should still be able to connect with the "X -query" command shown below.

Instructions For Configuring SUSE Linux Enterprise Desktop or Server 10 as the Host

For the GNOME Desktop on SLED 10, SLES 10, or openSUSE 10.x

Open a terminal window and enter the "su" command to become the root user (if you are not already root) and run the command:

/opt/gnome/sbin/gdmsetup

Under the “Security” tab enable XDMCP. The setting is immediate so once selected just click on close to exit the utility.

For the GNOME Desktop on SLED 11, SLES 11, or openSUSE 11.1

As the root user, edit the file "/etc/gdm/gdm.schema" and location the following lines:


xdmcp/Enable
b
false


Change the "false" to "true" and save the file.

As the root user again, edit the file "/etc/gdm/custom.conf" and look for the following lines:

[xdmcp]
# SuSEconfig: displaymanager:DISPLAYMANAGER_REMOTE_ACCESS
Enable=true

Verify that "Enable=true". If it is false, make the change and save the file.

For the KDE Desktop

As the root user edit the file "/etc/opt/kde3/share/config/kdm/kdmrc" and search for the following lines:

[Xdmcp]
# Whether KDM should listen to incoming XDMCP requests.
# Default is true
Enable=true

The line "Enable=true" must be set to true for the connection to work.

For both GNOME and KDE Desktops

Open YaST and select Firewall from the Users and Security group. Verify that the firewall is disabled or click on Allow Services on the left and then click on Advanced near the bottom right. In the Advanced settings enter 177 for both the TCP Ports and UDP Ports.


***Note - After completing the configuration of the host, if any changes were made to the gdm or kde configuration files or any changes made in gdmsetup you must restart the X server or reboot your system to have the changes take effect.


On the Client System
(SLED, SLES, or openSUSE)

As the normal use logged into the graphic desktop you can create a launcher (icon) or open a terminal window and run the following command:

X -query :1
(Be sure to place a space between the host-ip and the :1)

This will start another instance of X on a different Virtual Terminal (VT). It will be the next VT after the one that the first instance of the X server is on which is VT7 (or TTY7). So the session you just started with the remote server will be on 8. To access both desktops you can use the key combination Ctrl-Alt-F7 for the original desktop running on this system and Ctrl-Alt-F8 for the new one coming from the remote system.

Additional connections could be created to other systems by changing the display indicated at the end of the command line. Instead of ":1" use ":2" which would startup the session on VT9 or Ctrl-Alt-F9. The same could be done for ":3" which would be VT10 or Ctrl-Alt-F10.

Medidas contra los proxies transparentes

Squid

¿Y si tenemos una red? ¿Tenemos que ir instalando las aplicaciones anteriores puesto por puesto? ¿Y si no utilizamos Windows?

Una solución a todo esto es meter por medio nuestro propio proxy. ¿Para qué? Él será el que se encargue de forzar el refresco. Este sistema para una red es muy interesante, pues sólo hay que configurar el servidor y los navegadores (incluso ni eso, si hacemos que el proxy sea transparente también).

Además, podemos meter reglas de filtrado en el proxy para evitar los sitios de publicidad.

Una guía más exhaustiva sobre Squid la podéis encontrar aquí.

La parte de la instalación me la salto, en el sitio oficial tenéis toda la documentación. Aquí vamos a ir al grano.

Antes de nada, tengo que decir que no soy ningún experto en Squid, y todo esto ha sido sacado a base de pruebas. Si hay algún error, os pido que me corrijais ;)

Para forzar el refresco, lo único que tenemos que hacer es decirle que no queremos que coja nada de nuestra caché, con ello conseguimos que los datos sean siempre "frescos". Nos vamos al /etc/squid.conf (o donde tengas el archivo de configuración) y modificamos las directivas no_cache y refresh_pattern de la siguiente manera (dejad lo originales con comentarios, y el resto del archivo sin tocar):

 acl QUERY urlpath_regex cgi-bin \? .
no_cache deny QUERY
refresh_pattern . 0 0% 0

Digamos que aquí estamos usando un pequeño truco (chapuza lo llaman a veces). Con las 2 primeras líneas hacemos que no se cachee ninguna dirección que contenga los caracteres "cgi-bin" o "?" o "." (*). Buscadme una sola dirección que no tenga un punto :) ¿La encontrásteis?

Realmente se podría dejar solo el punto, pero por vaguería no lo he probado.

Con el refresh_pattern le estamos diciendo que la edad máxima de un elemento en la caché es 0.

Esta configuración podemos irla afinando. ¿Qué os parece si cacheamos las imágenes mientras no sean nuevas? Pues a modificar la acl:

 acl IMAGENES urlpath_regex jpg gif png swf JPG GIF PNG SWF
acl QUERY urlpath_regex cgi-bin cgi \? php asp html htm xml pl
no_cache allow IMAGENES
no_cache deny QUERY
refresh_pattern . 0 0% 0

Creo que os podéis imaginar como funciona. Desconozco si Squid es case sensitive (me imagino que sí), por eso están repetidas las extensiones de las imágenes.

Firefox en mode de pantalla sencera

El complement que es fa servir per fer un mode kiosk amb Firefox és:

R-kiosk: https://addons.mozilla.org/ca/firefox/addon/1659


Descripció llarga

Real Kiosk is a Firefox 2.0 - 3.0 extension that defaults to full screen, disables all menus, toolbars, key commands and right button menus. Alt+Home still takes you home.

You can enable Navigation toolbar by adding the following to user.js:
user_pref("rkiosk.navbar", true);

You might want to remove the print dialog by adding following lines to your user.js:
user_pref("print.always_print_silent",true);
user_pref("print.show_print_progress",false);

Notice that the user can still close Firefox with for example Alt-F4 and get access to your computer. You might want to prevent this with a suitable utility program for your operating system.

Caution! R-kiosk extension can be removed only in Firefox Safe Mode. Howto: http://kb.mozillazine.org/Safe_Mode_(Firefox)


El complement a la recepta passa per afegir al final del fitxer .profile de l'usuari les línies:

/usr/lib/firefox/firefox.sh
exec /etc/X11/xdm/Xreset

- La primera línia fa la crida directa al firefox i també es podria cridar sense el path absolut
- La segona línia fa un reset de les aplicacions X11 i surt de l'entorn gnome de l'usuari.

GUS: Gestió d'Usuaris del Servidor

Ja la Linkat 2 incorpora el programa GUS de Gestió d'Usuaris del Servidor.

L'alta massiva d'usuaris es reliatza a través del SAGA. En concret, a la URL següent s'explica el procediment d'extracció de les dades dels alumnes.

http://www.xtec.cat/gestcent/formacio/0708/nous-sec/01/m5/m4p6.htm

Nota: S'ha de marcar el camp "Variables lliures" per tal d'exportar el camp sagaID

A la figura:

http://www.xtec.cat/gestcent/formacio/0708/nous-sec/01/m5/imatges/exmagen5.jpg

et diuen que has de marcar:

1- Dades generals de l'alumne
9- Matrícula

A banda d'aquests dos camps, has de seleccionar el camp següent:

6- Variables lliures

que és el que conté el camp sagaID

Format del fitxer SAGA:

GEN_DATANAIXEMENT,GEN_COGNOM1,GEN_COGNOM2,GEN_NOM,GEN_IDALUMNE,MAT_CURSESCOLAR,
MAT_PLAESTUDIS,MAT_NIVELL,MAT_REGIM,MAT_ITINERARICODI,MAT_ITINERARI,MAT_SOLTES,
MAT_GRUPCLASSE,MAT_RELIGIO,MAT_LLENGUAESTRANGERA1,MAT_LLENGUAESTRANGERA2,MAT_DATA,
MAT_NUMEROMATRICULA,MAT_AEO,MAT_ULTIMCURS,MAT_ESCOLARITATANTERIOR,MAT_VIAACCESPAAU,
MAT_MODALITATDANSAMUSICA,MAT_RESOLUCIODEPARTAMENT

01/05/1995,Cognom1_1,Cognom2_1,Nom_1,98765432101,2007/2008 ,,1,D,,,F,ESO4B,,IA,,11/01/2007,2007/1234,F,,,,,
20/05/1994,Cognom1_2,Cognom2_2,Nom_2,98765432102,2007/2008 ,ESO 1C 0000,2,D,,,F,ESO2A,,IA,,06/07/2007,2008/1235,F,,,,,
03/10/1993,Cognom1_3,Cognom2_3,Nom_3,98765432103,2007/2008 ,CFPM 0801,1,D,,,F,CFPM1E-M,,,,17/09/2007,2007/1236,T,,,,,
26/01/1992,Cognom1_4,Cognom2_4,Nom_4,98765432104,2007/2008 ,CFPM 0801,1,D,,,F,CFPM1E-T,,,,12/09/2007,2007/1237,T,,,,,

Sistema de quotes en Linkat2

Quota Utilities for SuSE Linux

Quota Support has been added to SuSE Linux via startup scripts /etc/init.d/boot.quota and /etc/init.d/quotad.

For using Quota Support:

1. Use a kernel with Quota support enabled (our standard kernels have quota support enabled by default)

2. Decide which partitions should have quota support and change /etc/fstab accordingly, i.e. add the usrquota and/or grpquota or quota flags, e.g.

On journaled filesystems, you can enable journaled quota with usrjquota, grpjquota and jqfmt options, and avoid the need to run quotacheck after unclean shutdown.

/dev/sda1 / ext2 defaults 1 1
/dev/sda6 /tmp ext2 defaults,usrquota 1 2
/dev/sda3 swap swap defaults 0 0
/dev/sda7 /usr ext2 defaults 1 2
/dev/sda8 /home ext3 acl,user_xattr,usrjquota=aquota.user,grpjquota=aquota.group,jqfmt=vfsv0 1 2



I have have thus enabled user quotas on /tmp and journaled quota
on /home.

3. Initialize Quotas for the first time by invoking
quotacheck -avug

4. Turn on quota and quotad services with YaST2 Runlevel editor

5. quotacheck is called always during boot.

If you think your quota-files are corrupted or you moved changed files with quotas being off you have to rebuild the quota database manually by invoking quotacheck -avug

6. Before using warnquota, remember to edit /etc/warnquota.conf
and /etc/quotatab configuration files.

have fun


Assignar quotes d'usuari:

setquota -u -F vfsv0 __USUARI__ 0 0 0 0 /home

dimecres, 8 de juliol del 2009

Novetats Linkat 3

La Linkat 3 porta moltes novetats i volem donar-vos-les a conèxier:

- Escriptoris per a infantil, primària i secundària. Aquests perfils s'instal·len amb els paquets: perfil-usuari-infantil , perfil-usuari-primaria i perfil-usari-secundaria. Aquests paquets, un cop instal·lats, desen un perfil comprimit a: /usr/share/linkat/profiles i creen els usuaris: infantil, primaria i secundaria amb les contrasenyes següent infantil primaria secundaria de forma respectiva (usuari infantil i contrasenya infantil).

Aquí podeu veure les captures de pantalla dels escriptoris d'infantil, primària i secundària:

Infantil:Primària:Secundària:
- El paquet edu365 amb activitats de l'edu365 disponibles en local
- Quaderns Virtuals portables
- Kdenlive (programa d'edició de vídeo) i els còdecs multimèdia es poden instal·lar des d'aquí:

http://linkat.xtec.cat/portal_linkat/wikilinkat/index.php/C%C3%B2decs

Balanceig de càrrega entre 2 (o més) routers

En molts casos, les connexions a Internet poden ser poc fiables o bé no proporcionar prou ample de banda. Una forma d'incrementar la fiabilitat i l'ample de banda és distribuir la càrrega (el balanceig de càrrega) a través de múltiples connexions. És convenient també disposar de sistemes tolerants a errors que siguin transparent a l'administrador.

El balanceig de càrrega no incrementa la velocitat per a una única connexió sinó que és efectiu quan es realitzen a través de múltiples connexions.

La proposta de balanceig de càrrega que es proposa consta de 2 scripts (load-balance i load-balance.control.sh):

1- L'script load-balance:

L'script que es mostra a continuació cal copiar-lo al directori /etc/init.d

cp load-balance /etc/init.d/load-balance

i s'habilita per tal que s'iniciï en el moment de posar en marxa la màquina:

insserv /etc/init.d/load-balance

L'script presuposa que l'ordinador disposa de 2 ethernets (eth0 i eth1) amb les IPs següent: 192.168.0.33 i 192.168.1.33 (es poden adaptar a les necessitats de cada centre). A banda, l'script presuposa que els routers ADSL tenen com a IP: 192.168.0.1 i 192.168.1.1. Tots aquests valors s'han de modificar per tal que s'ajustin a les característiques del centre.

SCRIPT load-balance:


#!/bin/bash
#
# El propósito de este script es:
#
# - Agregar una IP para monitorizar cada router
# - Inicializar las tablas corresponientes a los routers (deben haberse
# definido en /etc/iproute2/rt_tables previamente). Cada tabla tendrá la
# ruta necesaria para alcanzar al router y la ruta por defecto
# - Agregar reglas para utilizar la tabla correspondiente en función
# de la dirección de origen del paquete (una de las IPs del primer punto)
# - Fijar como ruta por defecto una ruta multihop utilizando todos los
# routers
### BEGIN INIT INFO
# Provides: load_balance
# Required-Start: $network
# Required-Stop: $network
# Default-Start: 3 5
# Default-Stop: 0 1 2 6
# Short-Description: Balancejador de Càrrega entre 2 ADSLs
# Description: Arrencar el Balancejador de Càrrega
entre 2 ADSLs
### END INIT INFO

# CONTINGUT /etc/iproute2/rt_tables
#1 XTEC
#2 EXT1
#../.. EXT
#N EXTN

RT_TABLES=/etc/iproute2/rt_tables

NUM_ADSL=`cat $RT_TABLES | grep -e XTEC -e EXT | wc -l`
if [ ! $NUM_ADSL -ge 2 ]; then
echo "1 XTEC" >> $RT_TABLES
echo "2 EXT1" >> $RT_TABLES
echo "3 EXT2" >> $RT_TABLES
echo "4 EXT3" >> $RT_TABLES
echo "5 EXT4" >> $RT_TABLES
# Per protegir duplicats
cat $RT_TABLES | uniq > $RT_TABLES.tmp
mv $RT_TABLES.tmp $RT_TABLES
fi

# IPs para monitorizar routers
ifconfig eth0 192.168.0.33 up
ifconfig eth1 192.168.1.33 up

# Inicializamos las tablas para los dos enlaces
ip route add 192.168.0.0/24 dev eth0 table XTEC
ip route add default via 192.168.0.1 table XTEC

ip route add 192.168.1.0/24 dev eth1 table EXT1
ip route add default via 192.168.1.1 table EXT1

# Reglas para la selección de tablas
ip rule add from 192.168.0.33 table XTEC
ip rule add from 192.168.1.33 table EXT1

# Regla por defecto
ip route replace default scope global nexthop via 192.168.0.1 weight 1
nexthop via 192.168.1.1 weight 1

sleep 2

nohup /etc/sysconfig/network/load-balance.control.sh & > /dev/null 2>&1


2- L'script load-balance.control.sh:

Aquest script es copia al directori /etc/sysconfig/network:

cp load-balance.control.sh /etc/sysconfig/network/load-balance.control.sh

i els seus permisos han de ser 700 (chmod 700 load-balance.control.sh)

El funcionament de l'script es basa en la utilització d'una IP objectiu que és la que es fa servir per comprovar la connectivitat a Internet, en aquest cas la IP és la: 213.176.161.13 que correspon al servidor www.xtec.cat.


SCRIPT load-balance.control.sh:

#!/bin/bash
#
# Autor: Victor Carceler
#
# Licencia: GPLv3 o posterior
#
# Función:
#
# Monitorizar el estado de los diferentes enlaces y dar de baja/alta
# routers en la ruta por defecto de forma dinámica

PROGNAME=`basename $0`

TESTIP=213.176.161.13
PINGTIMEOUT=2

GATEWAY_PING_SRC=(192.168.0.33 192.168.1.33)
GATEWAY_LIST=(192.168.0.1 192.168.1.1)
GATEWAY_WEIGHT_LIST=(1 1)

SLEEP=5

N_GATEWAYS=`echo ${GATEWAY_LIST[@]} | wc -w`
N_GATEWAYS=`expr $N_GATEWAYS - 1`

last_hopes=""

while true
do
hopes=""
for x in `seq 0 1 $N_GATEWAYS`
do
ping -W $PINGTIMEOUT -I ${GATEWAY_PING_SRC[$x]} -c 1 $TESTIP >/dev/null 2>/dev/null
        RETVAL=$?

if [ $RETVAL -eq 0 ]
then
hopes="$hopes nexthop via ${GATEWAY_LIST[$x]} weight
${GATEWAY_WEIGHT_LIST[$x]}"
fi
done

if [ "$last_hopes" != "$hopes" ]
then
logger "$PROGNAME: Cambiamos la ruta por defecto a: $hopes"

logger "$PROGNAME: Valor anterior: $last_hopes"

logger "$PROGNAME: ip route replace default scope global $hopes"
ip route replace default scope global $hopes
last_hopes=$hopes
fi

sleep $SLEEP
done

logger "$PROGNAME: ip route replace default scope global $hopes"
ip route replace default scope global $hopes
last_hopes=$hopes
fi

sleep $SLEEP
done

Clonació disc (netcat i dd)


Còpies de seguretat de disks durs:

1- Comanda dd:

1.1 Sense compressió:

Còpia: dd if=/dev/sda of=/dev/sdb o bé dd if=/dev/sda of=/mnt/imatge.img

Restauració: dd if=/dev/sdb of=/dev/sda o bé dd if=/mnt/imatge.img of=/dev/sda

Amb compressió de dades:

Còpia: dd if=/dev/sda | gzip -9 > /mnt/imatge.img.gz

Restauració: gunzip /mnt/imatge.img.gz | dd of=/dev/sda


2- Comanda netcat:

2.1. Sense compressió:

Sender: dd if=/dev/sda | netcat 192.168.0.x 9000

Receiver: netcat -l -p 9000 | dd of=/dev/sdb

(nota: es pot combinar per fer una còpia a un fitxer)

2.2. Amb compressió:

Sender: bzip2 -c /dev/sda | netcat 192.168.0.x 9000

Receiver: netcat -p 9000 -l | bzip2 -d | dd of=/dev/sdb



Fonts per consultar:

http://www.cyberciti.biz/faq/linux-unix-copy-clone-hard-disk/

http://www.cyberciti.biz/tips/howto-copy-compressed-drive-image-over-network.html

Ús del programa Clonezilla per clonar màquines

Clonezilla és una aplicació dissenyada per fer imatges a unitats de disc per poder-les restaurar postariorment:

Manual de Clonezilla

Windows XP P2V (Physical to Virtual amb Clonezilla i VirtualBox)

dimarts, 7 de juliol del 2009

Enllaços d'interès


Curs d'iniciació a la Linkat 2 (D111)
Manual de Linkat 2
Manual de LTSP en Linkat2
Instal·lació de Linkat 2 per xarxa
Curs D83 (Linkat 1)
Manuals i tutorials sobre Linkat 2.0
Manual d'iniciació a GNU/Linux

Múltiples escriptoris amb Windows XP
http://www.kood.org/terminal-server-patch/
XPunlimited

Preparació de maquetes amb Linkat 2/3

Extret del fòrum de Linkat


Per clonar màquines Linkat hem de dur a terme unes quantes modificacions amb l'objectiu que el nostre model a clonar sigui el més genèric possible.

1- Fitxer: /etc/fstab

Substituirem les entrades següents o similars en el vostre cas.

/dev/disk/by-id/ata-VBOX_HARDDISK_VB8f16db5e-ea7b53b9-part2 / ext3 acl,user_xattr 1 1
/dev/disk/by-id/ata-VBOX_HARDDISK_VB8f16db5e-ea7b53b9-part1 swap swap defaults 0 0


Per la seva alternativa clàssica.

/dev/hda2 / ext3 acl,user_xattr 1 1
/dev/hda1 swap swap defaults 0 0


2- Fitxer: /boot/grub/menu.lst

Farem la operació equivalent substituint les referències a.

root=/dev/disk/by-id/ata-VBOX_HARDDISK_VB8f16db5e-ea7b53b9-part2

Per.

root=/dev/hda2

3- Moure el fitxer /etc/sysconfig/network/ifcfg-eth-id-08:00:27:e5:b3:95 a /etc/sysconfig/network/ifcfg-eth0

4- En Linkat 2.x, cal eliminar el fitxer: /etc/udev/rules.d/30-net_persistent_names.rules

5- En Linkat 3, cal eliminar el fitxer: /etc/udev/rules.d/70-persistent-net.rules

dilluns, 6 de juliol del 2009

Connexió a les Unitats P, S i T de Windows/Samba

En molts centres del Departament d'Educació es fa servir un sistema de xarxa local basada en un servidor Windows que exporta tres recursos:

- El recurs "S", que és només de lectura per a la majoria d'usuaris.

- El recurs "T", on tothom pot llegir, escriure i esborrar qualsevol fitxer.

- El recurs "P", on només el professorat té drets de lectura i escriptura.


Per saber com connectar aquestes unitats des de Linkat de forma permanent, podeu seguir l'enllaç següent:

http://linkat.xtec.cat/portal_linkat/wikilinkat/index.php/Unitats_S%2C_T_i_P

Còpia de seguretat del sistema Linkat:

1.1- Còpia de directoris:

Directoris a tenir en compte:

/etc
/home
/srv/exports (conté els directoris P, S i T)
/srv/www/htdocs
/var/lib/named/master

Comanda a executar com a root:

rsync -avz --delete /DIRECTORI_ORIGEN/ /DIRECTORI_DESTI/

Cal recordar que la barra "/" que hi ha al final dels directoris fa que escopiï el contingut d'aquests directoris sense crear el directori pare.


1.2- Còpia de la base de dades ldap:

Nota: Cal tenir en compte que la base de dades ha d'estar en funcionament (podeu executar rcldap status)

Comanda a executar des del servidor Linkat 2:

ldapsearch -x -D "cn=Administrator,dc=intracentre" -w contrasenya_administrador > copia_ldap.ldif

Nota: cal canviar "contrasenya_administrador" pel valor real de lacontrasenya de l'administrador. El valor dc=intracentre s'ha d'adaptara la base de dades vostra (p.e. dc=intralinux).

Aquest fitxer copia_ldap.ldif s'ha d'editar amb un editor de text i comentar les línies finals següents:

search: 2
result: 0 Success

ja que no són cap comanda sinó que és informació que proporciona la comanda ldapsearch.

Així, les línies finals del fitxer ldif haurien de quedar de la forma següent:

# search result
#search: 2
#result: 0 Success

# numResponses: 492
# numEntries: 491


Per restaurar la còpia cal fer:

ldapadd -x -D "cn=Administrator,dc=intracentre" -w contrasenya_administrador -f copia_ldap.ldif -c

El paràmetre -c permet que, en cas que la comanda ldapadd trobi un error (p.e. un usuari duplicat), no s'aturi el procés de restauració de les dades.

1.3- Còpia de la base de dades MySQL:

Nota: Cal tenir en compte que la base de dades ha d'estar en funcionament (podeu executar rcmysql status)

mysqldump --opt --password=CONTRASENYA --user=USUARI BASE_DE_DADES > copia_mysql.sql

on:

USUARI: és l'usuari que té permisos per accedir a la base de dades BASE_DE_DADES (per fer còpies de seguretat es pot fer servir l'usuari root del sistema)

CONTRASENYA: és la contrasenya de l'usuari USUARI

BASE_DE_DADES: és el nom de la base de dades que es vol fer còpia

Finalment, la sortida de la comanda es redirigeix cap al fitxer copia_mysql.sql

Per restaurar la base de dades cal executar la comanda:

mysql --password=CONTRASENYA --user=USUARI BASE_DE_DADES <
copia_mysql.sql

2. Còpia de seguretat de MySQL i openLDAP (mètode alternatiu):

A banda dels mètodes exposats anteriorment, es pot fer una còpia de seguretat fent servir la comanda rsync. Per tal de fer les còpies de LDAP i MySQL cal ser root i tenir aquests serveis ATURATS. El procediment és el següent:

1) rcldap stop
2) rcmysql stop

Amb 1 i 2 s'aturen els serveis.

3) S'executa la comanda:

3.1) rsync -avz --delete /var/lib/ldap /DIRECTORI_DESTI/
3.2) rsync -avz --delete /var/lib/mysql /DIRECTORI_DESTI/

amb 3.1 i 3.2 es fan les copies de seguretat a DIRECTORI_DESTI, on DIRECTORI_DESTI ha de ser un directori ja existent, un disc extern, etc. En tot cas, es recomana que el dispositiu de còpia de seguretat tingui un sistema de fitxers ext3, reiserfs desaconsellant-se l'ús de sistemes de fitxers privatius.

3. Automatització de les còpies de seguretat: cò
pies de seguretat amb la comanda rsync:

#
##########################################
#!/bin/bash
# Script per fer còpies de seguretat amb la comanda rsync
# GPL 3.0
# Autor: Joan de Gracia
# Servidor servidor.intracentre 192.168.0.240
##########################################
#
DESTI=/backup/servidor
IP=192.168.0.240
# Copia del directori /home
rsync --delete --exclude "\.[a-zA-Z]*" --backup --backup-dir=$DESTI/copia-$(date +%A) -az /home $DESTI/copia-actual/
#
# Copia del directori /srv/exports/P
rsync --delete --backup --backup-dir=$DESTI/copia-$(date +%A) -az /srv/exports/P $DESTI/copia-actual/


#
# Copia de la base de dades LDAP
ldapsearch -x -D "cn=Administrator,dc=intracentre" -w lncentre > $DESTI/copia-actual/ldap/copia_ldap-$(date +%A).ldif
#
# Copia de la base de dades Moodle de MySQL
mysqldump --opt --password=lncentre --user=root moodle > $DESTI/copia-actual/moodle.sql


echo "Copia de seguretat del servidor.intracentre \($IP\) realitzada" $(date)



Funcionament del cron:

(Extret de: http://www.simplehelp.net/2008/11/17/increase-your-linuxunix-productivity-how-to-use-crontab/es/)


Linux y UNIX generalmente vienen con la utilidad "crontab" por defecto. Es muy útil ya que le permite programar tareas para ejecutarse en un plazo determinado y repetir como se configura.. Una tarea programada utilizando "crontab" se denomina una "tarea".

El comando crontab permite al servidor ejecutar un script en un determinado instante. Para ver qué tareas están configuradas, ejecute el comando siguiente:

# crontab -l


Si su máquina tiene algunos puestos de trabajo configurado cron se mostrará algo como lo siguiente:


0 6 * * * /opt/scripts/backup_script.sh


La configuración anterior mostra una tasca que executa l'script "backup_script.sh" cada dia a les 6 AM.


Configuración del fichero contrab:


0 6 * * * /opt/scripts/backup_script.sh 0 6 * * * / opt / scripts / backup_script.sh
| | | | |
| | | | |_____________Día de la semana (Domingo = 0)
| | | |______________Meses del año
| | |_______________Día del mes
| |________________Hora del día

|_________________Minutos de la hora


Para programar nuevos puestos de trabajo cron o editar los antiguos se puede ejecutar el siguiente comando:

# crontab -e

Se abrirá un editor con el que se puede agregar, editar o borrar tareas. Por ejemplo, para programar una tarea para que se ejecute a las 3:45 PM todos los lunes, se puede agregar una entrada com ésta:

45 15 * * 1 /opt/scripts/script.sh

También puede utilizar una coma para agregar múltiples entradas en un campo.Esto es útil si desea ejecutar un script de tres veces al día, con un intervalo de ocho horas. Asegúrese de no dejar espacio entre las entradas en un solo campo. Su "tarea" de entrada se vería así:


0 1,9,17 * 2,11 * /opt/scripts/db_backup_script.sh


En el ejemplo anterior la secuencia de comandos "db_backup_script.sh" se ejecuta al 1 º de AM, 9 AM y 5 PM todos los días en los meses defebrero y noviembre. Crontab no sólo comprende números, también puede funcionar con algunas palabras básicas:


@reboot Reiniciar una vez, la próxima vez que el sistema se reinicie
@yearly Ejecutar una vez al año, en el comienzo del año
@annually Igual que @yearly
@monthly Ejecutar una vez al mes, a principios del mes
@weekly Ejecutar una vez a la semana, al comienzo de la semana
@daily Ejecutar una vez al día, a la medianoche
@midnight Similar a @daily
@hourly Ejecutar una vez por hora, en el comienzo de la hora

Así, por ejemplo, si desea ejecutar un script a la medianoche todas las noches, esto es lo que su configuración crontab se vería como:

@midnight /opt/scripts/script.sh

Curs d'administració de Linkat

Dates i horari: 6/7/2009 - 10/7/2009 (30 hores) de 10:00h a 17:00h

Lloc: IES de Sant Just Desvern



Requisits tècnics dels assistents:

- Haver participat en algun curs d'administració i/o tenir coneixements de GNU/Linux.

- Tenir coneixements de les comandes per poder treballar amb la consola de Linkat

- L'alumne/a haurà de portar un ordinador portàtil amb el programari VirtualBox instal·lat.

- L'ordinador haurà de tenir suficient espai en disc dur (min. 30 Gb) per poder fer les instal·lacions de les diferents modalitats Linkat (servidor, client, autònom). Pel que fa la memòria RAM, el portàtil haurà de disposar d'1 Gb de memòria RAM com a mínim.

El programari VirtualBox es pot descarregar des de: http://www.virtualbox.org
Objectius: Aprendre a administrar l'aula Linkat. Conèixer les eines que faciliten el dia a dia de l'aula Linkat.

Programa del curs:

- VirtualBox com a laboratori virtual d'informàtica

- Model d'aula Linkat: Instal·lació del model servidor i del model client Linkat.

- Instal·lació per xarxa i instal·lació remota de Linkat

- Preparació de maquetes per fer clonacions

- Ús d'eines de clonació (clonezilla)

- Instal·lació del proxy del centre per accelerar l'accés a Internet

- Compartim l'escriptori Linkat: ús de VNC i XDMCP com a serveis per estendre l'escriptori Linkat


Enllaços d'interès:


Manual de VirtualBox:
http://download-linkat.xtec.cat/d83/Linkat2/manual_virtualbox.pdf

Accés remot amb VNC:
http://download-linkat.xtec.cat/d83/Linkat2/acces_remot_vnc.pdf

Documentació sobre openSuSe 11.1:
http://www.novell.com/documentation/opensuse111/

Manual sobre administració de GNU/Linux:
http://www.scribd.com/doc/3845608/Manual-de-implementacion-de-servidores-Linux-julio2008

Curs: "Administració avançada del sistema operatiu GNU/Linux" (UOC)

Curs: "Sistema operatiu GNU/Linux bàsic" (UOC)

Utilització del programa UDPCast:

UDPcast és una eina de transferència d'arxius que pot enviar dades simultàniament a molts destins a una LAN. L'avantatge d'UDPcast sobre d'altres mètodes es troba en el fet que UDPCast utilitza multidifusió amb la qual cosa es triba el mateix temps en clonar 2 màquines que 15.

Segons la definició que es pot trobar en aquesta web:

Multicast consisteix en la transmissió d'informació a un grup de targetes en una xarxa.
Broadcast consisteix en la transmissió d'informació a totes les targestes en una xarxa.

El programa UDPCast es pot descarregar des de la mateixa pàgina web del projecte i es pot trobar ja paquetitzat per a Linkat 2.x (SLES/SLED 10) i per a Linkat 3 (openSuSe 11.1):

Web del projecte: http://udpcast.linux.lu/

RPMs per a Linkat: http://software.opensuse.org/search

Es poden trobar totes les comandes del programa UDPCast a:

http://udpcast.linux.lu/cmd.html


Exemples de transmissió d'informació:

1- Transmissió i recepció d'un fitxer:

udp-sender --file Nom_del_Fitxer --portbase Numero_del_Port

udp-receiver --file Nom_del_Fitxer --portbase Numero_del_Port

I si la informació es vol enviar comprimida abans de ser enviada:

udp-sender --file Nom_del_Fitxer --portbase Numero_del_Port --pipe "gzip -c"

udp-receiver --file Nom_del_Fitxer --portbase Numero_del_Port --pipe "gzip -dc"


2- Transmissió d'una partició per desar-la en un fitxer:

Si es vol transmetre una partició (p.e. la partició desmuntada /dev/sda5) i es vol recollir en un fitxer cal executar les comandes següents:

udp-sender --file /dev/sda5 --portbase Numero_del_Port

udp-receiver --file Nom_del_Fitxer --portbase Numero_del_Port


3- Clonació d'un ordinador sencer:

En aquest cas és millor fer servir alguna de les version "Live" del programa UDPCast. Aquestes imatges es poden descarregar des de:

http://udpcast.linux.lu/bootmedia.html

Aquesta imatge Live del programa UDPCast serveix per arrencar l'ordinador que té la maqueta de la màquina que es vol clonar.
A partir d'aquí, i fent ús en un altre ordinador del programa UPDCast es recull la imatge generada. La generació d'una imatge no és un requisit imprescindible ja que es poden clonar màquines sense necessitat de fer una imatge. Ara bé, és convenient disposar d'aquesta imatge.