English Spanish

Desarrollo de software en pocas palabras

Blog dedicado a la Ingeniería de Software, Redes y OpenSource.

Páginas

  • Página principal
  • Programación Web
  • Python
  • Seguridad Informática
  • ZigBee
  • Patrones de diseño
  • S.P.A.
  • C.V.

viernes, 10 de mayo de 2019

Error de permisos al tratar de instalar Appium

Si tratando de instalar Appium de la manera clásica nos sale este error: Error: EACCES: permission denied como se puede observar en el siguiente ejemplo:

mmagni@mmagni-lenovo:~$ sudo npm install -g appium
/usr/bin/appium -> /usr/lib/node_modules/appium/build/lib/main.js
/usr/bin/authorize-ios -> /usr/lib/node_modules/appium/node_modules/.bin/authorize-ios

> appium-chromedriver@4.11.0 install /usr/lib/node_modules/appium/node_modules/appium-chromedriver
> node install-npm.js

(node:5303) UnhandledPromiseRejectionWarning: Error: EACCES: permission denied, mkdir '/usr/lib/node_modules/appium/node_modules/appium-chromedriver/2019410-5303-1pkr3c0.3t64'
(node:5303) UnhandledPromiseRejectionWarning: Unhandled promise rejection. This error originated either by throwing inside of an async function without a catch block, or by rejecting a promise which was not handled with .catch(). (rejection id: 1)
(node:5303) [DEP0018] DeprecationWarning: Unhandled promise rejections are deprecated. In the future, promise rejections that are not handled will terminate the Node.js process with a non-zero exit code.
[20:58:15] [Chromedriver Install] Installing Chromedriver version '2.46' for platform 'linux' and architecture '64'
[20:58:15] [Chromedriver Install] Opening temp file to write 'chromedriver_linux64' to...
Error: EACCES: permission denied, mkdir '/usr/lib/node_modules/appium/node_modules/appium-chromedriver/2019410-5303-1jmtk1l.nnoej'
npm WARN optional SKIPPING OPTIONAL DEPENDENCY: fsevents@2.0.6 (node_modules/appium/node_modules/fsevents):
npm WARN notsup SKIPPING OPTIONAL DEPENDENCY: Unsupported platform for fsevents@2.0.6: wanted {"os":"darwin","arch":"any"} (current: {"os":"linux","arch":"x64"})

npm ERR! code ELIFECYCLE
npm ERR! errno 1
npm ERR! appium-chromedriver@4.11.0 install: `node install-npm.js`
npm ERR! Exit status 1
npm ERR!
npm ERR! Failed at the appium-chromedriver@4.11.0 install script.
npm ERR! This is probably not a problem with npm. There is likely additional logging output above.

npm ERR! A complete log of this run can be found in:
npm ERR!     /home/mmagni/.npm/_logs/2019-05-10T23_58_16_106Z-debug.log

La solución para este problema de permisos es ejecutar el mismo comando agregando los siguientes parámetros:

mmagni@mmagni-lenovo:~$ sudo npm install -g appium --unsafe-perm=true --allow-root
/usr/bin/appium -> /usr/lib/node_modules/appium/build/lib/main.js
/usr/bin/authorize-ios -> /usr/lib/node_modules/appium/node_modules/.bin/authorize-ios

> appium-chromedriver@4.11.0 install /usr/lib/node_modules/appium/node_modules/appium-chromedriver
> node install-npm.js

[21:02:23] [Chromedriver Install] Installing Chromedriver version '2.46' for platform 'linux' and architecture '64'
[21:02:23] [Chromedriver Install] Opening temp file to write 'chromedriver_linux64' to...
[21:02:23] [Chromedriver Install] Opened temp file '/tmp/2019410-5611-12mbuip.95vu/chromedriver_linux64.zip'
[21:02:23] [Chromedriver Install] Downloading https://chromedriver.storage.googleapis.com/2.46/chromedriver_linux64.zip...
[21:02:33] [Chromedriver Install] Writing binary content to /tmp/2019410-5611-12mbuip.95vu/chromedriver_linux64.zip...
[21:02:33] [Chromedriver Install] Extracting /tmp/2019410-5611-12mbuip.95vu/chromedriver_linux64.zip to /tmp/2019410-5611-12mbuip.95vu/chromedriver_linux64
[21:02:33] [Chromedriver Install] Creating /usr/lib/node_modules/appium/node_modules/appium-chromedriver/chromedriver/linux...
[21:02:33] [Chromedriver Install] Copying unzipped binary, reading from /tmp/2019410-5611-12mbuip.95vu/chromedriver_linux64/chromedriver...
[21:02:33] [Chromedriver Install] Writing to /usr/lib/node_modules/appium/node_modules/appium-chromedriver/chromedriver/linux/chromedriver_64...
[21:02:33] [Chromedriver Install] /usr/lib/node_modules/appium/node_modules/appium-chromedriver/chromedriver/linux/chromedriver_64 successfully put in place

