Mostrando las entradas con la etiqueta Raspberry PI. Mostrar todas las entradas
Mostrando las entradas con la etiqueta Raspberry PI. Mostrar todas las entradas

viernes, 2 de mayo de 2014

6 - Raspberry PI - Montaje de dispositivos y asignacion de permisos.

Para montar un disco externo de manera automatica y asignar permisos de usuarios podemos usar la tabla filesystem o sistema de archivos, de esta manera podemos acceder desde la red SAMBA con sus permisos definidos en /etc/samba/smb.conf  y en nuestro raspberry pi con mayores privilegios.


 sudo nano /etc/fstab



/etc/fstab
# <file system>        <dir>         <type>    <options>             <dump> <pass>
/dev/sda1              /             ext4      defaults,noatime      0      1
/dev/sda2              none          swap      defaults              0      0
/dev/sda3              /home         ext4      defaults,noatime      0      2


Este archivo se divide, por el dispositivo el punto de montaje el tipo de particion o sistema de archivos y las opciones en las cuales podemos definir los permisos e identificacion del dispositivo, una muy interesante es la id UUID o la id unica asociada al dispositivo, disco externo, pendrive, etc, para averiguarla podemos usar el comando blkid

blkid

donde nos muestra el UUID del pendrive y quedaria algo asi

UUID="6FD9-2E1A" /media/PENDRIVE      vfat    auto,exec,rw,gid=www-data,fmask=0,dmask=0      0 0 


dentro de las opciones tenemos

auto = se monta el dispositivo automaticamente
exec=permite la ejecucion de binarios
rw=permite lectura y escritura
uid = id del usuario por ejemplo root o pi etc
gid= id del grupo por ajemplo root www-data etc.
fmask= bueno estos son como limitadores o sea quitan permisos a archivo
dmask=este es igual al anterior pero quita permisos a directorios

 seria algo asi

donde 1 permitido
donde 0 no permitido

y se dividen en U -> usuario G-->grupo O-->otros

       u    g   o
r     1    1   0
w    1    1   0
x     1    1   0

si usamos para dar permisos los siguientes chmod chgrp

sudo chmod u=r+w+x , g=r+w , o=r /archivo

si listamos vemos algo asi

ls -l archivo

drwxrwxrwx  -> un directorio con permisos u=rwx   g=rwx  o=rwx
-rwxrwxrwx ->   un archivo con permisos     u=rwx   g=rwx  o=rwx

Otra es verlo como un sitema octal porque usa 9 elementos o sea del 0 al 8 entonces podemos escribir
  u      g      o
rwx  rwx  rwx
111  111  111  ->binario
012  345  678  ->octal

sii activamos los siguientes bits
111 111 111   eso en ocatal es 777 el famoso

sudo chmod 777





El unmask es una mascara, es como hacer 777 - 022 = 755 que en binario seria 111101101
111 111 111    --> 777 chmod 777
000 010 010    --> 022 fmask o unmask 022 o los permisos que sean
111 101 101    --> 755 resultado chmod 755

es medio heavy pero es bueno saberlo....

Sldos...














                            

lunes, 28 de abril de 2014

5 - Raspberry PI - Recurso compartido de red con SAMBA

Instalamos samba este servicio nos permite compartir recursos dispositivos o archivos en nuestra red linux con windows funciona bajo el puerto 139 netbios y 445 netbios

Ayuda acerca de servicios y puertos
Link de servicios y puertos conocidos para usar con zenmap
http://es.wikipedia.org/wiki/Anexo:N%C3%BAmeros_de_puerto

Zenmap no puede dar una visión de lo servicios que tenemos corriendo en nuestro server y puertos abiertos ya que esto por ahora funciona desde la LAN privada, pero si nosotros queremos acceder desde la WAN através de la nube o internet, cualquiera podría entrar al servicio si no esta con contraseñas o algún fallo del software de servicio.
Es importante saber que puerto tenemos abiertos y que servicio esta escuchando en el.



entramos a la shell remota de raspberry

ssh nom_user@ip

Instalamos samba en raspberry pi
sudo apt-get install samba samba-common-bin

archivo de configuracion de lo que vamos a compartir
sudo nano /etc/samba/smb.conf

agregamos al final los recursos a compartir en nuestra red con respecto a los permisos es todo un tema aparte ya que se pueden asignar desde varios lugares y muchos metodos.


create mask=777
directory mask=777


