На главную страницу На главную страницу Помоги больным детям! Их можно спасти!
 
Справочные материалы ←

Как установить Google Chrome, Chromium ГОСТ, Яндекс.Браузер?

Начиная с версии базовой системы FreeBSD 12.2 появилась возможность использовать linuxulator для запуска Linux-приложений не только в стандартном пользовательском окружении на базе CentOS, но и в пользовательском окружении на базе Ubuntu. Поэтому в Ульяновск.BSD теперь можно установить некоторые приложения, версий которых для FreeBSD нет. Это, например, Chromium ГОСТ от КриптоПро, Яндекс.Браузер и Google Chrome с поддержкой Widevine (Netflix, Spotify, Amazon Prime Video, HBO Max и т.д.) и поддержкой российских криптографических плагинов.

Установка и настройка Ubuntu-окружения:

Для начала необходимо создать точки монтирования, требующиеся для правильной работы linuxulator:

mkdir -p /compat/ubuntu/{dev/fd,dev/shm,home,proc,sys,tmp}

Подмонтировать соответствующие файловые системы:

mount -t linprocfs linprocfs /compat/ubuntu/proc
mount -t linsysfs linsysfs /compat/ubuntu/sys
mount -t devfs devfs /compat/ubuntu/dev
mount -o linrdlnk -t fdescfs fdescfs /compat/ubuntu/dev/fd
mount -o mode=1777 -t tmpfs tmpfs /compat/ubuntu/dev/shm
mount -t nullfs /home /compat/ubuntu/home
mount -t nullfs /tmp /compat/ubuntu/tmp

И установить необходимые пакеты:

pkg install -r latest debootstrap linux-steam-utils

После этого можно приступить к установке и настройке Linux-окружения на базе Ubuntu (версия bionic или focal):

debootstrap --arch=amd64 --no-check-gpg focal /compat/ubuntu
printf 'deb http://archive.ubuntu.com/ubuntu/ focal multiverse main universe restricted\n' > /compat/ubuntu/etc/apt/sources.list
printf 'deb http://archive.ubuntu.com/ubuntu/ focal-updates main restricted universe multiverse\n' >> /compat/ubuntu/etc/apt/sources.list
printf 'deb http://archive.ubuntu.com/ubuntu/ focal-security main restricted universe multiverse\n' >> /compat/ubuntu/etc/apt/sources.list
printf '0.0 0 0.0\n0\nUTC\n' > /compat/ubuntu/etc/adjtime

Далее необходимо сделать следующее исправление:

cd /compat/ubuntu/lib64/
rm ./ld-linux-x86-64.so.2
ln -s ../lib/x86_64-linux-gnu/ld-2.31.so ld-linux-x86-64.so.2

Во время настройки локали необходимо выбрать en_US.UTF-8 и ru_RU.UTF-8, а в качестве локали по умолчанию выбрать ru_RU.UTF-8:

chroot /compat/ubuntu /bin/bash
dpkg-reconfigure locales
dpkg-reconfigure tzdata
apt update
apt upgrade
apt install -y pulseaudio
apt install -y fonts-symbola
apt install -y ttf-mscorefonts-installer
exit

Если предполагается подключение к разным провайдерам, то в файл /compat/ubuntu/etc/resolv.conf необходимо внести хотя бы один постоянно доступный публичный DNS-сервер. Например, 8.8.8.8. Помните, что всего записей в этом файле должно быть не более трёх.

Так как Ubuntu-окружение устанавливается в каталог /compat/ubuntu/, а стандартным для Linux-окружения является каталог /compat/linux/, то необходимо предусмотреть возможность переключения между Linux-окружениями. Для этого можно создать скрипт /usr/local/etc/rc.d/ubuntu следующего содержания:

#!/bin/sh

# PROVIDE: ubuntu
# REQUIRE: linux

. /etc/rc.subr

name="ubuntu"
desc="Enable Ubuntu Linux environment"
rcvar=ubuntu_enable
start_cmd="${name}_start"
stop_cmd="${name}_stop"
load_rc_config $name
: ${ubuntu_enable:="NO"}

_emul_path="/compat/ubuntu"

unmounted()
{
	[ `stat -f "%d" "$1"` == `stat -f "%d" "$1/.."` -a \
	  `stat -f "%i" "$1"` != `stat -f "%i" "$1/.."` ]
}