> appium-selendroid-driver@1.13.3 install /usr/lib/node_modules/appium/node_modules/appium-selendroid-driver
> node ./bin/install.js

[21:02:34] Java version 11.0.3 found
[21:02:34] Ensuring /usr/lib/node_modules/appium/node_modules/appium-selendroid-driver/selendroid/download exists
[21:02:34] Downloading Selendroid standalone server version 0.17.0 from https://repo1.maven.org/maven2/io/selendroid/selendroid-standalone/0.17.0/selendroid-standalone-0.17.0-with-dependencies.jar --> /usr/lib/node_modules/appium/node_modules/appium-selendroid-driver/selendroid/download/selendroid-server-7cf7163ac47f1c46eff95b62f78b58c1dabdec534acc6632da3784739f6e9d82.jar
[21:02:59] Writing binary content to /usr/lib/node_modules/appium/node_modules/appium-selendroid-driver/selendroid/download/selendroid-server.jar.tmp
[21:02:59] Selendroid standalone server downloaded
[21:02:59] Determining AndroidManifest location
[21:02:59] Determining server apk location
[21:03:00] Extracting manifest and apk to /usr/lib/node_modules/appium/node_modules/appium-selendroid-driver/selendroid/download
[21:03:00] Copying manifest and apk to /usr/lib/node_modules/appium/node_modules/appium-selendroid-driver/selendroid
[21:03:00] Cleaning up temp files
[21:03:00] Fixing AndroidManifest icon bug

> appium-windows-driver@1.5.1 install /usr/lib/node_modules/appium/node_modules/appium-windows-driver
> node install-npm.js

Not installing WinAppDriver since did not detect a Windows system
npm WARN optional SKIPPING OPTIONAL DEPENDENCY: fsevents@2.0.6 (node_modules/appium/node_modules/fsevents):
npm WARN notsup SKIPPING OPTIONAL DEPENDENCY: Unsupported platform for fsevents@2.0.6: wanted {"os":"darwin","arch":"any"} (current: {"os":"linux","arch":"x64"})

+ appium@1.13.0
added 584 packages from 402 contributors in 42.928s
Publicado por Matías Magni en 21:39 No hay comentarios:
Enviar por correo electrónicoEscribe un blogCompartir en XCompartir con FacebookCompartir en Pinterest

martes, 19 de diciembre de 2017

Instalar MongoDB Community Edition en Debian 9

Deberemos instalar libssl1.0.0 la cual no se encuentra en los respositorios de Debian 9.

Ejecutamos:

$ wget http://security.debian.org/debian-security/pool/updates/main/o/openssl/libssl1.0.0_1.0.1t-1+deb7u3_amd64.deb
$ sudo dpkg -i libssl1.0.0_1.0.1t-1+deb7u3_amd64.deb
$ sudo apt install dirmngr
$ sudo apt-key adv --keyserver hkp://keyserver.ubuntu.com:80 --recv 2930ADAE8CAF5059EE73BB4B58712A2291FA4AD5
$ sudo su
# echo "deb http://repo.mongodb.org/apt/debian jessie/mongodb-org/3.6 main" | sudo tee /etc/apt/sources.list.d/mongodb-org-3.6.list
# exit
$ sudo apt update
$ sudo apt install -y mongodb*

¡Listo!
Publicado por Matías Magni en 16:24 No hay comentarios:
Enviar por correo electrónicoEscribe un blogCompartir en XCompartir con FacebookCompartir en Pinterest

jueves, 14 de diciembre de 2017

