Calculate wiki manual

Содержание:

Минусы

Гибкая система формирования зависимостей может потребовать дополнительных знаний

При установке некоторых пакетов могут возникнуть конфликты с настройкой USE-флагов или снятием маски. Пакетный менеджер постарается вам подсказать причину блокировки, а в большинстве случаев даже исправит конфликт. Читайте сообщения пакетного менеджера.

Для внесения изменений используйте файлы и . Не поленитесь прочитать переведённую документацию на сайте.

Пакетный менеджер на данный момент не имеет графического интерфейса

Традиционная чёрная консоль выглядит пугающе. Лишь немного её изучив, можно перестать её бояться и открыть для себя богатый мир возможностей. Например, что может быть проще, чем написать и тут же увидеть содержимое файла на странице сайта? Для установки программ нужно также воспользоваться консолью. Это несложно: для поиска используйте программу (например, ), для установки — (например, ). Синхронизировать Portage можно, выполнив .

При обновлении системы после годового перерыва могут возникнуть сложности

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

Calculate не имеет версионности, поэтому поддерживать годами все предыдущие модификации довольно затруднительно. Лучшим решением будет периодически обновлять систему. Об этом вас будет предупреждать утилита обновления, интервал проверки которой можно настроить под себя.

Turn-offs

for setting up USE flags for some packages or for unmasking. The package manager will generally try to tell you the reason for the blockage, and in most cases even fix the conflict. You should read the output carefully.

Cl-update users will get localized output (for some languages only, for the time being). To modify this, please edit the /etc/portage/package.use/custom and /etc/portage/package.keywords/custom files. We highly recommend that you read the documentation on this site.

Emerge has actually no GUI on Calculate Linux,

and the classic black-and-white command line may seem somewhat weird, but it only takes little time to get to know how it works and to begin getting the most of the functionality it offers. For example, what could be simpler than typing and immediately seeing the contents of the file on the site page? To install software, you will also need to type something in the command line. It is less complicated than it sounds: use for search (as in ) and for installation (as in). For Portage syncing, run .

There may be difficulties when upgrading your system after, say, an annual break.

You can install the system once and maintain it indefinitely. Anyway, for the last five years no update required a complete reinstallation of the system. However, if you have not been upgrading the system for a year or if you take an old Calculate Linux release and try to install and then update it, it may end in nothing.

As Calculate has no versioning, maintaining all previous modifications would be rather difficult. The best solution is thus to update regularly. You will be notified about this by the update utility, at an interval you choose.

Порядок добавления статей и правок

  1. Для создания новой статьи выберите в меню Новая статья .
  2. После сохранения статьи она попадает в Песочницу и ждёт модерации и одобрения. Все материалы, не прошедшие данную процедуру, будут подсвечены желтым цветом в основном списке, а также будут доступны для редактирования и просмотра всем зарегистрированным пользователям сайта. Неавторизованным пользователям статья будет недоступна.
  3. При выполнении правок в статье обычными пользователями все изменения ждут одобрения. При добавлении предложения к изменению статьи старайтесь подробно описывать суть вашего предложения. По умолчанию отображается статья с утверждёнными правками или, если утверждений не было, последняя версия. Материал с последними правками доступен при переходе в черновик или последнюю точку истории. Неодобренные правки в истории будут выделены жёлтым цветом.
  4. Все пользователи имеют доступ к управлению точками истории статьи с возможностью возврата к более ранней версии.

Настройка нескольких контейнеров с одним рабочим местом

Настройка хост-системы

Создайте файл с правилами для разделения устройств вывода, отдав контейнеру pc100, а контейнеру pc101:

/etc/udev/rules.d/95-id-lxc.rules

ACTION=="add|remove", KERNEL=="tty7", ENV{ID_LXC}="pc100"
ACTION=="add|remove", KERNEL=="tty8", ENV{ID_LXC}="pc101"

Важно

Номер в имени файла не следует менять.

Перечитайте правила udev для принятия изменений:

/etc/init.d/udev reload

Настройка первого контейнера

