Глава 4. Сопровождение дистрибутива Linux

Эта глава обсудит сопровождение установленного в WSL дистро Linux, начиная с того как этот дистро обновляется, как применять модернизации и как отыскивать и устанавливать определённые пакеты. Эта глава завершится неким руководством по выработке образа WSL Ubuntu для ваших собственных целей.

После того как выбранный вами дистро Linux установлен в WSL, вам следует сопровождать его. В WSL2 установленное ядро Linux и лежащая в основе платформа WSL в Windows 10 будет сопровождаться Microsoft через обновления Windows. Тем не менее, обновления для соответствующего прикладного пакета Microsoft Store вашего дистро WSL не выполняют автоматическую модернизацию вашего дистро WSL после его установки. Microsoft Store и обновления Windows не достигаают внутренностей вашего дистро WSL для обновления пакетов там. Все внутри вашего дистро Linux предоставлено вам и управляется при помощи специфичных для дистро инструментов.

Не существует на данный момент никакого механизма автоматической модернизации в дистрос Linux под WSL; обновления должны выполняться вручную из командной строки или планироваться на их автоматическое совершение при помощи индивидуальной службы Windows, планировщика задач Windows или новой [boot] возможности сборок 21286+ Windows. Для способов осуществления этого отсылаем вас к разделу Раскрутка вашей собственной системы init из Главы 7, Персонализация WSL.

Важно разбираться в том как обновлять ваш дистро WSL, что может зависеть от вашего конкретного дистро, поскольку управление пакетами меняется от дистро к дистро, а модернизации предоставляют важные функциональные возможности и обновления безопасности.

Пакеты

Все дистрибутивы Linux поступают с диспетчером пакетов и пакетами, доступными в интернет репозитории или архиве. Пакеты это именно то, в чём программное обеспечение и его обновления доставляются в Linux. То же самое применимо и к дистро Linux в WSL. Изучение того как применять диспетчер пакетов для вашего дистро Linux по выбору разблокирует для изучения вами тысячи бесплатных приложений с открытым исходным кодом. На практике вы можете считать что именно диспетчер пакетов является самым важным фактором в том какой дистро вы выбираете в качестве своего ежедневного проводника.

В дистро WSL Ubuntu, Debian, Pengwin и Kali управление дистро выполняется при помощи диспетчера пакетов apt. Именно этот наиболее распространённый диспетчер пакетов вы обнаружите в дистро WSL. Основные инструкции в данной главе, таким образом, сосредоточатся на apt.

Прочие дистро, такие как Fedora Remix, Alpine и OpenSUSE применяют свои собственные диспетчеры пакетов и вам надлежит обращаться к документации соответствующих дистро относительно применения их диспетчеров пакетов. Рассмотрение использования диспетчера пакетов каждого дистро могут составлять свою собственную книгу.

Все основые принципы относительно проверки обновлений, получения обновлений и важности выполнения этого в целом применимы к большинству диспетчеров пакетов Linux, даже когда сами синтаксис и названия пакетов в диспетчерах пакетов прочих дистро могут отличаться.

Таблица 4-1. Диспетчеры пакетов основных дистро
Дистро Файлы пакетов Диспетчер пакетов

Ubuntu, Debian, Pengwin, Kali

.deb

apt

Fedora

.rpm

dnf

OpenSUSE и SUSE Enterprise Linux

.rpm

zypper

Red Hat Enterprise Linux, Oracle Linux и Pengwin Enterprise

.rpm

yum

Alpine

.apk

apk

Зависимости

Зачастую некий пакет будет полагаться на то, что другой пакет предоставит некую свою функциональность, например, некую программную библиотек (которые как правило начинаются с “lib”). Это носит название зависимостей. Когда вы устанавливаете некий пакет, вы обнаружите, что он устанавливает прочие пакеты, которые являются его зависимостями. Порой зависимости могут изменяться, по этой причине когда выполняется модернизация, вы порой обнаруживаете устанавливаемыми новые пакеты а относительно старых пакетов будут сообщения что они более не требуются.

Выполнение административных задач при помощи sudo

