Mostrando las entradas con la etiqueta Ubuntu. Mostrar todas las entradas
Mostrando las entradas con la etiqueta Ubuntu. Mostrar todas las entradas

miércoles, febrero 05, 2014

Permitir acceso remoto root MySQL (Ubuntu )

Accedemos al archivo my.cnf:

sudo nano /etc/mysql/my.cnf

Comentar la linea donde dice:
#bind­address = 127.0.0.1

O podemos agregar:

bind­address = 0.0.0.0

Luego acceder a Mysql, escribir desde consola:

mysql ­u root ­p

Desde dentro de mySQL ejecutar:

GRANT ALL ON *.* TO root@numero_ip_remota IDENTIFIED BY 'password_del_usuario';

Salir de mysql.

Reiniciar el server mySQL:

sudo /etc/init.d/mysql restart

Recuperar contraseña root Mysql (Ubuntu server)

Para Recuperar la contraseña, debemos seguir los siguientes pasos:

1. Detener el servicio de mysql.
sudo service mysql stop

2. Iniciar mysql en modo seguro

sudo mysqld —skip-grant-tables (no cerrar la ventana)

Iniciar mysql

3. Abrir una ventana nueva y entrar a mysql

mysql

4. Cambiar a la base de datos mysql

use mysql;

5. Actualizar la contraseña del usuario.

UPDATE user SET Password=PASSWORD(‘contraseña’) WHERE user = ‘root’;

6. Reiniciar permisos en la base de datos

FLUSH PRIVILEGES;

7. Reiniciar el servicio y comprobar que funciona

(Fuente: forosdelweb.com)

miércoles, enero 22, 2014

Tareas automaticas con Crontab (Cron Jobs) por Consola.


Bueno para crear Tareas Automaticas:

Editando el archivo crontab


Primero, para editar crontab, en el terminal escribes:

sudo crontab -e

Como puedes ver, la entrada típica de crontab cumple con el formato:

[m] [h] [dom] [mon] [dow] [command]

Ahora miramos que significa cada parámetro:

Parámetro  Significado                     Rango

m          minute (minuto)                 0-59
h          hour (hora)                     0-23
dom        day of month (día del mes)      1-31
mon        month (mes)                     1-12
dow        day of week (día de la semana)  0-6 (0=Domingo)
command    command (comando)

Si miramos el archivo que se nos abre al ejecutar sudo crontab -e, veremos que nos indica que hay que escribir y en que orden.

Ahora vamos al grano con ejemplos:

Supongamos que queremos ejecutar un script el primero de cada mes, a las 4 de la tarde:

* 16 1 * * /home/usuario/Script/amarok/miscript

Ejecutar un archivo php para correr un envio de correos el primero de cada mes, además de todos los lunes,  a las 4 de la tarde por ejemplo:

* 16 1 * 1 php /home/username/public_html/miphp.php

o Importar una base de datos:

* 16 1 * 1 mysql -u mysql_user -ppassword database_name < backup.sql

Otra manera PHP

* 16 1 * 1 /usr/local/php5/bin/php5 /home/username/public_html/cron.php

SSH

* 16 1 * 1 /bin/sh /home/username/public_html/file.sh

Supongamos que deseas que el script se ejecute cada tres horas el primero de cada mes a partir de las 4 de la tarde:

* "16-23/3" 1 * * php /home/username/public_html/miphp.php

Tambien podemos especificar dos o mas variables separadas por comas (,).

Ejemplos:

Ejecutar un archivo todos los lunes cada media hora

0,30 * * * 1 php /home/username/public_html/miphp.php

O cada 15 minutos sería:

0,15,30,45 * * * * php /home/username/public_html/miphp.php

ó de la manera pasada:

*/15 * * * * php /home/username/public_html/miphp.php

Ahora vemos como pasarle mas de un comando al Cron:

30 21 * * * cd /media/sda7/user/distributions/isos;wget http://mipagina/archivo.zip

Vemos que los parametros estan separados por punto y coma (;).

Para Ver la lista de tareas que hemos programado escribimos:

crontab -l

Para borrar nuestro crontab:

crontab -r

lunes, enero 20, 2014

Instalación Tomcat 7 - Apuntes

Para Instalar escribimos:

sudo apt-get install tomcat7

Combiar los puertos por defecto:


/etc/tomcat7/server.xml

<Connector port="8080" protocol="HTTP/1.1" 
               connectionTimeout="20000" 
               redirectPort="8443" />
...
<Connector port="8009" protocol="AJP/1.3" redirectPort="8443" />

Cambiar JVM


/etc/default/tomcat7

JAVA_HOME=/usr/lib/jvm/java-6-sun

Agregamos al fichero de arranque del sistema:

$ sudo gedit /usr/share/tomcat7/bin/catalina.sh


Colocar las siguientes líneas:

#!/bin/sh
JAVA_HOME="/ruta/jdk"
JRE_HOME="/ruta/jre"
...

Crear usuarios


/etc/tomcat7/tomcat-users.xml


<role rolename="admin"/>
<user username="tomcat" password="s3cret" roles="admin"/>



Arranque:
sudo /usr/share/tomcat7/bin/startup.sh

Parada:
sudo /usr/share/tomcat7/bin/shutdown.sh

Ahora el servidor Tomcat deberia funcionarles a través del puerto 8080. La ruta local  donde se encuentran las aplicaciones es /var/lib/tomcat7/webapps.

viernes, enero 10, 2014

Desinstalar Programas Ubuntu Server

Para borrar programas desde cero y configuraciones previas:
sudo aptitude remove --purge paquete

Ejemplo borrando nano
sudo aptitude remove --purge nano

Enviar Emails en Ubuntu Server con MSMTP Via Google SMTP

Email sending from Ubuntu Server via Google Apps SMTP with MSMTP

It’s common request to allow daemons like cron or applications to send outgoing email to server’s administrator. Instead of configuring full-blown email server like Postfix you can install lightweight forwarder to real external SMTP server, while keeping binary compatibility with traditional Unix sendmail MTA.

Sendmail compatibility is crucial as it is expected by many many applications. Apart from cron, you may need it for PHP mail() function, Bugzilla mailing feature and many others stuff originating from Linux/Unix universe.

For this tutorial I chose MSMTP delegating to secured Google Apps (or Gmail) SMTP. However instructions apply to any SMTP.

Google Apps / Gmail SMTP ports

On Google Support article you find up-to-date SMTP server address and configuration. Google SMTP can be accessed only over secured TLS which complicates MSTMP setup a little.

Get prepared

First off, install MSTMP on your box:

$ sudo apt-get install msmtp


I always start with discovering remote server certificate with --serverinfo option. Also, for Gmail I changed default port 465 which never worked for me to alternative port 587. Your output would be similar to the following:

$ msmtp --serverinfo --host=smtp.gmail.com --tls=on --tls-certcheck=off --port=587 
SMTP server at smtp.gmail.com (ee-in-f109.1e100.net [173.194.65.109]), port 587: 
    mx.google.com ESMTP y12sm259113106eeb.11 
TLS certificate information: 
    Owner: 
        Common Name: smtp.gmail.com 
        Organization: Google Inc 
        Locality: Mountain View 
        State or Province: California 
        Country: US 
    Issuer: 
        Common Name: Google Internet Authority 
        Organization: Google Inc 
        Country: US 
    Validity: 
        Activation time: St 16. únor 2011, 05:38:09 CET 
        Expiration time: Čt 16. únor 2012, 05:48:09 CET 
    Fingerprints: 
        SHA1: DB:A0:2A:07:00:F9:E3:23:7D:07:E7:52:3C:95:9D:E6:7E:12:54:3F 
        MD5:  02:4C:12:F3:37:1F:0C:C1:EB:10:4B:92:F7:F1:E0:DF 
Capabilities: 
    SIZE 35882577: 
        Maximum message size is 35882577 bytes = 34,22 MiB 
    STARTTLS: 
        Support for TLS encryption via the STARTTLS command 
    AUTH: 
        Supported authentication methods: 
        PLAIN LOGIN

MSMTP configuration

MSMTP can be driven from command line for one-time use, or from user or system-wide configuration file. Configuration file location is listed on --version command.

$ msmtp --version
...
System configuration file name: /etc/msmtprc
User configuration file name: /home/libor/.msmtprc
...


If system configuration file /etc/msmtprc doesn’t exist, create it