ubuntu_start()
{
	if checkyesno linux_mounts_enable; then
		mkdir -p ${_emul_path}/proc
		mkdir -p ${_emul_path}/sys
		mkdir -p ${_emul_path}/dev/fd
		mkdir -p ${_emul_path}/dev/shm
		mkdir -p ${_emul_path}/home
		mkdir -p ${_emul_path}/tmp
		unmounted "${_emul_path}/proc" && mount -t linprocfs linprocfs "${_emul_path}/proc"
		unmounted "${_emul_path}/sys" && mount -t linsysfs linsysfs "${_emul_path}/sys"
		unmounted "${_emul_path}/dev" && mount -t devfs devfs "${_emul_path}/dev"
		unmounted "${_emul_path}/dev/fd" && mount -o linrdlnk -t fdescfs fdescfs "${_emul_path}/dev/fd"
		unmounted "${_emul_path}/dev/shm" && mount -o mode=1777 -t tmpfs tmpfs "${_emul_path}/dev/shm"
		unmounted "${_emul_path}/home" && mount -t nullfs /home "${_emul_path}/home"
		unmounted "${_emul_path}/tmp" && mount -t nullfs /tmp "${_emul_path}/tmp"
		true
	fi

	sysctl compat.linux.emul_path=${_emul_path}
}

ubuntu_stop()
{
	if checkyesno linux_mounts_enable; then
		! unmounted "${_emul_path}/proc" && umount "${_emul_path}/proc"
		! unmounted "${_emul_path}/sys" && umount "${_emul_path}/sys"
		! unmounted "${_emul_path}/dev/fd" && umount "${_emul_path}/dev/fd"
		! unmounted "${_emul_path}/dev/shm" && umount "${_emul_path}/dev/shm"
		! unmounted "${_emul_path}/dev" && umount "${_emul_path}/dev"
		! unmounted "${_emul_path}/home" && umount "${_emul_path}/home"
		! unmounted "${_emul_path}/tmp" && umount "${_emul_path}/tmp"
		true
	fi

	sysctl compat.linux.emul_path=/compat/linux
}

load_rc_config $name
run_rc_command "$1"

И сделать этот скрипт исполняемым:

chmod +x /usr/local/etc/rc.d/ubuntu

Теперь можно переключиться в Ubuntu-окружение следующей командой:

service ubuntu onestart

В случае, если потребуется переключиться на стандартное Linux-окружение, то можно воспользоваться следующей командой:

service ubuntu onestop

Если предполагается постоянное использование Ubuntu-окружения, то в файл /etc/rc.conf можно добавить следующую запись:

ubuntu_enable="YES"

Важно помнить, что для работы linuxulator в файле /etc/rc.conf обязательно должна присутствовать следующая запись:

linux_enable="YES"

Для того, чтобы в устанавливаемых в Ubuntu-окружениии приложениях работал звук, необходимо использовать сервер pulseaudio. Для его запуска можно создать скрипт /compat/ubuntu/usr/local/bin/pulseaudio следующего содержания:

#!/bin/sh

get_pa_sock_path()
{
    PA_SOCK_PATH=$(sockstat | awk -v me=$(whoami) -F'[ \t]+' '
        $1 == me && $2 == "pulseaudio" && $6 ~ /native/ {
            print $6;
            exit 0
        }'
    )
}

get_pa_sock_path
if [ ! -S "$PA_SOCK_PATH" ]; then
    while killall pulseaudio; do
        sleep 0.5
    done
    pulseaudio --start
    get_pa_sock_path
fi
[ -S "$PA_SOCK_PATH" ] && export PULSE_SERVER=unix:$PA_SOCK_PATH

START_SCRIPT=$1
shift
$START_SCRIPT $*

И сделать этот скрипт исполняемым:

chmod +x /compat/ubuntu/usr/local/bin/pulseaudio

Теперь можно переходить к установке приложений.

Установка Chromium ГОСТ:

Свежую версию Chromium ГОСТ можно скачать на сайте КриптоПро по ссылке https://update.cryptopro.ru/chromium-gost/. На момент создания данного документа это файл chromium-gost-88.0.4324.96-linux-amd64.deb. Для установки необходимо выполнить следующие команды:

fetch -o /tmp/chromium-gost.deb https://update.cryptopro.ru/chromium-gost/chromium-gost-88.0.4324.96-linux-amd64.deb
chroot /compat/ubuntu /bin/bash
apt install -y /tmp/chromium-gost.deb
exit