Отредактируйте настройки системы первого контейнера:

/var/calculate/lxc/pc100/rootfs/etc/calculate/ini.env

vt = 7

Выполните обновление настроек системы в контейнере:

lxc-attach -n pc100 cl-setup-system

Установка второго контейнера

Установите второй контейнер:

lxc-create -t download -n pc101 — —server mirror.calculate-linux.org —no-validate -d CCDX —arch x86_64

(потребуется ввести номер версии дистрибутива),

где pc101 — имя контейнера, участвующее в дальнейших настройках и используемое в качестве сетевого имени.

Настройка второго контейнера

Добавьте настройки сети для контейнера и права на запись в , дописав в конец файла:

/var/calculate/lxc/pc101/config

# Network configuration
lxc.net.0.type = veth
lxc.net.0.flags = up
lxc.net.0.name = eth0
lxc.net.0.link = br0
lxc.net.0.hwaddr = 04:05:06:07:08:09

lxc.mount.auto = cgroup:mixed proc:mixed sys:rw
lxc.environment = LXC_DESKTOP=1

Измените MAC)адрес 04:05:06:07:08:09 на любой другой. Не забывайте, что первое число должно быть чётным.

Настройте второй контейнер по аналогии с первым, указав для него восьмой терминал:

/var/calculate/lxc/pc101/rootfs/etc/calculate/ini.env

vt = 8

Запустите второй контейнер и выполните базовые настройки: пароль root, запуск демона ssh, локализация системы, обновление всех настроек:

lxc-start -n pc101

lxc-attach -n pc101 passwd

lxc-attach -n pc101 — cl-setup-locale -l ru_RU —timezone Europe/Moscow

Используйте свои значения локализации ru_RU и временной зоны Europe/Moscow.

ln -sf /etc/init.d/lxc /etc/init.d/lxc.pc101

rc-update add lxc.pc101

Перезагрузите оба контейнера:

lxc-stop -r -n pc100

lxc-stop -r -n pc101

Для переключения между графическими сеансами двух работающих lxc-desktop используйте комбинации клавиш и .

Использование контейнеров LXC

После всех проделанных выше действий мы можем перейти к запуску контейнера. Для этого используйте команду lxc-start с именем вашего контейнера, например:

Опция -n задает имя контейнера, в нашем случае — ubu1, а -d говорит утилите запуска, что нужно выполнять программу в фоновом режиме. Вы можете убедиться, что контейнер запущен с помощью такой команды:

Тут опция -f включает более подробный вывод, в списке вы увидите только что установленный контейнер и его состояние будет запущен.

Подключение к контейнеру

Чтобы подключиться к терминалу контейнера используйте команду lxc-attach:

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

Настройка системы или установка программ выполняется точно так же, как и в обычной системе, например установка программ:

Выключение контейнера

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

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

Клонирование контейнеров

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

Для примера давайте создадим клон контейнера ubu1 с именем ubu2. Сначала нужно остановить контейнер:

Затем можно клонировать. Опция -n указывает контейнер источник, а -N — имя нового контейнера:

Затем вы опять можете использовать lxc-ls, чтобы убедится, что контейнер был создан:

Моментальные снимки

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

Затем используйте команду lxc-snapshot для создания снимка:

Будет создан снимок с именем snap0, следующие снимки для этой же машины будут называться snap1, snap2, и так далее. Вы можете восстановить состояние контейнера до снимка в любой момент, для этого используйте опцию -r:

Вам нужно указать имя снимка и имя контейнера.

Запуск контейнера при старте системы

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

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

Решение проблем

Если у вас возникнут проблемы с запуском контейнеров, первое что нужно сделать, это попытаться запустить контейнер lxc с опцией -F, запуск не будет отправлен в фоновый режим и вы увидите все ошибки:

Проанализировав вывод команды, вы сможете понять в чем дело и исправить проблемы. Если вы пытаетесь запустить несколько контейнеров одновременно, то можете получить ошибки типа «Quota reached» или «failed to create the configured network». Это потому что вы используете больше сетевых интерфейсов, чем было разрешено. Мы задавали этот параметр в файле /etc/lxc/lxc-usernet. Вначале мы усказали, что можно использовать два сетевых интерфейса, но можно сделать 5:

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