ERROR tratando de instalar polymer-cli

Si intentaste instalar polymer-cli:

$ sudo npm install -g polymer-cli

...y obtuviste el siguiente error:

Error: EACCES: permission denied, mkdir '/usr/lib/node_modules/polymer-cli/node_modules/wd/build'

El mismo se soluciona agregando el parámetro --unsafe-perm al comando:

$ sudo npm install -g polymer-cli --unsafe-perm
Publicado por Matías Magni en 17:55 No hay comentarios:
Enviar por correo electrónicoEscribe un blogCompartir en XCompartir con FacebookCompartir en Pinterest

miércoles, 13 de septiembre de 2017

Argentina DevDay

Se viene otra edición de Argentina DevDay. La misma está organizada por un grupo de desarrolladores y parte de Python Mendoza y Pyladies Mendoza. Python Mendoza y Pyladies Mendoza son dos comunidades voluntarias de desarrolladores que buscan llevar a cabo eventos y meetups.
  La imagen puede contener: texto y exterior 

Links útiles:

  • https://devdayconf.github.io/argentina/
  • http://argentinadevday.eventbrite.com
Publicado por Matías Magni en 18:33 No hay comentarios:
Enviar por correo electrónicoEscribe un blogCompartir en XCompartir con FacebookCompartir en Pinterest

viernes, 8 de septiembre de 2017

S.P.A. en Español

Invito a toda la comunidad de desarrolladores web a unirse a mi página y grupo de Facebook.

Página: https://www.facebook.com/spa.espanol/

Grupo: https://www.facebook.com/groups/376764012741361/

Hasta ahora no existía ninguno que hablara del tema S.P.A. en general, solo habían páginas y grupos específicos sobre cada tecnología. ¡Gracias!
Publicado por Matías Magni en 12:59 No hay comentarios:
Enviar por correo electrónicoEscribe un blogCompartir en XCompartir con FacebookCompartir en Pinterest

¿Cómo hacer un IFRAME responsive?

Este problema se resuelve poniendo un <div> como envoltorio del <iframe>, con la siguiente propiedad CSS:

-webkit-overflow-scrolling:touch;

El código nos quedaría de la siguiente forma:


.wrapper {
    -webkit-overflow-scrolling:touch;
}

<div class="wrapper">
    <iframe ... width="100%"></iframe>
</div>
Publicado por Matías Magni en 11:09 No hay comentarios:
Enviar por correo electrónicoEscribe un blogCompartir en XCompartir con FacebookCompartir en Pinterest

jueves, 7 de septiembre de 2017

La Característica Más Importante de un Líder de I.T.

Publicado por Matías Magni en 13:27 No hay comentarios:
Enviar por correo electrónicoEscribe un blogCompartir en XCompartir con FacebookCompartir en Pinterest

lunes, 28 de agosto de 2017

Instalar un paquete RPM en Ubuntu

$ sudo apt-get install alien
$ sudo alien -i archivo.rpm
Publicado por Matías Magni en 18:20 No hay comentarios:
Enviar por correo electrónicoEscribe un blogCompartir en XCompartir con FacebookCompartir en Pinterest

sábado, 12 de agosto de 2017

Apuntar un dominio a una IP dinámica de una instancia de Google Cloud Compute

Cuando contratamos un servicio en Google Cloud Platform y creamos una instancia de una máquina virtual decubrimos que nos dan una IP dinámica. Los costos de una IP estática son elevados en este proveedor de hosting (cobro por hora). La solución es utilizar algún proveedor de DNS de IPs dinámicas.

En este ejemplo vamos a utilizar el servicio que nos brinda NO-IP. Vamos a crear un dominio en esa página y luego vamos a apuntar el dominio real que queramos utilizar a este otro mediante un registro CNAME. Una vez creado el dominio en NO-IP, ponemos la IP temporal que tengamos en ese momento apuntando a ese dominio.

El paso siguiente consistirá en bajar el software cliente de NO-IP e instalarlo en nuestra VM de GCloud. Para ello nos vamos a la sección de descarga del cliente. Les dejo el link directo de la descarga asumiendo que la instancia tiene instalado un sistema operativo Linux:

https://www.noip.com/download?page=linux

