Este error es muy comun cuando empezamos a trabajar con Rails, y no te nemos grandes conocimientos sobre el tema, al momento que nosotros creamos un proyecto en rails con el comando

CODE:
  1. rails my_proyect
  2. create
  3. create  app/controllers
  4. create  app/helpers
  5. create  app/models
  6. create  app/views/layouts
  7. create  config/environments
  8. create  config/initializers
  9. create  db
  10. create  doc
  11. create  lib
  12. create  lib/tasks
  13. create  log
  14. create  public/images
  15. create  public/javascripts
  16. create  public/stylesheets
  17. create  script/performance
  18. create  script/process
  19. create  test/fixtures
  20. create  test/functional
  21. create  test/integration
  22. create  test/unit
  23. create  vendor
  24. create  vendor/plugins
  25. create  tmp/sessions
  26. create  tmp/sockets
  27. create  tmp/cache
  28. create  tmp/pids
  29. create  Rakefile
  30. create  README
  31. create  app/controllers/application.rb
  32. create  app/helpers/application_helper.rb
  33. create  test/test_helper.rb
  34. create  config/database.yml
  35. create  config/routes.rb
  36. create  config/initializers/inflections.rb
  37. create  config/initializers/mime_types.rb
  38. create  config/initializers/new_rails_defaults.rb
  39. create  config/boot.rb
  40. create  config/environment.rb
  41. create  config/environments/production.rb
  42. create  config/environments/development.rb
  43. create  config/environments/test.rb
  44. create  script/about
  45. create  script/console
  46. create  script/dbconsole
  47. create  script/destroy
  48. create  script/generate
  49. create  script/performance/benchmarker
  50. create  script/performance/profiler
  51. create  script/performance/request
  52. create  script/process/reaper
  53. create  script/process/spawner
  54. create  script/process/inspector
  55. create  script/runner
  56. create  script/server
  57. create  script/plugin
  58. create  public/dispatch.rb
  59. create  public/dispatch.cgi
  60. create  public/dispatch.fcgi
  61. create  public/404.html
  62. create  public/422.html
  63. create  public/500.html
  64. create  public/index.html
  65. create  public/favicon.ico
  66. create  public/robots.txt
  67. create  public/images/rails.png
  68. create  public/javascripts/prototype.js
  69. create  public/javascripts/effects.js
  70. create  public/javascripts/dragdrop.js
  71. create  public/javascripts/controls.js
  72. create  public/javascripts/application.js
  73. create  doc/README_FOR_APP
  74. create  log/server.log
  75. create  log/production.log
  76. create  log/development.log
  77. create  log/test.log

Nos crea por default en la carpeta config de nuestro proyecto un archivo llamado database.yml el cual contiene algo parecido

CODE:
  1. # SQLite version 3.x
  2. #   gem install sqlite3-ruby (not necessary on OS X Leopard)
  3. development:
  4. adapter: sqlite3
  5. database: db/development.sqlite3
  6. timeout: 5000
  7.  
  8. # Warning: The database defined as "test" will be erased and
  9. # re-generated from your development database when you run "rake".
  10. # Do not set this db to the same as development or production.
  11. test:
  12. adapter: sqlite3
  13. database: db/test.sqlite3
  14. timeout: 5000
  15.  
  16. production:
  17. adapter: sqlite3
  18. database: db/production.sqlite3
  19. timeout: 5000

Este archivo nos indica la configuracion que tomara Rails para acceder a la base de datos, podemos observar que nos hacen la indicacion de que hay que instalar sqlite3-ruby esto lo hacemos con el comando.

CODE:
  1. gem install sqlite3-ruby

Pero si nosotros usamos otra base de datos por ejemplo en mysql, hay que cambiar la configuracion, para poder acceder a mysql y no a sqlite.

CODE:
  1. development:
  2. adapter: mysql
  3. database: recetario
  4. username: root
  5. password: sigmaboy
  6. host: localhost
  7.  
  8. # Warning: The database defined as "test" will be erased and
  9. # re-generated from your development database when you run "rake".
  10. # Do not set this db to the same as development or production.
  11. test:
  12. adapter: mysql
  13. database: recetario
  14. username: root
  15. password: sigmaboy
  16. host: localhost
  17.  
  18. production:
  19. adapter: mysql
  20. database: recetario
  21. username: root
  22. password: sigmaboy
  23. host: localhost

Con esto podemos solucionar el error de

CODE:
  1. no such file to load -- sqlite3

:D

Conky es un monitor de sistema como muchos otros, lo que lo hace especial y que le da la ventaja sobre los demas, es la gran capacidad de configuracion que tiene, desde unos cuantos mensajes en modo texto, hasta graficas y barras de estado de los diferentes aspectos de nuestra PC la memoria swap, ram, los sistemas de archivo, procesos, procesadores, etc..

En este articulo, vamos a ver desde la instalacion hasta la configuracio basica del archivo conkyrc, que es el archivo de configuracion del conky.

La instalacion, como cualquier otra aplicacion de ubuntu, la instalamos con apt-get

CODE:
  1. sudo apt-get install conky

El archivo de configuracion .conkyrc se localiza en el directorio personal, como pueden notar al tener el punto antes del nombre nos indica que es un archivo oculto, ahora vamos a ver el siguiente ejemplo:

Este es el mio:

Y este es el codigo

CODE:
  1. alignment top_right
  2.  
  3. background no
  4.  
  5. cpu_avg_samples 2
  6. net_avg_samples 2
  7. update_interval 1
  8.  
  9. default_color white
  10. default_shade_color black
  11. default_outline_color blue
  12.  
  13. draw_borders no
  14. draw_shades no
  15.  
  16. border_margin 1
  17. border_width 1
  18.  
  19. gap_x 20
  20. gap_y 20
  21.  
  22. minimum_size 200
  23. maximum_width 200
  24.  
  25. override_utf8_locale yes
  26. use_xft yes
  27. xftfont Terminus:size=8
  28. xftalpha 0.8
  29.  
  30. own_window yes
  31. own_window_transparent yes
  32. own_window_hints undecorated,below,sticky,skip_taskbar,skip_pager
  33.  
  34. use_spacer yes
  35. double_buffer yes
  36. no_buffers yes
  37.  
  38. TEXT
  39. ${color #ffffff}${font Zekton:style=Bold:pixelsize=30}${alignc}${time %H:%M:%S}
  40. ${color #FFCC66}${font Zekton:style=Bold:pixelsize=12}${alignc}${time %A %d de %B}
  41. ${color #33CCFF}${font weather:size=60}${execi 600 ~/scripts/conditions.sh}${alignc}${font}${execi 1200 ~/scripts/pogodynka.sh}
  42. ${color}${font StyleBats:size=14}O ${font}${color #0077ff}Encendido: ${color }$uptime
  43. ${color }${font StyleBats:size=14}Q ${font}${color #0077ff}Kernel:${color }$kernel
  44. ${color}${font StyleBats:size=14}A ${font}${color #00FF99}CPU-1:${color } ${cpu cpu0}%
  45. ${cpugraph cpu0 20,200 ff0000 0000ff}
  46. ${color}${font StyleBats:size=14}A ${font}${color #00FF99}CPU-2:${color } ${cpu cpu1}%
  47. ${cpugraph cpu1 20,200 ff0000 0000ff}
  48. ${color}${font StyleBats:size=14}A ${font}${color #00FF99}CPU-3:${color } ${cpu cpu2}%
  49. ${cpugraph cpu2 20,200 ff0000 0000ff}
  50. ${color}${font StyleBats:size=14}8 ${font}${color #FF3333}TOP CPU:
  51. ${color #ddaa00} ${top name 1}${top cpu 1}
  52. ${color lightgrey} ${top name 2}${top cpu 2}
  53. ${color lightgrey} ${top name 3}${top cpu 3}
  54. ${color}${font StyleBats:size=14}8 ${font}${color #FF3333}TOP MEM:
  55. ${color #ddaa00} ${top_mem name 1}${top_mem mem 1}
  56. ${color lightgrey} ${top_mem name 2}${top_mem mem 2}
  57. ${color lightgrey} ${top_mem name 3}${top_mem mem 3}
  58.  
  59. ${color #0077ff}MEM:  ${color } $memperc% $mem/$memmax
  60. ${membar 4,200}
  61. ${color #0077ff}SWAP: ${color } $swapperc% $swap/$swapmax
  62. ${swapbar 4,200}
  63. ${color #0077ff}ROOT:  ${color }${fs_free /}/${fs_size /}
  64. ${fs_bar 4,200 /}
  65. ${color #0077ff}SDA1:  ${color }${fs_free /media/sda1}/${fs_size /media/sda1}
  66. ${fs_bar 4,200 /media/sda1}
  67. ${color #0077ff}SDA5:  ${color }${fs_free /media/sda5}/${fs_size /media/sda5}
  68. ${fs_bar 4,200 /media/sda5}
  69.  
  70. ${color #0077ff}WIFI: ${color #888888}IP: ${color #CCCCCC}${addr eth1}
  71. ${color #0077ff}Senal: ${color }${wireless_link_qual_perc eth1} ${wireless_link_bar 4 eth1}
  72. ${color #0077ff}DOWN: ${color #CCCCCC}${downspeed eth1} k/s          ${color #0077ff}UP: ${color #CCCCCC}${upspeed eth1} k/s
  73. ${color #888888}${downspeedgraph eth1 25,90 ff0000 0000ff}${alignr}${color #888888}${upspeedgraph eth1 25,90 0000ff ff0000}
  74. ${color #0077ff}TOTAL: ${color #CCCCCC}${totaldown eth1}           ${color #0077ff}TOTAL: ${color #CCCCCC}${totalup eth1}

Lo primero que hay que hacer es lo siguiente, como podran ver el conky tiene unas imagenes en los monitores como iconos, estas solo letras de fuentes especiales entonces instalaremos estas fuentes en nuestro sistema las fuentes a usar son weather y StyleBats, las encuentran [aqui]

Hay que desempaquetar y copiar las fuentes al directorio correspondiente

CODE:
  1. tar -xzf Fuentes.tar.gz

Nos cambiamos al directorio que acabamos de crear y copiamos las fuentes a una carpeta que crearemos que se llamara misfuentes

CODE:
  1. cd Fuentes
  2.  
  3. sudo mkdir /usr/share/fonts/truetype/misfuentes
  4.  
  5. sudo cp weather.ttf StyleBats.ttf PizzaDude\ Bullets.ttf /usr/share/fonts/truetype/misfuentes

Le indicamos al sistema que actualice las fuentes

CODE:
  1. fc-cache -f -v

Para poder ver el estado del clima en el conky vamos a usar los siguientes script:

Ahora veremos la configuracion de Conky, en lo que se refiere a comportamiento y caracteristicas del sistema.

CODE:
  1. #Margen y tamano del borde en pixeles
  2. border_margin 1
  3. border_width 1
  4.  
  5. #Este es el espacio que tendra de margen el conky con respecto a la pantalla, en estas cordenadas tendra el espacio sufisiente para aparecer debajo de la barra superior del escritorio, expresado en pixeles
  6. gap_x 20
  7. gap_y 20
  8.  
  9. #Indicamos el ancho del monitor del conky en pixeles
  10. minimum_size 200
  11. maximum_width 200
  12.  
  13. #Forzar el uso de UTF8
  14. override_utf8_locale yes
  15.  
  16. #Si usamos UTF8 es necesario usar xft
  17. use_xft yes
  18.  
  19. #Indicamos la fuente y tamano a usar en el monitor
  20. xftfont Terminus:size=8
  21.  
  22. #Trasparencia que tendra el texto XFT
  23. xftalpha 0.8
  24.  
  25. #Ejecutarlo en su propia ventana en lugar de usar el escritorio (requerido con nautilus)
  26. own_window yes
  27.  
  28. #Usar transparencio con own_window yes/no
  29. own_window_transparent yes
  30.  
  31. # Si pusiste yes en own_window, entonces estos hints del gestor de ventana puede ser tilizado
  32. own_window_hints undecorated,below,sticky,skip_taskbar,skip_pager
  33.  
  34. #Esto es para que se visualize en los demas escritorios, si los usamos
  35. use_spacer yes
  36.  
  37. double_buffer yes
  38. no_buffers yes

Despues de la configuracion del Conky, sigue una seccion llamada TEXT, todo lo que pongamos despues de esta seccion se visualizara en pantalla, desde un texto como hola, hasta un monitor de X servicio de la computadora, empecemos por algo sencillo.

Para esto se usa una serie de variables o mas bien funciones, a las cuales les pasamos ciertos parametros, y como resultado obtenemos un monitor.

Empesemos con esto:

CODE:
  1. ${time %H:%M:%S}

Aqui estamos invocando a la funcio time, el %H indica las horas el ":" lo imprime tal cual despues %M minutos y %S segundos. Si no le ponemos ninguna variable de formato tomara los valores declarados por default.

CODE:
  1. ${color #ffffff}${font Zekton:style=Bold:pixelsize=30}${alignc}${time %H:%M:%S}

Aqui estamos dando algo de formato, a la hora,la primera variable indica el color de la fuente a usa en hexadesimal #ffffff se puede sustituir por cualquier otro valor correspondiente a un color

CODE:
  1. ${color #ffffff}

Despues indicamos otra fuente, estilo y tamano a usar

CODE:
  1. ${font Zekton:style=Bold:pixelsize=30}

Y por ultimo le indicamos que la alineacion sera centrada (solo existe centrada y derecha ${alignr}).

CODE:
  1. ${alignc}

Y la variable a la que se le asigna todo este formato

CODE:
  1. ${time %H:%M:%S}

Cabe hacer la aclaracion que este formato es unicamente para esta linea, todas las variables monitores etc.., que se pongan en ese renglon tendra ese formato, si se pone un renglon abajo y no se indica el formato adoptara los valores por default, por eso se repite el formato, encada reglon.

La siguiente linea es la de la fecha

CODE:
  1. ${color #FFCC66}${font Zekton:style=Bold:pixelsize=12}${alignc}${time %A %d de %B}

Como se daran cuenta se repite la seccion del formato que se le dara a esta variable, color, fuente, estilo, tamaño y alineacion.

El %A indica el dia de la semana %d el dia en fecha, "de" se imprime tal cual en pantalla, y %B es el mes.

La siguiente linea es la que ejecuta el script conditions.sh y pogodynka.sh que si han el tutorial deberia estar en la carpeta scripts dentro de la carpeta personal en home.

CODE:
  1. ${color #33CCFF}${font weather:size=60}${execi 600 ~/scripts/conditions.sh}${alignc}${font}${execi 1200 ~/scripts/pogodynka.sh}

 Esta variable execi indica que se ejecutara un script con pid # en la ruta tal donde  ~ es un alias para la ruta del directorio personal, por lo que no hay q cambiarlo

${execi 600 ~/scripts/conditions.sh}

${execi 1200 ~/scripts/pogodynka.sh} La siguiente linea sigue el mismo esquema que las anteriores, la variable $uptime indica el tiempo que la computadora ha esto encendida.

CODE:
  1. ${color}${font StyleBats:size=14}O ${font}${color #0077ff}Encendido: ${color }$uptime

La siguiente linea hace referencia a la variable $kernel que nos da la imformacion del kernel que estamos usando

CODE:
  1. ${color }${font StyleBats:size=14}Q ${font}${color #0077ff}Kernel:${color }$kernel

La siguiente  variable nos dara elporcentaje del uso del cpuX donde X puede ser desde 0 hasta el n procesador que tenga su micro en el ejemplo se tienen 3 procesadores por eso se repite las mismas lineas y cambia a cpu0,cpu1,cpu2,

CODE:
  1. ${color}${font StyleBats:size=14}A ${font}${color #00FF99}CPU-1:${color } ${cpu cpu0}%

La siguiente linea nos dibujara una grfica de barra del uso del cpuX igual que la linea anterior hay que indicar cual es el numero del cpu del cual queremos la grafica,  el siguiente numero (20) es el ancho despues el (200)  la longitud de la barra, por ultimose indica un degradado de color para esto se indica en que color inicia (ff0000) y en que color termina (0000ff) estos colores seran en hexadecimal .

CODE:
  1. ${cpugraph cpu0 20,200 ff0000 0000ff}

Las siguientes lineas indican los tres  procesosprincipales que se estan ejecutando, la variable ${top name 1} indica el nombre del proceso 1 y la variable ${top cpu 1} el uso que esta haciendo del cpu dicho proceso, y asi consecutivamente.

CODE:
  1. ${color #ddaa00} ${top name 1}${top cpu 1}
  2. ${color lightgrey} ${top name 2}${top cpu 2}
  3. ${color lightgrey} ${top name 3}${top cpu 3}

Al igual que el Top Cpu  el Top Mem hace lo mismo solo que con los procesos y su uso de la memoria

CODE:
  1. ${color #ddaa00} ${top_mem name 1}${top_mem mem 1}
  2. ${color lightgrey} ${top_mem name 2}${top_mem mem 2}
  3. ${color lightgrey} ${top_mem name 3}${top_mem mem 3}

La siguiente linea usa dos variables que nos indica el uso de la memoria, la variable $memperc% nos da el porcentaje del uso de la memoria y la variable  $mem/$memmax dos da el uso de la memoria contra el total de memoria disponible

CODE:
  1. ${color #0077ff}MEM:  ${color } $memperc% $mem/$memmax

La siguiente line dibuja una grafica del uso de la memoria como parametro solo recibe el ancho y lago de la barra

CODE:
  1. ${membar 4,200}

La siguiente linea usa dos variables que nos indica el uso de la memoria swap,  la variable $swapperc% nos da el porcentaje del uso de la memoria swap usada y la variable  $swap/$swapmax dos da el uso de la memoria contra el total de memoria swap disponible.

CODE:
  1. ${color #0077ff}SWAP: ${color } $swapperc% $swap/$swapmax

La siguiente linea al igual que la de memoria dibuja una grafiaca de barra con el ancho y largo indicado

CODE:
  1. ${swapbar 4,200}

La siguientes lineas dan la imformacion de espacio en disco La variable ${fs_free /} indica el espacio disponoble en disco duro, la variable ${fs_size /} indica en cantidades el espacio usado y el disponible de todo el disco duro o el sistema de archivos usado.

CODE:
  1. ${color #0077ff}ROOT:  ${color }${fs_free /}/${fs_size /}

La siguente linea solo dibuja una grafia de barra del uso delsistema de archivos o D.D. del tamaño y largo indicado

CODE:
  1. ${fs_bar 4,200 /}

Las siguientes lineas siguientes indican como la linea anterior el espacio disponible en otros discos duros, estos discos deben de estar montados y la diferencia es que hay que indicar el directorio en dondese han montado los discos duros, en este casso hay dos discos duros sda1 y sda5

La variable  ${fs_free /media/sda1} indica el espacio disponible en dicho disco, montado en dicha direccion en este caso el directorio donde se monto fue /media/sda1

La variable ${fs_bar 4,200 /media/sda1} dibuja una grafica de barra del espacio en disco oviamente indicandole la ruta donde se monto

CODE:
  1. ${color #0077ff}SDA1:  ${color }${fs_free /media/sda1}/${fs_size /media/sda1}
  2. ${fs_bar 4,200 /media/sda1}
  3. ${color #0077ff}SDA5:  ${color }${fs_free /media/sda5}/${fs_size /media/sda5}
  4. ${fs_bar 4,200 /media/sda5}

La siguiente linea indica la  direccion Ip de la interfas de red deseada la variable ${addr eth1} es la que regresa la pireccion ip de la interfas de red eth1 la cual se puede cambir por cualquiera que este disponible en este caso eth1 es la tarjeta de red wireless

CODE:
  1. ${color #0077ff}WIFI: ${color #888888}IP: ${color #CCCCCC}${addr eth1}

La siguiente linea da el porcentaje de la potencia de la señal y una grafica de la misma donde la variable ${wireless_link_qual_perc eth1} nos indica el porcentaje y ${wireless_link_bar 4 eth1} la grafica de la señal de la tarjeta eth1, para saber las interfases de red disponibles usar el comando iwconfig para tarjetas wireless y ifconfig para tarjetas ethernet

CODE:
  1. ${color #0077ff}Senal: ${color }${wireless_link_qual_perc eth1} ${wireless_link_bar 4 eth1}

La siguiente linea nos da la velosidad de subida y descarga de nuestra interfas de red en kb la variable ${downspeed eth1} nos indica la velosidad de descarga y ${upspeed eth1} la velosidad de subida de la tarjeta de red eth1

CODE:
  1. ${color #0077ff}DOWN: ${color #CCCCCC}${downspeed eth1} k/s          ${color #0077ff}UP: ${color #CCCCCC}${upspeed eth1} k/s

La siguiente linea dibuja dos graficas que indican la velosidad de descarga  y subida la variable ${downspeedgraph eth1 25,90 ff0000 0000ff} hace la grafica eth1 es la tarjeta de red que monitorea 25 y 90 son el ancho y alto de la grafica y ff0000 0000ff el color inicial y final con el que se dibujara la grafica, de la misma manera para ${upspeedgraph eth1 25,90 0000ff ff0000}

CODE:
  1. ${color #888888}${downspeedgraph eth1 25,90 ff0000 0000ff}${alignr}${color #888888}${upspeedgraph eth1 25,90 0000ff ff0000}

La ultima linea nos indicara el total en Mb de datos enviados y recividos la variable ${totaldown eth1} es la que indicara el total de datos descargados de la tarjeta de red eth1 y la variable  ${totalup eth1} para los datos enviados.

CODE:
  1. ${color #0077ff}TOTAL: ${color #CCCCCC}${totaldown eth1}           ${color #0077ff}TOTAL: ${color #CCCCCC}${totalup eth1}

Con esto terminamos la descripcion del codigo de configuracion del conky existen muchas otras variables de comfiguracion disponibles, aqui se mostraron las mas basicas para poder obtener un monitor vistoso y funcional.

Si desean mas inforamcion y variables visiten las siguientes paginas http://conky.sourceforge.net/variables.html y http://conky.sourceforge.net/config_settings.html

Espero haya sido explicito y no muy redundante.

Saludos

6 Apr 2008

Como cambiar la contraseña de MySQL

In: LINUX, MYSQL, UBUNTU

Hay veces que al instalar el mysql, tenemos el problema de

Error
MySQL ha dicho:

#1045 - Access denied for user: 'user@localhost' (Using password: YES)

Si olvidamos la contrasena o de plano nunca la tuvimos y necesitamos logearnos en mysql. La solucion es la siguiente.

Primero hay que deterner el servidor de mysql

CODE:
  1. /etc/init.d/mysql stop

Despues iniciaremos el servidor en modo seguro, ignorando las tablas de permisos

/usr/bin/mysqld_safe --skip-grant-tables &

Con esto podemos entrar a mysq, le indicamos que la tabla a usar es mysql y ejecutamos una consulta que nos permitira cambiar la contrasena actual del usuario que necesitemos , despues de ejecutar la consulta, reiniciamos los privilegios, por ultimo salimos.

CODE:
  1. mysql
  2. use mysql;
  3. UPDATE user SET Password=PASSWORD('nueva_contraseña') WHERE User=\"root\";
  4. flush privileges;
  5. exit

Y solo nos queda detener el de nuevo el servidoe de mysql y volverlo a iniciar

CODE:
  1. /etc/init.d/mysql stop
  2. /etc/init.d/mysql start

Esto lo he provado en ubuntu 7.4 y 7.10

Categories

Twitter