Archivo de la etiqueta: Ubuntu

1263055237_start-here-ubuntuoriginal

Actualizar solo un paquete en Linux

Si querés actualizar por linea de comandos solo un paquete. En lugar de sudo sudo apt-get upgrade, podes usar este comando:

sudo apt-get install --only-upgrade oracle-jdk7-installer

Obviamente que tenes que saber como se llama el paquete ;).

Chau!

Additional resources

    Herramientas

    Linux: Configurar SciTE de forma permanente

    scite-user-settingsSciTE es el editor de texto que mas se acerca a Notepad++, y como no soy purista reconozco que en Windows hay cosas que están mucho mas buenas que en Linux. Un buen ejemplo es Notepad++.

    Bueno la cuestión con este editor es que si lo abrís y configuras cositas como “Mostrar números de línea” o “Codificar en UTF8“, cuando cerrás la aplicación tus personalizaciones se pierden ¬¬.

    La solución es abrir el archivo de configuración que SciTE nos da para almacenar nuestras preferencias (ver imagen) y pegar lo siguiente:

    ###############################
    # Configuración personalizada #
    ###############################
    # Posicion
    position.left=400
    position.top=100
    # Alto y ancho
    position.width=1000
    position.height=500
    # Mostrar numeros de linea
    line.margin.visible=1
    # "4+" indica que por defecto reserva 4 espacios pero se expande si le hace falta mas espacio.
    line.margin.width=4+
    # Codificación UTF8 por defecto
    code.page=65001
    # Mostramos el toolbar
    toolbar.visible=1
    # Mostramos el statusbar
    statusbar.visible=1
    # Establecemos la fuente monoespaciada a nuestro gusto
    font.monospace=font:!Bitstream Vera Sans Mono,size:10
    # La fuente monoespaciada
    font.base=$(font.monospace)
    font.small=$(font.monospace)
    font.comment=$(font.monospace)
    font.text=$(font.monospace)
    font.text.comment=$(font.monospace)
    font.embedded.base=$(font.monospace)
    font.embedded.comment=$(font.monospace)
    font.vbs=$(font.monospace)
    

    La configuración está comentada así que van a poder seleccionar lo que les interesa, y lo que no, lo borran.

    Listo, guardalo y disfruta de este gran editor.

    Chau!

    1263055237_start-here-ubuntuoriginal

    Añadir tu usuario de linux al grupo www-data

    Cuando instalo un LAMP en algún Linux suelo añadir mi usuario (capy) al grupo www-data, cambio el directorio www al grupo www-data y le doy permisos de escritura a los usuarios del grupo para garantizarme que no vaya a tener problemas de permisos y cosas raras:

    sudo usermod -a -G www-data capy
    sudo chown www-data. /var/www/ -R
    sudo chmod g+rw /var/www -R
    

    Y si no te da bola reinicia y se soluciona.

    Chau!

    tux

    Habilitar .bashrc al iniciar sesión

    Problema: querés usar .bashrc para poner un alias por ejemplo, pero .bashrc no existe.

    Solución: te vas a la home de tu usuario y tipeas lo siguiente:

    cd ~
    nano .bashrc

    Y dentro del archivo pongamos un alias por ejemplo:

    alias ll='ls -l'

    Guardamos los cambios y pasamos a lo siguiete que es:

    nano .bash_profile

    Pegamos esta condición para que .bashrc se cargue al iniciar sesión.

    if [ -f ~/.bashrc ]; then
    . ~/.bashrc
    fi

    All done, ya podes reiniciar la sesión que vas a ver que el alias “ll” funciona sin problemas. ;)

    1263055237_start-here-ubuntuoriginal

    Instalar java 7 en Ubuntu o Linux Mint

    [UPDATE] A partir de Mint 15 y Ubuntu 13.04 ya no es necesario, simplemente haz sudo apt-get install tomcat7

    Si necesitas usar java 7 en Ubuntu o Linux Mint, estás en el lugar indicado. solo tenes que que lanzar en una consola estos 3 simples comandos:

    sudo add-apt-repository ppa:webupd8team/java
    sudo apt-get update
    sudo apt-get install oracle-jdk7-installer tomcat7-admin

    Nota final: si tenias instalada otra versión de java u Openjdk vas a tener que setear la versión que acabas de instalar mediante el comando:

    sudo update-alternatives --config java

    Cortesía de los chicos de webupd8. ;)

    solr_small

    Instalar Solr 4.x y configurar multiples cores en Linux Ubuntu

    Aclaraciones:

    • El proceso de instalación de Solr es valido para cualquier otra versión de Solr.
    • Un core es un hilo nuevo dentro de la misma instancia de Solr. Esto permite que se corra una sola instancia de Solr pero con varios buscadores.

    Este tutorial asume que tienen instalado Java 7 y tomcat 7. Si tienen las versiones 6 le cambian el numero donde sea oportuno y funciona.

    Vamos a ello:

    Cuando tengas en tus manos el paquete se Solr, descomprimelo y ponte con la consola dentro de esa carpeta.

    Cambia a sudo:

    sudo su
    

    Curiosidad: Aunque en el paquete que descargamos de Apache Solr haya al rededor de 2950 archivos solo nos van a hacer falta al rededor de 10:

    Lanzamos en consola lo siguiente:

    cp dist/solr-*.war /var/lib/tomcat7/webapps/solr.war
    mkdir /var/lib/tomcat7/solr
    cp -R example/multicore/core0/ /var/lib/tomcat7/solr/core0
    mkdir /var/lib/tomcat7/solr/core0/data
    chown -R tomcat7:tomcat7 /var/lib/tomcat7/solr
    mkdir /var/lib/tomcat7/lib	 	 
    cp dist/solrj-lib/* /var/lib/tomcat7/lib
    

    Ahora edita /var/lib/tomcat7/solr/solr.xml, pega lo siguiente y guárdalo.

    <?xml version="1.0" encoding="UTF-8" ?>
    <solr persistent="true" sharedLib="lib">
     <cores adminPath="/admin/cores">
      <core name="core0" instanceDir="core0">
        <property name="dataDir" value="/var/lib/tomcat7/solr/core0/data"></property>
      </core>
     </cores>
    </solr>
    

    Edita /etc/tomcat7/Catalina/localhost/solr.xml, pega lo siguiente y guárdalo.

    <?xml version="1.0" encoding="UTF-8" ?>
    <context docBase="/var/lib/tomcat7/webapps/solr.war" debug="0" privileged="true" allowLinking="true" crossContext="true">
        <environment name="solr/home" type="java.lang.String" value="/var/lib/tomcat7/solr" override="true"></environment>
    </context>
    

    Listo, reiniciemos tomcat para ver en funcionamiento el core que hemos creado:

    service tomcat7 restart
    

    Entramos en http://localhost:8080/solr/ y lo vamos a ver.
    Solr recién instalado con un core

    Primer core de Solr
    Bueno ya tenemos un Solr con un core, pero tiene poco sentido montar un Solr de multicores que tenga un solo core, así que vamos a crear uno mas.

    Para este nuevo core (y todos los que quieras crear) hay que hacer dos cosas:
    1: copiar la carpeta core0 junto a su owner para ahorrarnos de andar creando la misma estructura:

    cp -Rp /var/lib/tomcat7/solr/core0 /var/lib/tomcat7/solr/producto
    

    NOTA: No olvides editar /var/lib/tomcat7/solr/producto/conf/schema.xml y /var/lib/tomcat7/solr/producto/conf/solrconfig.xml para ajustar sus parámetros.

    2: actualizar /var/lib/tomcat7/solr/solr.xml agregandole un nuevo tag con lo siguiente:

    <core name="producto" instanceDir="producto">
      <property name="dataDir" value="/var/lib/tomcat7/solr/producto/data"></property>
    </core>
    

    Reinicia tomcat y ya tenes otro core.
    Segundo core de Solr

    Suerte y saludos.

    1263055237_start-here-ubuntuoriginal

    Instalar java 6 en Ubuntu 11.10

    El paquete sun-java6-jdk ha dejado de estar disponible en la ultima versión de ubuntu debido a un cambio de licencias por parte de Oracle, lo cual no quiere decir que no se pueda usar mas, solo deja de estar disponible en los repositorios oficiales de ubuntu, por lo que para instalarlo a lo fácil vamos a agregar un nuevo repositorio e instalarlo desde allí:

    sudo add-apt-repository ppa:ferramroberto/java
    sudo apt-get update
    sudo apt-get install sun-java6-jdk sun-java6-plugin

    Nota final: si tenías instalada otra versión de java u openjdk vas a tener que setear la versión que acabas de instalar mediante el comando:

    sudo update-alternatives --config java

    Listo.

    Herramientas

    Compartir internet por wifi de Windows 7 a Linux con un cable

    Tenemos lo siguiente: Un ordenador con windows 7 que esta conectado a Internet por Wifi y la conexión por cable que está enganchada al portátil:

    Lo que queremos lograr es que el Wifi del ordenador le comparta la conexión a Internet a la conexión por cable del mismo ordenador para poder enganchar ese cable a un portátil con Linux (Ubuntu en este caso) y que este disfrute de Internet.

    NOTA: si te preguntas porque alguien iba a querer hacer algo así lee esto, sino pasa al siguiente punto:

    Por lo general cada vez que he virtualizado sobre KVM usé un ordenador de sobremesa, y estos ordenadores siempre tuvieron conexión a la red por ethernet, pero el otro día me monte una maquina virtual con Ubuntu server 10.04 64 bits en mi portátil para poner un servidor LAMP en él con una configuración similar a la que tiene un servidor de producción.

    Bueno, el Ubuntu sobre KVM lo instale sin problemas, pero cuando termine de instalarlo y quise instalar un par de cositas sobre el, me saltaba diciendo que no había conexión…. Eso a priori me sonó rarisimo porque el portátil estaba conectado a Internet, pero la maquina virtual no y eso que estaba puenteado wlan0 a la maquina virtual.

    Después de buscar y buscar leí por ahí que KVM todavía no soporta los bridge sobre wlan, por lo que conecte el portatil por medio de cable al ordenador de sobremesa que a su ves obtiene Internet por medio de WiFi.

    Hagamos una conexión compartida de la Wifi a la de cable:

    Como resultado deberías ver esto:

    Bueno, ya se está compartiendo Internet del Wifi al cable en el ordenador de sobremesa, ahora vamos a Linux y toquemos un par de cositas para poder aprovechar dicha conexión.

    En Linux, vamos a linkear la IP que nos proporciona la conexión por cable proveniente del ordenador de sobremesa a una IP estática en Ubuntu usando la IP entrante como gateway:

    Editamos el archivo interfaces:

    sudo gedit /etc/network/interfaces

    Deberían ver algo así:

    # This file describes the network interfaces available on your system
    # and how to activate them. For more information, see interfaces(5).
    # The loopback network interface
    auto lo
    iface lo inet loopback

    Y vamos  a agregarle un par de lineas quedando el archivo asi:

    # This file describes the network interfaces available on your system
    # and how to activate them. For more information, see interfaces(5).
    # The loopback network interface
    auto lo
    iface lo inet loopback
    # acá está la magia. Estamos linkeando la ip del ordenador de sobremesa (192.168.1.1) a una ip interna de Ubuntu
    auto eth0
    iface eth0 inet static
            address 192.10.0.1 #--> ip asignada en ubuntu (la que mas te guste)
            netmask 255.255.255.0
            gateway 192.168.1.1 #--> ip entrante de la conexion por cable

    Guarda los cambios y reinicia la conexión:

    sudo /etc/init.d/networking stop
    sudo /etc/init.d/networking start

    NOTA: aveces a se le va la cabeza y no levanta correctamente la conexión hasta que reinicies y no se porqué pasa eso, asi que si reiniciando la conexión sigue sin funcionarte reinicia el portátil así toma la configuración.

    Listo, chau ;)

    1263055237_start-here-ubuntuoriginal

    Ubuntu: recuperar el usuario sudo / administrador

    Algo raro que me paso hace unos días fue que el usuario que crea Ubuntu cuando haces una instalación nueva dejo de ser miembro del grupo de administradores, y por consiguiente dejo de poder ejecutar sudo.
    Para solucionarlo al final resulto ser mucho mas simple de lo que pensaba:
    Info: mi usuario se llama “capy” en este ejemplo.
    1. Pone el disco (CD / DVD) de Ubuntu en la maquina.
    2. Reiniciala
    3. Cuando se presente el menú del CD de Ubuntu selecciona “Recuperar un sistema dañado”:
    4. Como lo anterior te va a entregar una consola de root, ya podemos tocar el archivo de grupos
    5. Ejecuta en consola: nano /etc/group
    6. Busca la linea “admin:x:119:” (el 119 puede ser otro numero, lo que interesa es que el grupo sea “admin”) y agregale tu usuario como se ve acá: “admin:x:119:capy
    7. Guarda los cambios y reinicia.
    A partir de ahora deberías volver a poder hacer uso de sudo con tu usuario predeterminado.