Para descargarlo directamente en nuestra instancia y no tener que hacer un posterior upload al servidor de producción, podemos ejecutar los siguientes comandos:

$ wget https://www.noip.com/client/linux/noip-duc-linux.tar.gz
$ tar xvfz noip-duc-linux.tar.gz

Ahora procederemos con la instalación:

$ cd noip-2.1.9-1
$ make
$ sudo make install

    * (Paso opcional aquí: ir)

Finalmente ejecutamos el cliente que actualizará nuestra IP cada vez que esta cambie.

$ sudo /usr/local/bin/noip2

Ahora solo resta apuntar al dominio registrado en NO-IP el dominio final que queramos utilizar en producción. En este ejemplo, voy a usar uno gratuito registrado en Freenom, el cual es más estético que las opciones que nos brinda NO-IP. Primero, nos logueamos en Freenom y nos vamos a la sección Services  →  My Domains. Hacemos click en Manage Domain:


Ahora entramos en Manage Freenom DNS e ingresamos las siguientes entradas:


En este ejemplo appicar.ddns.net es el dominio registrado en NO-IP y appicar.tk, el de Freenom. Ustedes deberán reemplazar ahí por sus respectivos dominios.

Checkeamos que todo esté en orden:

$ dig www.appicar.tk


Como podemos observar, los dominios apuntan correctamente a sus respectivos blancos.

Aquí termina el tutorial básico. Si siguieron todos los pasos anteriores ya contarán con un servicio que les actualizará automáticamente el registro A del dominio que registraron en NO-IP.

Script de Logging

Durante el proceso de instalación nos preguntará si queremos ejecutar algún script cuando se realice la actualización de la IP. Yo creé un script que escribirá un log en /var/log/noip/log. Veamos el contenido del mismo:

# cat /usr/bin/noip-log

#!/bin/bash

echo $(date +"%Y-%m-%d %H:%M:%S") - IP updated: $(myip) >> /var/log/noip/log


Copien el contenido de noip-log a un archivo con el mismo nombre y denle permisos de ejecución:

# chmod +x /usr/bin/noip-log

Después tenemos que crear el archivo /usr/bin/myip que nos devolverá en la consola nuestra IP pública. Ponemos este código dentro del mismo:


#!/bin/bash

curl -s checkip.dyndns.org | sed -e 's/.*Current IP Address: //' -e 's/<.*$//'


Le damos permisos de ejecución:

# chmod +x /usr/bin/myip

Ahora lo vamos a ejecutar nosotros mismos para dejar registro de la IP actual:

# /usr/bin/noip-log
# cat /var/log/noip/log
2017-08-11 21:05:57 - IP updated: 35.196.20.137
Publicado por Matías Magni en 13:12 3 comentarios:
Enviar por correo electrónicoEscribe un blogCompartir en XCompartir con FacebookCompartir en Pinterest

domingo, 6 de agosto de 2017

Node.js v8 en Ubuntu y Debian

Para instalar Node.js v8 tienen que ejecutar estos comandos:

Ubuntu:

# curl -sL https://deb.nodesource.com/setup_8.x | sudo -E bash -
# sudo apt-get install -y nodejs

Debian:

# curl -sL https://deb.nodesource.com/setup_8.x | bash -
# apt-get install -y nodejs
Publicado por Matías Magni en 18:16 No hay comentarios:
Enviar por correo electrónicoEscribe un blogCompartir en XCompartir con FacebookCompartir en Pinterest

miércoles, 2 de agosto de 2017

Yavide

Vim tiene un montón de plugins para desarrolladores y cuando son combinados se puede convertir en un IDE muy poderoso. La ventaja obvia es la disminución en el consumo de recursos, el cual es mínimo en comparación con, por ejemplo, Eclipse o NetBeans. También lo hace ideal para la programación remota. Yavide es un proyecto nuevo que aprovecha estos plugins y los empaca a todos juntos. También se jacta de proveer algunas características que no están disponibes en otros IDEs.



Instalación

$ sudo apt-get install build-essential vim-gnome python2.7 git libclang-dev python-dev
$ cd ~/ && git clone https://github.com/JBakamovic/yavide.git
$ cd yavide && ./install.sh

Ejecución

$ yavide

Arreglar errores de ejecución en Ubuntu