Дистрибутивы

Calculate Linux делится на четыре варианта — версия для ПК и ноутбуков Calculate Linux Desktop (CLD, CLDM и CLDX), серверная версия Calculate Directory Server (CDS), дистрибутивы для самостоятельной сборки системы Calculate Linux Scratch и Calculate Scratch Server (CLS и CSS), и домашний мультимедиа центр развлечений Calculate Media Center (CMC).

  • Calculate Linux Desktop KDE/MATE/Xfce/Cinnamon/LXQt (CLD, CLDM, CLDX, CLDC, CLDL) — это современный десктоп на базе графического окружения KDE, MATE или Xfce, который может выполнять большинство офисных задач. Основной особенностью является быстрая установка, удобная система обновлений и возможность хранить учётные записи пользователей на сервере. Внешний вид рабочего стола на всех трёх дистрибутивах идентичен. Сотрудники беспрепятственно могут работать на разных десктопах совместно используя файлы, документы из ОС Windows.
  • Calculate Directory Server (CDS) — может выступать в роли контроллера домена, позволяет при помощи утилит Calculate 2 простыми unix-подобными командами настраивать Samba, Mail, Jabber, Proxy сервисы. По мере выхода пакета calculate-server, входящего в состав утилит Calculate 2 (лицензия Apache 2), с интервалом в 2-3 месяца выходят новые версии сервера.
  • Calculate Linux Scratch (CLS) — базовый дистрибутив, подобно stage3 применяемый для сборки других версий десктопа. В отличие от stage3, содержит необходимый минимум дополнительных пакетов, драйвера, библиотеки, исходный код ядра Linux и портежи.
  • Calculate Scratch Server (CSS) — как и CLS, использует минимальный набор пакетов. В отличие от последнего, предназначен для установки на сервере.
  • Calculate Media Center (CMC) — специализированный дистрибутив, оптимизированный для хранения и проигрывания мультимедийного контента.

Все версии дистрибутива распространяются в виде загрузочного образа livecd с возможностью установки на HDD, USB-Flash либо USB-HDD.

How to submit articles and modifications

  1. To create a new article, select New article in the site menu.
  2. When an article is saved, it goes to (sandbox) and waits for moderation and approval. All articles that have not been moderated will be highlighted in yellow in the main list, and will be available for editing and browsing to all registered users of the site. They cannot though be accessed by unauthorized site visitors.
  3. When an article is edited by regular Users, all changes must be approved to be validated. Try to explain your modifications with precision whenever you suggest any. The text displayed by default is either the one with approved edits or, if no approval, the latest version of it. To access the recent modifications, go to the draft or latest history point. Unapproved edits will be highlighted in yellow in the modification history.
  4. All users have access to managing article history points and can revert to an earlier version.

Установка системы в контейнер

Для установки Calculate Linux Container выполните:

lxc-create -n calculate -t download — —server mirror.calculate-linux.org —no-validate —arch x86_64

lxc-create -n calculate -t download -- --server mirror.calculate-linux.org --no-validate --arch x86_64
Downloading the image index
WARNING: Running without gpg validation!

---
DIST    RELEASE ARCH    VARIANT BUILD
---
CCS     20.6    x86_64  default 20200710
---

Distribution: 
CCS
Release: 
20.6

Downloading the image index
Downloading the rootfs
Downloading the metadata
The image cache is now ready
Unpacking the rootfs

---
You just created a Gentoo container (release=18, arch=amd64, variant=default)

To enable sshd, run: rc-update add sshd

For security reason, container images ship without user accounts
and without a root password.

Use lxc-attach or chroot directly into the rootfs to set a root password
or create user accounts.

