Informatica/Servicios/owncloud

De 33system wiki
Saltar a: navegación, buscar

<< Informatica

Owncloud

Teoría

Practica

Instalación

versión 2.0

# instalamos los paquetes necesarios
apt-get install apache2 php5 php5-sqlite php5-json mysql-server 
mp3info curl libcurl3 libcurl3-dev php5-curl zip
# descargamos el paquete que nos hace falta
wget http://owncloud.org/releases/owncloud-2.tar.bz2
# descomprimimos
tar xvjf owncloud-2.tar.bz2
# movemos la carpeta al directorio /var/www
mv owncloud /var/www
# cambiamos los permisos de algunos directorios
chmod -R 770 /var/www/owncloud/data
chmod -R 777 /var/www/owncloud/config
# cambiamos el propietario del directorio
chown -R www-data:www-data /var/www/owncloud
# a traves de un navegador accedemos a 
ip.servidor/owncloud

versión 5.0

# Descargamos el paquete
wget http://download.owncloud.org/community/owncloud-5.0.11.tar.bz2
# descomprimimos el paquete
tar -xjfv owncloud-5.0.11.tar.bz2
# movemos el directorio
mv owncloud /opt/
# realizamos un enlace simbolico
ln -s /opt/owncloud /var/www/ownlcoud

# instalamos los paquetes
apt-get -q -y install apache2 mysql-server php5 php5-cli php5-common php5-mysql libapache2-mod-php5 php5-gd
# reiniciamos apache
/etc/init.d/apache2 restart
# creamos el directorio data
mkdir /opt/owncloud/data
# asignamos los permisos
chmod 770 /opt/owncloud/data
# asignamos el dueño y el grupo
chown www-data:www-data /opt/owncloud -R

# accedemos a la base de datos
mysql -u root -proot
# creamos la base de datos
CREATE DATABASE owncloud;
# creamos el usuario local 
CREATE USER 'owncloud'@'localhost' IDENTIFIED BY 'owncloud';
# otorgamos todos los permisos al usuario sobre la base de datos
GRANT ALL PRIVILEGES ON owncloud.* TO 'owncloud';

Configuracion

In most cases, you won’t need to manually edit any configuration files, the setup dialog should be able to fill everything in.
Change data folder

   1. Open the file $apacheFolder/owncloud/config/config.php
   2. If you installed the Ubuntu package, that file is at /var/lib/owncloud/config/config.php
   3. Change $CONFIG_DATADIRECTORY to the folder you want.

It’s recommended to put your data folder outside of your apache folder for security reasons.

You also need to set the owner of such directory to the webserver (www-data):

sudo chown -R www-data:www-data ~/OwnCloud
Increase allowed maximum size for uploads

   1. Open the PHP configuration file in /etc/php5/apache2/php.ini, look for:
          * upload_max_filesize = 2M
          * post_max_size= 2M
   2. In place of 2M write the maximum size you want to be allowed.

increase allowed maximum upload/download time

   1. In case you don’t want to change the maximum execution time for all your PHP applications, add the following line to $apacheFolder/owncloud/.htaccess (.htaccess can be overwritten on updates).
          * php_value max_execution_time 30
   2. If you want to change the settings globally, open the PHP configuration file in /etc/php5/apache2/php.ini, look for:
          * max_execution_time = 30
   3. In place of 30 (seconds) write down your preferred execution time. (If the execution time is set to 30, downloads/uploads will stop after 30 seconds.)

Hide the data folder

   1. If you can see the content of http://localhost/owncloud/data from the web, without login, go to $apacheFolder/owncloud/data/.htaccess
   2. Inside that file paste the next code and save.
          * Options -Indexes IncludesNOEXEC FollowSymLinks

Optional Dependencies

    * mp3info for improved scanning of music files
    * curl libcurl3 libcurl3-dev php5-curl for the OpenID plugin
    * zip for downloading multiple files

Actualizar archivos de usuarios subidos por ssh/ftp

# creamos un directorio en un usuario
mkdir /opt/owncloud/data/33system/files/prueba
# subimos un archivo 
scp test root@owncloudserver.33system.com:/opt/owncloud/data/33system/files/prueba

# Rescaneamos solo el usuario 33system
php console.php files:scan <user_id>
# Rescaneamos todos los usuarios
php console.php files:scan --all 

Cambiar contraseña administrador o usuario

# obtenemos el valor de passwordsalt
grep -e passwordsalt /opt/owncloud/config/config.php
====================================================
'passwordsalt' => '11f1a0c0fc04n06bac08b703718522',
====================================================
# copiamos el archivo test.php al directorio /tmp
cp /opt/owncloud/3rdparty/phpass/test.php /tmp
# editamos el archivo test.php
vim /tmp/test.php
# cambiamos las variables
$t_hasher = new PasswordHash(8, CRYPT_BLOWFISH!=1);
$correct = 'nuevacontraseña'.'11f1a0c0fc04n06bac08b703718522';
# ejecutamos test.php
php /tmp/test.php
# obtenemos la primera linea
====================================================
Hash: $2a$08$ZudV6213MhmVbIFSasdfasauTjPa3iGHbGDc8rqw2GvB0tVLWtyanrq
...
====================================================

# accedemos a la base de datos
mysql -u root -proot
mysql -u owncloud -powncloud
# utilizamos la base de datos de owncloud
use owncloud;
# listamos el contenido de la tabla y obtenemos el uid del usuario
select * from oc_users;
# editamos el campo password del usuario objetivo
update oc_users set password="$2a$08$ZudV6213MhmVbIFSasdfasauTjPa3iGHbGDc8rqw2GvB0tVLWtyanrq" where uid="myuser";

Instalación del cliente

## Ubuntu 12.04
# añadimos el repositorio al directorio sourcers.list.d
echo 'deb http://download.opensuse.org/repositories/isv:ownCloud:devel/xUbuntu_12.04/ /' >> /etc/apt/sources.list.d/owncloud-client.list 
# actualizamos la cache de repositorios
apt-get update
# instalamos el cliente
apt-get install owncloud-client

Administracion de Bookmarks

# nos conectamos a la base de datos
mysql -u owncloud -powncloud
# obtenemos los datos de la tabla oc_bookmarks
# si ya tenemos algun bookmark podremos ver como se configuran
select * from oc_bookmarks
# añadimos los marcadores que queramos
insert into oc_bookmarks (url,title,user_id) values ("http://google.com/","google","33system");
respaldar los bookmarks
# realizamos el respaldo de la tabla oc_bookmarks
mysqldump -u owncloud -powncloud owncloud oc_bookmarks > /backup/oc_bookmarks`date +"%Y%m%d"`.sql

Documentacion