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

Как установить 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 - очистка кэша от устаревших пакетов

 

Последнее изменение: 04.04.2023 00:35:41
Импортозамещение
В Новосибирске в пятницу начался пятый окружной хакатон проекта «Цифровой прорыв. Сезон: Искусственный интеллект», входящего в президентскую платформу «Россия – страна возможностей»; он закончится 1 октября, сообщают организаторы мероприятия. Более 1000 IT-специалистов будут соревноваться за призовой фонд 3 миллиона рублей. Командам программистов от трёх до пяти человек предстоит решить пять задач (кейсов) на основе методов […] Сообщение Окружной хакатон по ИИ с призовым фондом 3 млн руб стартовал в Новосиб... 
Отечественная автоматизированная информационная система оформления воздушных перевозок «Леонардо» подверглась массированной DDoS-атаке из-за рубежа, сообщает РИА Новости со ссылкой на Telegram-канал «Ростеха». Сообщение было опубликовано в 11.44 мск. В 12.08 «Ростех» написал, что «работоспособность системы бронирования авиабилетов «Леонардо» полностью восстановлена. DDoS-атака успешно отбита». СМИ отмечали, что из-за атаки в аэропортах была затруднена регистрация на рейсы. Напомним, […] Сообщение На отечест... 
Столичная компания «Рокор» организует массовое производство пластин из оксида галлия; изделие представляет собой полупроводниковый материал современного поколения, сообщает mos.ru во вторник. Компания находится на последней стадии подготовки к производству монокристаллических пластин оксида галлия, говорится в сообщении. В течение полутора лет планируется вывести пластины из оксида галлия на внешний рынок. Инновационность московской технологии получения оксида галлия […] Сообщение Инновационная технология п... 
«Бюро 1440», разработчик отечественных низкоорбитальных спутников связи, сообщило во вторник об успешном вводе в эксплуатацию двигательных установок космических аппаратов «Рассвет-1». Напомним, в начале июля с космодрома «Восточный» были запущены три отечественных низкоорбитальных спутника связи, разработанные «Бюро 1440» (входит в «ИКС-холдинг»). Практическая демонстрация технологии успешно прошла в середине августа. В сообщении компании говорится о надёжной работе системы […] Сообщение Успешно введены в э... 
Компания Directum выпустила интеграционный модуль к сервису «Контур.Доверенность» – узлу распределенной блокчейн-сети; теперь пользователи Directum RX могут в едином информационном пространстве выпускать машиночитатемые доверенности (МЧД) и управлять их жизненным циклом, сообщает Directum в среду. Интеграция поддерживается с версии 4.6 Directum RX. Решение подходит компаниям, которые планируют создавать МЧД прямо в корпоративной системе, где хранятся данные […] Сообщение В системе Directum RX появилась подд... 
Президент России поручил обновить Национальную стратегию развития искусственного интеллекта (ИИ) до 2030 года, сообщил председатель правительства Михаил Мишустин во время стратегической сессии по ИИ. Правительству необходимо внести в стратегию изменения, которые предусматривают в том числе реализацию комплекса мер, направленных на повсеместное внедрение таких технологий в отраслях экономики и социальной сферы и в системе государственного управления, […] Сообщение Правительству поручено обновить Национальную... 
Проект приказа Минцифры, вносящего изменения в структуру единого реестра отечественного и евразийского программного обеспечения (ПО), опубликован для общественного обсуждения во вторник. Наименование раздела «Офисные приложения» предложено заменить на «Офисное программное обеспечение». Делается это «в целях оптимизации структуры» реестров, а также для облегчения заказчикам поиска необходимых программных решений в реестрах. Также для уточнения требований к ПО, […] Сообщение Минцифры предложило переименовать ... 
Во время презентации новых продуктов на мероприятии Huawei Connect в Шанхае Huawei не стала раскрывать технические характеристики своего флагмана Mate 60 Pro, сообщил в понедельник телеканал CNN. Презентованы многие новые изделия, в частности, разрабатывавшийся 10 лет «самый лёгкий и тонкий в мире» планшет, заявлено об электромобиле, который «по всем параметрам» превосходит Tesla Model S (машина […] Сообщение Huawei презентовала новые продукты – электромобиль вошёл, сенсационный смартфон без подробностей по... 
Системный интегратор «Инфосистемы Джет» и Directum заключили соглашение о сотрудничестве: главным направлением совместной работы станет поддержка бизнеса при переходе на отечественное ПО, сообщают компании в понедельник. Вместе компании готовы предложить рынку передовые программные продукты для цифровизации бизнес-процессов. Обе компании обладают многолетним опытом развития IT-технологий, разработки и внедрения прогрессивных решений, бизнес-консультирования и аналитики. Задача импортозамещения зарубежного [... 
В Хабаровске наградили победителей четвертого окружного хакатона проекта «Цифровой прорыв. Сезон: Искусственный интеллект», сообщает президентская платформа «Россия – страна возможностей». По итогам соревнования 12 команд-победителей разделили призовой фонд в 2 400 000 рублей. Напомним, организатором проекта является Минэкономразвития. Хакатон проводится в рамках федерального проекта «Искусственный интеллект» национального проекта «Цифровая экономика». Участники хакатона по искусственному интеллекту […] Соо... 
    Наверх       На главную страницу       Адрес электропочты Рейтинг@Mail.ru
Данный интернет-сайт носит исключительно информационный характер, и ни при каких условиях информационные
материалы и цены, размещенные на сайте, не являются публичной офертой, определяемой положениями Статьи 437 ГК РФ.

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