Большинство операций с пакетами, включая пакеты установки и модернизации, рассматриваются как задачи уровня администратора и тем самым требуют повышения полномочий в Linux. Если вы устанавливаете WSL из Store и создаёте некую новую учётную запись WSL и её пароль, вам приходится добавлять её в группу пользователей “sudo” или “wheel” в большинстве дистро, способных запускать команды с повышением при помощи команды sudo. Вы можете выполнять команды с повышенными привилегиями предваряя из командой sudo со следующей за ней командой, которую вы желаете запускать с повышенными полномочиями. Затем вы получите приглашение на ввод пароля вашего перед выполнением данной команды с повышенными правами (Рисунок 4-1).

 

Рисунок 4-1


Запуск apt без sudo, отказавший по причине отклонения полномочий и затем успешный с sudo

[Совет]Совет

Если вы вручную импортируете некий дистро при помощи --import, без создания нового пользователя, вы скорее всего root по умолчанию и можете опускать sudo из последующих команд.

Обновление пакетов

Для проверки доступности обновления пакетов в соответствующем репозитории вашего дистрибутива в Debian, Ubuntu, Pengwin, Kali и прочих дистрибутивах семейства Debian выполните приводимую далее команду. Это выгрузит метаданные самого пакета из своего репозитория, сопоставит его с установленными пакетами и какие пакеты, если таковые имеются, могут обновляться.


> sudo apt update
		

Если дотсупны обновления пакетов сообщение выдаст вам отчёт о том сколько из них может быть обновлено (Рисунок 4-2).

 

Рисунок 4-2


Обновление метаданных пакета из архива репозитория Ubuntu при помощи sudo apt update

Модернизация пакетов

Для применения доступных модернизаций выполните приводимую ниже команду. Apt изучит состояние установленных пакетов, вычислит изменения модернизации и затем проинформирует вас о том, какие изменения будут выполнены. Эти изменения могут содержать модернизацию пакетов, новые пакеты и пакеты, которые могут больше не требоваться:


> sudo apt upgrade
		

В приводимом далее примере (Рисунок 4-3) мы наблюдаем что 158 установленных пакетов обладают новыми доступными в архиве Ubuntu версиями и они обладают 12 новыми зависимостями, которые будут установлены вместе с ними.

 

Рисунок 4-3


Модернизация пакетов новыми версиями из архива Ubuntu при помощи sudo apt upgrade

Перед выполнением модернизации вы получите приглашение на подтверждение такой модернизации через нажатие Enter (значением по умолчанию выступает Y, заглавная буква в [Y,n]) или ввод Y с последующим Enter.

Если же вы желаете выполнять модернизацию без получения приглашения на неё, вы можете автоматически принимать условие приглашения, добавляя флаг -y в своей команде (Рисунок 4-4):


> sudo apt -y upgrade
		
 

Рисунок 4-4


Автоматическая модернизация пакетов доступными в архиве Ubuntu новыми версиями при помощи sudo apt -y upgrade

Установка пакетов

Для установки некого индивидуального пакета пользуйтесь командой apt install. Например, Ubuntu снабжается текстовым редактором nano, однако, возможно, вы предпочитаете текстовый редактор neovim. Для установки neovim мы воспользуемся


> sudo apt install <package name>
		

Например,


> sudo apt install neovim
		
 

Рисунок 4-5


Установка текстового редактора neovim при помощи sudo apt install neovim

Это установит текстовый редактор neovim, а также зависимости (Рисунок 4-5). Как и apt upgrade, вы получите уведомления о тех изменениях, которые будут сделаны и запрос полномочий на продолжение. Для автоматического подтверждения применения изменений для установки вы можете добавить в эту команду флаг -y и процесс установки завершится автоматически (Рисунок 4-6):


> sudo apt -y install neovim
		
 

Рисунок 4-6


Односторонняя установка текстового редактора neovim при помощи sudo apt -y install neovim

[Совет]Совет

Если вы не знаете в точности какой именно пакет вы желаете установить или точное название соответствующего пакета, смотрите далее как выполнять поиск пакетов.

Деинсталляция пакетов

Пакеты могут удаляться при помощи функции apt remove (Рисунок 4-7):


> sudo apt remove <package name>
		

Например,


> sudo apt remove neovim
		
 

