Swine — различия между версиями
(→Склад бутылок для тестирования и разработки) |
|||
(не показано 15 промежуточных версии 3 участников) | |||
Строка 1: | Строка 1: | ||
− | [[ | + | [[Файл:Swine.png|справа|400px]] |
− | + | == Склад бутылок для тестирования и разработки == | |
+ | Описание приведено для etersoft-devel-utils-1.6.22-alt1 | ||
− | + | Для создания общедоступных тестовых установок программ (справочного характера, для работы support, при работе над проектом) используется механизм бутылок (разные .wine), содержащиеся на полках (racks). | |
+ | === Подробности === | ||
+ | Что она делает: | ||
− | + | а) переключает пользователя на wine@cellar | |
+ | б) разрешает соединение с Иксами вызывавшего пользователя (напрямую указывая DISPLAY) — для локальной сети потребуется [https://kb.etersoft.ru/Как_отключить_nolisten_tcp_для_X-сервера выключить nolisten tcp]. | ||
+ | в) устанавливает переменную WINEPREFIX для работы с отдельными настройками WINE | ||
+ | |||
+ | Используется пользователь wine (дом. каталог /net/wine) на машине cellar. | ||
− | + | === Общее описание === | |
− | + | Таким образом, чтобы попасть в бутылку 1C77 на полке 1C, пишем | |
+ | <pre> | ||
+ | $ swine 1C/1C77 | ||
+ | </pre> | ||
− | + | Возможно использование вложенных полок: swine buh/1C/77. | |
Для определения правильности пути применяется эвристика. | Для определения правильности пути применяется эвристика. | ||
− | |||
Для просмотра списка полок с бутылками: | Для просмотра списка полок с бутылками: | ||
− | + | <pre> | |
− | <pre>$ swine | + | $ swine |
List of available racks on cellar: | List of available racks on cellar: | ||
Строка 33: | Строка 42: | ||
Для просмотра списка бутылок на полке: | Для просмотра списка бутылок на полке: | ||
− | <pre>$ swine tor | + | <pre> |
+ | $ swine tor | ||
List of available bottles in the 'tor' rack: | List of available bottles in the 'tor' rack: | ||
− | test Описание бутылки</pre> | + | test Описание бутылки |
+ | </pre> | ||
+ | Для входа в тестовую бутылку используется команда swine полка/бутылка: | ||
− | + | <pre> | |
− | + | $ swine 1c77/1c77-25 | |
− | <pre>$ swine 1c77/1c77-25 | + | |
− | + | ||
Etersoft's racks and bottles handler. (c) 2006-2008 | Etersoft's racks and bottles handler. (c) 2006-2008 | ||
− | |||
Your are in '1c77/1c77-25' wine bottle on cellar host... | Your are in '1c77/1c77-25' wine bottle on cellar host... | ||
− | |||
<wine@cellar bottle 1c77/1c77-25>$ | <wine@cellar bottle 1c77/1c77-25>$ | ||
− | |||
<wine@cellar bottle 1c77/1c77-25>$ echo $WINEPREFIX | <wine@cellar bottle 1c77/1c77-25>$ echo $WINEPREFIX | ||
+ | /net/wine/bottles/1c77/.wine-1c77-25 | ||
+ | </pre> | ||
− | |||
− | + | Одновременное использование одной бутылки разными пользователями недопустимо, но если известно, что другой пользователь её больше не занимает, можно зайти принудительно: | |
− | + | ||
− | Одновременное использование одной бутылки разными пользователями недопустимо, но если известно, что другой | + | |
− | + | ||
− | пользователь её больше не занимает, можно зайти принудительно: | + | |
<pre>$ swine newrack/newbot -f</pre> | <pre>$ swine newrack/newbot -f</pre> | ||
− | |||
Строка 68: | Строка 71: | ||
Название бутылок/полок обязательно в нижнем регистре (для удобства ввода названия). | Название бутылок/полок обязательно в нижнем регистре (для удобства ввода названия). | ||
− | |||
− | |||
Создание новой полки: | Создание новой полки: | ||
− | |||
<pre>$ swine newrack/ -c [Описание полки]</pre> | <pre>$ swine newrack/ -c [Описание полки]</pre> | ||
− | |||
Создание новой бутылки: | Создание новой бутылки: | ||
− | |||
<pre>$ swine newrack/newbot -c [Описание бутылки]</pre> | <pre>$ swine newrack/newbot -c [Описание бутылки]</pre> | ||
Указание комментариев обязательно. | Указание комментариев обязательно. | ||
+ | === Переименование/Перемещение бутылок === | ||
+ | Сделайте ssh wine@eterhack и работайте с бутылками в каталогах .wine-xxx в /net/wine-origin. | ||
=== Указание машины с бутылками === | === Указание машины с бутылками === | ||
+ | Другой контейнер с бутылками указывается первым параметром: | ||
+ | |||
+ | <pre> | ||
+ | swine vanilla | ||
+ | </pre> | ||
+ | |||
+ | Список всех доступных наименований: | ||
+ | <pre> | ||
+ | # cut -d" " -f1 <swine.alias | ||
+ | # | ||
+ | 2.0 | ||
+ | 2.1 | ||
+ | eter-2.0 | ||
+ | eter-2.1 | ||
+ | 1.0.12 | ||
+ | eter-1.0.12 | ||
+ | etercad | ||
+ | eterhack | ||
+ | eterwine | ||
+ | vanilla | ||
+ | pure | ||
+ | winevanilla | ||
+ | </pre> | ||
+ | |||
+ | === Удалённое подключение === | ||
+ | Для подключения извне офиса нужно установить пакет etersoft-devel-utils и определить ssh-всевдоним для узла office в ~/.ssh/config. Например, | ||
− | + | <pre> | |
+ | Host office | ||
+ | Hostname seni.etersoft.ru | ||
+ | User ЛОГИН | ||
+ | Port 32 | ||
+ | Compression yes | ||
+ | ForwardAgent yes | ||
+ | </pre> | ||
− | < | + | <!-- |
+ | ControlMaster auto | ||
+ | ControlPath ~/tmp/ssh_mux_%h_%p_%r | ||
+ | ControlPersist 4h | ||
+ | ControlMaster включает постоянное соединение (не работает на RHEL 6?) | ||
+ | --> | ||
+ | Также имеется конфиг /etc/etersoft/swine.conf, где можно при необходимости переопределить различные параметры, в том числе название удалённого сервера (шлюза к контейнерам с бутылками): | ||
+ | <pre> | ||
+ | # remote ssh alias | ||
+ | #SERVERNAME=office | ||
+ | </pre> | ||
− | Если бутылки имеются на локальной машине (в / | + | Далее подключение обычным образом: |
+ | <pre> | ||
+ | $ swine vanilla bugs | ||
+ | </pre> | ||
+ | |||
+ | === Локальное подключение к бутылкам === | ||
+ | (не проверялось) | ||
+ | |||
+ | Если бутылки имеются на локальной машине (в /net/wine) и необходимые параметры для sudo имеются, можно локально подключаться к бутылкам: | ||
<pre>$ swine -l</pre> | <pre>$ swine -l</pre> | ||
Строка 103: | Строка 154: | ||
=== Работа с бутылками через RX === | === Работа с бутылками через RX === | ||
+ | При необходимости использовать бутылки через протокол NX в режиме одного приложения достаточно подключиться с параметром --rx: | ||
+ | <pre>$ swine --rx rack/bottle</pre> | ||
− | + | === Скачивание бутылки === | |
− | <pre>$ swine | + | Для удалённого скачивания бутылки применяется команда вида |
+ | <pre> | ||
+ | $ swine vanilla -d bugs/11234 | ||
+ | </pre> | ||
+ | Она создаёт архив с указанной бутылкой на удалённом сервере, копирует его с помощью rsync на локальный компьютер и распаковывает. | ||
+ | Поддерживается докачка: если в процессе скачивания связь оборвалась, можно повторно запустить команду и скачивание продолжится. | ||
− | === Использование | + | === Использование «личных» бутылок === |
− | + | В целях избежания лишних изменений в эталонных бутылок была создана возможность использования личных бутылок для различных экспериментов. | |
− | + | В качестве рабочего варианта предлагается сначала копировать нужные эталонную бутылку в личную. | |
− | + | Для просмотра списка «личных» бутылок: | |
− | + | ||
− | Для просмотра списка | + | |
<pre>$ swine -p | <pre>$ swine -p | ||
Строка 127: | Строка 183: | ||
List of available bottles in the 'peoples/baraka' rack: | List of available bottles in the 'peoples/baraka' rack: | ||
− | test Описание бутылки</pre> | + | test Описание бутылки |
+ | </pre> | ||
+ | Копирование существующей бутылки в личную: | ||
− | + | <pre> | |
− | + | $ swine 1c77/1c7727 -o | |
− | <pre>$ swine 1c77/1c7727 -o | + | |
Etersoft's racks and bottles handler. (c) 2006-2008 | Etersoft's racks and bottles handler. (c) 2006-2008 | ||
Строка 139: | Строка 196: | ||
List of available bottles in the 'peoples/baraka' rack: | List of available bottles in the 'peoples/baraka' rack: | ||
− | Copying .wine-1c7727 to peoples/baraka</pre> | + | Copying .wine-1c7727 to peoples/baraka |
− | + | </pre> | |
− | Вход в | + | Вход в свою личную бутылку: |
<pre>$ swine -p 1c7727</pre> | <pre>$ swine -p 1c7727</pre> | ||
− | + | Удаление личной бутылки: | |
− | Удаление | + | |
<pre>$ swine -p 1c7727 --remove | <pre>$ swine -p 1c7727 --remove | ||
Строка 160: | Строка 216: | ||
− | + | Пакет с командой swine называется etersoft-devel-utils и доступен при подключении [ftp://updates.etersoft.ru/pub/Etersoft/LINUX@Etersoft репозитория LINUX@Etersoft]. | |
− | Пакет с командой swine | + | |
− | + | ||
− | [ | + | |
− | + | ||
==== Что сделать ==== | ==== Что сделать ==== | ||
− | |||
* возможность поиска: swine -s бутылка | * возможность поиска: swine -s бутылка | ||
− | |||
* автодополнение через bash_completition | * автодополнение через bash_completition | ||
− | |||
* работу через ssh, если в DISPLAY - localhost | * работу через ssh, если в DISPLAY - localhost | ||
+ | === Освобождение места / Удаление ненужных бутылок === | ||
− | + | <pre> | |
+ | ssh cellar | ||
+ | cd /net | ||
+ | ./folder_size.sh | ||
+ | </pre> | ||
− | + | Получим файл с именем ''' "/net/bottles_size-дата_запуска" ''' | |
− | + | В файле список бутылок, отсортированный по размеру и по возрастанию | |
− | + | ||
− | + | ||
− | + | ||
− | + | ||
− | + | ||
− | + | ||
− | + | ||
− | + | ||
− | + | ||
− | + | ||
− | + | ||
− | + | ||
− | + | ||
− | + | ||
− | + | ||
− | + | ||
− | В файле список | + | |
'''Внимание''' размер указан в Мб | '''Внимание''' размер указан в Мб | ||
Строка 213: | Строка 250: | ||
− | + | Посмотреть свободное место можно командой | |
+ | <pre> | ||
+ | |||
+ | $ df -B G /net/wine | ||
+ | </pre> | ||
+ | |||
+ | ==Ссылки== | ||
+ | *[http://www.swine-tool.de/ Официальный сайт] | ||
+ | {{wine}} | ||
− | + | [[Категория:Wine utilites]] |
Текущая версия на 23:25, 19 февраля 2021
Содержание
[убрать]- 1 Склад бутылок для тестирования и разработки
- 1.1 Подробности
- 1.2 Общее описание
- 1.3 Создание новых бутылок
- 1.4 Переименование/Перемещение бутылок
- 1.5 Указание машины с бутылками
- 1.6 Удалённое подключение
- 1.7 Локальное подключение к бутылкам
- 1.8 Работа с бутылками через RX
- 1.9 Скачивание бутылки
- 1.10 Использование «личных» бутылок
- 1.11 Как установить
- 1.12 Освобождение места / Удаление ненужных бутылок
- 2 Ссылки
Склад бутылок для тестирования и разработки
Описание приведено для etersoft-devel-utils-1.6.22-alt1
Для создания общедоступных тестовых установок программ (справочного характера, для работы support, при работе над проектом) используется механизм бутылок (разные .wine), содержащиеся на полках (racks).
Подробности
Что она делает:
а) переключает пользователя на wine@cellar
б) разрешает соединение с Иксами вызывавшего пользователя (напрямую указывая DISPLAY) — для локальной сети потребуется выключить nolisten tcp.
в) устанавливает переменную WINEPREFIX для работы с отдельными настройками WINE
Используется пользователь wine (дом. каталог /net/wine) на машине cellar.
Общее описание
Таким образом, чтобы попасть в бутылку 1C77 на полке 1C, пишем
$ swine 1C/1C77
Возможно использование вложенных полок: swine buh/1C/77.
Для определения правильности пути применяется эвристика.
Для просмотра списка полок с бутылками:
$ swine List of available racks on cellar: tor Описание полки
Для просмотра списка бутылок на полке:
$ swine tor List of available bottles in the 'tor' rack: test Описание бутылки
Для входа в тестовую бутылку используется команда swine полка/бутылка:
$ swine 1c77/1c77-25 Etersoft's racks and bottles handler. (c) 2006-2008 Your are in '1c77/1c77-25' wine bottle on cellar host... <wine@cellar bottle 1c77/1c77-25>$ <wine@cellar bottle 1c77/1c77-25>$ echo $WINEPREFIX /net/wine/bottles/1c77/.wine-1c77-25
Одновременное использование одной бутылки разными пользователями недопустимо, но если известно, что другой пользователь её больше не занимает, можно зайти принудительно:
$ swine newrack/newbot -f
Создание новых бутылок
Название бутылок/полок обязательно в нижнем регистре (для удобства ввода названия).
Создание новой полки:
$ swine newrack/ -c [Описание полки]
Создание новой бутылки:
$ swine newrack/newbot -c [Описание бутылки]
Указание комментариев обязательно.
Переименование/Перемещение бутылок
Сделайте ssh wine@eterhack и работайте с бутылками в каталогах .wine-xxx в /net/wine-origin.
Указание машины с бутылками
Другой контейнер с бутылками указывается первым параметром:
swine vanilla
Список всех доступных наименований:
# cut -d" " -f1 <swine.alias # 2.0 2.1 eter-2.0 eter-2.1 1.0.12 eter-1.0.12 etercad eterhack eterwine vanilla pure winevanilla
Удалённое подключение
Для подключения извне офиса нужно установить пакет etersoft-devel-utils и определить ssh-всевдоним для узла office в ~/.ssh/config. Например,
Host office Hostname seni.etersoft.ru User ЛОГИН Port 32 Compression yes ForwardAgent yes
Также имеется конфиг /etc/etersoft/swine.conf, где можно при необходимости переопределить различные параметры, в том числе название удалённого сервера (шлюза к контейнерам с бутылками):
# remote ssh alias #SERVERNAME=office
Далее подключение обычным образом:
$ swine vanilla bugs
Локальное подключение к бутылкам
(не проверялось)
Если бутылки имеются на локальной машине (в /net/wine) и необходимые параметры для sudo имеются, можно локально подключаться к бутылкам:
$ swine -l
Работа с бутылками через RX
При необходимости использовать бутылки через протокол NX в режиме одного приложения достаточно подключиться с параметром --rx:
$ swine --rx rack/bottle
Скачивание бутылки
Для удалённого скачивания бутылки применяется команда вида
$ swine vanilla -d bugs/11234
Она создаёт архив с указанной бутылкой на удалённом сервере, копирует его с помощью rsync на локальный компьютер и распаковывает. Поддерживается докачка: если в процессе скачивания связь оборвалась, можно повторно запустить команду и скачивание продолжится.
Использование «личных» бутылок
В целях избежания лишних изменений в эталонных бутылок была создана возможность использования личных бутылок для различных экспериментов.
В качестве рабочего варианта предлагается сначала копировать нужные эталонную бутылку в личную.
Для просмотра списка «личных» бутылок:
$ swine -p Etersoft's racks and bottles handler. (c) 2006-2008 List of available bottles in the 'peoples/baraka' rack: test Описание бутылки
Копирование существующей бутылки в личную:
$ swine 1c77/1c7727 -o Etersoft's racks and bottles handler. (c) 2006-2008 List of available bottles in the 'peoples/baraka' rack: Copying .wine-1c7727 to peoples/baraka
Вход в свою личную бутылку:
$ swine -p 1c7727
Удаление личной бутылки:
$ swine -p 1c7727 --remove Succesfully removed
Как установить
Пакет с командой swine называется etersoft-devel-utils и доступен при подключении репозитория LINUX@Etersoft.
Что сделать
- возможность поиска: swine -s бутылка
- автодополнение через bash_completition
- работу через ssh, если в DISPLAY - localhost
Освобождение места / Удаление ненужных бутылок
ssh cellar cd /net ./folder_size.sh
Получим файл с именем "/net/bottles_size-дата_запуска"
В файле список бутылок, отсортированный по размеру и по возрастанию
Внимание размер указан в Мб
Размер | Команда для удаления | Автор бутылки |
---|---|---|
13891 | rm -rf /net/wine/eter-2.1/bottles/1c82/.wine-1c82 | svzhu |
Посмотреть свободное место можно командой
$ df -B G /net/wine