Вместо calculate укажите любое другое подходящее имя контейнера. Для использование подтомов , при создании корневого раздела контейнера, добавьте параметр . Сценарий загрузки отобразит доступные образы и попросит указать дистрибутив CCS (заглавными буквами) и релиз 20.6, текущий на момент написания статьи. Программа сама загрузит контейнер с зеркала и выполнит его установку. Установленные контейнеры находятся в директории .

Заметка

В дальнейшем описании в командах и путях вместо calculate используйте выбранное вами имя контейнера.

Пример №1. Простой шаблон

Для примера создадим шаблон настроек пакета . Для этого нужно создать шаблон ncurses.sh:

/var/calculate/templates/ncurses.sh

# Calculate env=install ac_install_merge==on&&mergepkg(sys-libs/ncurses)!= path=/etc/profile.d comment=#
export LDFLAGS="${LDFLAGS} -ltinfo"

Теперь переустановите пакет , выполнив:

emerge -a1 ncurses

Проверьте, что в директории /etc/profile.d создался файл ncurses.sh со следующим содержимым:

/etc/profile.d/ncurses.sh

#------------------------------------------------------------------------------
# Modified Calculate Utilities 3.6.4.2
# Processed template files:
# /var/calculate/templates/ncurses.sh
# For modify this file, create /etc/profile.d/ncurses.sh.clt template.
#------------------------------------------------------------------------------
export LDFLAGS="${LDFLAGS} -ltinfo"

Давайте подробней рассмотрим формат шаблона:

  • env=install
    Параметром «env» задаётся область действия имён переменных и функций. По умолчанию используются базовые переменные и функции модуля main из библиотеки утилит. Подключая модуль install, мы можем использовать дополнительно переменные настройки системы. Посмотреть список переменных можно, выполнив @cl-core-variables-show —filter install.@ (с точкой в конце). Если модуль отсутствует в системе, шаблон будет пропущен.
  • ac_install_merge==on&&mergepkg(sys-libs/ncurses)!=
    Два условных выражения, записанных без пробела и обязательных для выполнения шаблона:
  • ac_install_merge==on
    Проверка на выполнение действия по настройке пакета — обязательное условие выполнения шаблона.
  • mergepkg(sys-libs/ncurses)!=
    Проверка на выполнение установки пакета sys-libs/ncurses. При выполнении @cl-setup-system@ условие также даст положительный результат.
  • path=/etc/profile.d
    Путь к директории, где будет записан конфигурационный файл.
  • comment=#
    Так как мы не задавали формат конфигурационного файла, неплохо указать символ разделителя комментария, чтобы утилиты могли сохранить служебную информацию, в т.ч. путь к шаблону, которым был настроен файл. Впоследствии по этому заголовку утилита сможет отыскать ваш настроенный файл.

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

equery f sys-libs/ncurses | grep ncurses.sh

/etc/profile.d/ncurses.sh

Здесь мы видим, что созданный шаблоном файл принадлежит пакету .

Проверьте изменение контрольной суммы файла:

qcheck sys-libs/ncurses

Checking sys-libs/ncurses-6.1-r2 ...
  * 4038 out of 4038 files are good

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

