Instalé con éxito Ubuntu WSL en Windows 11 usandoesta guíasin ningún problema. Sin embargo, cuando intento instalar Anbox siguiendo laspágina web oficial, sigo recibiendo errores como estos:
error: cannot communicate with server: Post http://localhost/v2/snaps/anbox: dial unix /run/snapd.socket: connect: no such file or directory
y
System has not been booted with systemd as init system (PID 1). Can't operate. Failed to connect to bus: Host is down
Entonces probé esta solución:
# This part adds the Microsoft repository to install dotnet-runtime, which you need for `systemd-genie`
wget https://packages.microsoft.com/config/ubuntu/20.04/packages-microsoft-prod.deb -O packages-microsoft-prod.deb
sudo dpkg -i packages-microsoft-prod.deb
rm packages-microsoft-prod.deb
# This part installs the .NET runtime
sudo apt-get update; \
sudo apt-get install -y apt-transport-https && \
sudo apt-get update && \
sudo apt-get install -y aspnetcore-runtime-6.0
# This part adds the transdebian repository, which contains systemd-genie
wget -O /etc/apt/trusted.gpg.d/wsl-transdebian.gpg https://arkane-systems.github.io/wsl-transdebian/apt/wsl-transdebian.gpg
chmod a+r /etc/apt/trusted.gpg.d/wsl-transdebian.gpg
cat << EOF > /etc/apt/sources.list.d/wsl-transdebian.list
deb https://arkane-systems.github.io/wsl-transdebian/apt/ $(lsb_release -cs) main
deb-src https://arkane-systems.github.io/wsl-transdebian/apt/ $(lsb_release -cs) main
EOF
#This part installs systemd-genie
sudo apt update
sudo apt install -y systemd-genie
# This part adds a script to `~/.profile` to automatically start genie every time you start up bash.
echo "# Are we in the bottle?
if [[ ! -v INSIDE_GENIE ]]; then
read -t 3 -p 'yn? * Preparing to enter genie bottle (in 3s); abort? ' yn
echo
if [[ $yn != y ]]; then
echo 'Starting genie:'
exec /usr/bin/genie -s
fi
fi
" >> ~/.profile
# Restart bash
exec bash
La próxima vez que lancé Ubuntu WSL obtuve esto antes de ejecutar cualquier comando:
-bash: /root/.profile: line 15: conditional binary operator expected
-bash: /root/.profile: line 15: syntax error near `y'
-bash: /root/.profile: line 15: ` if [[ != y ]]; then'
Y cuando trato de seguir los pasos deanboxMe salen estos:
/dev/binder$: command not found
-bash: /dev/ashmem: No such file or directory
$: command not found
¿Qué estoy haciendo mal?
PD: Esta pregunta se publicó originalmente endesbordamiento de pilapero fue cerrado a la fuerza.
PD: Mi experiencia técnica es extremadamente limitada. Gracias
Respuesta1
Mi formación técnica es extremadamente limitada.
No se preocupe, y esa es información realmente útil aquí. Me ayuda al menosintentarpara proporcionar una respuesta que se ajuste a su nivel de experiencia. Dicho esto, las razones detrás de estosonbastante técnico, pero has hecho un gran trabajo al intentar resolver algunos de ellos hasta ahora.
Como creo que habrás descubierto, los dos primeros errores que viste se debieron a que WSL no es compatible con Systemd (y, por lo tanto, no es compatible con Snaps). Este es quizás uno de los mayores desafíos que enfrenta la gente cuando intenta usarlo como reemplazo uno por uno de un sistema Linux "real".
Systemd es el sistema de inicialización "estándar" para la mayoría de las distribuciones de Linux, pero WSL usa el suyo propio /init
como inicio, y por buenas razones que no entraré aquí.
Pero eso sí significa que algún software que espera Systemd simplemente no funcionará en WSL sin un esfuerzo adicional. brochesson una forma de instalar software en Linux que utiliza Systemd.
como elGuía de instalación de Anboxmenciona:
Para instalar Anbox, su sistema debe admitir instantáneas. No admitimos oficialmente ningún otro método de distribución de Anbox en este momento, pero existen paquetes creados por la comunidad para varias distribuciones (por ejemplo, Arch Linux), pero...
Existen soluciones alternativas para la compatibilidad con Systemd/Snap en WSL, y Genie, que fue su segundo intento, es una de ellas. Dicho eso, yopensarEstás utilizando algunas instrucciones desactualizadas para instalar Genie. Verificarel genio githubpara conocer lo último sobre eso.
Basado en los comentarios a mi respuesta original aquí:
@moyadin * Este enlace que publiqué en windowscentral.com es para reemplazar la Tienda de Amazon con la Tienda de Google. Tuve éxito en este sentido.
Vaya, estoy bastante impresionado, ya que es bastante técnico ;-). Originalmente pensé que te referías simplemente a usar esa guía para instalar WSL2. Lo he hojeado ahora para comprender lo que has hecho.
Si lo tiene en ejecución, entonces está utilizando una versión anterior (pero modificada) de WSA (Subsistema de Windows para Android), que, hasta donde yo sé,deberíaestar aislado, ya que se ejecuta en una máquina virtual como WSL2. Probablemente no voy a seguir esa guía en particular, ya que involucra una tecnología bastante "beta" que aún no está diseñada para ejecutarse en la versión "normal" de Windows 11. PERO, soy muy conservador cuando se trata de mi sistema.
Por otro lado, podría probarlo en una máquina virtual con Windows 11 que tengo.
Ayer pasé algún tiempo intentando instalar Anbox en WSL2 y no tuve éxito. Como mínimo hay que tener:
Systemd funciona mejor que yo
Hasta donde puedo decir, necesitas construir tu propio kernel con soporte para elAnbox
binder
yashmem
módulos del kernel. Hasta donde sé, tuve éxito con esto, pero fueron necesarios dos intentos para hacerlo bien.Configure WSL2 para usar su kernel personalizado (nuevamente, lo hice correctamente y verifiqué que los módulos de Anbox se cargaron correctamente).
Instalar Anbox - Mientras yoeraPude instalar Snap en WSL2, no pude ejecutarlo y estoy 95% seguro de que todavía se debe a problemas de Systemd.
Si dedicara más tiempo a ello, podría tener éxito, pero aún así tendría que hacer el siguiente paso para llegar a Play Store...
Ejecutar un muy complicadoguion. Es irónicamente gracioso que encontré esto en el artículo.Anbox: Cómo instalar Google Play Store y habilitar la compatibilidad con ARM (libhoudini), de forma sencilla. Y después de decir que es el camino fácil, te dicen (con razón):
Advertencia: nunca ejecute un script que no haya escrito sin saber lo que hace. Antes de ejecutar este script, consulte su código. Desafortunadamente, comprender lo que hace ese guión requiere unaltoGrado de conocimiento de Linux.
Pero si requiere un trabajo tan extenso para Anbox, simplemente lo ignoraré por completo.
Voy a decir que es la elección correcta. Mi recomendación sería (a) seguir con lo que está ejecutando (b) probablemente sea tan bueno o mejor que (y tan seguro) la solución Anbox.
Mi objetivo final es descargar aplicaciones de Android en un entorno aislado donde las aplicaciones no pueden acceder a todo (como las descargadas de Microsoft Store, por ejemplo) y Android x86 en VMware es la opción que estoy usando actualmente.
Bueno, si tiene la opción WSA funcionando que Windows Central documentó, entonces lo más probable es que sea igual de seguro. Estoy seguro de que Microsoft publicará más información sobre la arquitectura de WSA a medida que se acerque el lanzamiento, pero han dicho que se ejecuta en una máquina virtual. Supongo que es muy similar a WSL2 en su arquitectura.
lo que nosotrosen realidadestamos esperando que WSA sealiberadopor Microsoft. Entonces, con suerte, tendremos mejores opciones (aunque aún no son compatibles) para usar Google Play Store.