Último Anime
Último Manga

Tema oficial de linux (con dudas y soluciones)

Para hablar de todo lo que se os ocurra y temas sin foro propio.

¿Cual es tu distribución de linux que más usas o te gusta? (todas incluyen variantes)

Fedora
2
6%
Gentoo
0
No hay votos
Debian
1
3%
Ubuntu
22
71%
Suse
2
6%
Mandriva
2
6%
SlackWare
0
No hay votos
Alguna no mencionada aqui
2
6%
 
Votos totales : 31

Re: Tema oficial de linux (con dudas y soluciones)

Notapor alex_orochi el Dom Jul 03, 2011 10:21 am

Nuevo aporte para todos los amantes del php. Tras pelearme un muy buen rato con el php, y encontré esta como la mejor manera de instarlo:

Para esto debemos hacer algunos pasos:

1.-Debemos instalar el servidor de apache. Se puede conseguir a través de su página oficial, o bien, a través del repositorio en terminal:
Código: Seleccionar todo
sudo apt-get install apache2


Para versiones anteriores, solo debe instalarse apsx

2.-Debemos instalar, el servidor de mysql, de esta manera
Código: Seleccionar todo
sudo apt-get install mysql-server-númerodeversión

Donde númerodeversión es la versión que más se les facilite de instalar, en mi caso, yo instalé la 5.1. Para ver que versión tienen en sus repositorios, aprieten la tecla <TAB>, les mostrará las opciones a instalar.

Ahora, una vez instalado, verán que al hacer
Código: Seleccionar todo
mysql -u root -p

Les dirá que el password no es reconocible. Para poder agregar al usuario root, tecleamos con permisos de root el siguiente comando:
Código: Seleccionar todo
/etc/init.d/mysql stop

Después, tecleamos el siguiente comando:
Código: Seleccionar todo
/usr/bin/mysqld_safe --user=mysql --skip-grant-tables

