Comandos de Linux para administrar Odoo

Gustavo Orrillo
- 25/05/2022 - 4 min. de lectura


Odoo se ejecuta en Linux. No hay vueltas al respecto. En Argentina si uno pretende que Odoo (al menos la versión community de Odoo) se comunique con AFIP por la factura electrónica, necesita Linux. Esto que significa? que el administrador de Odoo (ni hablar el desarrollador) se debe sentir cómodo con Linux. No ser administrador de Linux, pero si estar familiarizado con una serie de comandos que se usan con frecuencia en un ambiente de Odoo.

No sabía que comandos enseñar, por eso listé los comandos que utilizo con frecuencia en un server de Odoo y los mismos son los siguientes:

history

Como su nombre indica, muestra el historial de comandos ejecutados. Utilizado con el comando grep, se puede listar de que manera se ejecuto un comando particular. Supongamos que queremos conocer como se ejecutó el comando odoo-bin (el binario de Odoo)


grep

Permite buscar un text en un archivo o en la salida de un comando (como vimos anteriormente con el comando history). Por ejemplo, si queremos buscar en forma recursiva (para buscar en subdirectorios) donde se define el campo afip_xml_request (el request al webservice de factura electrónica de AFIP) debemos ejecutar el siguiente comando:

cd /opt/odoo15
grep -ir afip_xml_request


Primero nos ubicamos en el directorio donde está instalado Odoo y luego ejecutamos la búsqueda. Nos devolverá todos los archivos donde se encuentra el texto que estamos buscando

nano

Es el editor más "user-friendly" que encontré en Linux. Soy fanático del vim, pero nano es muy sencillo de aprender e intuitivo. Solo tienen que tipear

nano <nombre del archivo a editar>


cd

Linux al igual que el DOS tiene una estructura de directorios jerárquica. Y la navegamos con el comando cd. Por ejemplo

cd / 

para cambiar al directorio root

cd
cd HOME

para cambiar al directorio home del usuario

cd <nombre del directorio> 

Para cambiar al directorio deseado, por ejemplo para cambiar al directorio donde por lo general se instala Odoo

cd /opt/odoo

y para cambiar al directorio donde por lo general se configura el log de Odoo

cd /var/log/odoo

ls

Permite listar los contenidos de un directorio. Con los flags lah se ven todos los atributos de los archivos, visto en forma lista en forma "humana"

ls -lah


rm

Permite borrar archivos y directorios. Por ejemplo

rm README.md 

borra el archivo README.md. Si queremos borrar directorios

rm -r <nombre del directorio>

Desde ya... usar con mucho cuidado. No existe el undelete o undo con este comando

df

Permite conocer cuanto espacio en disco esta siendo utilizado (por ende permite saber cuando te quedaste sin espacio en disco en el server). Con el flag -h se puede ver un output "humano" (quiero ver una foto de quien ideó este flag)


ps

Lista los procesos que se encuentran en ejecución. En conjunto con el comando grep, permite saber cual es el proceso de Odoo. Por ejemplo,


Permite ver cuales son los procesos de Odoo en ejecución. En el ejemplo anterior, son los procesos con el ID 25205 y 25206

kill

Detiene el proceso que se le indica como parámetro. Por ejemplo para detener los procesos de Odoo del ejemplo anterior, se debe hacer

kill -KILL 25205
kill -KILL 25206

Se puede ejecutar siempre y cuando uno cuente con los permisos de ejecución necesarios. Utilizar el comando kill no es recomendable. Para detener y arrancar Odoo conviene utilizar systemctl

systemctl y tail

El comando systemctl permite detener y arrancar Odoo (más detalles en este post). En conjunción con el comando tail permite reiniciar Odoo al mismo tiempo que se puede observar por la terminal el contenido del archivo de log. Por ejemplo,

sudo systemctl restart odoo15 && sudo tail -f /var/log/odoo/odoo.log


apt-get update y apt-get upgrade

Actualiza los paquetes del sistema operativo Linux (si está usando una distribución basada en Debian). Es necesario hacerlo con frecuencia por cuestiones de seguridad y debe realizarse con mucho cuidado, ya que cualquier problema con la actualización de una librería, puede dejar sin servicio al sistema (por ejemplo, la factura electrónica). Pruébelo en sistemas de prueba y consulte a su administrador del sistema antes de hacerlo



find

Permite encontrar archivos y directorios. Muy util cuando uno empieza a trabajar con un server de un cliente, y no conoce la instalación. Por ejemplo, si queremos conocer donde está instalado Odoo

sudo find / -type f -name odoo-bin

Si queremos encontrar donde está instalado el módulo l10n_ar

sudo find / -type d -name l10n_ar


El primer parámetro indica desde donde comenzar la búsqueda (/ denota el directorio root), el parámetro -type indica si es archivo (f) o directorio (d) y el parametro -name indica el nombre del archivo directorio

sudo 

Comando usado previo a cualquier otro comando. Le brinda permisos de root al comando que continua. Debe usarse con mucho cuidado y se lo utiliza muchas veces en el proceso de instalación. Por ejemplo;

sudo apt-get update

chown y chmod

El comando chown se utiliza para cambiar el "dueño" de un archivo o directorio. El comando chmod se lo utiliza para cambiar los permisos (lectura, escritura, ejecución, borrado) de un archivo. En Odoo se utiliza con frecuencia el chown, por lo general cuando se copia un módulo al directorio donde se disponibilizan los módulos. Por ejemplos, supongamos que queremos cambiar el owner a odoo15 de los subdirectorios de donde nos encontramos ubicados


man

Permite conocer la documentación del comando. Por ejemplo, si queremos conocer la documentación del comando find

man find



Acerca de:

Gustavo Orrillo

Passionate about programming, he has implemented Odoo for different types of businesses since 2010. In Moldeo Interactive he is a founding Partner and Programmer; In addition to writing on the Blog about different topics related to the developments he makes.