Рисунок 4-7


Удаление текстового редактора neovim при помощи sudo apt remove neovim

[Совет]Совет

При удалении пакетов стоит соблюдать осторожность для тех пакетов, от которых могут иметься зависимости для прочих приложений, которые вы запускаете. Деинсталляция зависимости некоторых пакетов вызовет удаление всех тех приложений, на которые он полагается в зависимостях. Пр работе в интерактивном режиме apt выдаст вам предостерегающее сообщение относительно всех подлежащих удалению пакетов или оставлены брошенными при удалении предписанного пакета.

В нашем предыдущем примере вы наблюдаете что при удалении neoviv останется несколько пакетов, которые больше не требуются.

Покинутые зависимости

Может так случиться, что вы удалите некий пакет и это оставит некие зависимости, на которые более не полагаются никакие приложения (или же вы модернизировали некий пакет, который более не полагается на некие конкретные зависимости). Apt определяет когда такое происходит и вы можете автоматически удалять такие ненужные зависимости (Рисунок 4-8) при помощи функции apt autoremove:


> sudo apt autoremove
		
 

Рисунок 4-8


Автоматическое упакетов не нужных зависимостей при помощи sudo apt autoremove

В данном случае мы наблюдаем очистку некоторых пакетов зависимостей neovim, оставшихся после того как мы удалили neovim.

Поиск пакетов

Устанавливая любой дистро в WSL вы получаете доступ к бескрайней библиотеке бесплатных пакетов с открытым исходным кодом чтобы устанавливать их на скорую руку и выполнять разработку с ними, включая инструменты разработки, библиотеки, базы данных, веб службы, комплекты обработки документов, научные инструменты, игры и инструментарий производительности.

Порой их поиск из командной строки может быть обескураживающим. Прежде всего не ясно что доступно и где. Средний дистро Linux обладает десятками тысяч доступных пакетов. Во- вторых, вы не всегда знаете в точности название пакета приложения. Точное название пакета может варьироваться от дистро к дистро или вовсе быть не очевидным.

Например, веб браузер GNOME Web изначально носил название Epiphany. Выполнение же sudo apt install epiphany установит клон с открытым исходным кодом игры Boulder Dash. Для установки GNOME Web, запустите sudo apt install epiphany-browser.

Из терминала

Если вы знаете название того программного обеспечения, которое вы ищите, но, возможно, это не точное название пакета, вы можете выполнить поиск при помощи apt (Рисунок 4-9):


> apt search <keyword>
		

Например,


> apt search lynx
		
 

Рисунок 4-9


Поиск пакетов с названием lynx из терминала при помощи apt

Когда имеется слишком много результатов поиска, вы можете воспользоваться символом |, конвейера, для конвейерной отправки полученных результатов в команду less. Такая конвейерная отправка в less позволит вам просматривать результаты постранично (Рисунок 4-10).


> apt search <keyword> | less
		

Например,


> apt search gnome | less
		
 

Рисунок 4-10


Постраничный просмотр вывода apt-cache поиска gnome с применением less

Некоторые инструменты управления текстовым потоком, такие как less, tail, cat, sed и grep могут стать невероятно мощными для вас по мере того как вы ознакомитесь с терминалом Linux. Руководство для каждой из таких инструментов всегда имеется поблизости и к нему можно получить доступ при помощи команды man (Рисунок 4-11):


> man <name of application>
		

Например,


> man tail
		
 

Рисунок 4-11


Постраничный просмотр вывода apt-cache поиска gnome с применением less

[Совет]Совет

{Прим. пер.: рекомендуем прислушаться к совету относительно tldr в нашем переводе Программирование ядра Linux Кайвань Н Биллимория}.

При помощи терминального интерфейса пользователя (TUI)

Если вы не можете найти искомое вами приложение при выполнении поиска при помощи команды apt search, в дистро Ubuntu, Debian, Pengwin и Kali вы можете воспользоваться aptitude, терминалом пользовательского интерфейса с меню и функциональностью мыши для поиска, установки, обновления и удаления пакетов. Aptitude устанавливается как и прочие пакеты:


> sudo apt -y install aptitude
		
 

Рисунок 4-12a



Затем запустите aptitude от имени пользователя с повышенными правами:


> sudo aptitude
		
 

Рисунок 4-12


Просмотр aptitude в Ubuntu. Теперь, когда Терминал Windows обладает поддержкой мыши, вы можете применять её в aptitude

[Совет]Совет

Если вы “залипли” в неком приложении Linux и не можете найти выход, попробуйте одно из следующего:

  • :q

  • <Ctrl>-C

  • <Ctrl>-X

С применением графического интерфейса пользователя (GUI)

Если вы новичок с терминалом Linux при использовании кривой обучения apt и aptitude, вы можете захотеть начать с традиционного графического интерфейса пользователя. Запуск графического интерфейса в WSL само по себе непростое дело; это требует настройки и конфигурирования некого X сервера, по крайней мере до тех пор, пока официальная поддержка графического интерфейса в WSL2 не будет запущена позднее в 2021 {24 июня? Windows 11?}. Дополнительно с настройками вашего собственного X сервера вы можете ознакомиться в Главе 7, Персонализация WSL.

После того как в Windows настроен и запущен некий X сервер, вы можете установить диспетчер пакетов apt с графическим интерфейсом, именуемый как synaptic (Рисунок 4-13):


> sudo apt install synaptic
		
 

Рисунок 4-13


Установка диспетчера пакетов synaptic с графическим интерфейсом при помощи apt

После установки synaptic вы должны исполнять его с повышенными правами пользователями, как если бы это была apt или aptitude из командной строки:


> sudo synaptic
		

Внутри synaptic вы можете выполнять поиск пакетов по названию или описанию, просматривая их по категориям или состоянию установки, либо выбирать пакеты для установки или удаления (Рисунок 4-14):

 

Рисунок 4-14


Просмотр доступных пакетов в synaptic

Когда вы примените полученные изменения, для подтверждения будет представлен список пакетов для установки, обновления или удаления (Рисунок 4-15).

 

Рисунок 4-15


Подтверждение изменений установки lp-solve при помощи synaptic

Затем эти изменения будут применены:

 

Рисунок 4-16


Synaptic устанавливает выбранные для установки пакеты

После применения этих изменений вы получите уведомление (Рисунок 4-17) и затем можете покинуть synaptic.

 

Рисунок 4-17


Блок подтверждения применения изменений synaptic

Сборка вашего собственного образа WSL Ubuntu

Canonical, издатель Ubuntu, сделал стандартные образы Ubuntu, доступные для WSL из Microsoft Store, в своём облачном вебсайте образов и через wsl.exe --install. Эти образы содержат некий базовый набор пакетов, который будет достаточен для большинства начальных потребностей пользователей. Они тщательно отслеживают свои пакеты по умолчанию сервера Ubuntu в этом облаке, причём интенсивно проверяют их внутренними процессами Canonical QA, а также обладают вариантом платного сопровождения для корпоративных клиентов.

Тем не менее, во многих ситуациях вы хотели бы собрать свой собственный образ Ubuntu с персональным набором пакетов. Например, когда вы являетесь администратором вычислительной лаборатории университета, сосредоточенной на географических информационных системах (GIS, geographic information systems) и хотели бы чтобы Ubuntu WSL в вашей лаборатории поставлялись бы предварительно загруженными пакетами, относящимися к GIS, вы можете выработать некий персональный образ WSL Ubuntu с такими пакетами, экспортировать такой образ и распространять его студентам или же систематически применять его ко всем компьютерам в вашей лаборатории GIS.

Это осуществляется:

  1. Установкой некого инструмента самораскрутки образа Ubuntu

  2. Создания временной папки в которой будет самостоятельно раскручиваться наш образ

  3. Самостоятельно раскрутить самый базовый образ Ubuntu в этой папке из минимальных пакетов для запуска Ubuntu

  4. Персонализация полученного образа Ubuntu в этой папке через выполнение команд “внутри” этого образа с применением chroot, установку индивидуальных пакетов, которые нужны в нашем образе и установке персональных параметров

  5. Сборка архива tarball требующегося образа Ubuntu из нашей временной папки и его копирование в файловую систему Windows

  6. Импорт этого tarball образа Ubuntu в WSL в качестве некого персонального образа WSL

Установка инструмента самораскрутки образа

Для начала устанавливаем debootstrap, который сделает для нас возможной самораскрутку некого образа Ubuntu из пакетов в архиве Ubuntu (Рисунок 4-18):


> sudo apt -y install debootstrap
		
 

Рисунок 4-18


Установка debootstrap для сборки нашего образа Ubuntu

Сборка нашего базового образа

Затем мы создаём некую папку, в которой мы будем собирать собственный образ Ubuntu. После следующего шага эта папка будет содержать файловую систему нашего образа Ubuntu целиком в своём собственном каталоге прежде чем мы запакуем его в архив tarball, который мы затем сможем импортировать в свой собственный дистро WSL. Мы создаём папку при помощи (Рисунок 4-19)


> mkdir /tmp/wslchroot
		
 

Рисунок 4-19


Создание папки для сборки внутри неё нашего образа Ubuntu

Затем мы запускаем debootstrap для создания базового образа Ubuntu. debootstrap обладает некоторыми необходимыми настройками. Прежде всего, мы определим архитектуру нашей системы при помощи --arch "amd64". Настройки --include предписывают, что ваш базовый образ должен также содержать пакеты sudo и python3 в своём самораскручивающемся образе. Остальные настройки описывают тот выпуск Ubuntu с кодовым названием ocal (эквивалент Ubuntu 20.04 LTS), из которого собирать ваш образ, причём в нашей папке /tmp/wslchroot из URL основного архива Ubuntu (Рисунок 4-20):

 

> sudo debootstrap --arch "amd64" --include=sudo focal /tmp/wslchroot http://archive.ubuntu.com/ubuntu/
		

Рисунок 4-20


Самораскрутка нашего образа Ubuntu при помощи debootstrap в /tmp/wslchroot

Для получения помощи относительно debootstrap, помните что вы всегда можете запустить run debootstrap {Прим. пер.: или tldr debootstrap}.

Вы можете подстроить установки debootstrap под сборку для amd64 (хотя кросс- компиляция образов между различными архитектурами приводит к усложнениям); сборки из различных выпусков Ubuntu, например, как выпуск Ubuntu с кодовым названием hirsute для Ubuntu 21.04; или применять локальное зеркало архива.

Персонализация базовой установки

После того как самораскрутка выполнена, у нас в папке /tmp/wslchroot имеется полный минимальный образ Ubuntu. Внутри этой папки мы можем исполнять команды; они естественным образом будут исполняться в этом образе при помощи соответствующей команды chroot.

В качестве повышенного в правах пользователя, от имени root или с помщью sudo выполняйте надлежащую команду chroot, определите для неё папку (здесь это /tmp/wslchroot) и следуйте этому для всех команд, которые вам надлежит выполнять внутри этого образа.

К примеру, мы можем очистить свой кэш метаданных apt внутри своего образа Ubuntu просто создав такое


> sudo chroot /tmp/wslchroot/ apt clean
		
(Рисунок 4-21):

 

Рисунок 4-21


Исполнение команд внутри нашего образа Ubuntu при помощи chroot для очистки кэша пакетов apt

[Совет]Совет

Очистка кэша метаданных внутри образа полезна когда вы намерены повторно использовать или разделять его, поскольку эти сведения утратят срок давности и просто будут бесполезно занимать пространство в вашем образе.

Поскольку это новый образ, он не обладает настройками языка по умолчанию, которые можно выполнить так:


> sudo chroot /tmp/wslchroot/ dpkg-reconfigure locales
		

Затем вы получите запрос на то какие настройки языка и текстовой кодировки устанавливать в вашем базовом образе. Для американского английского выберите en_US в качестве языка и кодировку UTF-8 (Рисунок 4-22). Вы можете выбрать здесь другой язык, если вы предпочитаете не американский английский и даже выбрать более одного языка. Некоторые не- латинские алфавиты потребуют другого кодирования ISO для верного построения, которое вы также можете определить здесь.

 

Рисунок 4-22


Определение устанавливаемых в нашем образе Ubuntu языка и текстовых кодировок

Затем вы получите приглашение на выбор языка и кодировки по умолчанию для вашей системной среды (Рисунок 4-23). И снова, для американского английского мы пожелаем определить en_US.UTF-8 {Прим. пер.: ru_RU.UTF-8 для российского русского.}.

 

Рисунок 4-23


Выбор языка и текстовых кодировок по умолчанию для системной среды в нашем образе Ubuntu

Будут выработаны выбранные языки и кодировка текста, а также установлены их значения по умолчанию (Рисунок 4-24).

 

Рисунок 4-24


Выбор языка и текстовых кодировок по умолчанию для системной среды в нашем образе Ubuntu

Теперь мы можем сделать некоторые дополнительные персонализации своего образа прежде чем мы упакуем его в файл tarball для импорта в WSL в качестве его собственного дистро.

Например, мы можем установить дополнительные пакеты, такие как software-properties-common, который содержит add-apt-repository для более простого включения дополнительных репозиториев Ubuntu, таких как universe и multiverse, которые, в свою очередь, дают нам доступ к даже ещё большему числу пакетов для нашего дистро, включая программное обеспечение сторонних производителей.

Мы установим в своём образе software-properties-common следующим образом (Рисунок 4-25):


> sudo chroot /tmp/wslchroot/ apt install software-properties-common
		
 

Рисунок 4-25


Установку в нашем образе Ubuntu software-properties-common

Теперь, применяя add-apt-repository мы можем разрешить репозитории universe и multiverse Ubuntu для получения доступа к дополнительным пакетам из apt? aptitude или synaptic из своего образа Ubuntu. Мы сделаем это при помощи (Рисунок 4-26)


> sudo chroot /tmp/wslchroot/ add-apt-repository universe && sudo chroot /tmp/wslchroot/ add-apt-repository multiverse
		
 

Рисунок 4-26


Включение репозиториев universe и multiverse в нашем образе Ubuntu

[Совет]Совет

Команды Linux можно комбинировать и последовательно выполнять, разъединяя их при помощи &&.

Наконец, давайте установим некоторые пакеты, которые нам нужны в нашем гипотетическом образе дистро WSL GIS Ubuntu. Мета- пакет gis-workstation это некий пакет Ubuntu, который применяет возможности зависимостей в apt для установки десятков относящихся к GIS инструментов без необходимости устанавливать их индивидуально. Он устанавливается так (Рисунок 4-27):


> sudo chroot /tmp/wslchroot/ apt install gis-workstation
		
 

Рисунок 4-27


Установка в нашем образе Ubuntu мета- пакета gis-workstation, содержащего десятки относящихся к GIS приложений

Создание rootfs tar

После того как в /tmp/wslchroot выполнена сборка нашего образа Ubuntu, настало время упаковать его в файл tarball архива для экспорта и затем импортировать в WSL как его собственный дистро WSL.

Вот как настроить надлежащую структуру файла для нашего образа, спустившись в папку нашего образа (Рисунок 4-28):


> cd /tmp/wslchroot/
		
 

Рисунок 4-28


Спускаемся в папку нашего образа Ubuntu с адресом /tmp/wslchroot, прежде чем архивировать эту папку в качестве tarball

Если окинете взглядом эту папку при помощи ls, прежде чем продолжать, вы обнаружите что в этой папке у нас собрана полная установка Ubuntu, которая походит на корневую файловую систему любого образа Ubuntu Linux (Рисунок 4-29):

 

Рисунок 4-29


Просмотр содержимого папки /tmp/wslchroot собираемого образа Ubuntu

Теперь мы сожмём свою самораскрутку и персонализируем папку образа Ubuntu как некий файл архива tarball для экспорта и затем импортируем в WSL как его собственный дистро WSL.

Выполните tar для сжатия нашей папки образа Ubuntu в некий rootfs tar с названием /tmp/ubuntu-gis-wsl.tar.gz (Рисунок 4-30). В зависимости от размера этого созданного вами образа Ubuntu и возможностей производительности вашей системы, это может потребовать несколько минут. В нашем примере gis-workstation устанавливает около 3 ГБ дополнительных пакетов, что потребует некоторого времени для сжатия.


> sudo tar --ignore-failed-read -czf /tmp/ubuntu-gis-wsl.tar.gz *
		
 

Рисунок 4-30


Сжатие папки нашего образа Ubuntu в /tmp/ubuntu-gis-wsl.tar.gz

Теперь нам следует переместить полученный tarball в нашу файловую систему Windows с тем, чтобы мы могли импортировать его в WSL как его собственный дистро. Я предпочитаю создавать удобную папку WSL в C:\WSL для индивидуальных относящихся к WSL файлов и папок, однако они могут находиться где угодно где в ваш пользователь Windows обладает полномочиями на запись. Это можно выполнить из WSL следующим образом (Рисунок 4-31):


> mkdir /mnt/c/WSL
		
 

Рисунок 4-31


Создание папки в C:\WSL для хранения нашего tarball и последующей распаковки нашего индивидуального образа Ubuntu GIS

Затем мы перемещаем свой tarball. Вы можете применять cp или mv, но я предпочитаю здесь для перемещения файлов пользоваться rsync, поскольку она предоставляет привлекательное состояние прогресса (Рисунок 4-32),


> sudo rsync --progress --remove-source-files /tmp/ubuntu-gis-wsl.tar.gz /mnt/c/WSL/
		
 

Рисунок 4-32


Перемещение ubuntu-gis-wsl.tar.gz в C:\WSL в нашу файловую систему Windows с применением rsync

Импорт в WSL

Теперь мы следуем нашей стандартной процедуре для импорта файла образа WSL, которую мы обсуждали в Главе 2, Включение WSL.

Прежде всего мы опускаемся в приглашение командной строки Windows из своего текущего сеанса WSL при помощи cmd.exe (Рисунок 4-33):


> cmd.exe
		
 

Рисунок 4-33


Запуск командного приглашения Windows из нашего текущего сеанса WSL

Затем мы вызываем wsl.exe с --import для импорта своего образа Ubuntu, именования своего нового дистро WSL “Ubuntu-GIS”, сохранения файла VHDX, содержащего файловую систему WSL в C:\WSL\Ubuntu-GIS и установки его в качестве дистро WSL2 (Рисунок 4-34):


PS C:\> wsl.exe --import "Ubuntu-GIS" C:\WSL\Ubuntu-GIS C:\WSL\ubuntu-gis-wsl.tar.gz --version 2
		
 

Рисунок 4-34


Импорт нашего индивидуального образа Ubuntu GIS при помощи wsl.exe --import

Мы можем проверить что этот дистро был успешно импортирован, выполнив wsl.exe --distribution Ubuntu-GIS (Рисунок 4-35). Если всё успешно, мы окажемся пользователем root в своём новом дистро.


PS C:\> wsl.exe --distribution Ubuntu-GIS
		
 

Рисунок 4-35


Запуск нашего индивидуального дистро Ubuntu GIS для проверки его загрузки надлежащим образом

Мы можем убедиьс что всё на своих местах и работает в несколько команд: cat /etc/os-release проверяет что мы исполняем образ Ubuntu 20.04 LTS focal (Рисунок 4-36).

 

Рисунок 4-36


Проверка базовой ОС нашего индивидуального дистро Ubuntu GIS

После закрытия и повторного открытия Терминала Windows, наш персональный дистро Ubuntu GIS WSL теперь будет автоматически наполнять соответствующий ниспадающий блок оболочки (Рисунок 4-37).

 

Рисунок 4-37


Проверка того, что Ubuntu GIS виден из Терминала Windows

Обладая правильно настроенным сторонним X сервером, что обсуждается в Главе 6, Настройка WSL2, мы можем протестировать те приложения GIS, которые мы собрали в свой дистро WSL GIS Ubuntu, qgis (Рисунок 4-38):

 

Рисунок 4-38


QGIS, запущенный из нашего индивидуального дистро Ubuntu GIS

Данная глава обсудила сопровождение вашего дистро WSL, включая инструменты управления пакетами, особенными для дистро. Мы обсудили модернизацию пакетов, различные способы нахождения конкретных пакетов и удаления пакетов в Ubuntu, Debian, Kali, Pengwinи прочих основанных на apt Linux. Эта глава завершается неким руководством по генерации нашего индивидуального образа WSL Ubuntu под определённую цель.