Avatar of admin

by admin

Nueva Versión de libvirt-0.8.8

17/02/2011 in Software

As scheduled the release is out, and available from the site:

ftp://libvirt.org/libvirt/

Thanks everybody for the earlier testing on the release candidate series
that was I think quite useful !
So this release is again mostly consisting of a very large batch of small
improvements and bug fixes, and a few new features:

Features:
- sysinfo: expose new API (Eric Blake)
- cgroup blkio weight support. (Gui Jianfeng)
- smartcard device support (Eric Blake)
- qemu: Support per-device boot ordering (Jiri Denemark)
Read the rest of this entry →

Avatar of admin

by admin

[REXX] Conexión a serenity system puerto 25

08/12/2010 in Codigo Fuente


signal on Error
signal on FAILURE name Error
signal on Halt
signal on NOTREADY name Error
signal on NOVALUE name Error
signal on SYNTAX name Error

call Initialize

Main:

  /* Load socket functions */
  rc = RxFuncAdd('SockLoadFuncs','rxSock','SockLoadFuncs')

  rc = SockLoadFuncs(0)

  parse arg sz

  /* Preset */
  Gbl.Version = '0.10';
  Gbl.HostName = 'mail.earthlink.net';
  Gbl.HostName = 'Serenity-Systems.com';
  Gbl.HostName = 'mail.augustmail.com'
  Gbl.HostName = 'mail02.k50.net'

  Gbl.Port = 25                         /* service 25 = */

  call ScanArgs(sz)

  /* Do connect */

  rc = DoConnect()

  exit 0

/* end main */

/*=== DoConnect(): Send packet ===*/

DoConnect: procedure expose Gbl.

  achPkt = 'Hello'x2c('0d0a') 

  rc = SockGetHostByName(Gbl.HostName,'theHost.!')
  if rc \= 1 then
    call TCPFatal 'SockGetHostByName'

  say Gbl.HostName 'is' theHost.!addr

  sckt = SockSocket('AF_INET', 'SOCK_STREAM', 'IPPROTO_TCP')
  if sckt = -1 then
    call TCPFatal 'Socket'

  /* SockSetSockOpt is broken on object rexx so bypass if testing under OREXX */

  parse version szRexxVer .

  if szRexxVer == 'OBJREXX' then
    say 'Running OREXX.  Bypassing SockSetSockOpt'
  else do
    /* setsockopt(S, SOL_SOCKET, SO_BROADCAST, 1) or die "setsockopt :$!"; */
    rc = SockSetSockOpt(sckt, 'SOL_SOCKET', 'SO_BROADCAST', 1)
    if rc = -1 then
      call TCPFatal 'SockSetSockOpt'
  end

  say 'Connecting'

  theHost.!family = 'AF_INET'
  theHost.!port = Gbl.Port

  rc = SockConnect(sckt, 'theHost.!')
  if rc = -1 then
    call TCPFatal 'SockConnect'

  say 'Receiving'

  rc = SockRecv(sckt, 'achRsp', 512)
  if rc = -1 then
    call TCPFatal 'SockRecv'

  say 'rc' rc
  say 'Received' achRsp

  say 'Sending packet'

  rc = SockSend(sckt, achPkt)
  if rc = -1 then
    call TCPFatal 'SockSend'

  say 'Closing'

  rc = SockClose(sckt)
  if rc = -1 then
    call TCPFatal 'SockClose'

  return 0

/* end DoConnect */

/*=== Initialize: Intialize globals ===*/

Initialize:

  call LoadFuncs 

  /* Set:
      Gbl.szCmdName

      Gbl.Opt.fDebug - default = 0
  */

  parse source . . Gbl.szCmdName
  Gbl.szCmdName = filespec('N', Gbl.szCmdName)
  c = pos('.', Gbl.szCmdName)
  if c > 1 then
    Gbl.szCmdName = ToLower(substr(Gbl.szCmdName, 1, c - 1))

  Gbl.Opt.fDebug = 0

  return

/* end Initialize */

/*=== ScanArgs(argLine): scan command line arguments and switches ===*/

