Спойлер

среда, 10 июля 2024 г.

Доступ в интернет в WSL2

WSL не может разрешать доменные имена. Редактирование resolv.conf для указания на работающий сервер имен «работает» в течение сеанса, но как только дистрибутив перезагрузится, resolv.conf будет сгенерирован заново с использованием оригинального шаблона WSL. Потому что etc/resolv.conf на самом деле является символической ссылкой на run/resolvconf/resolv.conf

Действия, которые мне помогли:

  1. Загрузите свой дистрибутив.
  2. cd ~/../../etc
  3. Создайте wl.conf так, как посчитаете нужным sudo vim wsl.confsudo touch wsl.confи отредактируйте его позже, как вам будет угодно.
  4. Добавьте эти строки в wsl.conf:
    [network]
    generateResolvConf=false
  5. exitили в Windows cmdwsl --terminate [YourDistroName]
  6. Загрузите свой дистрибутив.

На этом этапе, благодаря wsl.conf, run/resolvconf больше не должен существовать и никогда не будет создан снова.

  1. cd ~/../../etc
  2. sudo rm resolv.conf- это удалит существующий файл символической ссылки.
  3. Создайте новый resolv.conf, как посчитаете нужным sudo vim resolv.confsudo touch resolv.confи отредактируйте его позже, как вам будет угодно.
  4. Добавьте эту строку в resolv.conf:
    nameserver 8.8.8.8
    замените 8.8.8.8 на предпочитаемый вами функциональный сервер имен.
  5. exitили в Windows cmdwsl --terminate [YourDistroName]
  6. wsl --shutdownпросто чтобы убедиться, что вы точно все убили.
  7. Загрузите свой дистрибутив.

Комментариев нет:

Отправить комментарий