; Vince y el mundo del software: 2013

miércoles, 25 de diciembre de 2013

Descargar cursos de coursera y dejarlos como a mi me gusta

Tras encontrar el script para descargar cursos de edx, encontré otro para cursos de coursera. Dejo acá el link a la página, recuerden instalarlo con pip, que es más fácil; ahí mismo sale la info.
Para usarlo basta con leer la información; pero para no dejar tan pelado este post, les doy una ayuda en español:
Para descargar un curso:
$ coursera-dl -u <correo electrónico> -p <password> -n "txt" <dirección curso>
el -n "txt" es para ignorar los txt, es opcional, pero yo lo uso porque no quiero que me descargue los txt.
La dirección del curso es la última parte de la url. La url de un curso es de la forma:
https://class.coursera.org/<dirección curso>
por ejemplo:
https://class.coursera.org/insidetheinternet-003
entonces la "dirección curso" es: insidetheinternet-003
Más información y para ayuda:
$ coursera-dl -h

Todo bien ahí. Pero el problema es que descarga cada video en una carpeta separada, junto a los subtitulos, ppt, pdf, etc. Pero personalmente me gusta tener todos los videos de una semana juntos, junto a su subtitulo correspondiente.
Para lograr eso, creé un script en bash, que mueve los .mp4 y .srt a la carpeta anterior.
Para ilustrarlos, al usar el script "coursera-dl" queda de la siguiente forma:

dirección curso
├── Semana 1
│   ├── Video 1 Semana 1
│   │   ├── Diapos Video1 Semana 1.pdf
│   │   ├── Diapos Video1 Semana 1.ppt
│   │   ├── Video1 Semana1.mp4
│   │   └── Video1 Semana1.srt
│   ├── Video 2 Semana 1
│   │   ├── Diapos Video2 Semana 1.pdf
│   │   ├── Diapos Video2 Semana 1.ppt
│   │   ├── Video2 Semana1.mp4
│   │   └── Video2 Semana1.srt
├── Semana 2
│   ├── Video 1 Semana 2
│   │   ├── Diapos Video1 Semana 2.pdf
│   │   ├── Diapos Video1 Semana 2.ppt
│   │   ├── Video1 Semana2.mp4
│   │   └── Video1 Semana2.srt
 etc...

 Luego de usar mi script, queda así:

dirección curso
├── Semana 1
│   ├── Video 1 Semana 1
│   │   ├── Diapos Video1 Semana 1.pdf
│   │   └── Diapos Video1 Semana 1.ppt
│   ├── Video 2 Semana 1
│   │   ├── Diapos Video2 Semana 1.pdf
│   │   └── Diapos Video2 Semana 1.ppt
│   ├── Video1 Semana1.mp4
│   ├── Video1 Semana1.srt
│   ├── Video2 Semana1.mp4
│   └── Video2 Semana1.srt
├── Semana 2
│   ├── Video 1 Semana 2
│   │   ├── Diapos Video1 Semana 2.pdf
│   │   └── Diapos Video1 Semana 2.ppt
│   ├── Video1 Semana2.mp4
│   └── Video1 Semana2.srt
 etc...

El script es bastante sencillo, y se los dejo En este link. Además, lo dejo acá para que lo vean. Pueden modificarlo para sus propósitos personales:

#!/bin/bash
IFS=$'\x0A'$'\x0D'
salida=$(ls -F | grep /)
for carpetai in $salida
do
 cd $carpetai
 find -regextype posix-egrep -regex ".*(mp4|srt)$" |xargs -I{lecciones} mv "{lecciones}" .
 cd ..
done

sábado, 21 de diciembre de 2013

Ver la duración total de una lista de reproducción en linux con VLC

