Hcl-get usage: различия между версиями

Материал из ALT Linux Wiki
Строка 80: Строка 80:
  hcl-get -q AMD
  hcl-get -q AMD


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


== Поиск среди комментариев ==
== Поиск среди комментариев ==

Версия от 18:14, 25 июня 2016

Описание

Эта статья написана Сергеем Котляровым и её первый оригинал находится на форуме ALT Linux

hcl-get клиент для базы данных проб оборудования, который позволяет как загрузку своих данных на сервер, так и получение данных от сервера (как данных об оборудовании, так и данных, загруженных самими пользователями - комментариев к их данным об оборудовании/софте).

Использование hcl-get

"Заливка" пробы на сервер

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

hcl-get -r

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

  • либо об успешном добавлении данных и выдаст номер, который присвоен сервером пробе оборудования, а клиент сохранит архив в домашнюю директорию пользователя ~/.hcl-get
  • либо об ошибке.

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

Получение информации о пробе

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

hcl-get -r номер

где номер - числовой код присвоенный пробе в хранилище. Может случиться так, что отправляемых данных будет много, а часть архивов может быть переименована произвольным образом и их названия (hcl-get сохраняет успешно отправленные данные в архив ~/.hcl-get/номер.tar.bz2) не будут соответствовать внутренней нумерации сервера. В этом случае можно проверить, имеются ли данные некоторого архива в хранилище (и у них есть номер) либо нет. Это можно сделать командой

hcl-get -r имя_архива.tar.bz2

если файл располагается в домашней директории ~/.hcl-get или

hcl-get -r /полный/путь/архив.tar.bz2

если файл располагается вне пределов домашней директории.

Работа с комментариями

Теперь, когда проба оборудования успешно загружена на сервер, хотелось бы написать несколько строк о работоспособности имеющегося оборудования. Другими словами, мы хотим прокомментировать сухой язык статистики, которым составлены отчеты о нашем оборудовании (то, что можно увидеть в выводе команды hcl-get -r номер). Для этого нужно сделать два действия:

1. Собственно, написать сам комментарий на тему отправленных ранее данных. Здесь есть три условия его составления (использование любого текстового редактора на выбор и применяемого форматирования не являются частью условий):

  • длина комментария ограничена тремя килобайтами (на мой взгляд, этого вполне достаточно, однако, этот лимит может быть пересмотрен)
  • кодировка комментария может быть либо utf-8 либо ascii и это должен быть обычный txt файл (но не .doc и т.п.)
  • для удобства манипулирования комментарием, лучше всего его сохранить рядом с архивом пробы в файл ~/.hcl-get/номер.txt, где номер соответствует номеру пробы, для которой составляется комментарий

2. Отправить комментарий на сервер, делается это командой

 hcl-get -c номер

если файл комментария располагается в домашней директории ~/.hcl-get и называется номер.txt (и при этом номер соответствует номеру, присвоенному сервером пробе оборудования) либо

 hcl-get -c файл_с_расширением

если файл комментария располагается в домашней директории ~/.hcl-get и называется файл_с_расширением (в этом случае и в случае, описанном ниже, будет запрошено на выбор:

  • номер пробы, если файлом пробы является архив ~/.hcl-get/номер.tar.bz2
  • имя архивного файла с расширением, если файл располагается в ~/.hcl-get
  • полный путь к архиву с пробой, если файл располагается вне каталога ~/.hcl-get), или
 hcl-get -c /полный/путь/файл_с_расширением

если файл комментария располагается вне пределов домашней директории ~/.hcl-get по пути /полный/путь/файл_с_расширением. После того, как комментарий успешно добавлен к данным пробы, к его содержимому можно обратиться командой

 hcl-get -rc номер

где "номер" равен номеру, присвоенному пробе оборудования сервером

Поиск

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

Поиск среди данных

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

hcl-get -q что_ищем

к примеру, мы хотим посмотреть, есть ли что-нибудь в базе от AMD:

hcl-get -q AMD

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

Поиск среди комментариев

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

hcl-get -qc что_ищем

Однако, на данный момент этот функционал не реализован.

Замечания

Про параметры -h, думаю, не надо объяснять. Единственное, что нужно добавить, что при вызове

hcl-get -v

или

hcl-get --version

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