las tribulaciones técnicas de santib90

Mayo 23, 2007

Problema con las búsquedas en MOSS 2007

Archivado en: sharepoint — santib90 @ 9:10 am

Hace poco, un cliente me llamó para comentarme que las búsquedas habían dejado de funcionar en el portal corporativo basado en MS Office Sharepoint Server 2007. Al hacer una búsqueda les daba el siguiente error:

sp-search-problem-0.png

Tras mirar el application event log del servidor (donde veo algún error del “Office Server Search” con Event ID 10032) y buscar un rato con Google, encuentro un post con alguna pista al respecto. Parece que el SharedServiceProvider pierde a veces la configuración del servidor que debe usar para las búsquedas. Voy a probar…

Primero voy a la página de configuración del SharedServiceProvider:

sp-search-problem-1.png

Entro en “Configuración de búsquedas”, en la sección “Búsqueda” y veo que, efectivamente, algo debe ir mal porque me da un error

sp-search-problem-21.png

Entro en la pantalla de “Configure un indizador al proveedor de servicios compartidos SharedServices1″ y veo como el servidor de índices esta desconfigurado. Abro la lista desplegable y elijo el servidor (“SPS” en este caso). Guardo la nueva configuración y espero un rato a que la configuración entre en vigor.

sp-search-problem-3.png

Pruebo a realizar una busqueda de nuevo y veo que ¡ya funciona!

Mayo 22, 2007

Primeros pasos con LVM (Logical Volume Manager)

Archivado en: linux — santib90 @ 4:41 pm

Hace algunas semanas instalé un servidor Debian Etch en una localización remota para realizar backups off-site de mis datos. Elegí el software rsync por razones de sencillez y optimización de ancho de banda. En un próximo post explicaré cómo lo configuré.

El equipo remoto (llamado rsync-debian) esta virtualizado en un ESX server 3.0.1 de VmWare. El sstema funciona muy bien y resulta tan cómodo que alguno de mis colegas me han pedido acceso al servidor para realziar ellos sus backups off-site. Esto plantea el problema de que el espacio en disco que reservé en su día al disco en rsync-debian se queda corto. Como ya preveía algo así, tuve la precaución de instalar Etch con la opción de particionado LVM. Ahora resulta que tengo la partición home a sin espacio de disco y me tengo que meter en harina con el LVM. Este es el resultado del comando “df”:

lvm-0.png

Primero voy a averiguar algo de información sobvre cómo particiono Etch el sistema con LVM, del que no tengo ni idea.

El fichero fstab pinta tal que así:

lvm-1.png

Y el volumen LVM esta configurado tal que así:

lvm-0b.png

Luego hago un “lvscan” para ver las unidades lógicas que estan configuradas:

rsync:~# lvscan
ACTIVE ‘/dev/rsync/root’ [5.30 GB] inherit
ACTIVE ‘/dev/rsync/swap_1′ [688.00 MB] inherit
ACTIVE ‘/dev/rsync/home’ [13.79 GB] inherit

evidentemente, tengo que expandir la unidad /dev/rsync/home

(NOTA: no se de dónde viene la diferencia de nomenclatura entre la unidad lógica “/dev/rsync/home” y la especificación “/dev/mapper/rsync-home” que aparece en el fstab. Tendre que investigarlo cuando tenga tiempo.

Por supuesto, primero pido al administrador del ESX que añada un nuevo disco virtual al equipo rsync-debian, este disco será el “/dev/sdb” (son preferibles los discos SCSI). Miro a ver si Etch detecta bien el nuevo disco con “fdisk -l”:

lvm-2.png

Bien, veo que lo detecta perfectamente y que aparece como sin particionar. Pasamos a crea la partición física (que luego incorporaremos al volumen “/dev/rsync” y la unidad lógica “dev/rsync/home”. Ejeuto el fdisk y voy creando la partición con el máximo tamaño disponible (40 Gb en este caso) y especifico el tipo de partición como “8e” para el LVM:

rsync:/etc# fdisk /dev/sdb
Device contains neither a valid DOS partition table, nor Sun, SGI or OSF disklabel
Building a new DOS disklabel. Changes will remain in memory only,
until you decide to write them. After that, of course, the previous
content won’t be recoverable.

The number of cylinders for this disk is set to 5221.
There is nothing wrong with that, but this is larger than 1024,
and could in certain setups cause problems with:
1) software that runs at boot time (e.g., old versions of LILO)
2) booting and partitioning software from other OSs
(e.g., DOS FDISK, OS/2 FDISK)
Warning: invalid flag 0×0000 of partition table 4 will be corrected by w(rite)

Command (m for help): p

Disk /dev/sdb: 42.9 GB, 42949672960 bytes
255 heads, 63 sectors/track, 5221 cylinders
Units = cylinders of 16065 * 512 = 8225280 bytes

Device Boot Start End Blocks Id System

Command (m for help): n
Command action
e extended
p primary partition (1-4)
p
Partition number (1-4): 1
First cylinder (1-5221, default 1):
Using default value 1
Last cylinder or +size or +sizeM or +sizeK (1-5221, default 5221):
Using default value 5221

Command (m for help): t
Selected partition 1
Hex code (type L to list codes): L

0 Empty 1e Hidden W95 FAT1 80 Old Minix be Solaris boot
1 FAT12 24 NEC DOS 81 Minix / old Lin bf Solaris
2 XENIX root 39 Plan 9 82 Linux swap / So c1 DRDOS/sec (FAT-
3 XENIX usr 3c PartitionMagic 83 Linux c4 DRDOS/sec (FAT-
4 FAT16 <32M 40 Venix 80286 84 OS/2 hidden C: c6 DRDOS/sec (FAT-
5 Extended 41 PPC PReP Boot 85 Linux extended c7 Syrinx
6 FAT16 42 SFS 86 NTFS volume set da Non-FS data
7 HPFS/NTFS 4d QNX4.x 87 NTFS volume set db CP/M / CTOS / .
8 AIX 4e QNX4.x 2nd part 88 Linux plaintext de Dell Utility
9 AIX bootable 4f QNX4.x 3rd part 8e Linux LVM df BootIt
a OS/2 Boot Manag 50 OnTrack DM 93 Amoeba e1 DOS access
b W95 FAT32 51 OnTrack DM6 Aux 94 Amoeba BBT e3 DOS R/O
c W95 FAT32 (LBA) 52 CP/M 9f BSD/OS e4 SpeedStor
e W95 FAT16 (LBA) 53 OnTrack DM6 Aux a0 IBM Thinkpad hi eb BeOS fs
f W95 Ext’d (LBA) 54 OnTrackDM6 a5 FreeBSD ee EFI GPT
10 OPUS 55 EZ-Drive a6 OpenBSD ef EFI (FAT-12/16/
11 Hidden FAT12 56 Golden Bow a7 NeXTSTEP f0 Linux/PA-RISC b
12 Compaq diagnost 5c Priam Edisk a8 Darwin UFS f1 SpeedStor
14 Hidden FAT16 <3 61 SpeedStor a9 NetBSD f4 SpeedStor
16 Hidden FAT16 63 GNU HURD or Sys ab Darwin boot f2 DOS secondary
17 Hidden HPFS/NTF 64 Novell Netware b7 BSDI fs fd Linux raid auto
18 AST SmartSleep 65 Novell Netware b8 BSDI swap fe LANstep
1b Hidden W95 FAT3 70 DiskSecure Mult bb Boot Wizard hid ff BBT
1c Hidden W95 FAT3 75 PC/IX
Hex code (type L to list codes): 8e
Changed system type of partition 1 to 8e (Linux LVM)

Command (m for help): w
The partition table has been altered!

Calling ioctl() to re-read partition table.
Syncing disks.

Bien, ya he creado la nueva partición (/dev/sdb1) en el segunto disco (/dev/sdb). Ahora tengo que crear un volumen físico LVM en esa nueva partición. Esto se hace con el comando “pvcreate”

rsync:~# pvcreate /dev/sdb1
Physical volume “/dev/sdb1″ successfully created

Ahora desmontaré la partición /home por si las moscas:

rsync:~# umount /dev/rsync/home

paso a extender el volumen LVM “/etc/rsync” con el volumen físico recien creado “/dev/sdb1″:

rsync:~# vgextend rsync /dev/sdb1
Volume group “rsync” successfully extended

antes de tocar la unidad lógica “/dev/rsync/home” hago una comprobación del sistema de ficheros:

rsync:~# e2fsck -f /dev/rsync/home
e2fsck 1.40-WIP (14-Nov-2006)
Pass 1: Checking inodes, blocks, and sizes
Pass 2: Checking directory structure
Pass 3: Checking directory connectivity
Pass 4: Checking reference counts
Pass 5: Checking group summary information
/dev/rsync/home: 26483/1807968 files (0.8% non-contiguous), 3432971/3613696 blocks

Parece que todo esta bien, pasamos a extender la unidad lógica “dev/rsync/home” con el comando “lvextend”, especificando los 40GB como parámetro (parece que 1 Gb son 1000 Mb en lugar de 1024, al estilo de las unidaes de disco, no estrictamente binario)

rsync:~# lvextend -L +40000 /dev/rsync/home /dev/sdb1
Extending logical volume home to 52.85 GB
Logical volume home successfully resized

Y finalmente tenemos que ampliar el sistema de archivos (ext3 en nuestro caso). Usamos el comando “resize2fs” para ello. Parece que si no le pasamos argumentos lo amplía al máximo tamaño disponible (que es justo lo que quiero)

rsync:~# resize2fs /dev/rsync/home
resize2fs 1.40-WIP (14-Nov-2006)
Resizing the filesystem on /dev/rsync/home to 13853696 (4k) blocks.
The filesystem on /dev/rsync/home is now 13853696 blocks long.

Antes de usar la unidad lógica recién expandida, la monto en el filesystem:

rsync:~# mount /dev/rsync/home

y ejecuto de nuevo elcomando “df” para ver si ya tengo espacio disponible:

rsync:~# df
Filesystem 1K-blocks Used Available Use% Mounted on
/dev/mapper/rsync-root
5466908 632248 4556952 13% /
tmpfs 128484 0 128484 0% /lib/init/rw
udev 10240 60 10180 1% /dev
tmpfs 128484 0 128484 0% /dev/shm
/dev/sda1 241116 13262 215406 6% /boot
/dev/mapper/rsync-home
54549912 13515348 38817976 26% /home

¡¡¡BIEN !! Como vemos por ese comando, he pasado de una ocupación en “/home” del 100% inicial a un 26%.

Mayo 21, 2007

Modificar la directiva de complejidad de contraseñas en Windows 2003 Server

Archivado en: windows — santib90 @ 11:05 am

En un entorno de pruebas Windows como los que uso a menudo, resulta un autentico tostón la directiva de complejidad de contraseñas que Windows 2003 server activa por omisión. Para que nos permita poner contraseñas sencillitas los pasos son:

Abrir el Domain Securiry Setting (en el control panel -> administrative tools).

Abrir el nodo Security Settings, Account Policies, Password Policypass1.png

Mostrar las propiedades de “Minimum Password Length” y especificar cero caracteres (pero sin desactivar la directiva).

pass2.png

Mostar luego las propiedades de la directiva Passwords Must meet Complexity Requirements y seleccionar “Disabled” (pero sin desmarcar “Define this policy setting”

pass3.png

Finalmente, forzar una aaplicación de la directiva ejecutando “gpupdate /force” en el intérprete de comandos

La información esta sacada de aqui.

Mayo 15, 2007

Instalar las VmWare Tools en Debian Etch (actualizado a Ubuntu Feisty Fawn)

Archivado en: linux, vmware — santib90 @ 9:04 am

Hace poco he instalado un equipo virtual Debian Etch bajo VmWare ESX server. El equipo funciona sin entorno gráfico pero me interesa instalar las VmWare tolos para que instale el driver de la tarjeta de red optimizado y para que la consola de gestión del ESX Server pueda conocer la memoria libre y otros detalles internos del equipo virtual. Paso a instalar las herramientas:

Arrancar una consola y realizar los siguientes pasos como root o con sudo (dependiendo de nuestra distribución)

1. Antes de liarnos con la instalación debemos verificar que tenemos todos los paquetes necesarios para compilar las herramientas. Estos paquetes son:

a. autoconf

b. automake

c. binutils

d. cpp

e. gcc

f. los ficheros de cabecera del kernel instalado

g. make

h. psmisc

2. El comando para instalar los paquetes es: “aptitude install autoconf automake binutils cpp gcc linux-headers-$(uname -r) make psmisc”. Es posible que varios de esos paquetes ya estén instalados en el sistema.

3. En algunos manuales se dice que tomemos nota de la localización de los ficheros de cabecera porque es posible que luego lo necesitemos, pero a mí me ha hecho falta. Por si acaso, el comando es: “ls -d /usr/src/linux-headers-$(uname -r)*/include”

4. En el menú de VM, seleccionar “Install VmWare Tools”

5. Montamos el cd virtual en el directorio: “mount /dev/cdrom /mnt/”(Ubuntu lo monta automáticamente en “/media/cdrom”)

6. Descomprimimos el fichero con las herramientas en el directorio temporal: “tar -C /tmp -zxvf /mnt/VMwareTools-5.5.3-346885.tar.gz” (usar el directorio temporal de Ubuntu si es el caso)

7. Desmontamos el cdrom virtual: “umount /mnt” (en Ubuntu se desmonta automáticamente). Si no hacemos esto puede darnos un error luego a la hora de instalar las tools (el error es “unable to create directory /mnt/hgfs”).

8. Ejecutamos el script instalador de sde el directorio descomprimido: “cd /tmp/vmware-tools-distrib” seguido de “./vmware-install.pl”

9. El script de instalación nos preguntará varios parámetros. Iremos respondiendo a las preguntas con las respuestas que vienen por defecto. A mí me ha compilado e instalado sin problemas.

debian-tools.png

Al final del proceso, no tengo muy claro si las herramientas ya están completamente instaladas o hay que realizar algún paso adicional (para usar la nueva tarjeta de red, por ejemplo). En pruebas realizadas con un Ubuntu Edgy Eft no me activaba el driver de ratón ni la integración del portapapeles con el host. Por lo menos, el ESX server me detecta ahora que las herramientas están instaladas y puedo, por ejemplo, hacer un shutdown limpio del equipo virtual con el Virtual Center. Sospecho que es necesario realizar algún paso adicional que desconozco.

àActualización con Ubuntu Feisty Fawn y VmWare Workstation 6

En Feisty fawn, al final del proceso (que compila sin problemas siguiendo los pasos anteriores) el instalador se ofrece a ejecutar el programa “vmware-toolbox”, parece que sólo lo hace si detecta que estamos dentro de una sesión gráfica (xterm). Con la instalación en Debian Etch en modo texto puro no me hacía esta pregunta. Lo ejecuto y me instala automáticamente los nuevos drivers de red (pierde la conectividad durante unos segundos mientras cambia). También instala el driver gráfico optimizado y permite elegir la resolución preferida. Vemos como se reinicia el servidor X con los nuevos valores. También comprobamos que el ratón se integra perfectamente en el del escritorio host sin tener que hacer nada más. También se integra el portapapeles con el host bidireccionalmente. Esta última configuración la he realizado con las VmWare Tools que vienen con VmWare Workstation 6

Cabe reseñar que en las pruebas realizadas, las tools de VmWare Workstation 5.5 parece que son compatibles con el ESX server 3. Al menos el server las detecta sin problemas. Actualizaré si las del VmWare Workstation 6 también lo son.

Mayo 14, 2007

Problemas con la red al migrar una máquina virtual de VmWare Workstation a ESX server

Archivado en: linux, vmware — santib90 @ 6:43 am

Hace poco instalé una máquina virtual Debian Etch bajo VmWare Workstation y luego la migré a un servidor ESX usando el nuevo VmWare Converter. La migración se completó sin problemas pero al arrancar el Debian resulta que no tenía conectividad de red. Si hago un “ifconfig /a” veo que el interface eth0 no está activo y que me ha aparecido un nuevo interface eth1. Ese nuevo interface funciona perfectamente si lo activo con “ifup eth1” pero me parece una guarrada dejarlo así.

Googleo un rato y decubro que Debian almacena en algún sitio la dirección MAC de la tarjeta virtual inicial (la del Workstation). Al migrar la máquina al ESX server la tarjeta virtual cambia y por tanto se genera una nueva dirección MAC. Para que el interface eth0 vuelva a funcionar correctamente tenemos que hacer coincidir la dirección MAC.

persistent.png

Una forma de conseguir esto es localizar el fichero “/etc/udev/rules.d/z25_persistent-net.rules” y modificar la dirección MAC para que coincida con la dirección de la nueva tarjeta virtual, pero resulta más sencillo borrar simplemente el fichero y reiniciar el sistema. Con el nuevo arranque, el fichero se genera de nuevo pero esta vez con los parámetros correctos.

Según parece, udev es el responsable de este comportamiento, porque guarda un historial de los dispositivos que se conectan al equipo. Esto tiene sentido para dispositivos como unidades de almacenamiento USB, para que se monten en el mismo punto al reconectaros pero provoca problemas al clonar o migrar equipos.

También es posible que al clonar o migrar un equipo virtual Linux nos encontremos problemas a la hora de montar las particiones y discos. Algunas distribuciones usan un sistema UUID a la hora de identificar unívocamente las particiones. El problema es que el UUID puede cambiar cuando cambia el disco virtual y al no coincidir los discos virtuales viejo y nuevo, el sistema no localiza las particiones a montar.

En las pruebas realizadas me he encontrado con problemas de este tipo (UUID) con Ubuntu Edgy Eft pero no con Debian Etch

Gracias a la gente de http://www.vmware.com/community/thread.jspa?threadID=46069&tstart=0

Mayo 11, 2007

Problemas de espacio en disco bajo Linux

Archivado en: linux — santib90 @ 5:31 am

Hace unos dias tuvimos unos problemas con un servidor VmWare ESX. Al parecer, no podia arrancar ciertos servicios porque se había quedado sin espacio libre en una partición. A continuación van los pasos para resolver problemas de ese estilo de forma genérica (y probado en un Debian Etch)

Primero podemos mirar cuanto espacio hay disponible en las diferentes unidades de disco con el comando “df”:

disk-1.png

El siguiente paso es averiguar si hay ficheros gordos (imágenes ISO o similar) que podamos eliminar paraliberar espacio. Esto lo podemos hacer con un complejo comando como:

find / -size +10240000c -exec du -h {} \;

que por lo visto usa el comando “du” (estimate disk space usage) en conjunto con “find”. El ejemplo anterior concretamente, localiza ficheros mayores de 10 Mb.

disk-2.png

El comando lo he encontrado googleando por ahí y funciona (aunque aún no sé muy bien cómo)

Blog de WordPress.com.