Hola nuevamente, hoy es por partida doble!
Resulta que quería poder saber la duración total de un conjunto de videos sin tener que sumarlos uno a uno, ya que eran muchos (más de cien descargados con edx-dl.py, vean la entrada anterior).
Busqué y busqué y lo único que encontraba era que en el nuevo Windows Media player se podía... ¡Pero yo uso Linux! Intenté instalar el WMP pero fue peor, ni con crossover ni con wine pude hacerlo.
Así que busqué en inglés en google, y me encontré con un addon para el vlc que da justamente esa funcionalidad.
El link está en esta dirección. Y acá el link de respaldo (arreglado) (por si viene un tornado y destruye los servidores de vlc).
Para hacerlo funcionar deben hacer lo siguiente:
-Copiar el texto y pegarlo en un documento de texto con el nombre "playlistduration.lua" (sin el ".txt"). Si lo hacen desde pastebin, recordar copiarlo desde el "RAW Paste Data".
-Luego, si están en linux, copian el archivo a:
/home/<usuario>/.local/share/vlc/lua/extensions/
A mi me quedó así:
/home/vincegeratorix/.local/share/vlc/lua/extensions/playlistduration.lua
Y violá. Luego lo único que tienen que hacer es en una lista de reproducción, clickar el menú "Ver" y luego en  "Playlist Duration", y verán la duración total.

Descargar videos de edx y más

Alerta: El script de edx-downloader ha sido actualizado y no es compatible con la versión mostrada acá, por lo que la versión de acá no funciona ahora. Este post tiene sólo fines históricos. No me he dado el tiempo de modificar el script nuevo, y nada presagia que lo haga, al menos en el futuro cercano.

Hola, dejé botado este blog un tiempo, y es que no había mucho que contar. Pero acá estoy de vuelta.
El tema de ahora es simple: Resulta que soy un ávido seguidor de los moocs (Cuando me queda tiempo libre), dígase coursera, udacity, edx, y en español, miríadax.
En Coursera se puede descargar el material fácilmente, lo cual me sirve para verlo en mi tablet mientras viajo, o cuando no tengo internet o lo estoy usando para otra cosa. Sin embargo, el resto de páginas no tiene una forma fácil de descargar el material, al menos no a simple vista. Eso hasta que me encontré con el edx-dl.py, un script en python para descargar vídeos con sus subtitulos respectivos, de los cursos que uno está inscrito, y las semanas que uno escoga (Poniéndole números consecutivos de dos dígitos). Dejo el script en Este Link, y como respaldo, Acá también en pastebin; aunque recomiendo usar el link original para darle más descargas al autor. Para descargarlo de la web del autor deben hacer un clone al git del autor, para ello, pon en la consola (en linux):
git clone https://github.com/shk3/edx-downloader.git
Debes tener instalado git.
El script es muy bueno, pero le encontré cosas que no me gustaron:
Cuando uno está descargando, y de repente falla, se apaga el pc, se corta la conexión, etc, hay que empezar de nuevo el script, poniendo el usuario, contraseña, y esperar que cargue toda la información (si son muchas lecciones puede tardar varios minutos). Claro que los vídeos y subtítulos descargados no los descarga nuevamente, pero sí que los revisa uno por uno (al igual que mi script).
¿Mi solución? Pues estuve metiéndole mano al script y logré lo siguiente:
-Un script para descargar los subtítulos solamente, ya sea de youtube como de edx, con los números consecutivos de 3 dígitos. Además muestra en consola todos los links de youtube.
-Otro script que toma un archivo con los links de youtube y los descarga con las opciones que uno le especifique, y con los correspondientes números consecutivos de 3 dígitos.
Dejo En Este Link el script para los subtitulos con los números consecutivos.
Y En Este Otro Link el otro script para descargar de youtube los videos con los números consecutivos.
Para ejecutar cualquiera, deben tipear en la consola:
python "nombre del script"
En "nombre del script" basta arrastrar el script si es que usan un emulador de consola que permita el drag and drop.
Espero les sirva, saludos!

jueves, 1 de agosto de 2013

Cómo cambiar la dirección MAC en linux fácilmente

Bueno, hace un tiempo que no escribía acá, y qué mejor que con un minituto. Espero más adelante en otro artículo contar mis andanzas con python y kivy durante el tiempo de paro de actividades en mi universidad.
Pero vamos a lo que nos concierne:

¿Qué es una dirección MAC?
En palabras sencillas (lo cual es tónica de este blog), es una dirección formada por 48 bits que identifica a la tarjeta de red. La dirección MAC es única para cada tarjeta de red, y está grabada por hardware, de manera que nunca habrán dos tarjetas de red con la misma dirección MAC.
Eso a nivel de hardware, porque en software todo se puede cambiar; y eso veremos ahora, pero primero:

