Consecuencias de usar apt-get en ubuntu touch

17

Acabo de recibir mi edición de Ubuntu BQ Aquaris E4.5. He estado jugando con eso y descubrí que es justo lo que esperaba que fuera.

Una de las mejores cosas es una pila completa de ubuntu, que incluye la administración de paquetes. Me gustaría comenzar a usar apt-get para instalar cosas como htop, python2, openvpn, entre otras.

Sin embargo, he llegado al apt-get Unable to write to /var/cache/apt The Package lists or status file could not be parsed or openederror. Entiendo ( Ubuntu Touch usando apt-get ) que esto se debe a que la partición "/" se está montando como ro, y apt-get necesita que rwfuncione para poder funcionar.

Aquí ( Instalar con sudo app-get install no funciona, "No usar el bloqueo para el archivo de solo lectura / var / lib / dpkg / lock" ) es cómo puede solucionar el problema con el siguiente comando sudo mount -o remount,rw /. <--- Puede ser una mala idea. Vea la respuesta de Evergreen para una forma más completa y segura de habilitar el rwmodo.

Lo que me gustaría saber es cuáles son las consecuencias de montar "/" como rw. He leído que, para empezar, detendrá las actualizaciones de OTA, con lo cual estoy perfectamente bien siempre que pueda mantener mi sistema actualizado usando apt-get. Sin embargo, también he leído ( /ubuntu//a/583439/264601 ) otros tipos de historias de terror.

Entonces mis 2 preguntas son:

  1. ¿Podré mantener mi sistema actualizado usando solo apt-get?
  2. Además de deshabilitar las actualizaciones de OTA, ¿qué otras consecuencias debo esperar ?

¡Muchas gracias por sus respuestas!

Acrobacias
fuente

Respuestas:

4
  1. No (pero se sentirá sí por un tiempo)

Si habilita rw on / y comienza a modificarlo, nada deshabilita la entrega de actualizaciones OTA. Entonces, cuando lleguen, se les ofrecerán para su instalación, como antes.

Sin embargo, el proceso OTA hace algo muy simple al sistema de archivos. Simplemente libera un gran conjunto de archivos sobre el sistema de archivos que tiene. Como conoce (porque debería ser) el sistema de archivos anterior, esto es simplemente un conjunto de archivos que han cambiado.

Entonces estás jugando. ¿Los cambios que ha realizado causan efectos secundarios cuando esto sucede? En general si. En general, habrá modificado algún archivo en el sistema de archivos / y agregado software que depende de ese cambio. Cuando se instala una OTA, ese cambio se eliminará y se reemplazará potencialmente por un cambio conflictivo. En este punto, lo que sucede a continuación es incognoscible, y ciertamente no se ha probado.

Por lo tanto, en la práctica, algunas instalaciones de apt-get agregarán en gran medida software en paralelo a los archivos existentes, por lo que no se verá muy afectado por una OTA. Sin embargo, un conjunto de archivos ciertamente se verá afectado: el propio mantenimiento de registros de apt (los OTA entregan los registros utilizados en la construcción del sistema de archivos ro). Por lo tanto, su sistema perderá el conocimiento de lo que hay y lo que no.

Este es el peligro principal con la actualización de apt-get. Siempre se realizará con una base de datos incorrecta de lo que está en el dispositivo, por lo que no se puede garantizar que tenga éxito. A medida que sus adiciones se vuelven más complejas y el sistema subyacente realiza transiciones importantes (como cuando los teléfonos se mueven de Utopic a Vivid), apt-get run a mano hará lo incorrecto.

Cada OTA se convierte en una apuesta, hasta que realice una limpieza y reinstalación.

  1. Su sistema se romperá lentamente - vea arriba.
John McAleely
fuente
10

Para poder usar "apt-get" en ubuntu-touch, por seguridad le sugiero que use la función "Habilitar / deshabilitar el modo lectura-escritura".

Una vez habilitado el "modo de lectura y escritura", esto deshabilitará las actualizaciones del sistema Ubuntu.

Sin embargo, puede restaurar las actualizaciones automáticas por aire deshabilitando el "modo de lectura y escritura".

"Por defecto, el sistema es de solo lectura. Puede cambiar al modo de lectura-escritura, aunque esto deshabilita las actualizaciones del sistema Ubuntu. El objetivo principal para esto es desarrollar el sistema Ubuntu directamente. Esto no es necesario para desarrollar aplicaciones o usar el sistema normalmente . La recuperación del modo lectura-escritura es posible pero requiere reinstalar el sistema desde cero. Advertencia: Cambiar un dispositivo al modo lectura-escritura (y / o recuperarse de él) es una característica avanzada y puede provocar la pérdida completa de datos. Advertencia: Cambio un dispositivo para el modo de lectura y escritura deshabilita las actualizaciones automáticas delta por aire. Aceptar una actualización completa por aire después de hacer que un dispositivo se pueda escribir puede deshacer los cambios que haya realizado ".

En primer lugar, habilitar el modo de desarrollador en su dispositivo Ubuntu. Para hacer esto, vaya a Configuración → Acerca de este dispositivo → Modo desarrollador . (Debe aplicar el "Bloqueo de seguridad" mediante alternativas: " código de acceso de 4 dígitos " o " Frase de acceso ". De lo contrario, con la función " deslizar ", no puede habilitar el "modo desarrollador")

Conecte su dispositivo a una PC (suponga que es un entorno de plataforma Ubuntu).

Para verificar la conexión, use adb para mostrar los dispositivos conectados actualmente:

$ dispositivos adb

Lista de dispositivos conectados

Dispositivo 025d138e2f521413

  1. Instale el paquete phablet-tools

Asegúrese de que el archivo de universo esté habilitado , luego:

$ sudo apt-get install phablet-tools

  1. Habilitar el modo de lectura-escritura:

$ phablet-config writable-image

El sistema se reinicia en modo lectura-escritura.

  1. Deshabilitar el modo de lectura-escritura: puede deshabilitar la lectura-escritura y restaurar las actualizaciones automáticas por aire:

$ adb shell rm /userdata/.writable_image

Para restaurar el área del sistema normalmente protegida contra lectura y escritura a un estado prístino que no incluye ningún cambio que haya realizado mientras estaba en modo de lectura y escritura instalando el sistema Ubuntu:

$ ubuntu-device-flash touch --canal = CANAL

Fuentes: https://developer.ubuntu.com/en/start/ubuntu-for-devices/installing-ubuntu-for-devices/#install-options

Consejos: Hasta ahora, no es una buena idea usar "apt-get", ya que ellos (Mr.Popey) dijeron:

"No probamos escenarios de instalación de apt-get en el teléfono y si utiliza la actualización de apt-get, puede instalar paquetes que aún no se han probado completamente como parte de las actualizaciones basadas en imágenes"

Fuente: ¿Cómo instalar un archivo .deb en Ubuntu-Touch?

hojas perennes
fuente
3
Esta es una respuesta muy completa sobre cómo habilitar el rwmodo. Pero todavía no responde mis preguntas, me temo.
Stunts
@evergreen ¿Cómo se supone que debo ejecutar sudo apt-get install phablet-toolspor primera vez si apt está deshabilitado (debido a la imagen de solo lectura) en el teléfono?
Khurshid Alam
@KhurshidAlam Se supone que ese comando debe escribirse en otra máquina, como se indica en "Conecte su dispositivo a una PC (suponga que es un entorno de plataforma Ubuntu)". Es solo para asegurarse de tener todas las herramientas necesarias en este entorno.
Trucos del
Si no tiene Ubuntu instalado en su PC, puede construir herramientas phablet desde la fuente: bazaar.launchpad.net/~phablet-team/phablet-tools/trunk/files . 1. Instale bzr, utilizando su administrador de paquetes. Por ejemplo, en CentOS será yum install bzr2. Clone phablet-tools fuente: bzr branch lp:phablet-tools3. Vaya al phablet-toolsdirectorio: cd phablet-tools4. Instálelos: sudo python setup.py install Espero que ayude a todos los usuarios de CentOS y otros (Elementary OS, Linux Mint, Arch Linux, Tails, Debian, openSUSE, Manjaro, Fedora, Zorin, etc.)
Maxim Mazurok
0

El montaje de lectura y escritura de forma permanente solo requiere 3 líneas. Originalmente intenté seguir estas instrucciones en UBPorts pero fue en vano. No se necesitan herramientas phablet.

adb shell
sudo touch /userdata/.writable_image
sudo reboot

cámbielo a r / w solo por sesión

adb shell
sudo mount -o remount,rw /

Cambiar de nuevo a r / o permanentemente

adb shell
sudo mount -o remount,rw /

Ubuntu touch normalmente no está destinado a apt-get. En general, se supone que las aplicaciones de escritorio se usan en un contenedor libertino, aunque no lo configuré. Dependiendo del modelo, apt-get obstruirá la partición raíz. También es muy posible que pueda interferir con las actualizaciones, instalar paquetes conflictivos o dañar el sistema. ¿Pero dónde está la diversión si no puedes?

Originalmente utilicé el espacio raíz casi de inmediato y tuve que usar estos comandos para liberar algo de espacio, aunque debería haber un enlace simbólico más apropiado para los datos de usuario disponibles.

sudo mount -o rw,remount /                             
sudo rm -r /var/cache/apt
sudo tune2fs -m 0 /dev/loop0
errorcodevortex
fuente