Ahora, abrimos otra terminal, y hacemos lo siguiente: entramos en mysql con el comando
[quote=php]mysql[/quote]
y dentro de mysql, ponemos:
Código: Seleccionar todo
UPDATE user SET Password=PASSWORD('nuestro_password'WHERE user='root';  

Salimos:
Código: Seleccionar todo
exit  


cerramos esa terminal y nos regresamo a la anterior. Y ahora sí, inicializamos el servicio de mysql:
Código: Seleccionar todo
/etc/init.d/mysql start


Reiniciamos el sistema

3.-Recomiendo utilizar el XAMPP, ya que aunque se puede seguir instalando php5 en consola, configurarlo y hacerlo funcionar en lo personal me costaba bastante.

Una vez descargado el repositorio, lo descomprimos con permisos de root en la carpeta /opt, así:

Código: Seleccionar todo
tar xzvf repositoriobajado.tar.gz -/opt

Donde repositoriobajado es el nombre del repositorio que descargamos (normalmente XAMPP y su número de versión.

Una vez terminada la operación, debemos detener los servicios de apache y mysql, puesto que van a tener problemas para usarse con XAMPP, para esto lo hacemos con estos dos comandos:

Código: Seleccionar todo
/etc/init.d/apache2 stop

Código: Seleccionar todo
/etc/init.d/mysql stop

(Este paso lo van a tener que realizar cada que prendan de nuevo el sistema y quieran utilizar php)

Una vez hecho este paso, simplemente hagan:

Código: Seleccionar todo
/opt/lampp/lampp start


Y comprueban tecleando (o dando link aquí) http://localhost/phpmyadmin. Si sale el menu de phpmyadmin, es que finalmente han terminado de instalar php.

Ahora sí, recomiendo que sigan los pasos finales de este tutorial para que les quede php ya bien instalado

Saludos
Hablemos de tautologías: Todo caballero respeta el pacto de caballeros. El que no es caballero, entonces es P***. Entonces, si un caballero no respeta el pacto de caballeros, entonces no es caballero. Y si no respeta el pacto, entonces es P***

alex_orochi
Teniente Primero
Teniente Primero
 
Mensajes: 1850
Registrado: Vie Feb 29, 2008 2:56 am
Ubicación: Con May-chan ¡Vigilándolos bastardos!
Edad: 24
Sexo: Masculino

Re: Tema oficial de linux (con dudas y soluciones)

Notapor andres_kun el Jue Jul 07, 2011 4:45 pm

Yo apenas suelo usar Linux, la verdad es que me gusta windows con sus problemas y todo eso xD

Pero de los linux que he usado el que más me gusta es ubuntu, y la verdad es que cuando empiece a programar no descartaré el usar ubuntu, dicen que es mucho mejor.
Avatar de Usuario
andres_kun
Recluta Privado de Segunda
Recluta Privado de Segunda
 
Mensajes: 118
Registrado: Mar Abr 19, 2011 1:27 pm
Sexo: Desconocido

Re: Tema oficial de linux (con dudas y soluciones)

Notapor IntroduzcaNombreAqui el Sab Jul 09, 2011 8:48 pm

Bueno aunque yo no se mucho de linux me ha tocado cacharrearle mucho, por lo que aqui hare una pequeña explicacion de como instalar lo que dijo orochi pero en centos 5 y de otra forma.

Instalacion de Mysql - Apache http server - PHP 5 - phpmyadmin:

pues yo utilize yum lo que facilito mucho las cosas:

Código: Seleccionar todo
yum install httpd php
yum install mysql mysql-server
yum install php-mysql php-mbstring php-mcrypt


La primera linea instala httpd que es el servidor apache y php instala la ultima version de php.
La segunda linea instala mysql en el equipo.
La tercera instala unos modulos necesarios para el funcionamiento de phpmyadmin, php-mcrypt creo que solo es necesario para los sistemas de 64 bits.

antes de continuar es mejor cambiar la contraseña por defecto de mysql para eso primero se arranca el servicio y luego se cambia la contraseña:

Código: Seleccionar todo
/etc/init.d/mysqld start
mysqladmin -u root password 'nueva-clave-de-acceso'


ahora descargamos el phpmyadmin desde la pagina oficial descargando la version con la cual se cumplan los requerimientos de version en php y mysql.

en este caso yo descargue la version 2.11.11.3 por medio de la consola y el comando wget, se descomprime el tar.gz y se mueve la carpeta resultante renombrandola como phpmyadmin a /usr/share

Código: Seleccionar todo
wget http://ufpr.dl.sourceforge.net/project/phpmyadmin/phpMyAdmin/2.11.11.3/phpMyAdmin-2.11.11.3-all-languages.tar.gz
tar xvzf phpMyAdmin-2.11.11.3-all-languages.tar.gz
mv phpMyAdmin-2.11.11.3-all-languages /usr/share/phpmyadmin


se cambia de directorio hacia /usr/share/phpmyadmin y se copia el archivo config.sample.inc.php en la misma carpeta pero ahora con el nombre config.inc.php con este archivo es que phpmyadmin toma su configuracion, tambien se crea un enlace simbolico del directorio /var/www/html hacia el phpmyadmin en /usr/share

Código: Seleccionar todo
cd /usr/share/phpmyadmin
cp config.sample.inc.php config.inc.php
ln -s /usr/share/phpmyadmin /var/www/html/phpmyadmin


ya luego se puede adecuar el phpmyadmin como se quiera, pero de momento lo mas importante seria elegir la forma de autentificacion de phpmyadmin, las cuales pueden ser cookie la cual presenta una pantalla amigable al usuario pidiendo usuario y contraseña, http la cual despliega una ventana aparte la cual tambien pedira usuario y contraseña o config la cual no pide contraseña ni usuario sino que ingresa con el usuario y contraseña indicados en el archivo de configuracion. mas detalle de eso aqui

bueno yo elegi el modo de autentificacion cookie, para esto es necesario modificar algunas cosas en el archivo config, utilizamos el editor que queramos

Código: Seleccionar todo
vi config.inc.php


y ubicamos la linea donde esta:

Código: Seleccionar todo
$cfg['blowfish_secret'] = ' ';


y asignamos una frase cualquiera esta se utiliza para la encriptacion de contraseñas, en mi caso:

Código: Seleccionar todo
$cfg['blowfish_secret'] = 'estaesmifrasesecreta';


y tambien se debe asegurar que el auth_type sea cookie

Código: Seleccionar todo
$cfg['Servers'][$i]['auth_type'] = 'cookie';


y listo ya solo queda reinciar el sevidor httpd

Código: Seleccionar todo
/etc/init.d/httpd restart


ya solo falta probarlo en cualquier browser en la direccion http://ip_del_servidor/phpmyadmin y debe funcionar.
Faster than the speed of stupid.
Imagen
Imagen
Avatar de Usuario
IntroduzcaNombreAqui
Oficial Técnico
Oficial Técnico
 
Mensajes: 1056
Registrado: Mié Sep 29, 2010 9:19 pm
Ubicación: Locombia
Edad: 20
Sexo: Masculino

Re: Tema oficial de linux (con dudas y soluciones)

Notapor alex_orochi el Mar Nov 15, 2011 3:46 am

Excelente aporte introduzca, sobre todo porque indicas una mejor manera de instalar apache que la convencional. Me gusta, pero de momento, en mi nuevo xubuntu 11.10 no la he probado así porque mysql lo uso con la misma contraseña del sistema (así no me hago bolas).

Y hoy, el profesor orochi les trae un nuevo apartado

Cómo instalar Glassfish con sun-java

Para esto, si son de los que usan versiones 9.10 para arriba, sabrán que Java dejó de ser parte de Sun Microsystems, para pasar a ser parte de la familia oracle. Como todos saben, esto se instala de la siguiente manera:

Código: Seleccionar todo
sudo apt-get install java-6-openjdk


Pero instalarlo así nos va a traer problemas, porque glassfish (por lo menos la versión que voy a usar en este mini-tuto y que me parece la más estable) tiene como predeterminada la carpeta donde se instala como si fuese de Sun Microsystems. Así que para agregar este apartado, simplemente hacemos en una terminal:

Código: Seleccionar todo
sudo nano /etc/apt/sources.list 


Nos desplazamos hasta el final del documento y agregamos esto:

Código: Seleccionar todo
deb http://archive.canonical.com/ lucid partner       
(creo que había una para nauty, pero no estoy seguro, esta de lucid me funcionó).

Con esto, ahora sí, le ponemos a la terminal el siguiente comando:

Código: Seleccionar todo
sudo apt-get install sun-java6-jdk sun-java6-jre


Dejan que termine de instalar. Y cuando ya vean su promt, teclean:

Código: Seleccionar todo
javac


Si les sale varios comandos de este tipo:

Código: Seleccionar todo

implicitly referenced files 
  
-encoding <encoding>       Specify character encoding used by source files
  
-source <release>          Provide source compatibility with specified release
  
-target <release>          Generate class files for specific VM version
  
-version                   Version information
  
-help                      Print a synopsis of standard options
  
-Akey[=value]              Options to pass to annotation processors
  
-X                         Print a synopsis of nonstandard options
  
-J<flag>                   Pass <flag> directly to the runtime system


Perfecto, ya tenemos java instalado a la perfección.

El siguiente paso es descargar el software de glassfish (pesa 60 mb aprox). Recomiendo que se vajen la versión 2.1, la pueden conseguir tecleando:

Código: Seleccionar todo
 wget http://download.java.net/javaee5/v2.1_branch/promoted/Linux/glassfish-installer-v2.1-b60e-linux.jar       

(recomiendo que antes de teclear eso, se posicionen a una carpeta donde sepan donde va a descargarse, esto es para que al final podamos borrar el instalador si ya no lo necesitamos).

Ok, ahora vamos a teclear un comando de java que nos sirve para hacer instalaciones (el -Xmx256M) para ejecutar el instalador.
Código: Seleccionar todo
sudo java -Xmx256M -jar glassfish-installer-v2.1-b60e-linux.jar


El instalador les debe de dar una pantalla de este estilo:

Imagen

Desplazan la barra hasta el final para que el botón de "Accept" se active. Lo presionamos. Después, va a correr en la terminal un sin fin de comandos para finalizar con una carpeta instalada.

Ahora, lo que hacemos es lo siguiente:

Código: Seleccionar todo
sudo mv glassfish /opt


En otros tutoriales en internet en el que pueden encontrar esta guía, vi que muchos creaban un usuario (para añadir mayor seguridad) para el uso específico de glassfish. Sin embargo, en lo personal eso me parece innecesario, así que simplemente me lo voy a saltar (quien quiera que le explique esta parte con mucho gusto la haré).

Lo siguiente entonces es darle permisos a los scripts de Ant de la carpeta glassfish. Para esto, usamos el comando:

Código: Seleccionar todo
cd /opt/glassfish/
sudo chmod -+x lib/ant/bin/ 


En openjdk, con esto ya sería suficiente para instalar las configuraciones. Pero sun-java no lo permite así de fácil, así que antes de instalar las configuraciones, hacemos:

Código: Seleccionar todo
sudo update-alternatives --config java


Si no se ejecuta este comando, al final les saldrá un comando diciéndoles que no puede instalar porque no encuentra una paquetería de java. Por eso incluí ese paso extra.

Lo siguiente es (ahora sí) ejecutar las configuraciones:

Código: Seleccionar todo
sudo /opt/glassfish/lib/ant/bin/ant -f setup.xml


Se tarda un poco, pero ahora, al pasarnos a la carpeta bin de glassfish debe existir un archivo (un binario) llamado asadmin. Si ya lo tienes, glassfish ya está instalado.

Ahora solo corremos este comando para probar:

Código: Seleccionar todo
sudo /opt/glassfish/bin/asadmin start-domain domain1


y vamos a firefox, chrome, opera o el que gusten, y entramos en este vínculo: http://localhost:4848/

Para desactivarlo, o para reiniciar el servidor, es casi el mismo comando, solo que poniendo "stop-domain" o "restart-domain"

Si funciona, deben de entrar a un menú que les pide contraseña. El usuario por defecto es admin y la contraseña es adminadmin (esto se puede cambiar después en la configuración).

Bueno, ya con eso, mi recomendación es que sus proyectos los hagan en su carpeta personal, y los pasen a la carpeta del servidor con el siguiente comando:

Primero, comprimimos el proyecto (con la carpeta WEB-INF/classes y demás, eso no lo explicaré aquí, en todo caso es parte del taller de programación) dentro de la carpeta del proyecto hacemos el sig comando:
Código: Seleccionar todo
jar -cvf nombredelproyecto.war * 


Luego, lo pasamos (con el servidor iniciado), con el siguiente comando:
Código: Seleccionar todo
sudo cp nombredelproyecto.war /opt/glassfish/domains/domain1/autodeploy


Haciendo esto, el proyecto se auto compila para funcionar el glassfish. Y para correrlo tenemos dos opciones:

1.-Correrlo sobre el administrado de glassfish (en web-projects, y le dan "launch)
2.-O con entrar en http://localhost:8080/nombredelproyecto

Y ya con eso debe funcionar sus proyectos.

Unos extras: como seguro usarán en sus proyectos jdbc para mysql o javamail, les recomiendo hacer estos comendos para que funcione a la perfección y sin problemas:

1.-Se instala:
Código: Seleccionar todo
sudo apt-get install libmysql-java

2.-Luego se hace un enlace simbólico:
Código: Seleccionar todo
sudo ln -/usr/share/java/mysql-connector-java.jar /opt/glassfish/lib/mysql-connector-java.jar

3.-Luego se copia en la carpeta del dominio:
Código: Seleccionar todo
sudo cp /usr/share/java/mysql-connector-java.jar /opt/glassfish/domains/domain1/lib/ext/ 


Y para javamail prácticamente lo mismo, solo que hay que descargar dicho api. La página está aquí

Y como un pilón más, esto solo sirve para bases de datos que se manejen como paquetería de java. Si lo quieren usar en un jsp directamente, es necesario crear la base de datos en la interfaz de glassfish. Y para esto, hacemos lo siguiente:

1.-Creamos una base de datos en mysql (o postgresql, la que más se les acomode, yo prefiero mysql). De nueva cuenta, esto no lo explico aquí porque ya es parte de la programación. Si quieren saber como crear una base de datos sencilla, recomiendo vayan al taller de programación para que todos lo veamos.
2.-Nos vamos a la parte de "Resources" y le decimos que agregue una nueva conexión a la base de datos con los siguientes datos:

  • Nombre de la conexión
  • en Resource Type lo dejamos como javax.sql.ConnectionPoolDataSource
  • en DatabaseVendor seleccionamos Mysql
3.-La siguiente pantalla (botón "Next") les pedirá muchísimos datos sobre la base de datos. Pero para no complicarnos en demasía, simplemente rellenaremos los siguientes:
  • User (donde aquí ponemos el usuario con el que entramos a Mysql, en mi caso, el root)
  • assword (la contraseña que usamos para entrar a mysql, en mi caso como dije, la misma que uso para todo)
  • URL: jdbc:mysql://localhost:3306/nombre_de_la_base_de_datos (donde nombre_de_la_base_de_datos es la base de datos creada con anterioridad en mysql)
  • url: jdbc:mysql://localhost:3306/nombre_de_la_base_de_datos (donde nombre_de_la_base_de_datos es la base de datos creada con anterioridad en mysql)

Y finalmente probamos haciendo PING en el menú de glassfish. Si dice "Ping succeded" listo, ya con eso ya pueden usar la base de datos dentro del código de jsp, y no en el java necesariamente.

Espero que este tuto les sea de utilidad. No encontré uno que me dijera las instrucciones tal cual las detallo acá, así que las consideré pertinentes. Quien tenga dudas, en este tema por favor.

Saludos
Hablemos de tautologías: Todo caballero respeta el pacto de caballeros. El que no es caballero, entonces es P***. Entonces, si un caballero no respeta el pacto de caballeros, entonces no es caballero. Y si no respeta el pacto, entonces es P***

alex_orochi
Teniente Primero
Teniente Primero
 
Mensajes: 1850
Registrado: Vie Feb 29, 2008 2:56 am
Ubicación: Con May-chan ¡Vigilándolos bastardos!
Edad: 24
Sexo: Masculino

Re: Tema oficial de linux (con dudas y soluciones)

Notapor Mono_Kurt el Mar Nov 15, 2011 4:04 am

Tremendo post, Aleks. Lastima que no vaya a servirme de nada porque no uso Glassfish. Y sí ya me lo he encontrado por accidente en algún lugar, ni idea. Si pudiese darte puntos por el gran trabajo que acabas de postear, te lo daría. Seguí así y enséñanos más.
ImagenImagen
Avatar de Usuario
Mono_Kurt
Recluta Privado de Primera
Recluta Privado de Primera
 
Mensajes: 256
Registrado: Sab Sep 27, 2008 12:09 am
Ubicación: Seattle
Edad: 22
Sexo: Masculino

Previo

Volver a Offtopic

¿Quién está Online?

Usuarios navegando por este Foro: poneglyph y 1 invitado