¿Por qué cambiar la dirección MAC?
Pues porque con ella te identificas en la red, y cambiándola te puedes hacer pasar por otro quedando tú en el anonimato.
Otra razón es para pasar por alto los filtros de bloqueo por dirección MAC. Esto es cuando en un router te bloquean la dirección para que no accedas a internet desde ese punto. Esto puede ser una realidad cuando accedes a una red wifi que no es tuya. Con esto quiero decir que estoy totalmente en contra de usar puntos de acceso a internet en los que no estás autorizado.

Bueno, vamos a los pasos:
Lo primero es saber a cuál interfaz le quieres cambiar la dirección MAC, para lo cual basta con introducir el siguiente comando:
$ ifconfig
El cual te listará las interfaces. Yo personalmente tengo 3, las cuales son: "eth0" que es la conexión por cable (el cable rj45, cable de red); luego está "lo" que es la red local de linux; y luego "wlan0" la cual es la interfaz de wifi.
A un lado del nombre aparecen tabuladas las características de la interfaz tales como la ip, lo subido y bajado, y en la primera verás: "direcciónHW" y a un lado una serie de números y letras.
En realidad las letras también son números, ya que están codificados en base 16, pero eso es tema aparte. El asunto es que esos números son tu dirección MAC, y eso son los que cambiaremos (por software). Recuerda que cada vez que reinicies el pc volverá la dirección MAC de fábrica; punto a tener en consideración.

Lo primero que tienes que hacer es apagar la interfaz; esto se hace como root (recordad que el signo peso representa comandos en modo usuario y el gato en modo root), y es el siguiente comando:
# ifconfig <interfaz> down
ejemplo:
# ifconfig wlan0 down

Luego de apagarla procedes a cambiarle la MAC address. para ello basta con el siguiente comando:
# ifconfig <interfaz> hw ether <dirección>
 un ejemplo sería:
# ifconfig wlan0 hw ether 03:a0:04:d3:00:11

Sin embargo uno comúnmente va a querer cambiarle a una dirección MAC aleatoria, para lo cual estar variando siempre los números no tiene mucho sentido. Para hacer ésto vamos a usar el programa "macchanger"
Primero instala el programa con tu gestor de paquetes preferido, en ubuntu sería algo como:
# apt-get install macchanger
si quieres instalar la versión en gtk (personalmente no me gusta, además si tienes un error te lo mostrará en consola y no en interfaz por lo que no tiene mucho sentido instalarla) puedes instalar también  el paquete "macchanger-gtk"

Bien, una vez instalado el programa macchanger, y apagada la interfaz, procedemos a cambiarle la mac address; para lo cual basta con:
# macchanger -r <interfaz>
ejemplo:
# macchanger -r wlan0
Así de simple.

Ahora procedemos a prender nuestra interfaz con:
# ifconfig <interfaz> up

¡Y es todo!
Apéndice:
Si usas una tarjeta wifi Ralink (como la que yo uso), asegúrate de no estar usando el kernel 3.8.0, porque -al menos en ubuntu- en el módulo viene desactivada la función de cambiar la mac address, a lo cual te mandará un error de "argumento inválido". Personalmente me pasé a la versión 3.10 y no tengo problema.

Recuerda que si no quieres pasar de usuario a cada rato, puedes usar el comando "sudo" antes de los comandos especificados en este tutorial para los casos en que se requiera ser root (donde sale el gato o almohadilla).

¡Y eso es todo! Recuerda comentar ante cualquier duda o comentario (gracias capitán obvio).

sábado, 15 de junio de 2013

Experiencia en linux, mi hermano, y ArchLinux