ScanArgs: procedure expose Gbl.

  /* Evaluate arguments - override
     Return Gbl.Opt. and aArgs.
     fixme to do quotes
     Uses work stem Z
  */

  parse arg szRest
  szRest = strip(szRest)

  szSwCtl = 'fip'                       /* Switches that take args */
  szArg = ''
  szSw = ''
  fSwEnd = 0                            /* End of switches */

  do while szRest \== '' | szArg \== '' | szSw \== ''

    /* If arg buffer empty, refill */
    if szArg == '' then
      parse var szRest szArg szRest

    /* If switch buffer empty, refill */
    if szSw == '' then do
      if left(szArg, 1) == '-' then do
        if fSwEnd then
          call Usage 'switch '''szArg''' unexpected'
        else if szArg == '--' then
          fSwEnd = 1
        else
          szSw = substr(szArg, 2)
        parse var szRest szArg szRest
      end
    end

    /* If switch in progress */
    if szSw \== '' then do
      sz = left(szSw, 1)                /* Next switch */
      szSw = substr(szSw, 2)            /* Drop from pending */
      /* Check switch requires argument */
      if pos(sz, szSwCtl) \= 0 then do
        if szSw \== ''  then do
          szOpt = szSw
          szSw = ''
        end
        else if szArg \== '' & left(szArg, 1) \= '-' then do
          szOpt = szArg
          parse var szRest szArg szRest
        end
        else
          call Usage 'Switch' sz 'requires argument'
      end
      select
      when sz == '?' then
        signal UsageHelp
      when sz == 'd' then
        Gbl.Opt.fDebug = 1
      when sz == 'f' then
        Gbl.FileName = szOpt
      when sz == 'h' then
        signal UsageHelp
      when sz == 'i' then
        Gbl.HostName = szOpt
      when sz == 'p' then
        Gbl.Port = szOpt
      when sz == 'p' then
        Gbl.Port = szOpt
      when sz == 'v' then do
        say 'Serentity25' Gbl.Version
        exit
      end
      otherwise
        call Usage 'switch '''sz''' unexpected'
      end /* select */
    end /* if switch */

    /* If arg */
    else if szArg \== '' then do
      fSwEnd = 1                        /* No more switches */
      /* Got non switch arg */
      szArg = ''
    end

  end /* while szRest */

  return

/* end ScanArgs */

/*=== TCPFatal(szReq): Report TCPFatal Error... ===*/

TCPFatal:

  parse arg szReq

  call Fatal szReq 'failed, errno:' errno ', h_errno:' h_errno
  say 'Ooops'

  if sckt \= -1 then do
    say 'Closing socket' sckt
    call SockClose sckt
  end

  exit 253

/* end TCPFatal */

/*=== Usage(szMsg): Report Usage Error... ===*/

Usage:

  parse arg szMsg

  say szMsg
  say 'Usage:' Gbl.szCmdName 'hvp:i:f:'

  exit 255

/* end Usage */

/*=== Usage: Display help ===*/

UsageHelp:

  say
  say 'Usage:' Gbl.szCmdName 'hvp:i:f:'
  say
  say ' -h       This message'
  say ' -i IP    IP address (ddd.ddd.ddd.ddd, default 255.255.255.255)'
  say ' -p Port  Port address, default = 9'
  say ' -f File  File of hardware addresses xx:xx:xx:xx:xx:xx - no implemented'
  say ' -v       Report version'

  exit 255

/* end UsageHelp */

/*========================================================================== */
/*=== Standard functions - Delete unused.  Move modified above this mark === */
/*========================================================================== */

/*=== Error: Trap ERROR, FAILURE etc. conditions ===*/

Error:

  /*=== Returns szCondition or Exits ===*/

  say
  parse source . . szThisCmd
  say condition('C') 'signaled at' SIGL 'of' szThisCmd
  drop szThisCmd
  say 'Source =' sourceline(SIGL)
  call SysSleep 2
  if condition('I') == 'CALL' then do
    szCondition = condition('C')
    say 'Returning'
    return
  end
  else do
    trace '?A'
    say 'Exiting'
    call SysSleep 2
    exit 255
  end

/* end Error */

/*=== Fatal: Report fatal error and exit ===*/

Fatal:

  parse arg szMsg

  say
  say Gbl.szCmdName':' szMsg

  exit 254

/* end Fatal */

/*=== Halt: Trap HALT condition ===*/

Halt:

  /*=== Returns szCondition or Exits ===*/

  say
  parse source . . szThisCmd
  say condition('C') 'signaled at' SIGL 'of' szThisCmd
  drop szThisCmd
  say 'Source = ' sourceline(SIGL)
  call SysSleep 2
  if condition('I') == 'CALL' then do
    szCondition = condition('C')
    say 'Returning'
    return
  end
  else do
   say 'Exiting'
   exit
  end

/* end Halt */

/*=== LoadFuncs: Load fuctions ===*/

LoadFuncs:

  /* Add all Rexx functions */
  if RxFuncQuery('SysLoadFuncs') then do
    call RxFuncAdd 'SysLoadFuncs', 'REXXUTIL', 'SysLoadFuncs'
    if RESULT then do
      say 'Cannot load SysLoadFuncs'
      exit
    end
    call SysLoadFuncs
  end /* end do */

  return

/* end LoadFuncs */

/*=== ToLower(sz): Convert to lower case ===*/

ToLower: procedure

  parse arg sz

  return translate(sz, xrange('a', 'z'), xrange('A', 'Z'))

/* end ToLower */

/* The end */
Avatar of admin

by admin

Suspender una sesión SSH

21/11/2010 in SysAdmin

$ ~ ctrl-z

Esto se debe escribir antes de que otros caracteres han sido introducidos. Utilice fg, como de costumbre, para reanudar la sesión de ssh.

Avatar of admin

by admin

Pino otro cliente Twitter

24/08/2010 in Software

Estos días estoy trabajando mis Tweets con el cliente Twitter Pino. También trabaja con cuentas de identi.ca sin problemas.

Es un cliente ligero y rápido. Incorpora todas las funcionalidades que uno busca en este tipo de clientes de escritorio. Se integra a la perfección con Gnome y algunas distribuciones (como Fedora) ya lo trae por defecto en sus instalaciones.

Avatar of admin

by admin

Linux kernel 2.6.27.50 released

11/08/2010 in Software

Linux kernel version 2.6.27.50 has been released.  It is available from:

Patch:          http://www.kernel.org/pub/linux/kernel/v2.6/patch-2.6.27.50.bz2
Full source:    http://www.kernel.org/pub/linux/kernel/v2.6/linux-2.6.27.50.tar.bz2
Read the rest of this entry →

Avatar of admin

by admin

Linux kernel 2.6.35.1 released

11/08/2010 in Software

Linux kernel version 2.6.35.1 has been released.  It is available from:

Patch:          http://www.kernel.org/pub/linux/kernel/v2.6/patch-2.6.35.1.bz2
Full source:    http://www.kernel.org/pub/linux/kernel/v2.6/linux-2.6.35.1.tar.bz2
Read the rest of this entry →

Avatar of admin

by admin

Linux kernel 2.6.32.18 released

11/08/2010 in Software

Linux kernel version 2.6.32.18 has been released.  It is available from:

Patch:          http://www.kernel.org/pub/linux/kernel/v2.6/patch-2.6.32.18.bz2
Full source:    http://www.kernel.org/pub/linux/kernel/v2.6/linux-2.6.32.18.tar.bz2
Read the rest of this entry →

Avatar of admin

by admin

Linux kernel 2.6.34.3 released

11/08/2010 in Software

Linux kernel version 2.6.34.3 has been released.  It is available from:

Patch:          http://www.kernel.org/pub/linux/kernel/v2.6/patch-2.6.34.3.bz2
Full source:    http://www.kernel.org/pub/linux/kernel/v2.6/linux-2.6.34.3.tar.bz2
Read the rest of this entry →

Avatar of admin

by admin

iPatch, el editor interactivo de revisión

07/08/2010 in Blog

Joachim Breitner comenta:

El problema: La división de los parches

Como desarrollador de Debian, que trabajan a menudo con los parches (archivos de lista de cambios en archivos de texto), por ejemplo, cuando el seguimiento de la modificación que hago a algunos programas antes de subir el paquete a Debian. Para gestionar estos parches, edredón es una buena herramienta: Te ayuda a mantener un montón de parches en la parte superior del código original y le anima a mantener sus diversas modificaciones distintas.

Un caso de uso no es compatible con edredón a todos: La división de los parches. A menudo se tiene un parche grande que contiene varios cambios independientes. Esto puede ocurrir después de corregir algunos problemas en el código de arriba ya continuación, ejecute dpkg-buildpackage, que creará una revisión de sus cambios y lo puso en debian / patches. Antes, tenía que editar manualmente el parche y escribir los trozos, que son los componentes básicos de parches, en un archivo separado.

En caso de que ya trabaja

No hay tal problema cuando se utiliza un sistema de control de versiones, como Darcs . Especialmente Darcs es tan popular por su interfaz fácil de usar y potentes funciones de selección trozo. Usted puede incluso partir un trozo único (que podría ser un cambio en una línea) en dos pasos separados! Echa un vistazo a la HunkEditor página en el wiki Darcs para ver cómo funciona.

Vamos a robar una característica

Bueno, no es robar si es Software Libre … Darcs tiene estas capacidades agradable y les proporciona en el contexto de los sistemas de control de versiones, mientras que los necesitamos en el contexto de los archivos de parche. Pero Darcs está proporcionando una API para su código, por lo que shoudn’t sea posible crear un programa que utiliza el código de Darcs para dividir archivos de parche? Como cuestión de hecho, es posible: puede ver ese programa en acción en este 3min Ogg Theora-Video o directamente aquí si tu navegador soporta HTML5:

controls=”true” <video height=”448″ src=”http://www.joachim-breitner.de.nyud.net/various/ipatch-demo.ogv” tabindex=”0″ width=”704″> Parece que tu navegador no soporta HTML5 </ video>

Niza, lo puedo usar?

El código es una prueba de trabajo de concepto. Lo que usted ve las obras. No se ve cómo maneja los parches que crean o borrar archivos, parches que no se aplican limpiamente o ya se aplican o cualquier tipo de control de errores. Eso no funciona todavía. Si aún así quieres probarlo, puedes descargar el código desde el repositorio de Darcs en http://darcs.nomeata.de/ipatch , pero que necesita para construir el desarrollo del estado más reciente de la biblioteca Darcs primero.

Creo iPatch podría convertirse en una herramienta muy útil y poderosa, con aplicaciones en áreas donde nadie se le ocurriría utilizar Darcs. Definitivamente quiero una cierta integración en la colcha, que sustituye el parche dividido en la serie por las placas de sustituir de forma automática. Tal vez incluso un plugin git se podrían crear? Pero yo no creo que pueda impulsar este proyecto lo suficiente por mi cuenta. Así que esta es una invitación a unirse a mí y hacer iPatch una gran herramienta. Esta invitación va especialmente a los desarrolladores Darcs: Por favor, eche un vistazo cómo el código utiliza la API de Darcs y ayudar a mejorar la colaboración aquí. Creo que podemos utilizar el darcs los usuarios lista de correo hasta que no haya necesidad de una lista de correo.

Avatar of admin

by admin

OS X, Linux and netatalk

07/08/2010 in Blog

Ingo Juergensmann nos comenta: Después de volver de vacaciones donde hice un montón de fotos y videos, que necesitaba la posibilidad de importar todos los de tarjetas SD para mi servidor de ficheros usando Debian inestable. Para importar las fotos que he utilizado Digikam en Linux, que no era un problema. Pero para los videos que necesitaba iMovie y / o FinalCut Express en mi Mac. He mirado en Kino y Cinelerra, pero esas aplicaciones Linux son terribles.

El problema era que iMovie se pueden importar directamente desde nuestra cámara de vídeo HD de Panasonic para el almacenamiento de red. Siempre me he visto obligado a importar primero la fotoage a la unidad en mi MacBook Pro, con copia a continuación, a la caja de Linux en una partición Samba. La solución para este problema es utilizar netatalk / AFP. El cuadro de Linux se presenta como un Mac Xserve entonces.

Sin embargo, rápidamente encontró algunas HowTos para configurar netatalk. Una HowTo es de Mike Hughes y el otro se encuentra en descontento-dutch.com . Si sigue estos dos HowTos que están bastante cerca de tener un trabajo de servicio AFP a interactuar con su Mac a través de Bonjour / Avahi.

Hay principalmente dos problemas cuando usted no las cumple. En primer lugar, Mike Hughes tiene caracteres ilegales en su ejemplo en / etc / avahi / servicios / afpd.service archivo:

<!DOCTYPE service-group SYSTEM “avahi-service.dtd”>
<service-group>
<name replace-wildcards=”yes”>%h</name>

Las comillas son el problema. En lugar de “usted necesitará normal” entre comillas. O puede utilizar el archivo de descontentos-dutch.com .

problema siguiente es la configuración de las acciones. En ambos sitios los ejemplos están utilizando como cdb CNID backend:

~ / “Directorio” cnidscheme: cdb opciones: usedots, upriv

Pero esto le dará el siguiente error:

03 de agosto muaddib afpd 23:30:29 [8151]: No se puede abrir el volumen “/ home / ij” CNID backend “CDB”
03 de agosto muaddib afpd 23:31:26 [8151]: No se encuentra módulo denominado] [cdb en lista de módulos registrados!

La solución se puede encontrar en forum.ubuntuusers.de (alemán) : tendrás que cambiar el cdb a DBD. Así, la cuota de Directorio tendrá este aspecto a continuación:

~ / “Opciones dbd Directorio” cnidscheme:: usedots, upriv

Muy simple y fácil. Ahora reinicie su avahi-daemon y servicios netatalk y divertirse! Cuando desee utilizar un recurso compartido en su servidor Linux para copias de seguridad de TimeMachine, tendrás que añadir un tm “para las opciones de tu parte.