$ sudo apt install vim-gnome-py2
$ sudo update-alternatives --set vim /usr/bin/vim.gnome-py2
$ sudo update-alternatives --set gvim /usr/bin/vim.gnome-py2
Publicado por Matías Magni en 17:54 No hay comentarios:
Enviar por correo electrónicoEscribe un blogCompartir en XCompartir con FacebookCompartir en Pinterest

lunes, 31 de julio de 2017

ERROR Error: No provider for ApplicationInitStatus!

Bueno si han venido siguiendo el tutorial de Meteor usando Angular2, una vez que hayan finalizado se van a dar cuenta que la aplicación no corre. Si inspeccionamos la consola de JavaScript del navegador nos daremos cuenta que arroja el error:


Esto es porque en el tutorial se han olvidado de agregar el módulo BrowserModule. Ubicamos el archivo app.module.ts y agregamos las siguientes líneas de código:

import { BrowserModule } from '@angular/platform-browser';

y en imports agregamos:

BrowserModule

El Código nos quedaría así:


Publicado por Matías Magni en 16:34 No hay comentarios:
Enviar por correo electrónicoEscribe un blogCompartir en XCompartir con FacebookCompartir en Pinterest

sábado, 29 de julio de 2017

Cómo integrar CoreUI a Meteor usando React

Les comento que he subido a Github una implementación de CoreUI para integrarlo a un proyecto Meteor-React. Les dejo un par de links y espero que les guste:

  • Repositorio Github: https://github.com/matiasmagni/coreui-meteor-react
  • Live Demo: http://coreui.io/demo/React_Demo

Instrucciones para la instalación:

$ sudo curl https://install.meteor.com/ | sh
$ git clone https://github.com/matiasmagni/coreui-meteor-react.git
$ cd coreui-meteor-react
$ meteor npm install --no-optional

Deployment:

$ meteor

URL: http://localhost:3000/
Publicado por Matías Magni en 15:16 No hay comentarios:
Enviar por correo electrónicoEscribe un blogCompartir en XCompartir con FacebookCompartir en Pinterest

miércoles, 23 de julio de 2014

Nautilus como gestor de archivos por defecto en Lubuntu 14.04

Bueno en este post les voy a mostrar como hacer para cambiar el gestor por defecto de Lubuntu el cual se llama PCManFM, el cual, si bien es un gestor liviano, también tiene muchos bugs y no cuenta con las facilidades que tiene Nautilus, como por ejemplo la compartición de archivos mediante Samba.

Escribimos en la consola:

$ sudo vim /etc/xdg/lxsession/Lubuntu/desktop.conf

Ubicamos dentro del archivo la línea:

file_manager/command=pcmanfm

y la cambiamos por esta otra:

file_manager/command=nautilus

Y al reiniciar la sesión tendremos a Nautilus como nuestro nuevo gestor de archivos por defecto en Lubuntu.
Publicado por Matías Magni en 11:39 No hay comentarios:
Enviar por correo electrónicoEscribe un blogCompartir en XCompartir con FacebookCompartir en Pinterest

miércoles, 26 de junio de 2013

Rootear Motorola Razri

¿LISTO PARA DESBLOQUEAR EL BOOTLOADER DEL DISPOSITIVO?

Vamos a asegurarnos de que sabes en que te estás metiendo primero. Por si no lo sabías, el cargador de arranque es un poco de código que indica al sistema operativo de su dispositivo cómo arrancar. Motorola ha hecho el trabajo para asegurarse de que el dispositivo tiene una versión certificada y probada totalmente optimizada de Android.

Desbloquear el gestor de arranque le permitirá personalizar su dispositivo, pero debe tener en cuenta lo siguiente:
  • El desbloqueo del gestor de arranque no es para los débiles de corazón. Desbloquear su dispositivo e instalar su propio software puede hacer que el dispositivo deje de funcionar, deshabilitar características y funciones importantes, e incluso hacer que el dispositivo deje de ser seguro hasta el punto de causar daño.
  • Ni Motorola, ni su proveedor de servicios inalámbricos o el distribuidor donde adquirió el dispositivo, serán responsables de los daños, así que por favor no abrir o cargar el software a menos que sepa lo que está haciendo. ADVERTENCIA: Una vez desbloqueado, el dispositivo ya no estará cubierto por la garantía de Motorola.