Yo empecé a usar Linux por allá en el año 2009, en marzo precisamente, justo al empezar mi tercero medio (son 4 años la enseñanza media y luego la universidad).
Lo conocí a través de un chat, donde decía que quería ser lammer, y me recomendaron linux.
Tras varios meses de investigación, y luego de convencerlo e instalarle ubuntu a mi hermano cuando se iba a la universidad, decidí yo emprender en Linux. Y la "distro" elegida fue "Debian".
Estuve alrededor de un año usando debian, para luego cambiarme a ubuntu y luego fedora.
Después, a mediados de mi cuarto medio, decidí emprender en ArchLinux, la distro que seguía como "natural" al proceso de mi adopción linuxera.
Me demoré 3 dias en instalarlo y dejarlo "usable" con interfaz gráfica, programas, etc. No sin antes haber pasado varias semanas leyendo completamente todos los manuales habidos y por haber y videos para instalar y configurar ArchLinux.
Pero cuando entré a la universidad a estudiar informática, pensé que no iba a tener suficiente tiempo para "mantenerlo", y decidí cambiarme a Fedora.
Eso hasta un par de meses, donde volví a ubuntu, el que uso actualmente con Mate.
Pero quedémonos en ArchLinux...
Esta distro, cuando yo la instalé, venía con un instalador en ncurses, es decir sin usar nunca un mouse y sin "ventanas" tal como las conocemos; sino que texto y colores.
Luego de instalarla, te enfrentas a una consola, nada más que una pantalla negra con letras blancas donde dice "login" invitándote a ingresar. Sin embargo sólo viene con usuario "root" o administrador, con el cual debemos crear un usuario nosotros.
Después de crear el usuario viene la parte dura: Instalar y configurar todo el sistema gráfico, todo a mano.
Después de tener todo configurado y listo para usar,  hay que preocuparse de actualizar; y es que con Arch tendrás muchas actualizaciones diarias.
Con cada paquete actualizado, vienen "comentarios" en la terminal. Algunos dicen dependencias opcionales, como plugins y cosas por el estilo para darle más funcionalidad; otros en cambio, dicen cosas como "debes cambiarle el nombre al archivo <archivo> a <archivo2>" (en inglés obviamente). Ignorar aquellas advertencias puede ser fatal para tu computador, y es que ignorarlas puede recaer en que la aplicación no funcione (como pasa la mayoría de las veces), o funcionar mal. Eso no sería tan trágico si fuera el juego de buscaminas o ajedrez, pero si es un programa inherente al sistema operativo, como por ejemplo el núcleo, puede ser fatal, al punto de no poder volver a entrar.
Y eso es porque la filosofía de Arch se podría resumir en "para qué hacer parches si lo pueden hacer los mismos usuarios".
A veces, las menos, se les olvida poner el mensaje o se dan cuenta de un error después de publicado el programa en la base de datos. En esos casos NUNCA hay que hacer lo que a uno se le ocurra, sino hay que buscar en los foros de Arch por una solución.
Uno de esos errores se enfrentó mi hermano, y lo que hizo fue forzar la instalación, a pesar de errores. ¿Qué le pasó? Le quedó inutilizable.
De eso pasó mucho tiempo, donde sólo usaba windows; por flojera. Ahora que tiene tiempo libre se puso a repararlo. ¿Resultado? Noches en vela, y error tras error. Apoyado en su tablet para buscar soluciones y manuales.

Con todo esto no quiero decir que Arch es un mal sistema operativo, y creo firmemente que quien quiera aprender realmente a usar linux, y a conocerlo "por dentro", lo más recomendable y "rápido" es usar ArchLinux.
En ArchLinux te obligan a tener "buenas costumbres" al momento de usar un pc. Éstas son leer la documentacion, los manuales, las advertencias, y todo aquello que un usuario común le da a "siguiente" sin leer. Y te lo enseña de la manera más cruda que puede haber: dejándote inutilizable el programa, y con una solución muchas veces muy difícil que  pasa por -comunmente- reinstalarlo (cosa difícil si es un programa necesario para el funcionamiento del sistema operativo).
Considero que cualquiera que quiera aprender realmente a usar linux, y saber administrarlo, debería usar Arch -o tal vez gentoo- y saber cómo funcionan las cosas por dentro, no depender de las interfaces gráficas, y manejarse fluidamente en un entorno Linux.

Mi hermano no lo instaló por eso, sino por su -a mi parecer, a lo menos "raro" y "con poco sentido"- afán de poder modificar y configurar todo. Y ahí está, modificándolo y configurándolo todo.

En todo caso, insisto encarecidamente a no usar Arch si no se tiene una experiencia más o menos acabada en linux, sin manejarse en la consola, o sin haber leído los manuales y tenerlos impresos, o una fuente fácil y rápida de accederlos.

sábado, 18 de mayo de 2013

Montar fácilmente tablets y celulares que usan mtpfs