con esto ya podes ver tu home y tu pendrive de raspy desde entorno de red acceder a los mismos y escribir en ellos.

******************smb.conf****************************************

[pihome]
comment= PI Home
path=/home/pi
browseable=yes
writable=yes
only guest=no
create mask=777
directory mask=777
public=no

[NAS]
comment=Disco NAS
path=/media/PENDRIVE
browseable=yes
writable=yes
only guest=no
create mask=777
directory mask=777
public=no

**********************************************************************
ctrl -o
ctrl -x
sudo reboot

o paramos el servicio de samba
sudo /etc/init.d/samba stop
sudo /etc/init.d/samba restart

y ya esta

en /etc/init.d/ se encuentran muchos servicio que se inician de forma automatica realizados en script bash vamos a realizar unos cuantos para algunos servicios.





Sldos con respecto a permisos voy a hacer un post porque es todo un tema aparte...

4 - Raspberry PI - Escritorio remoto de Raspy con VNC

Bueno esto pueden instalarlo o no es el escritorio remoto de raspy para instalarlo tienen que entrar a raspy a traves de la shell remota  el servicio VNC corre bajo el puerto 5900 o 5901 o por ahi cerca....

ssh nombre_usuario@ip_raspy

sudo apt-get install tightvncserver

una ves instalado en raspberry pi ejecutar la shell remota todo desde la notebook

tightvnserver :1 -geometry 800x600 -depth 24

en una shell local o sea en tu notebook instalar el cliente VNC viewer en UBUNTU

sudo apt-get install xtigthvncviewer

para conectarte seria

sudo xtightvncviewer ip_raspy:1

el :1 es el numero de escritorio pueden lanzar varios desde el server.

notebook local   ------>  raspberry pi  corriendo el servicio vnc por el puerto 5901 y ssh por el puerto 22
shell local
shell remota conectado al puero 22 de raspy.



Para arrancar el server VNC en el arranque de raspberry agregar el siguiente archivo en /etc/init.d/

cd /etc/init.d/
sudo nano vnc.sh
y copian el archivo



luego lo actualizan
sudo update-rc.d vnc.sh defaults 0
y arrancara cuando reinicien de manera automática.

Sldos.....





3 - Raspberry PI - Configurar Raspy atraves de la shell remota segura SSH

Ahora lo mas interesante conectarnos a nuestra raspy con una shell remota desde win o linux yo lo voy a hacer desde linux ubuntu todo bien con win pero lo odio jeje
Bien ya tienen su SD y raspy conectada a su red wifi con ip privada estatica ahora lo ideal es no usar pantallas y conectarnos de manera remota por una terminal.
Este servicio se conoce como SSH o secure shell y corre bajo el puerto 22 y si todo esta bien para acceder solo tienen que abrir una shell local en su linux desde su notebook o pc y teclear

ssh nombre_usuario@ip_raspy
ej
ssh pi@193.56.4.200
les pide la clave de raspy y entran a raspy atraves del shell



que pueden hacer desde aca de todo instalar programas editar archivos todo via wifi si quedo bien si no por ethernet.

Sldos.. perdon por la ortografia...



2 - Raspberry PI - Configuracion Interfaces de red ETH y WIFI para Raspy

Paso muy importante conectar las raspy a un TV con entrada HDMI o pantalla con entrada RCA y conectar el cable de red ya sea para instalar con NOOBS o BerryBoot su distro preferida o cargar la SD con la distro instalada.
Muy importante es configurar su red ya sea ethernet o wifi(dongle usb wifi)

Debido a noches de sufrimiento ya que no soy un genio hay dos formas de hacerlo una es grafica y otra por comandos.
Cuando conectan la raspy a su router wifi en el puerto lan este al estar configurado como server DHCP les asigna una ip "privada dinamica" para saber si raspy detecto bien su placa de red wifi ya que la ethernet es integrada y siempre funciona pero no queremos andar con cables

teclear en la shell

lsusb "muestra todo el hardware usb donde va a aparecer el dongle wifi"



luego
ifconfig "muestra si tienen interface wlan o sea les cargo bien el driver "


hasta ahi bien ahora hay que decirle a raspy donde conectarse ip privada dinamica o estatica.

ahora usando el archivo interfaces es bastante rapido si lo configuran bien

editor de texto nano

sudo nano /etc/network/interfaces

para guardar ctrl -o
para salir ctrl -x