Статьи

  • Производительный Calculate Linux вам подходит // Яндекс Дзен //
  • Calculate Linux 20 // DistroWatch
  • Calculate Linux : подробный обзор дистрибутива // linuxvsem.ru https://linuxvsem.ru/distributions/calculate-linux
  • Calculate Linux 17.2.2 bureau Cinnamon // JetesteLinux http://www.jetestelinux.com/calculate-linux-bureau-cinamon
  • Calculate Linux explained // TechPhylum.com; By sumit rohankar (Posted by techphylum on Jan 3, 2017) http://www.techphylum.com/2017/01/calculate-linux-explained.html
  • Установка Calculate Linux // LOSST // http://losst.ru/ustanovka-calculate-linux
  • Calculate Linux 14.16.2 à base Gentoo // JetesteLinux http://www.jetestelinux.com/calculate-linux-14-16-2-a-base-gentoo
  • Further Adventures in Calculate Linux // OStatic http://ostatic.com/blog/further-adventures-in-calculate-linux
  • Weekend z dystrybucją: Calculate Linux 14.16.2 // przystajnik http://404.g-net.pl/2015/05/weekend-z-dystrybucja-calculate-linux-14-16-2/
  • Calculate Linux Provides Consistency by Design // LinuxInsider http://www.linuxinsider.com/story/81242.html
  • Сергей Голубев: «CLD 14.16 — новый отечественный десктоп» http://www.pcweek.ru/foss/article/detail.php?ID=174216
  • Introducing Calculate Linux 14 // DistroWatch
  • Calculate Linux 13.11 Review: Gentoo Simplified and works well with Nvidia hybrid graphics! // Blogspot http://mylinuxexplore.blogspot.ru/2013/12/calculate-linux-1311-review-gentoo.html
  • First impressions of Calculate Linux 13.4 // DistroWatch
  • Calculate Linux 13 – XFCE // PlanetOSS http://planetoss.com/reviews/calculate-linux-13-xfce
  • Иван Булычёв: «Calculate Linux» // Ivan Bulychev: блог с буквой Ё. http://blog.bulychev.org/2012/10/calculate-linux.html
  • Calcalute Linux Desktop 12 KDE — Keep It Rolling, Baby //Barnaby http://all-things-linux.blogspot.co.uk/2012/08/calcalute-linux-desktop-12-kde-keep-it.html
  • Now, pay attention to the latest Calculate Linux 11.9 //unixmen.com https://www.unixmen.com/now-pay-attention-to-the-latest-calculate-linux-119
  • Сергей Яремчук. Александр Трацевский: «Calculate Linux – полет нормальный» // журнал «Системный администратор» №1-2 Январь 2011 http://samag.ru/archive/article/1073
  • Флагом по производительности. Соревнования по скоростному забегу: Linux Mint 9 vs Calculate Linux Desktop 10.9 // журнал «Хакер» декабрь 12 (143) 2010 https://xakep.ru/issues/xa/143
  • Дистрибутивы Linux. Обзор. // SeriouSerg http://thinkit.ru/blog/viewblog/2041
  • Benchmarks Of The Gentoo-Based Calculate Linux Desktop // Linux Hardware Reviews, Benchmarking, & Gaming http://www.phoronix.com/scan.php?page=article&item=calculate_gentoo_benchmarks&num=1
  • Собираем свой дистрибутив с Calculate Linux Scratch // журнал «Системный администратор» декабрь 2009 http://samag.ru/archive/article/1559
  • Задача: Выбрать и установить подходящую ось на Flash // журнал «Хакер» август 08 (128) 2009 http://xakep-archive.ru/xa/128/036/1.htm
  • Строим сеть на Calculate Directory Server // журнал «Системный администратор» август 2009 http://samag.ru/archive/article/2065
  • Обзор Calculate Linux Desktop 9.6 // «Linux Format» Номер 7 (120) Июль 2009 http://www.linuxformat.ru/anons120.phtml
  • Calculate Linux Desktop 9.5 // Dator Magazin http://www.datormagazin.se

Особенности

  • Интеграция с основными событиями операционной системы и действиями утилит Calculate.
  • Интеграция с пакетным менеджером.
  • Поддержка настройки как системных файлов, так и профилей пользователей.
  • Поддержка синтаксиса большинства популярных форматов конфигурационных файлов.
  • Поддержка переменных, функций, условных выражений.
  • Несколько способов записи в файлы, включая выборочное изменение настроек в конфигурационных файлах.
  • Множественное хранение путей к шаблонам: в подключённых оверлеях, заданных директориях и в /etc.

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

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

Роль шаблонов сложно переоценить. Например, одно из ключевых отличий Calculate Linux от Gentoo — Исправления и миграция реализовано именно при помощи шаблонов. Во время обновления системы, сразу после завершения синхронизации портежей и оверлеев, выполняются шаблоны миграции. При этом система получит необходимые исправления ещё до установки пакетов. Этого достаточно, чтобы поддерживать систему всегда в рабочем состоянии и выполнять переходы между версиями.

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

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *