Nextcloud, mantenimiento y Bash
Published: 2023-07-23 13:26:29



![Image description](https://dev-to-uploads.s3.amazonaws.com/uploads/articles/dvm5o6f9kuq3rgebcu9t.png)
# Intro 

  La solución [Nextcloud](nextcloud.com "Nextcloud") es una potente herramienta - servidor de ficheros, agenda, contactos, trabajo colaborativo, videoconferencia ... (y mucho, muucho más ). Dadas las numerosas aplicaciones que puede ofrecer y de tan potente que es a veces resulta conveniente ir más allá de la interfaz Web (GUI) de administración en el navegador para, más allá del ratón, tomar las riendas al teclado. 
  
  Ello permite explotar al máximo las posibilidades de tu servidor Nextcloud, así como ser más eficiente y productivo en su mantenimiento. En este blogpost daremos un paseo práctico introductorio por las posibilidades que ello nos ofrece. 
  
  Para amantes de la terminal Bash ... ¿Y de la elegancia y comodidad en la ejecución?.

> NOTA: a tener en cuenta que, dado que ejecutaremos la gestión desde el CLI como si fueramos el servidor Web, debemos usar el usuarix correspondiente al servidor (habitualmente Apache o Nginx )

## Ejecutar OCC: el CLI de Nextcloud
### como usuarix  HTTP 

*occ* es el  CLI de Nextcloud. La (auto)magia  de la terminal y Nextcloud.  Veamos la forma  necesaria de invocarla para poder usarla.

> NOTA histórica : Nextcloud es un 'fork' / derivación de Owncloud (< *occ* ) , realizado por los propios desarrolladores originales que quisieron fundar su propia empresa...

El usuario/grupo del servidor Web (HTTP) desde el que tenemos que ejecutar *occ*  difiere según la distribución basada en el Linux Kernel correspondiente :

>    HTTP user /  group | Debian/Ubuntu :  www-data.

>    HTTP user / group | Fedora/CentOS :  apache.

>    HTTP user /  group | Arch Linux          : http.

>    HTTP user en openSUSE :  wwwrun /  HTTP group :  www.


La doble voltereta acá es ejecutar un comando bash como otro usuario del sistema, a la par que indicarle la ruta ($PATH) necesaria.
Así pues, este nivel de detalle sería necesario para que la orden | Bash se ejecute correctamente y sin sorpresas :

```
sudo -u www-data /usr/bin/php  /var/www/nextcloud/occ 
```
... donde indicamos tanto el usuario (Web server | Apache, en nuestro caso; podría ser Nginx, en el tuyo) como la ruta de PHP como la de *occ* (el CLI Nextcloud propiamente dicho).

O bien, sabiendo que *php* está ya en la ruta ($PATH), bastaría con :

```
sudo -u www-data php  /var/www/nextcloud/occ
```

Podemos facilitar la 'notación' creando un *alias* :

```
alias suwp='sudo -u www-data php'
```
o mejor aún:

```
alias suwpo='sudo -u www-data php /var/www/nextcloud/occ'
```
de tal modo que bastaría con teclear

```
suwpo trashbin:cleanup --all-users
```

en vez de

```
sudo -u www-data php /var/www/nextcloud/occ trashbin:cleanup --all-users
```
por ejemplo, si quisieramos 'vaciar la papelera' de archivos ya borrados. Resulta así ... ¿más cómodo no?

... con tu servicio autoalojado Nextcloud soberano.

Have Fun | A disfrutar :-)

Fuente: 

- [Documentación Nextcloud i](https://docs.nextcloud.com/server/18/admin_manual/configuration_server/occ_command.html)
- [Documentación Nextcloud ii](https://docs.nextcloud.com/server/18/admin_manual/configuration_server/occ_command.html#command-line-installation-label)


![NextcloudCLI](https://git.adphi.net/adphi/occweb/raw/master/appinfo/screenshot.png "NextcloudCLI")