van a ver algo asi interface loopback - ethernet - wifi
y dice que el router nos provee la ip por DHCP y que la clave es WEP
por ej el DHCP asignara ip desde 193.56.5.2 al 193.56.5.255

******ip privada dinamica wep*********************************************

auto lo
iface lo inet loopback

iface eth0 inet dhcp


auto wlan0

iface wlan0 inet dhcp
    wireless-essid nombre_router_wifi
    wireless-key s:clave_wep
********************************************************************



Otra forma y la que yo uso para asignarle una ip privada estatica y poder conectarnos desde una shell remota.

*****ip privada estatica para wifi wep******************************************

auto lo

iface lo inet loopback
iface eth0 inet dhcp

auto wlan0
#allow-hotplug wlan0
#iface wlan0 inet dhcp
iface wlan0 inet static
        address xxx.xxx.xxx.xxx ip de la raspy
        gateway xxx.xxx.xxx.xxx   ip de router 
        netmask xxx.xxx.xxx.xxx mascara de subred del router
        wireless-essid xxx
        wireless-key s:xxx formato texto
*****************************************************************

Que clave usar recomiendo wap por seguridad pero para empezar con esto basta cambian el archivo lo guardan y reinician

 sudo reboot
o paran el servicio de red y lo reinician
sudo /etc/init.d/networking stop
sudo /etc/init.d/networking start 

posibles errores son el ESSID va en texto plano igual que la contraseña por la s hay otros modificadores  .

        wireless-essid xxx
        wireless-key s:xxx formato texto

Otros comandos utiles
route -v tracea la ruta hasta su gateway
ping ip o host para ver si esta activa una maquina o raspy


Sldos esto sera actualizado para WPA..

lunes, 21 de abril de 2014

1 - Raspberry PI - Configurando a Raspy para utilizarlo como servidor NAS

Bueno este es mi ayuda memoria de todo lo que sufri para realizar un servidor NAS o almacenamiento remoto o sistema de archivo visible para la LAN a traves de SAMBA y accesisble por la WAN a traves de OwnCloud, sincronizando directorios y su contenido por medio de Bitorrent Sync ya sea por LAN o WAN se puede utilizar como SVN(subversion - tortoiseSVN - rabbitSVN) o BACK-UP de nuestro contenido multimedia y acceder desde la LAN o WAN.



Materiales a utilizar:
Raspberry Pi
Dongle Wifi
Disco externo o Pendrive
TV – monitor con entrada HDMI o RCA (solo para la instalación)
Teclado USB o Inalámbrico (solo para la instalación) 

Instalacion de Raspbian en una SD 

Noobs: Lo descargan y lo descomprimen en la memoria SD en lo posible de 8GB arrancan la raspy y eligen que instalar.
Lo bueno SO actualizados.
Lo malo solo eligen una sola vez no pueden agregar otro SO porque elimina todo.

Berryboot: Lo descargan y lo descomprimen en la memoria SD en lo posible de 4GB u 8GB arrancan la raspy y eligen que instalar.
Lo bueno permite actualizar la lista de SO que queremos.
Lo malo los SO están desactualizados. 

w32diskimager o usbimagewriter: Este programa permite copiar una imagen y hacerla arrancable se descargan el file.img y lo queman en la SD hay una versión para Linux o Win.

Que distro instalar Raspbian o Openelec(XBMC). ?

Raspbian es una version de Debian para el prosesador ARM
Openelec es una version de XBMC para el prosesador ARM usado generalmente con un TV para ver contenido multimedia, pelicualas, videos musica, acceder a redes compartidas etc. 

Una ves que arrancamos Raspy con Raspbian nos pedirá usuario y contraseña esto se puede cambiar.

Usuario: PI
Contraseña: Raspberrypara cambiar la contraseña hacer modificaciones y expandir la memoria SD teclear en la shell


sudo raspi-config
 
Web a las cuales tienen que entrar 
pagina oficial de descarga de raspberry pi
http://www.raspberrypi.org/downloads/

berryboot (bajar el zip y descomprimir en la SD)
https://github.com/maxnet/berryboot 
 
usb-imagewriter para ubuntu

sudo apt-get install python-glade2
sudo apt-get install usb-imagewriter
sudo imagewriter

 win32diskimager para win
http://sourceforge.net/projects/win32diskimager/ 



Sldos voy a actulizar a medida que encuentre algo nuevo o por correcciones :)..