Bueno leído esto podemos continuar:

ADVERTENCIA: antes de llevar a cabo estas instrucciones recomiendo hacer un BACKUP general de todos los datos del teléfono, ya que se borrarán al desbloquear el bootloader.
  • Descargar el desbloqueador de Motorola: click aquí
  • Instale el controlador incluido en función del sistema (32 bits o 64 bits). Presione en su escritorio la tecla de Windows+R y escriba cmd para abrir una ventana de DOS.
  • Instale los drivers de Motorola: click aquí
  • Conecte el celular en modo depurador, para hacer esto vaya Menú > Ajustes > Opciones del desarrollador y active la opción DEPURACIÓN DE USB.
  • Apagamos el celular y lo encendemos dejando apretado el botón de encendido y la tecla de bajar volúmen hasta que el celular se encienda y vibre, justo cuando muestra el logo de Motorola. Nos aparecerá un menú azul, conectamos el teléfono con el cable USB a la PC.
  • Abrimos el cmd y nos paramos en el directorio donde se encuentra el desbloqueador que descargamos. Ejecutamos:
    fastboot oem get_unlock_data
    Saldrá un código largo, eso quiere decir que el teléfono tiene el bootloader cerrado.
  • Vamos a la página web de Motorola: click aquí y seguimos las instrucciones.

ROOTEAR EL CELULAR
  • Descargamos el rooteador haciendo click aquí.
  • Descomprimimos el archivo, conectamos el teléfono al USB y copiamos el archivo RAZRiRoot2.zip al raíz de nuestro teléfono. 
  • Abrimos cmd y nos paramos en el directorio del fastboot.
  • Ejecutamos: fastboot flash recovery recovery-razri-try9touch.img
  • Una vez terminado ejecutamos: fastboot reboot-bootloader
  • Nuestro teléfono arrancará bootloader, seleccionamos la opción Recovery Mode bajando con la tecla de volúmen - y accediendo a la misma con la tecla de volúmen +.
  • Nos aparecerá el menú del Recovery Mode y elegimos la opción install zip from sdcard > choose zip from sdcard.
  • Elegimos nuestro archivo zip que subimos al raíz e inicia el proceso de instalación.
  • Una vez finalizada la instalación seleccionamos +++++ Go Back +++++ y luego reboot system now.
  • ¡Listo! Nuestro celular ya tiene los privilegios del usuario root.
Publicado por Matías Magni en 11:07 No hay comentarios:
Enviar por correo electrónicoEscribe un blogCompartir en XCompartir con FacebookCompartir en Pinterest

miércoles, 19 de junio de 2013

SMI | Wokshop de Google Plus -presentado por Carolina Bertoni-

Publicado por Matías Magni en 17:07 No hay comentarios:
Enviar por correo electrónicoEscribe un blogCompartir en XCompartir con FacebookCompartir en Pinterest

lunes, 17 de junio de 2013

Instalar JDownloader en Ubuntu desde repositorios

Abrimos una consola y tipeamos:

$ sudo add-apt-repository ppa:jd-team/jdownloader
$ sudo apt-get update
$ sudo apt-get install jdownloader-installer
Publicado por Matías Magni en 18:47 No hay comentarios:
Enviar por correo electrónicoEscribe un blogCompartir en XCompartir con FacebookCompartir en Pinterest

sábado, 15 de junio de 2013

Instalar LenovoEMC Storage Manage en Ubuntu 13.04

Este es nuestro cliente para conectarnos a nuestra nube personal LenovoEMC:

http://iomegacloud.com/download_page.php?cloud_name=&access_code=&user_lang=la

Descargamos y ejecutamos el instalador:

$ sudo ./storagemgrsetup.bin
Preparing to install...
Extracting the JRE from the installer archive...
Unpacking the JRE...
Extracting the installation resources from the installer archive...
Configuring the installer for this system's environment...

strings: '/lib/libc.so.6': No such file

Launching installer...


Graphical installers are not supported by the VM. The console mode will be used instead...

Preparing CONSOLE Mode Installation...

===============================================================================
Choose Locale...
----------------

    1- Deutsch
    2- English
  ->3- Español
    4- Français
    5- Italiano
    6- Nederlands
    7- Português  (Brasil)
    8- Svenska

CHOOSE LOCALE BY NUMBER: 3

=======================================================

Modo de la interfaz del usuario del instalador no compatible

El programa de instalación no puede ejecutarse en este modo de interfaz del usuario. Para especificar el modo de interfaz, utilice la opción de línea de comandos -i, seguido del identificador de modo de interfaz del usuario. Los identificadores de modos de interfaz del usuario válidos son GUI, Consola, y Silencioso.

=======================================================


Si les aparece el mismo mensaje de error que a mí, sigan estos pasos:
  1. Este error strings: '/lib/libc.so.6': No such file lo solucionamos con un link simbólico:

    sudo ln -s /lib/x86_64-linux-gnu/libc.so.6 /lib/libc.so.6
  2.  
  3. Por último, para corregir el error de la GUI en la JVM ejecutamos:

    $sudo /usr/sbin/alternatives --config java
Publicado por Matías Magni en 18:55 No hay comentarios:
Enviar por correo electrónicoEscribe un blogCompartir en XCompartir con FacebookCompartir en Pinterest

miércoles, 22 de mayo de 2013

Montar una carpeta compartida de Windows o un NAS en Ubuntu

Por ejemplo, vamos a montar una carpeta compartida de música en red ya sea de una máquina con Windows o un NAS.

Primero creamos el directorio donde se montará en nuestra máquina local con Linux:

$sudo mkdir -p /mnt/NAS/Musica

Ahora instalaremos los paquetes necesarios para poder montar carpetas por samba:

$ sudo apt-get install samba smb-client cifs-utils

Por último, montamos la carpeta compartida:

$ sudo mount -t cifs //192.168.1.2/Musica /mnt/Musica/

Para automontar la carpeta cuando inicia el sistema operativo seguimos los siguientes pasos:

Instalamos primero el servicio autofs:

$sudo apt-get install autofs

Lo configuramos agregando esta línea al archivo /etc/auto.master:

/mnt/NAS /etc/auto.musica --timeout=60 --ghost

Ahora creamos el archivo /etc/auto.musica y escribimos dentro:

Musica -fstype=cifs ://192.168.1.2/Musica

Iniciamos el servicio:

$ sudo /etc/init.d/autofs start
Publicado por Matías Magni en 17:40 No hay comentarios:
Enviar por correo electrónicoEscribe un blogCompartir en XCompartir con FacebookCompartir en Pinterest

martes, 21 de mayo de 2013

Yii Sharebox + DynamicRes

Escribí una actualización del código fuente de la extensión de Yii Sharebox para que funcione con DynamicRes, ya que por defecto usa CClientScript. El fork del repositorio en GitHub lo pueden encontrar aquí: https://github.com/matiasmagni/yii-sharebox
Publicado por Matías Magni en 14:01 No hay comentarios:
Enviar por correo electrónicoEscribe un blogCompartir en XCompartir con FacebookCompartir en Pinterest
Entradas más recientes Entradas antiguas Inicio
Suscribirse a: Entradas (Atom)

Datos personales

Mi foto
Matías Magni
Ver todo mi perfil

Translation

Artículos

  • ▼  2019 (1)
    • ▼  mayo (1)
      • Error de permisos al tratar de instalar Appium
  • ►  2017 (12)
    • ►  diciembre (2)
    • ►  septiembre (4)
    • ►  agosto (4)
    • ►  julio (2)
  • ►  2014 (1)
    • ►  julio (1)
  • ►  2013 (11)
    • ►  junio (4)
    • ►  mayo (7)
  • ►  2012 (1)
    • ►  noviembre (1)
  • ►  2011 (2)
    • ►  junio (1)
    • ►  mayo (1)
  • ►  2010 (1)
    • ►  enero (1)
  • ►  2009 (4)
    • ►  abril (1)
    • ►  marzo (2)
    • ►  enero (1)
  • ►  2008 (13)
    • ►  diciembre (10)
    • ►  noviembre (3)

Contactar a Matías J. Magni

Nombre

Correo electrónico *

Mensaje *

Cargando...
Matías J. Magni © 2013. Tema Sencillo. Imágenes del tema: enot-poloskun. Con la tecnología de Blogger.