Далее необходимо создать скрипт запуска /compat/ubuntu/usr/local/bin/chromium-gost следующего содержания:

#!/compat/ubuntu/bin/bash

export START_PATH="/opt/chromium-gost/chrome"
export CHROME_WRAPPER="`readlink -f "$0"`"
export LD_LIBRARY_PATH=/usr/local/steam-utils/lib64/fakeudev:/compat/ubuntu/lib/x86_64-linux-gnu:/compat/ubuntu/usr/lib/x86_64-linux-gnu
export LD_PRELOAD=/usr/local/steam-utils/lib64/webfix/webfix.so
export LIBGL_DRI3_DISABLE=1

exec -a "$0" "$START_PATH" --no-sandbox --no-zygote --in-process-gpu --test-type --v=0 "$@"

И сделать этот скрипт исполняемым:

chmod +x /compat/ubuntu/usr/local/bin/chromium-gost

В завершении необходимо создать ярлык для запуска /usr/local/share/applications/chromium-gost.desktop:

[Desktop Entry]
Type=Application
Version=1.0
Encoding=UTF-8
Name=Chromium GOST
Name[ru]=Chromium ГОСТ
Comment=Web browser based on Chromium with GOST cryptography
Comment[ru]=Веб-браузер на основе Chromium с криптографией ГОСТ
Icon=/compat/ubuntu/opt/chromium-gost/product_logo_256.png
Exec=/compat/ubuntu/usr/local/bin/pulseaudio /compat/ubuntu/usr/local/bin/chromium-gost %U
Categories=Network;WebBrowser
MimeType=text/html;text/xml;application/xhtml+xml;x-scheme-handler/http;x-scheme-handler/https;x-scheme-handler/ftp;
StartupNotify=true

Установка Google Chrome:

Для установки Google Chrome необходимо выполнить следующие команды:

printf "deb [arch=amd64] http://dl.google.com/linux/chrome/deb/ stable main" > /compat/ubuntu/etc/apt/sources.list.d/google-chrome.list
fetch -o /tmp/ https://dl.google.com/linux/linux_signing_key.pub
chroot /compat/ubuntu /bin/bash
apt install -y gnupg
apt-key add /tmp/linux_signing_key.pub
apt update
apt install -y google-chrome-stable
exit

Далее необходимо создать скрипт запуска /compat/ubuntu/usr/local/bin/google-chrome следующего содержания:

#!/compat/ubuntu/bin/bash

export START_PATH="/opt/google/chrome/chrome"
export CHROME_WRAPPER="`readlink -f "$0"`"
export LD_LIBRARY_PATH=/usr/local/steam-utils/lib64/fakeudev:/compat/ubuntu/lib/x86_64-linux-gnu:/compat/ubuntu/usr/lib/x86_64-linux-gnu
export LD_PRELOAD=/usr/local/steam-utils/lib64/webfix/webfix.so
export LIBGL_DRI3_DISABLE=1

exec -a "$0" "$START_PATH" --no-sandbox --no-zygote --in-process-gpu --test-type --v=0 "$@"

И сделать этот скрипт исполняемым:

chmod +x /compat/ubuntu/usr/local/bin/google-chrome

В завершении необходимо создать ярлык для запуска /usr/local/share/applications/google-chrome.desktop:

[Desktop Entry]
Type=Application
Version=1.0
Encoding=UTF-8
Name=Google Chrome
Name[ru]=Google Chrome
Comment=Web browser based on Chromium
Comment[ru]=Веб-браузер на основе Chromium
Icon=/compat/ubuntu/opt/google/chrome/product_logo_256.png
Exec=/compat/ubuntu/usr/local/bin/pulseaudio /compat/ubuntu/usr/local/bin/google-chrome %U
Categories=Network;WebBrowser
MimeType=text/html;text/xml;application/xhtml+xml;x-scheme-handler/http;x-scheme-handler/https;x-scheme-handler/ftp;
StartupNotify=true

Установка Яндекс.Браузера:

Свежую версию Яндекс.Браузера можно скачать на сайте https://browser.yandex.ru. Для установки необходимо выполнить следующие команды:

fetch -o /tmp/Yandex.deb "https://browser.yandex.ru/download/?os=linux&x64=1&package=deb"
chroot /compat/ubuntu /bin/bash
apt install -y xz-utils
apt install -y /tmp/Yandex.deb
exit

Далее необходимо создать скрипт запуска /compat/ubuntu/usr/local/bin/yandex-browser следующего содержания:

#!/compat/ubuntu/bin/bash

export START_PATH="/opt/yandex/browser/yandex_browser"
export CHROME_WRAPPER="`readlink -f "$0"`"
export LD_LIBRARY_PATH=/usr/local/steam-utils/lib64/fakeudev:/compat/ubuntu/lib/x86_64-linux-gnu:/compat/ubuntu/usr/lib/x86_64-linux-gnu
export LD_PRELOAD=/usr/local/steam-utils/lib64/webfix/webfix.so
export LIBGL_DRI3_DISABLE=1

exec -a "$0" "$START_PATH" --no-sandbox --no-zygote --in-process-gpu --test-type --v=0 "$@"

И сделать этот скрипт исполняемым:

chmod +x /compat/ubuntu/usr/local/bin/yandex-browser

В завершении необходимо создать ярлык для запуска /usr/local/share/applications/yandex-browser.desktop:

[Desktop Entry]
Type=Application
Version=1.0
Encoding=UTF-8
Name=Yandex.Browser
Name[ru]=Яндекс.Браузер
Comment=Web browser based on Chromium
Comment[ru]=Веб-браузер на основе Chromium
Icon=/compat/ubuntu/opt/yandex/browser/product_logo_256.png
Exec=/compat/ubuntu/usr/local/bin/pulseaudio /compat/ubuntu/usr/local/bin/yandex-browser %U
Categories=Network;WebBrowser
MimeType=text/html;text/xml;application/xhtml+xml;x-scheme-handler/http;x-scheme-handler/https;x-scheme-handler/ftp;
StartupNotify=true

 

Примечание 1:

Пакет debootstrap позволяет установить верии Ubuntu bionic или focal. Чтобы обновиться до более поздней версии (например, jammy) необходимо выполнить следующие команды:

chroot /compat/ubuntu /bin/bash
do-release-upgrade -d
rm /run/reboot-required*
exit

Далее необходимо сделать следующее исправление:

cd /compat/ubuntu/lib64/
rm ./ld-linux-x86-64.so.2
ln -s ../lib/x86_64-linux-gnu/ld-linux-x86-64.so.2 ld-linux-x86-64.so.2

После этого желательно перезагрузить машину.

 

Примечание 2:

Для обновления приложений в Ubuntu-окружении можно использовать следующую последовательность команд:

chroot /compat/ubuntu /bin/bash
apt update
apt list --upgradable
apt upgrade
apt autoremove
apt clean
exit

 

Примечание 3:

Команды, используемые для удаления пакетов в Ubuntu-окружении:

dpkg --list | grep <package-name> - определение полного имени пакета <package-name>
apt remove <package-name> - удаление пакета <package-name>
apt purge <package-name> - удаление пакета <package-name> и его конфигурационных файлов
apt autoremove - удаление ненужных пакетов
apt clean - очистка кэша от устаревших пакетов

 

Последнее изменение: 08.01.2024 03:59:28
Комментарии
Добавляя комментарий, убедитесь, что он соответствует теме. Подумайте, будет ли он интересен другим. Спам, умышленная реклама и личная переписка не допускаются. Соблюдайте правила русского языка. Комментарии публикуются после проверки модератором и могут быть удалены без объяснения причин. Ответы на заданные в комментариях вопросы могут исходить от любого пользователя и являются неофициальными.
Импортозамещение
Об авторе: Анатолий Шалыто, профессор, д.т.н., Университет ИТМО Мне некоторое время назад стало известно о существовании стартапа Logical Intelligence («Логический интеллект»). Его лозунгом является выражение: «100% correct AI formal reasoning, 100% of the time» (100% правильные формальные рассуждения ИИ в 100% случаев). Область применения: программное обеспечение ответственных систем. Его организовали чемпион мира по программированию ICPC […] Сообщение А «караван» идёт появились сначала на Digital Russia. 
Министерство экономики, энергетики и туризма Австрии (BMWET) решило отказаться от облачного сервиса Microsoft в пользу европейской платформы Nextcloud, инфраструктура которой расположена на территории страны – это не первая страна ЕС, пытающаяся добиться независимости от американского бигтеха, написало в пятницу издание ZDNet. В общей сложности на облачную платформу Nextcloud с открытым исходным кодом переведено 1200 сотрудников. […] Сообщение Власти ещё одного европейского государства решили отказаться от ... 
По итогам совещания по энергоснабжению центров обработки данных (ЦОД) под председательством вице-премьера Александра Новака с участием представителей Минэнерго, Минэкономразвития, Минцифры, профильных департаментов правительства, аналитических центров, технологических компаний принято решение о создании рабочей группы, которая рассмотрит различные предложения и варианты по энергоснабжению ЦОДов для искусственного интеллекта (ИИ), в том числе за счёт задействования существующих энергомощностей и […] Сообщени... 
В пятницу 31 октября 2025 года в Москве на площадке центра конференций «Сегодня» пройдёт V Ежегодная конференция «Цифровизация транспорта-2025», сообщают организаторы мероприятия. В рабочих сессиях конференции участники обсудят актуальные вопросы применения цифровых технологий, представят практики использования нововведений и определят точки роста для инноваций в транспортно-логистическом комплексе будущего, возникающих из требований реального времени — инвестировать свои […] Сообщение V Ежегодная конференц... 
Конкурс Минцифры на оказание услуг по обеспечению функционирования, администрирования и бесперебойной работы коммуникационных сервисов автоматизированного рабочего места (КС АРМ) на базе общедоступной инсталляции выиграла компания «Софтлайн», победившая двух соперников – ООО «ИТК» и ПАО «Ростелеком». Максимальное значение цены контракта, заключаемого с победителем электронного аукциона, составляет почти 656 миллионов рублей. На сегодняшний день АРМ госслужащего представлено […] Сообщение «Софтлайн» выиграл ... 
Координационный центр доменов .RU/.РФ и проект «Поддерживаю.РФ» опубликовали результаты ежегодной оценки уровня поддержки кириллических доменов и адресов электронной почты наиболее популярными в России интернет-ресурсами. Исследование проводится уже третий год подряд и направлено на изучение готовности популярных у россиян сайтов корректно работать с e-mail-адресами, содержащими юникод символы в локальной части (до знака @) и в доменном […] Сообщение Большинство популярных сайтов не обеспечивают полноценную... 
Компания-разработчик российской мобильной операционной системы (ОС) «Аврора» «Открытая мобильная платформа» перенесла ключевые проекты с открытым исходным кодом на Mos.Hub, столичную облачную платформу для разработчиков программного обеспечения, сообщает mos.ru в среду. Независимые разработчики, представители академического сообщества и студенты теперь могут запускать и развивать свои проекты на «Авроре» на отечественном ресурсе. Благодаря ОС «Аврора» можно создавать, в […] Сообщение Проекты с открытым исхо... 
Подведены итоги межрегионального хакатона для школьников «Умные города и дома», сообщает Минцифры Челябинской области во вторник. Хакатон проходил на базе IT?лицея «Привилегия». Мероприятие объединило свыше 190 учащихся 8–11 классов из Челябинской области, Пермского края, Республики Татарстан и других регионов России. В течение двух дней 45 команд разрабатывали практические IT-решения для совершенствования городской среды, инфраструктуры и […] Сообщение Итоги межрегионального хакатона для школьников «Умные ... 
На ближайшие три года проектом федерального бюджета на развитие электронной и радиоэлектронной промышленности в России предусмотрено свыше 250 миллиардов рублей, не считая частных инвестиций, сказал во вторник глава правительства Михаил Мишустин. За прошедший пятилетний период на эти цели было направлено более 500 миллиардов рублей бюджетных средств. Основные инструменты – субсидии на разработку и организацию производства […] Сообщение На поддержку электронной и радиоэлектронной промышленности предусмотрено... 
Свыше 600 миллионов долларов запланировало правительство Индии вложить в реализацию семи инвестпроектов по программе развития полупроводниковой отрасли страны (Electronics Component Manufacturing Scheme, ECMS), сообщил в понедельник pib.gov.in. Задача ECMS – создание полноценной экосистемы микроэлектронных компонентов путём привлечения больших объёмов инвестиций иностранных и местных компаний в производства на территории страны, а также интеграции индийских компаний в […] Сообщение Власти Индии одобрили инв... 
    Наверх       На главную страницу       Адрес электропочты Рейтинг@Mail.ru
Данный интернет-сайт носит исключительно информационный характер, и ни при каких условиях информационные
материалы и цены, размещенные на сайте, не являются публичной офертой, определяемой положениями Статьи 437 ГК РФ.

Сергей Волков – эксперт в области информационных технологий © 2011−2025
Работает система управления сайтом «Публикатор 1.9» © 2004−2025