Me regalaron un tablet, y lo primero que quise hacer fue conectarlo al pc para poder copiarle archivos.
En windows 7 no tuve mayor problema, el sistema encontró y descargó automáticamente los controladores y todo funcionó bien (salvo que cuando copio un formato "no soportado" pregunta si quiero copiarlo, pero lo copia al fin y al cabo).
En linux -fedora- no hubo caso. Me lo montó automáticamente como monta cualquier cosa, y me quedó una carpeta que referenciaba a la misma (¿Carpeta-ception?).
Busqué manuales, y encontré éste, el cual era para la tablet que yo tenía (acer a500). Al principio me funcionó, aunque me preguntaba cuando intentaba copiar un formato "no soportado", le ponía que copie y listo.
El problema vino cuando después de una actualización ya no me dejaba copiar los archivos no soportados. Simplemente daba error y paraba.
Busqué y busqué y encontré el gmtp y programas parecidos. Funcionaban bien y uno podía hacer de todo; el gran problema fue su lentitud. Y es que demoraba varios minutos en responder, en los foros decían que era propio de mtp.
Buscando y buscando, llegué a la solución. Fue simple, acá os explico:
Primero instalan el programa "simple-mtpfs" de los repos. Si no está, buscan el adecuado a su distro (como me cambié a ubuntu, y en ubuntu no estaba, lo encontré en launchpad).
Luego conectan el tablet y arrancan el siguiente comando:

$ simple-mtpfs CARPETA

donde "CARPETA" es la carpeta que ustedes elegirán como punto de montaje, puede ser cualquiera, yo uso una en home y listo.
Luego para desmontar corren el comando:

$ fusermount -u CARPETA

Eso es si conectan un solo dispositivo que use mtp, en caso de usar más dispositivos conectados, tienen que especificar cuál conectarán, para ello recomiendo leerse la ayuda del comando;

$ simple-mtpfs -h

Eso es todo, y así pueden copiar/mover/eliminar/etc cualquier tipo de archivo, de cualquier extensión, y sin largas esperas.
Como dice el nombre, el "simple-mtpfs" no es más que una configuración típica del programa mtpfs, si quieres usar configuraciones "no típicas" tendrían que meterse a usar mtpfs y fuse; pero para uso cotidiano, esto estaría bien.
Recordar que si lo instalan no de los repos en distros debian-based, luego del "dpkg -i paquete", corren "apt-get -f install" para solucionar las dependencias.

sábado, 11 de mayo de 2013

Transformar mp4 a mp3 en masa en Linux

Buenas. Me he encontrado con un pequeño problema. Y es que tenía que convertir unos archivos de video MP4 a formato MP3 (extraer el audio y convertirlo a mp3 básicamente).
Lo primero que pensé fue usar ffmpeg, pero me encontré que estaba "deprecated" (descontinuado), así que busqué en google.
Me encontré con este post, pero sólo resolvía el problema de convertir 1 solo archivo; y yo necesitaba convertir una carpeta llena de muchos archivos mp4 a mp3.
Luego me encontré con este otro post, el cual convierte los mp4 a mp3, pero usa ffmpeg, el cual ya no sirve.
Así que lo que hice fue "combinar" ambos scripts en uno solo. El cual les dejo en este link de pastebin.
Para ejecutarlo, lo guardan en un archivo de texto, le ponen extensión .sh y lo ejecutan en la carpeta que contiene los archivos .mp4.
El algoritmo NO es recursivo (no entra a las subcarpetas).
Eso, y ojalá les sirva.
Si tiene un problema, miren los comentarios en los posts originales, ahí se dedican a solucionar posibles problemas.
este script deja los mp3 en la misma carpeta, para moverlos fácilmente ejecuten:
$ mv *.mp3 /carpeta/destino
Saludos.

jueves, 2 de mayo de 2013

Descargar fácilmente una lista de reproducción de youtube

¿No les ha pasado que quieres guardar una lista de reproducción para verla más tarde? Personalmente me gusta descargar videotutoriales para luego verlos en el tiempo libre o mientras viajo, por lo que necesito tenerlos descargados (rara vez tienen internet en el bus).
Para ello en Linux (y windows) hay una forma muy sencilla de hacerlo en la línea de comandos. Esto hace que sólo basta un comando para tener la lista de youtube descargada íntegramente -no sólo sirve con listas de reproducción, sino también con videos.
El comando en cuestión es:
youtube-dl
Lo instalan desde su repo favorito, o para usuarios de windows lo descargan de su página:
http://rg3.github.io/youtube-dl/download.html
Recuerda que en cualquier caso hay que tener el intérprete de Python compatible. Simplemente van a la página de python y descargan el que sea compatible según lo que dice la página de youtube-dl.
Acá la página de Python