$ sudo touch /etc/msmtprc


Copy’n'paste & customize the following configuration for your Gmail/Google Apps account. Below I configured one account and again used alternative port 587. Consult MSMTP man page for more details.

# Default settings that all others account inherit 
defaults 
auth   on 
tls   on 
tls_trust_file /etc/ssl/certs/ca-certificates.crt 

# Logging - uncomment either syslog or logfile, having both uncommented disables logging at all.
#syslog on
# Or to log to log own file
#logfile  /var/log/msmtp.log 

keepbcc  on

# Gmail/Google Apps (configure as may as you want)
account  gmail 
host   smtp.gmail.com 
port   587 
from   your@gmail 
user   your@gmail 
password  secretPassword

# Default account to use 
account default : gmail
 
Because this file contains password in plain text you should cut down its permissions. Let’s make use of group called mail coming from default Ubuntu installation. Any process which is run under mail group member can read this file and therefore actually send email.

$ sudo chgrp mail /etc/msmtprc
$ sudo chmod 660 /etc/msmtprc
 
Add any users who needs to be member of mail group (like your webserver user etc.)

$ sudo adduser www-data mail
$ sudo adduser ... mail

Logging

If not configured differently, MSMTP has logging disabled at all. Hopefully MSMTP can be set to log to separate log file or syslog, but not both (it will stop logging).

In /etc/msmtprc or your user configuration file add/change key
  • logfile /var/log/msmtp.log or whatever file you wish to log into dedicated file OR
  • syslog on to enable syslog logging. Default facility is LOG_USER or specify with syslog .
MSMTP logs to syslog but we want to tweak it to log on startup to /var/log/msmtp.log instead.
If you log to file, it has to exists prior MSMTP can log into it. Therefore create & set permissions appropriately:

$ sudo touch /var/log/msmtp.log
$ sudo chgrp mail /var/log/msmtp.log
$ sudo chmod 660 /var/log/msmtp.log

Setting PHP to MSMTP

Open file /etc/php5/apache2/php.ini and change sendmail_path = "/usr/bin/msmtp -t"

Restart Apache to gain permissions to read MSMTP configuration file and send emails  
sudo service apache2 restart
However MSMTP is binary compatible with sendmail, it doesn’t create sendmail executable in your path. Applications like Bugzilla has hard-wired link to sendmail executable and in current setup you will see error the following error whey you try to send email:

There was an error sending mail from 'bugzilla-daemon@virtage.com' to 

'support@virtage.com': Couldn't find 'sendmail' executable in your PATH 

and $Email::Send::Sendmail::SENDMAIL is not set.

To fix, symlink MSMTP to common places:

$ ln -s /usr/bin/msmtp /usr/sbin/sendmail
$ ln -s /usr/bin/msmtp /usr/bin/sendmail
$ ln -s /usr/bin/msmtp /usr/lib/sendmail

Try out MSMTP

Always use -v option to see all SMTP communication. MSMTP reads message body from stdin (as sendmail do).

Create file called e.g. testmail having the following contents:

To: <username>@domain.com
From: username@gmail.com
Subject: A test

Yadda, yadda, yadda.


And execute cat testmail | msmtp komu@domain.com

Do not merely use “echo ‘Yadda, yadda, yadda.’” instead of “cat test.mail”. This causes at least Gmail and Yahoo to deliver the mail incorrectly. Recipient specified as commandline argument is required however To recipient from file takes precedence over commandline.

You may also review msmtp.log with e.g. tail /var/log/msmtp.log

Error “msmtp: account default not found: no configuration file available”

Can you see this error in console or in logs and mail is not actually sent? Check the permissions of /etc/msmtprc for user running msmtp. This error indicates that a process doesn’t have permission to read configuration file.

Mail command

Many scripts assume existence of mail command. For Ubuntu it could be installed via heirloom-mailx package.

Mail offers commandline interface more suitable for scripting then msmtp. Send email with mail program is easy as

echo 'Hi from mail body' | mail -s 'Some subject' 'some@email'


Este artículo fue tomado de: http://goo.gl/WyXWiy

Ruta php.ini en Zend Server - Ubuntu

La Ruta php.ini en Zend Server es:

  /usr/local/zend/etc/php.ini

Para Reiniciar ZenServer:
 /usr/local/zend/bin/zendctl.sh restart

martes, enero 07, 2014

Cambiar Hora y Fecha en Ubuntu Server (consola)

Para cambiar la Hora o la fecha escribimos lo siguiente:

Para la Fecha:

sudo date -d mm/dd/yy

mm --> mes
dd --> día
yy --> año

Para la Hora

date -s hh:mm:ss
date –set=hh:mm:ss


hh --> hora
mm --> munutos
ss --> segundos

Hay mas opciones...

miércoles, diciembre 25, 2013

Permisos por consola – CHMOD (Ubuntu)



Aqui coloco al famoso "ugo" u (user) g  (group) y o (others).



A Quien.....
LetrasSignificado
uEl usuario propietario de los archivos.
g El grupo al que pertenece el archivo.
o Los otros usuarios
aall Todo lo anterior (una abreviación para ugo)

(letras)le damos permisos de.....
 r  Permission to read the file.
 w  Permission to write (or delete) the file.
 x  Permission to execute the file, or, in the case of a directory, search it.

(o numeros)le damos permisos de.....

4 = lectura
2 = escritura
1 = ejecución

6 (4+2) = lectura y escritura
5 (4+1) = lectura y ejecución
3 (2+1) = escritura y ejecución
7 (4+2+1) = lectura, escritura y ejecución

EMPECEMOS

Hay dos opciones:  la numérica y la alfabética:

1.- chmod 777 NombreCarpeta
2.- chmod rwx NombreCarpeta

Si es una carpeta de root:
1.- sudo chmod 777 NombreCarpeta
2.- sudo chmod rwx NombreCarpeta

Si queremos que los ficheros y carpetas contenidos en NombreCarpeta, también reciban estos cambios (de manera recursiva), escribimos:

1.- chmod -R 777 Prueba
2.- chmod -R rwx Prueba

Ejemplos:
  • Queremos que el usuario tenga rwx, el grupo rw y los demás r, en la carpeta NombreCarpeta:
    • chmod 764 NombreCarpeta
    • chmod u=rwx,g=rw,o=r NombreCarpeta
 u es igual a usuario (user) g a grupo (group) y o a otros (others).
Aquí tambien se puede aplicar -R
 
  • Queremos que el usuario tenga rw, el grupo r y los demás r, en la carpeta NombreCarpeta:
    • chmod 644 NombreCarpeta
    • chmod u=rw go=rw NombreCarpeta
También funciona -R 

Para quitar los permisos, es igual solo tienes que reasignar los nuevos permisos.

EXTRA

Encontrar directorios (-type d) en el directorio actual (.) y darles acceso 755
  • find . -type d -exec chmod 755 {} \;

Encontrar archivos (-type f) en el directorio actual (.) y darles acceso 644
  • find . -type f -exec chmod 644 {} \;

Encontrar archivos (-type f) html (-name '*.htm*') en el subdirectorio web (./web) y darles acceso 644
  • find ./web -type f -name '*.htm*' -exec chmod 644 {} \;

Encontrar archivos/directorios con permiso 777 (-perm 777) en el # directorio actual (.) y darles acceso 755. La opción -print entrega más información sobre el resultado
  • find . -perm 777 -exec chmod 755 {} \; -print
 

Ubuntu - Conectando a MySQL (error 2003)

Para resolver el error 2003 que se presenta al intentar conectarnos a nuestra base de datos MySql sobre Ubuntu (en este Caso), simplemente tenemos que hacer lo siguiente:

Modificamos el archivo /etc/mysql/my.cnf y cambiamos el bind-address a la dirección ip del equipo donde deseamos conectarnos o para acceder desde cualquiera colocamos 0.0.0.0

Comándos Útiles en Ubuntu


Aquí les dejo la tabla de comando mas utilizados que se muestran en www.guia-ubuntu.com.

Tabla de comandos

Comando Descripción Ejemplos y comentarios
man comando Muestra el manual de un comando, útil para aprender a utilizar sus argumentos man man
mc Explorador de archivos que incluye su propio editor, mcedit. Es necesario instalarlo sudo mc
cd nom_directorio Cambia de directorio cd sólo, va a tu home
cd .. Sube un nivel de directorios Si estabas en /home/usuario/ pasas a /home/
cd - Vas a la ubicación donde estabas antes si desde /home/usuario haces cd /etc/X11 y luego cd - vuelves a /home/usuario
cp archivo1 archivo2 Copia archivo1 como archivo2 (nuevo nombre) manteniendo el original
cp archivo /directorio Copia archivo en directorio manteniendo nombre y el original
ln archivo1 /directorio/archivo2 Hace copias enlazadas (ambos archivos se actualizan en cuanto uno se guarda) Si pones la opción -s crea un acceso directo en lugar de una copia.
mv archivo1 archivo2 Renombra archivo1 en archivo2
mv archivo /directorio Mueve archivo dentro de directorio
rm archivo Borra archivo
rm -rf directorio Borra el directorio con todo lo que tenga dentro sin pedir confirmación Si el nombre de la carpeta es compuesto, poner entre comillas
mkdir nom_directorio Crea directorio nom_directorio
rmdir nom_directorio Borra directorio nom_directorio
kill -9 PIDnumber Mata el proceso numberPID que queramos (finaliza su ejecución) kill -HUP numberPID Hace lo mismo
kill -STOP numberPID Para hasta nueva orden el proceso numberPID
kill -CONT NumberPID Continúa el proceso numberPID parado anteriormente
killall processname Mata el proceso con ese nombre
ls Lista los archivos de un determinado directorio Poniendo solo ls mostrara los archivos del directorio actual
ls -l Lista también las propiedades y atributos
ls -a Lista todos los archivos, incluidos los ocultos y los del sistema
cat fichero Muestra el contenido de un fichero cat /home/NOMBRE_USUARIO/YO/prueba.php
less Muestra la salida estándar de forma paginada
less fichero Muestra el contenido de un archivo de forma paginada
more Muestra la salida estándar de forma paginada
more fichero Muestra el contenido de un archivo de forma paginada
zcat fichero Muestra el contenido de un archivo comprimido (.gz)
zmore fichero Muestra el contenido de un archivo comprimido (.gz)
zless fichero Muestra el contenido de un archivo comprimido (.gz)
echo cadena echo nos muestra en pantalla el texto que le diga
grep 'cadena' archivo Muestra las líneas del archivo que contienen la cadena
file archivo Muestra el tipo de un archivo determinado
head archivo Muestra las primeras líneas de un archivo, 10 por defecto
tail archivo Muestra las últimas líneas de un archivo, 10 por defecto
tail -fn 200 archivo Muestra las últimas 200 líneas de un archivo y sigue agregando mientras crece
find directorio -name nom_archivo -print Busca todos los archivo con el nombre especificado en un directorio determinado
find /home/usuario -name *.jpg -print Busca todas las imágenes .jpg en /home/usuario
whereis ejecutable Busca binarios ejecutables (ejemplo: whereis find)
type comando Muestra la ubicación del ejecutable perteneciente al comando indicado
pwd Visualiza el directorio actual o de trabajo
history Muestra el listado de comandos usados por el usuario (~/.bash_history)
ps -aux Lista de los programas que se están ejecutando actualmente con su PID (Process IDentifier)
df Muestra el espacio libre en el disco duro
top Muestra los procesos que más CPU consumen en tiempo real, así como la memoria RAM y swap usada, entre otra información
halt Apaga el equipo
reboot Reinicia el equipo
shutdown -h now Apaga el equipo
shutdown -r now Reinicia el equipo
passwd Cambia la contraseña del usuario
ps -ef l grep nombre_proceso Lista los procesos que se estén ejecutando con que contengan la cadena nombre_proceso El comando ps -ef es redireccionado por medio de una pipe (Alt Gr+ 1) y fitrado con grep por la palabra que le sigue a grep

En el enlace del articulo original, se encuentran más comandos.

Tomado de: guia-ubuntu



Diferentes Formas de Comprimir, empaquetar y descomprimir archivos en Ubuntu.

Aquí les dejo  un listado de cómo comprimir y descomprimir archivos en Ubuntu.

Ficheros zip
Comprimir zip: ------------------ zip -r fichero.zip fichero
Descomprimir zip: --------------- unzip archivo.zip
Ver contenido zip: -------------- unzip -v archivo.zip

Ficheros rar
Descomprimir rar: --------------- unrar e -r archivo.rar (e extrae en el directorio actual)
Descomprimir rar: --------------- unrar x -r archivo.rar directorio de destino (x extrae donde se indique)
Ver contenido rar: -------------- unrar v archivo.rar

Ficheros gz
Comprimir gz: ------------------- gzip -r fichero ; ejemplo: gzip -r ./sinatra
Descomprimir gz: ---------------- gzip -d fichero.gz
Ver contenido gz ---------------- gzip -c fichero.gz

Ficheros bz2
Comprimir bz2: ------------------ bzip2 fichero ; ejemplo: bzip2 ./sinatra/*.ogg
Descomprimir bz2: --------------- bzip2 -d fichero.bz2
Ver contenido bz2: -------------- bzip2 -c fichero.bz2

NOTA: r equivale en todos los casos a recursivo

Ficheros lha
Comprimir:  -------------- lha -a archivo.lha ficheros
Descomprimir: -------------- lha -x archivo.lha
Ver contenido: -------------- lha -v archivo.lha
Ver contenido: -------------- lha -l archivo.lha

Ficheros arj
Comprimir: -------------- arj a archivo.arj ficheros
Descomprimir: -------------- unarj archivo.arj
Descomprimir: -------------- arj -x archivo.arj
Ver contenido: -------------- arj -v archivo.arj
Ver contenido: -------------- arj -l archivo.arj

Ficheros zoo
Comprimir: -------------- zoo a archivo.zoo ficheros
Descomprimir: -------------- zoo -x archivo.zoo
Ver contenido: -------------- zoo -L archivo.zoo
Ver contenido: -------------- zoo -v archivo.zoo

 Mientras que zip comprime y empaqueta,gzip ó bzip2 sólo comprimen ficheros,no directorios,para eso existe tar.

Ficheros tar
Empaquetar: --------------------- tar -vcf archivo.tar /fichero1 /fichero2 ...(fichero puede ser directorio)
Desempaquetar: ------------------ tar -vxf archivo.tar
Ver contenido ------------------- tar -vtf archivo.tar

Para comprimir varios ficheros y empaquetarlos en un solo archivo hay que combinar el tar y el gzip o el bzip2 de la siguiente manera:

Ficheros tar.gz (tgz)
Empaquetar y comprimir: --------- tar -zvcf archivo.tgz directorio
Desempaquetar y descomprimir: --- tar -zvxf archivo.tgz
Ver contenido: ------------------ tar -zvtf archivo.tgz

Ficheros tar.bz2 (tbz2)
Empaquetar y comprimir: --------- tar -jvcf archivo.tbz2 directorio
Desempaquetar y descomprimir: --- tar -jvxf archivo.tbz2
Ver contenido: ------------------ tar -jvtf archivo.tbz2

-opciones de tar:
| -c : crea un nuevo archivo.
| -f : cuando se usa con la opción -c,usa el nombre del fichero especificado para la creación del fichero tar
| cuando se usa con la opción -x,retira del archivo el fichero especificado.
| -t : muestra la lista de los ficheros que se encuentran en el fichero tar
| -v : muestra el proceso de archivo de los ficheros.
| -x : extrae los ficheros de un archivo.
| -z : comprime el fichero tar con gzip.
| -j : comprime el fichero tar con bzip2.
'----------------------------------------

Tomado de: ubuntu-es.org y ubuntulife

Descomprimir archivo Zip Ubuntu

Pasos:

  1. Instalamos unzip... (sudo apt-get install unzip).
  2. Luego para Descomprimir:
    • unzip nombredelfichero.zip (te descomprimirá en la carpeta que estés)
     
  3. Para descomprimir zip en una carpeta:
    • unzip nombredelfichero.zip -d /carpeta (te descomprimirá en la carpeta que le indiques).

sábado, noviembre 23, 2013

Instalando Wordpress en Amazon EC2

Aquí un tutorial mas sobre Amazon EC2 encontrado en You Tube para instalar cualquier cms en este caso Wordpress.


Como Conectarnos por FTP Aqui Otro video.


Instalar servidor FTP en Ubuntu (Ubuntu-server, Amazon EC2...) 

Espero que les sea de utilidad.