oriolrius.cat

Des del 2000 compartiendo sobre…

Year: 2005

Com un cable ethernet pot deixar d’anar?

Reading time: 2 – 2 minutes

ethernet.jpg

Aquest cap de setmana com molts dels meus clients i/o amics heu notat he tingut problemes greus de disponibilitat amb els servidors de la feina. Doncs bé he decdit explicar aquí el que passava perquè per molts anys que portis en el ‘mundillo’ hi ha coses que encara et sorprenen. Doncs, estic parlant de la naturalesa del problema que he tingut. Ja que tot ha funcionat perfecte excepte un coi de ‘latiguillo’ que uneix les radios LMDS a firewall des d’on es dona accés a internet a tota la xarxa de la empresa, inclosos els servidor d’internet.

Així de dura és la realitat varem trigar un munt d’hores en saber entre la gent de neo-sky i nosaltres en què era el que fallava ja que el cable aparenment funcionava. Però per algún motiu després d’un munt de mesos de funcionar sense cap problema fa 2 mesos que li ha donat per fallar. Per les bones, sense que ningú el desconnecti, el maltracti, etc. Simplement dissabte a la tarda va decidir deixar de funcionar.

El fotut d’aquests temes és que l’última cosa que creus que pot passar és que un cable d’1m que has comprat certificat de bones a primeres decideixi deixar de funcionar. Com a dada curiosa he comprovat que si connecto aquest cable a un HUB la llum d’aquest encomptes d’encendres el led del port amb la mateixa força que ho fan la resta de leds dels altres ports esta com atenuada la llum, s’encén però molt fluixa. Si algú té alguna idea de perquè pot passar alguna coseta així?

FileMON – monitor d’accessós al sistema de fitxers de win

Reading time: 2 – 2 minutes

FileMON:Aquesta petita eina de la gent de sysinternals ens permet monitoritzar en temps reals quins fitxers estan sent usats pel windows. Això és el problema de treballar amb sistemes tan opacs com el windows que necessites eines com el FileMON que et monitoritzin quins fitxers estan sent usats sinó no saps què carai esta fallant o en que esta enganxat el sistema en cada moment.

En la introducció del propi producte crec que es fa una bona descripció de quines funcions té l’eina:

FileMon monitors and displays file system activity on a system in real-time. Its advanced capabilities make it a powerful tool for exploring the way Windows works, seeing how applications use the files and DLLs, or tracking down problems in system or application file configurations. Filemon’s timestamping feature will show you precisely when every open, read, write or delete, happens, and its status column tells you the outcome. FileMon is so easy to use that you’ll be an expert within minutes. It begins monitoring when you start it, and its output window can be saved to a file for off-line viewing. It has full search capability, and if you find that you’re getting information overload, simply set up one or more filters.

També ens ajuda a fer-nos una idea de l’aspecte de la pantalla el següent screenshot:

filemon.gif

agentSMS – SMS gratuïts

Reading time: < 1 minute

Poc a explicar, només comentar que tornen a neixer sites on es poden enviar SMS gratuïts després de registrar-nos i de moment funciona.

agentsms.gif

UPDATE 29/09/2006: encara una altre empresa que afegint publicitat als missatges que enviem ens ho permet fer gratuïtament: RBI Soluciones.

showacls – en windows 2k i 2k3

Reading time: 1 – 2 minutes

Per molt maques que siguin les finestretes dels servidors 2k i 2k3, quan tens un problema greu de permisos amb una carpeta o fitxer del sistema, sempre has d’acabar anant a les comandes de sistema. Volia comentar-vos una eina que podeu trobar al NT Resource KIT del 2k i 2k3, aquesta eina és el showacls. Aquest simple comanda ens pot ajudar a saber realment qui són els propietaris i quins permisos tenen aquests sobre la carpeta o fitxer que ens esta donant problemes. Un exemple il·lustratiu i senzill sobre el tema:

C:\WINNT\system32>c:\showacls\showacls
C:\WINNT\system32\
		NT AUTHORITY\Usuarios autentificados Special Access [RX]
		BUILTIN\Opers. de servidores Special Access [RWXD]
		BUILTIN\Administradores   Special Access [A]
		NT AUTHORITY\SYSTEM       Special Access [A]
		CREATOR OWNER             Special Access [A]

Si voleu aprofundir una mica més sobre el tema he trobat un article molt interessant sobre el tema Access and Permission Tools (local).

eXternalTest – control de serveis i sites online des d’internet

Reading time: 1 – 2 minutes

externaltest.gifTot posant-me al dia dels tropocientosmil feeds que tenia atrassats d’aquests dies de massa feina m’he trobat, no em feu dir on, un site molt útil. Ens permet supervisar des de tot el món quina és la visibilitat dels nostres sites i/o serveis. Ens fa informes tan en format de text, com gràfics. Realment si teniu aquesta necessitat ús el recomano moltíssim ja que sobretot de cara a informar a clients de forma certificiada quina és la vostre disponibilitat, latència, etc. crec que és molt útil. A més també pot generar alarmes per falles de servei.

De moment no fa prou dies que tinc funcionant el servei com per posar-vos alguna gràfica xula, però ús animo a que monitoritzeu les vostres xarxes públiques a internet amb eXternalTest gratuïta, almenys de moment.

Windows ERROR: completament en blanc

Reading time: 1 – 2 minutes

Acabo de perdre més de 4h intentant arreglar un problema amb un coi de WinXP. El tema era força complicat de saber perquè no funcionava ja que com sempre el windows ens ajuda “moltíssim” a saber perquè alguna cosa no va, en aquest ocasió al arrencar el PC sortia la tícpica pantalla de “Bienvenido” i aquest dialog:

no-error-message.png

He fet de tot amb el windows commandar (ERD) amb el safe mode etc, però finalment el problema és que aquesta misteriosa finestra el que em volia dir és que no s’havia activat la còpia de windows. Com ho he sabut? doncs el que he fet és amb el ERD he restaurat la còpia més antiga de windows que tenia el registre de punts de retorn de windows. Al arrancar després de recuperar això ja he vist l’error que em deia si volia activar la còpia de windows. Després he tornat a restaurar la última còpia des de l’últim punt de retorn possible he arrancat en safe mode he activat la còpia i llestos, per aquesta tonteria tot el matí a prendre pel sac.

TheOS

Reading time: 2 – 3 minutes

theos.gifAbans d’ahir vaig anar a una empresa i es va complir de nou la dita: no te acostarás si saber dos o tres cosas más. Em vaig trobar un sistema operatiu que mai havia sentit a parlar d’ell. El servidor de l’empresa era un PII a 266MHz amb 128Mb de RAM… si si! sona a ciència ficció,eh! i el més sorprenent és que els anava ràpid. El fotut va ser al intentar accedir el sistema operatiu que vaig veure que era un TheOS 4.2. Un enjendro de sistema operatiu basat en consola, amb un joc de comandes propi i molt reduit i amb un entorn de tot menys amigable. Fer un ls, filelist en aquest sistema, era tota una experiència religiosa… podies morir en l’intentent. Si vols saber totes les comandes que té el sistema fas un help i et surt un menú de la vella escola on surten totes les comandes a en forma de llista i si prems sobre d’una et fa una explicació de tot el que fa. La sintaxis tot un experiment.

Realment una reliquia feta sistema operatiu, però el millor del cas és que quan et connectes a la pàgina web resulta que és un sistema operatiu viu, malgrat es va començar a desenvolupar a princpis dels 70 i va ser portat a l’arquitectura x86 a mitjans dels 80. Pel que he pogut veure no suporta multitasca ni cap cosa massa avançada. Però té un sistema de fitxers propi, compiladors de C, fortran i fins hi tot 4GL. Suporta TCP/IP i té els seus propis protocols de telnet amb clients propis per windows.

Pensava que el windows era el pitjor que s’havia inventat mai, però invents com aquests de vegades et fan dubtar. Si algú en sap més cosetes del tema que m’avisi, perquè el tema és tan propietari que per tot et demanen que paguis o que et registris.

NirCmd – cmd.exe light i sense consola…

Reading time: 1 – 2 minutes

Gentilesa de l’Ernest descobreixo aquesta eina freeware que no coneixia. Realment molt interessant. Ja que ens permet executar comandes en entorns win32 sense haver d’obrir una consola de DOS (cmd) com és habitual en moltes tasques que la interficie gràfica de win no suporta.

NirCmd is a small command-line utility that allows you to do some useful tasks without displaying any user interface. By running NirCmd with simple command-line option, you can write and delete values and keys in the Registry, write values into INI file, dial to your internet account or connect to a VPN network, restart windows or shut down the computer, create shortcut to a file, change the created/modified date of a file, change your display settings, turn off your monitor, open the door of your CD-ROM drive, and more…

La pròpia web de NirCmd té una col·lecció d’exemples i idees sobre el perquè ens pot ser útil aquesta eina tan recomanable des del meu punt de vista.

No Et Moguis

Reading time: 2 – 3 minutes

moguis.jpg
Aquest cap de setmana no l’altre em vaig escapar al teatre, concretament al Club Capitol, amb la Daphne. Per celebrar els nostres 4 anys junts. No volia perdre l’ocasió per recomanar-vos No Et Moguis realment ideal per desconnectar de tot. Només amb un decorat de color negre, el joc de llum, quatre objectes, dos actorassos i deixant-vos portar podeu disfrutar d’allò més. La veritat és que malgrat m’encanta el teatre el trobo molt car ja que 21€ per persona trobo que és caríssim però després de veure espectacles com el que us comento penses que aquest preu és un regal. Ja que fer que durant quasi 2h el teu cap no puc pensar en res que no sigui que no s’acabi jo diria que això no té preu.

Així que si heu de marxar d’aquest món durant unes hores per poder tornar-hi amb més ganes i totalment descansats jo diria que aquesta és una de les millors opcions d’oci que teniu per la provincia. Si voleu una petita sinopsi us enganxo un tros d’una web que he trobat per internet:

Una història quotidiana: una jove parella d’artistes sense èxit, Ivan pintor i Carla actriu. L’ autor proposa una mirada crítica i irònica de la convivència i del dia a dia, de dues persones amb diferents interessos i necessitats. L’Ivan s’obsessiona amb la seva obra i paulatinament va deixant de banda l’atracció que l’unia amb la Carla. L’amor, el desencant i la frustració derivats de les situacions creades els condueixen al trencament i a la conseqüent soledat posterior, per a la qual tampoc no estan preparats.

El drama vital es desenvolupa en una quinzena d’escenes, amb salts en el temps – coneixem els avantpassats de la Carla, uns pescadors de Cadaqués de fa cent anys – amb molts personatges que permeten a l’espectador assistir a situacions cotidianes: Un vernissage de pintura moderna, un càsting, un flirteig dins d’una piscina, el bombardeig televisiu, retalls d’un espectacle soporífer de dansa contemporània, l’absurditat de la telefonia mòvil… En aquest entorn frívol i avassallador Ivan i Carla miren de trobar resposta a la seva existència.

Podeu trobar tota la sinopsi i una mica més d’informació a: Assaig General.

Introduïnt el PIN a la VRA de forma automàtica

Reading time: 3 – 5 minutes

Aquest és un d’aquells posts que podria tenir 40 títols diferents. De fet, només vull passar-vos un parell de trossos de codi un en C i l’altre en perl, que el que fan és obrir el port serie virtual que crea el modem UMTS/GPRS PCMCIA de Vodafone després l’hi envia la comanda AT corresponent per introduir el PIN del SIM que porta la targeta i llestos.

Abans de passar als temes de codis un petit resum d’ordres AT útils per temes de PIN:

AT+CPIN=1234 -> Introduim el PIN a la SIM del mòdem.
AT+CPIN? -> preguntem al mòdem si ja hem introduit la SIM.
AT+CPWD="SC",old_pin,new_pin -> canviem el PIN de la SIM.

De fet, si no voleu fer un codi tan bonic com el que jo uso, també podeu fer una cosa tan senzilla com aquesta:

# echo AT+CPIN=1234 > /dev/tts/USB0

Sent 1234 el codi PIN i /dev/tts/USB0 el dispositiu serie que crea el modem PCMCIA de vodafone.

Anant a codis una miqueta més interessants aquí teniu un trosset de codi C per fer el mateix que em fet en l’ordre anterior:

#include <stdio.h>   /* Standard input/output definitions */
#include <string.h>  /* String function definitions */
#include <unistd.h>  /* UNIX standard function definitions */
#include <fcntl.h>   /* File control definitions */
#include <errno.h>   /* Error number definitions */
#include <termios.h> /* POSIX terminal control definitions */
main() {
	int fd;
	fd = open_port();
	init_modem(fd);
	close(fd);
}
int open_port(void) {
	int fd; /* File descriptor for the port */
	struct termios options;
	fd = open("/dev/tts/USB0", O_RDWR | O_NOCTTY | O_NDELAY);
	if (fd == -1) {
		/*
		* Could not open the port.
		*/
		perror("open_port: Unable to open /dev/tts/USB0 - ");
	}
	else fcntl(fd, F_SETFL, 0);
	/* get the current options */
	tcgetattr(fd, &options);
	cfsetispeed(&options, B19200);
	cfsetospeed(&options, B19200);
	/* set raw input, 1 second timeout */
	options.c_cflag &= ~PARENB;
	options.c_cflag &= ~CSTOPB;
	options.c_cflag &= ~CSIZE;
	options.c_cflag |= CS8;
	options.c_cflag     |= (CLOCAL | CREAD);
	options.c_cflag	    &= ~CNEW_RTSCTS;
	/* set the options */
	tcsetattr(fd, TCSANOW, &options);
	return (fd);
}
int                  /* O - 0 = MODEM ok, -1 = MODEM bad */
init_modem(int fd)   /* I - Serial port file */
{
	char buffer[255];  /* Input buffer */
	char *bufptr;      /* Current char in buffer */
	int  nbytes;       /* Number of bytes read */
	int  tries;        /* Number of tries so far */
	for (tries = 0; tries < 3; tries ++) {
		/* send an AT command followed by a CR */
		if (write(fd, "AT+CPIN=1234\r", 13) < 13) continue;
			/* read characters into our string buffer until we get a CR or NL */
			bufptr = buffer;
			while ((nbytes = read(fd, bufptr, buffer + sizeof(buffer) - bufptr - 1)) > 0) {
				bufptr += nbytes;
				if (bufptr[-1] == '\n' || bufptr[-1] == '\r') break;
			}
		/* nul terminate the string and see if we got an OK response */
		*bufptr = '\0';
		if (strncmp(buffer, "OK", 2) == 0) return (0);
	}
	return (-1);
}

Com en l’exemple anterior el dispositiu serie és /dev/tts/USB0 i el codi PIN 1234. Aquest codi és un copy/paste de la part d’un serial howto que ja no recordo ni d’on el vaig treure. Només m’he quedat amb el codi que em calia i hi he afegit algunes otpions que hi havia al howto però no als exemples de codi.

A continuació penjo un codi equivalent fet en perl. Com podeu veure aquest codi en perl té una dependència de la llibreria CPAN: Device::Gsm. Amb aquest llibreria també és molt senzill enviar SMS i descobrir algunes informacions del telèfon, com el fabricant o l’imei.

use Device::Gsm;
my $gsm = new Device::Gsm( port => '/dev/tts/USB0', pin => '4466' );
if( $gsm->connect() ) {
  print "connected!\n";
} else {
  print "sorry, no connection with gsm phone on serial port!\n";
}
# Register to GSM network (you must supply PIN number in above new() call)
print $gsm->register();