Acá la explicación de cómo se usa:
youtube-dl OPCIONES <url>
Y las opciones más usadas son:

-f FMT
donde "FMT" es el formato que queremos descargar, una pequeña lista sería (sacada de manpages.ubuntu.com):
WebM video at 480p: 43
WebM video at 720p: 45 
H264 video in MP4 container at 480p: 18 
H264 video in MP4 container at 720p: 22 
H264 video in MP4 container at 1080p: 37 
H264 video in FLV container at 360p: 34 
H264 video in FLV container at 480p: 35 
H263 video at 240p: 5
3GP video: 17

Nota importante: en caso que no esté el formato requerido, el programa parará y no seguirá descargando; al contrario de la opción --max-quality

-t
esto es para que el título del video quede en el nombre del archivo descagado.

--max-quality webm
--max-quality mp4
Si quieres descargar en la resolución máxima simplemente, pones uno de estos dos (según el formato que prefieras) y listo.
Nota importante: esta opción te descargará SIEMPRE en la mejor calidad, y en caso que no esté el archivo de mayor calidad en el formato puesto, lo descargará en el otro formato.

--playlist-start=N
Donde empieza a descargar los videos. Si no lo pones empieza del primero (el 1).

--playlist-end=N
Donde termina de descargar los videos, si no lo pones termina en el último (el -1)

-R R
Donde R es el número de reintentos para descargar un video

-r L
Donde L es la velocidad máxima, va con sufijo de la unidad por ejemplo: 50k o 2m

-u UN
Donde UN es tu nombre de usuario
-p PW
Donde PW es tu contraseña, útil si es un video con restricción de edad o cosas así.

Personalmente lo uso algo así:
$ youtube-dl -f 45 -t http://www.youtube.com/playlist?list=PLfHn....

Fuente y para más información (en inglés), acá.

domingo, 28 de abril de 2013

Uso sencillo de chmod

¿No les ha pasado que están en linux y no pueden acceder/escribir/ejecutar un archivo porque les sale el candadito (en modo gráfico), o les dice que no tienen permisos (en modo consola)? Una opción es logearse como root, pero eso sólo sirve si es un archivo de sistema (los cuales NO DEBEN cambiarle los permisos). Pero si es un archivo como una peli o algo así, lo mejor es cambiarle los permisos, y en vez de marearse con los "chmod a+rwx", lo más fácil es aprenderse los numeritos octales (ya que van del 0 al 7) y listo xD Acá va un minituto de menos de 140 carácteres:
Tuto rápido chmod: 0 nada, 1 ejecutar, 2 escribir, 4 leer. Los van sumando. se ponen 3: usuario, grupo, todos. ej "sudo chmod 662 archivo"

En realidad el 2 y el 3 rara vez se usan. Lo más típico es que si es un archivo común (no ejecutable) le pongas "666", y si es un ejecutable, le pongas "777". Ahora eso es útil cuando sólo tú usas el pc. Si hay más usuarios involucrados piénsalo bien, especialmente el tercer número (a todos).

Más información del tema (en inglés) acá.

 ------------------------
Edito:
¿De dónde nacen esos números? -y esto es la palta para aprendérselo-.
Es bastante sencillo. En linux los permisos son 3:  leer, escribir y ejecutar, los cuales son resumidos en "rwx" (Read, Write, eXecute).
Si han usado "ls -l", notarán que les aparecen nueve carácteres de permisos (más el primero que representa si es un archivo o carpeta). Estos permisos tienen valores booleanos, es decir o es "r" o es "-", es sí o no.
Sabiendo esto ¿Cómo podemos simplificarlo, para en vez de tener 3 carácteres, tener uno solo? Simple, transformémoslo a binario, poniéndole a cada permiso un 1 o un 0.
Por ejemplo si teníamos los tres permisos, es decir rwx; en binario sería: 111. Si tenemos sólo rw- sería: 110; y así sucesivamente.
Ahora lo único que queda es transformar ese número binario a número decimal, poniendo a cada 1 un exponente en base dos de la posición (comenzando en 0).
Así si tenemos 110, sería: (2*1)^2 + (2*1)^1 + (2*0)^0 = 4+2 = 6.
Y así es como se obtienen los valores octales de los permisos.