## Please edit system and help pages ONLY in the master wiki!
## For more information, please see MoinMoin:MoinDev/Translation.
##master-page:HelpOnMoinCommand
##master-date:2010-01-18T14:01:20Z
#acl -All:write Default
#format wiki
#language ru
<<Navigation(children)>>
<<TableOfContents>>

= moin =

Программа `moin` устанавливается при инсталляции дистрибутива МойнМойн посредством `setup.py`. В случае, если при вызове из командного интерпретатора программа `moin` не может быть найдена (это, вероятнее всего, означает то, что `moin` отсутствует в `/usr/bin/` и не прописан в `$PATH`), можно также настроить и использовать `wiki/server/moin` (относительно пути установки экземпляра вики МойнМойн). Если посмотреть в этот скрипт, можно увидеть, что в нём присутствует ряд путей, которые необходимо указать.

Например, в случае использования всего одной вики или вики-фермы на машине и наличии настроенной переменной `sys.path` в скрипте `moin`, нет необходимости указывать параметр `--config-dir=...` при каждом вызове.

Также, в скрипте `moin` можно настроить опции протоколирования работы, в случае, если не устраивают настройки по умолчанию.

Использование: 
{{{
moin [команда] [основные опции] команда подкоманда [опции, зависящие от команды]
}}}

Основные опции:
||<rowbgcolor="#ffffcc"> '''Параметр''' || '''Описание''' ||
|| `--version`                        || Показ информации о версии и завершение работы программы ||
|| `-h`, `--help`                     || Показ справочного сообщения и завершение работы программы ||
|| `-q`, `--quiet`                    || Не выводить информационных сообщений в процессе работы ||
|| `--show-timing`                    || Если у данного параметра указано значение `True`, показывать информацию о замере времени исполнения (по умолчанию отключено — `False`) ||
|| `--config-dir=КАТАЛОГ`             || Каталог, содержащий файлы конфигурации вики (по умолчанию — текущий каталог). ||
|| `--wiki-url=АДРЕС`                 || Адрес экземпляра вики, например, `localhost/mywiki/` (по умолчанию — ввод с командной строки) ||
|| `--page=СТРАНИЦА`                  || Имя страницы вики (по умолчанию — все страницы) ||

Список действий:
||<rowbgcolor="#ffffcc">  '''Действие''' || '''Субдействие'''                          || '''Описание''' ||
||||<(rowbgcolor="#ffffee"> '''acсount'''                                              || Действия над учётными записями ||
|| account                               || [[#account_check|check]]                   || Различные служебные действия над учётными записями. ||
|| account                               || [[#account_create|create]]                 || Создание новой учётной записи. ||
|| account                               || [[#account_disable|disable]]               || Блокировка учётной записи ||
|| account                               || [[#account_homepage|homepage]]             || Данная команда позволяет создать домашние страницы пользователей посредством интерфейса командной строки. ||
|| account                               || [[#account_resetpw|resetpw]]               || Сброс пароля для заданного пользователя. ||
||||<(rowbgcolor="#ffffee"> '''cli'''                                                  || Командная строка ||
|| cli                                   || [[#cli_show|show]]                         || Запуск командной строки moin ||
||||<(rowbgcolor="#ffffee"> '''export'''                                               || Экспортирование ||
|| export                                || [[#export_dump|dump]]                      || Создание html-версии всей или части вики. ||
|| export                                || [[#export_package|package]]                || Экспорт набора страниц в виде [[ПомощьПоУстановкеПакетов|пакета]]. ||
||||<(rowbgcolor="#ffffee"> '''import'''                                               || Импорт ||
|| import                                || [[#import_irclog|irclog]]                  || Импорт логов irc  в формате irssi. ||
||||<(rowbgcolor="#ffffee"> '''index'''                                                || Действия над поисковым индексом [[ПомощьПоXapian|Xapian]] ||
|| index                                 || [[#index_build|build]]                     || Построение и перестроение индекса Xapian. ||
||||<(rowbgcolor="#ffffee"> '''maint'''                                                || Операции по обслуживанию вики ||
|| maint                                 || [[#maint_cleancache|cleancache]]           || Удаление файлов кэша. ||
|| maint                                 || [[#maint_cleanpage|cleanpage]]             || Создаёт shell-скрипт, который может использоваться (после его визуальной проверки) для очистки каталога `data_dir`. ||
|| maint                                 || [[#maint_cleansessions|cleansession]]      || Удаляет ненужные файлы сессий ||
|| maint                                 || [[#maint_globaledit|globaledit]]           || Данная команда предназначена в основном для использования разработчиками МойнМойн для произведения глобальных правок на вики. ||
|| maint                                 || [[#maint_mailtranslators|mailtranslators]] || Используется только разработчиками МойнМойн (рассылка писем переводчикам для оповещения их о, например, новом релизе). ||
|| maint                                 || [[#maint_makecache|makecache]]             || Генерирует кэш на основании лога событий (evet-log) и ссылок на страницы. ||
|| maint                                 || [[#maint_mkpagepacks|mkpagepacks]]         || ||
|| maint                                 || [[#maint_reducewiki|reducewiki]]           || ||
||||<(rowbgcolor="#ffffee"> '''migration'''                                            || Миграция на новую версию ||
|| migration                             || [[#migration_data|data]]                   || Обновление данных вики до новой версии сервера. ||
||||<(rowbgcolor="#ffffee"> '''xmlrpc'''                                               || XML RPC ||
|| xmlrpc                                || [[#xmlrpc_mailimport|mailimport]]          || ||
|| xmlrpc                                || [[#xmlrpc_remote|remote]]                  || ||

В комментариях на этой странице содержится вывод при вызове соответствующей команды с ключом `--help`.

{{{{#!wiki comment
{{{
usage: moin [command] [general options] command subcommand [specific options]

options:
  --version           show program's version number and exit
  -h, --help          show this help message and exit
  -q, --quiet         Be quiet (no informational messages)
  --show-timing       Show timing values [default: False]
  --config-dir=DIR    Path to the directory containing the wiki configuration
                      files. [default: current directory]
  --wiki-url=WIKIURL  URL of a single wiki to migrate e.g. localhost/mywiki/
                      [default: CLI]
  --page=PAGE         wiki page name [default: all pages]



moin ... account check ...
moin ... account create ...
moin ... account disable ...
moin ... account homepage ...
moin ... account resetpw ...

moin ... cli show ...

moin ... export dump ...
moin ... export package ...

moin ... import irclog ...

moin ... index build ...

moin ... maint cleancache ...
moin ... maint cleanpage ...
moin ... maint cleansessions ...
moin ... maint globaledit ...
moin ... maint mailtranslators
moin ... maint makecache ...
moin ... maint mkpagepacks ...
moin ... maint reducewiki ...


moin ... migration data ...

moin ... xmlrpc mailimport ...
moin ... xmlrpc remote ...

General options:
    Most commands need some general parameters before command subcommand:
    --config-dir=/config/directory
        Mandatory for most commands and specifies the directory that contains
        your wikiconfig.py (or farmconfig.py).

    --wiki-url=wiki.example.org/
        Mandatory for most commands and specifies the url of the wiki you like
        to operate on.

Specific options:
    Most commands need additional parameters after command subcommand.

    Sorry, but there is not much docs about that stuff yet, you can check
    docs/CHANGES and the MoinMoin wiki site for more infos (or just try to
    invoke some command/subcommand to see if it emits more help).
    The code you invoke is contained in MoinMoin/script/command/subcommand.py,
    so just reading the comments / source there might help you, too.
}}}
}}}}

Пример вызова:
{{{
moin --config-dir=/usr/share/moin/mywiki  --wiki-url=http://webserver/mywiki migration data 
}}}

<<Anchor(account_check)>>
== moin ... account check ... ==

Различные служебные действия над учётными записями. Аргументы:
 --userunique :: Делает имена учётных записей уникальными (путём добавления ID к имени и почтовому адресу, отмены подписки на страницы и блокирования всех учтных записей, кроме последней сохранённой). По умолчанию показывает реультат действий, но не применяет их, необходимо добавить параметр --save для применения операции.
 --emailsunique :: Делает учётные записи уникальными. По умолчанию показывает эффект действия вместо его применения, для применения необходимо добавить опцию --save
 --wikinames :: Преобразует имена учётных записей в [[ВикиИмя|ВикиИмена]].
 --lastsaved :: Если данная опция не используется, то незаблокированной оставляется последняя использованная учётная запись. Если данная опция используется, то не блокируется последняя сохранённая запись.
 --save :: Если данный аргумент указан последним, то эффект от указанных в предыдущих аргументах действий будет применятся, в противном случае эффект применения только выводится на экран.
 --removepasswords :: Удаление из файлов учётных записей паролей чистым текстом, использовавшихся в МойнМойн до версии 1.1

{{{{#!wiki comment
{{{
  --usersunique       Makes user names unique (by appending the ID to name and
                      email, disabling subscribed pages and disabling all, but
                      the latest saved user account); default is to SHOW what
                      will be happening, you need to give the --save option to
                      really do it.
  --emailsunique      Makes user emails unique; default is to show, use --save
                      to save it.
  --wikinames         Convert user account names to wikinames (camel-case).
  --lastsaved         Normally the account most recently USED will survive and
                      the others will be disabled. Using --lastsaved, the
                      account most recently SAVED will survive.
  --save              If specified as LAST option, will allow the other
                      options to save user accounts back to disk. If not
                      specified, no settings will be changed permanently.
  --removepasswords   Remove pre-1.1 cleartext passwords from accounts.
}}}
}}}}

<<Anchor(account_create)>>
== moin ... account create ... ==
Создание новой учётной записи.

 --name=ИМЯ:: установить имя учётной записи в ИМЯ
 --alias=ПСЕВДОНИМ:: задать псевдоним учётной записи (например, для случаев, когда ИМЯ генерируется искуственно)
 --email=АДРЕС:: задать почтовой адрес учётной записи
 --password=ПАРОЛЬ:: задать пароль учётной записи (текстом или SHA1-хэшем как {SHA1}...) 

{{{{#!wiki comment
{{{
  --name=NAME          Set the wiki user name to NAME.
  --alias=ALIAS        Set the wiki user alias name to ALIAS (e.g. the real
                       name if NAME is cryptic).
  --email=EMAIL        Set the user's email address to EMAIL.
  --password=PASSWORD  Set the user's password to PASSWORD (either cleartext
                       or {SHA1}...).
}}}
}}}}

<<Anchor(account_disable)>>
== moin ... account disable ... ==
Блокировка учётной записи.

 --uid=ИДЕНТИФИКАТОР:: Блокировать учётную запись с данным идентификатором.
 --name=ИМЯ:: Блокировать учётные записи с указанным именем.

{{{{#!wiki comment
{{{
  --uid=UID           Disable the user with user id UID.
  --name=NAME         Disable the user with user name NAME.
}}}
}}}}

<<Anchor(account_homepage)>>
== moin ... account homepage ... ==
Данная команда позволяет создать домашние страницы пользователей посредством интерфейса командной строки.

 --name=ИМЯ:: Выбор учётной записи для создания домашней страницы по имени
 --group=СтраницаГруппы:: использует учётные записи для создания домашних страниц из страницы группыbhf
 --all-users:: Выбираются все пользователи
 --user=ИМЯ:: имя учётной записи пользоателя, от имени которого выполняется создание домашних страниц.
 --template_page=ШаблонСтраницы:: страница с шаблоном для страниц пользователей

{{{{#!wiki comment
{{{
  --name=username                selects the user for a homepage          
  --group=PageGroup              selects users for homepages by a group page
  --all-users                    selects all users
  --user=name                    name of the user to perform the homepage creation
  --template_page=PageTemplate   template page for the users homepage.
}}}
}}}}

<<Anchor(account_resetpw)>>
== moin ... account resetpw ... ==

Сброс пароля для заданного пользователя.

 --uid=ИДЕНТИФИКАТОР:: Сбросить пароль для учётной записи с данным идентификатором.
 --name=ИМЯ:: Сбросить пароль для учётной записи с указанным именем.

{{{{#!wiki comment
{{{
  --uid=UID           Reset the password of the user with user id UID to the given password
  --name=NAME         Reset the password of the user with user name to the given password
}}}
}}}}

<<Anchor(cli_show)>>
== moin ... cli show ... ==

<<Anchor(export_dump)>>
== moin ... export dump ... ==

Создание html-версии всей или части вики.

 --target-dir=/каталог/для/сохранения/:: Путь к каталогу для сохранения создающихся файлов.
 --username=АлександрПривалов:: Имя пользователя, производящего создание html-версии

{{{{#!wiki comment
{{{
  --target-dir=/your/output/path Specify the directory we write the html files to.
  --username=JohnDoe             Name of the user to perform the dump with
}}}
}}}}

Дополнительная информация доступна на странице /ExportDump.

<<Anchor(export_package)>>
== moin ... export package ... ==

Экспорт набора страниц в виде [[ПомощьПоУстановкеПакетов|пакета]].

 -p СТРАНИЦЫ, --pages=СТРАНИЦЫ:: Список страниц (разделённых запятыми), которые необходимо добавить в пакет.
 -o ФАЙЛ, --output=ФАЙЛ:: Имя файла генерируемого пакета.
 -s ЗАПРОС, --search=ЗАПРОС:: Поисковой запрос ,которому должны удовлетворять страницы.
 -u ИМЯ, --user=ИМЯ:: Пользователь, от имени которого выполняется операция.

Для запаковки всех страниц, созданным определённым пользователем, необходимо использовать только аргумент -u  без указания аргументов -p или -s.

{{{{#!wiki comment
{{{
  -p PAGES, --pages=PAGES
                        Comma seperated list of pages to package.
  -o OUTPUT, --output=OUTPUT
                        Output file for the package.
  -s SEARCH, --search=SEARCH
                        Search string to match.
  -u PACKAGE_USER, --user=PACKAGE_USER
                        User as whom the package operation will be performed
                        as.
}}}
}}}}

<<Anchor(import_irclog)>>
== moin ... import irclog ... ==
may be you need a dir with ircfiles

<<Anchor(index-build)>>
<<Anchor(index_build)>>
== moin ... index build ... ==

Построение поискового индекса [[ПомощьПоXapian|Xapian]]. Завершает работу с ошибкой в случае, если Xapian не установлен.

Для начальной генерации индекса необходимо использовать следующую команду:
{{{
moin --config-dir=/каталог/с/файлами/конфигурации --wiki-url=адрес-вики/ index build --mode=add
}}}

Статус использования Xapian и состояние его индекса можно проверить на странице SystemInfo.

Кроме того, следующие параметры могут быть указаны для управления процессом построения индекса:
 --mode=add:: Элементы добавляются в индекс без предварительной проверки на их наличие в нём. Рекомендуется использовать только в случае отсутствия индекса.
 --mode=rebuild:: Перед добавлением всех элементов существующий индекс удаляется, если таковой существовал.
 --mode=update:: Обновляет страницы в индексе на основании времени их последнего изменения.

{{{{#!wiki comment
{{{
 --mode=add           Items are added without checking if they are already in the
                      index. Only use this mode if you haven't got an index already.
 --mode=rebuild       Before going into add mode, this option deletes the previous
                      index, if existing.
 --mode=update        Updates every page in the index based on it's last 
                      modification date.
}}}
}}}}

 (!) Вызов --mode=update не требуется после каждого изменения страницы через интерфейс МойнМойн. Данный параметр предназначен только в отладочных целях и в случае, если страницы в индексе устарели.

 /!\ Индекс необходимо перестраивать (--mode=rebuild) после изменения хотябы одной из оций xapian_index_history, xapian_index_dir или xapian_stemming конфигурации. 

<<Anchor(maint_cleancache)>>
== moin ... maint cleancache ... ==

Удаление файлов кэша.

<<Anchor(maint_cleanpage)>>
== moin ... maint cleanpage ... ==

Создаёт shell-скрипт, который может использоваться (после его визуальной проверки) для очистки каталога data_dir (каталога, где хранится различная информация экземпляра вики).

Данная команда классифицирует каталоги страниц, выявляя удалённые страницы или мусор, и сгенерированный скрипт переместит эти каталоги из data_dir/pages в два катлога (которые должны быть предварительно созданы) --- trash (для страниц-мусора) и deleted (для удалённых страниц).

<<Anchor(maint_cleansessions)>>
== moin ... maint cleansessions ... ==
Данная команда позволяет удалять (ненужные) файлы сеансов (обычно используется для сопровождения авторизованных сеансов для http(s) и xmlrpc).

 --name:: Удалить сессии только для пользователя NAME (по умолчанию удаляются файлы сеансов для всех пользователей)
 --all:: Удалить все файлы сеансов (по умолчанию удаляются только просроченные файлы сеансов)

{{{{#!wiki comment
{{{
 --name remove sessions only for user NAME (default: all users)
 --all remove all sessions (default: remove outdated sessions)
}}}
}}}}

<<Anchor(maint_globaledit)>>
== moin ... maint globaledit ... ==

Данная команда предназначена в основном для использования разработчиками МойнМойн для произведения глобальных правок на вики (например, оно используется для указания списков достуна и других метаданных на !MoinMaster). Перед использованием макрокоманды (если таковое планируется), рекомендуется прочитать сначала её исходный код.

<<Anchor(maint_mailtranslators)>>
== moin ... maint mailtranslators ... ==

Используется только разработчиками МойнМойн (рассылка писем переводчикам для оповещения их о, например, новом релизе).

<<Anchor(maint_makecache)>>
== moin ... maint makecache ... ==

Генерирует кэш на основании лога событий (evet-log) и ссылок на страницы.

<<Anchor(maint_mkpagepacks)>>
== moin ... maint mkpagepacks ... ==
NEVER EVER RUN THIS ON A REAL WIKI!!! This must be run on a local testwiki

<<Anchor(maint_reducewiki)>>
== moin ... maint reducewiki ... ==
{{{
moin --config-dir=/usr/share/moin/mywiki  --wiki-url=localhost/mywiki  maint reducewiki --target-dir=/tmp/target
}}}

<<Anchor(migration_data)>>
== moin ... migration data ... ==

Обновление данных вики до новой версии сервера.

Пример использования:
{{{
moin --config-dir=/usr/share/moin/mywiki  --wiki-url=http://wikiserver/mywiki migration data 
}}}

<<Anchor(server_standalone)>>
== moin ... server standalone ... ==

Запуск вики-сервера (данная команда предоставляет больше параметров, чем ./wikiserver.py).
 
 --version:: Отображение версии вики-сервера и выход.
 -q, --quiet:: Отключение вывода информационных сообщений.
 --show-timing:: Печать информации о времени выполнения (по умолчанию имеет значение `False` — отключено).
 --docs=КАТАЛОГ:: Каталог со статическими документами. По умолчанию используется `MoinMoin/web/static/htdocs`.
 --user=ПОЛЬЗОВАТЕЛЬ:: Сменить пользователя, под которым выполняется процесс. Только в UNIX. По умолчанию пользователь не меняется.
 --group=ГРУППА:: Сменить группу, под которой выполняется процесс. Только в UNIX.  По умолчанию группа не меняется.
 --port=ПОРТ:: Задать порт, который сервер должен слушать. Значение по умолчанию — 8080.
 --hostname=ХОСТ, --interface=ИНТЕРФЕЙС:: Задать имя хоста или IP, на котором открывать порт. Для прослушивания всех интерфейсов можно использовать пустое значение у `--hostname` или `0.0.0.0` для `--interface`. Значение  по умолчанию — localhost.
 --start:: Запустить сервер на фоне.
 --stop:: Останоить сервер на фоне.
 --pidfile=ФАЙЛ:: Использовать указанный файл для хранения PID сервера. Значение по умолчанию — `moin.pid`.
 --debug=РЕЖИМ:: Режим отладочной печати сервера.
 :: `off` — отладочная печать не производится (значение по умолчанию);
 :: `web` — для отладки при помощи обозревателя;
 :: `external` — для использования внешнего отладчика.

{{{{#!wiki comment
{{{
  --version             show program's version number and exit
  -q, --quiet           Be quiet (no informational messages)
  --show-timing         Show timing values [default: False]
  --config-dir=DIR      Path to the directory containing the wiki
                        configuration files. [default: current directory]
  --wiki-url=WIKIURL    URL of a single wiki to migrate e.g.
                        http://localhost/mywiki/ [default: CLI]
  --page=PAGE           wiki page name [default: all pages]
  --docs=DOCS           Set the documents directory. Default: use builtin
                        MoinMoin/web/static/htdocs
  --user=USER           Set the user to change to. UNIX only. Default: Don't
                        change
  --group=GROUP         Set the group to change to. UNIX only. Default: Don't
                        change
  --port=PORT           Set the port to listen on. Default: 8080
  --hostname=HOSTNAME, --interface=HOSTNAME
                        Set the ip/hostname to listen on. Use "" for all
                        interfaces. Default: localhost
  --start               Start server in background.
  --stop                Stop server in background.
  --pidfile=PIDFILE     Set file to store pid of moin daemon in. Default:
                        moin.pid
  --debug=DEBUG         Debug mode of server. off: no debugging (default),
                        web: for browser based debugging, external: for using
                        an external debugger.
}}}
}}}}

<<Anchor(xmlrpc_mailimport)>>
== moin ... xmlrpc mailimport ... ==

Пример конфигурационного файла:
{{{
# This is the configuration file for the mail import client

# This secret has to be known by the wiki server
mail_import_secret = u"foo"

# The target wiki URL
mail_import_url = u"http://localhost/?action=xmlrpc2"
}}}

Также см. [[КакНастраивать/ПоддержкаПочты]].

<<Anchor(xmlrpc_remote)>>
== moin ... xmlrpc remote ... ==
needs a remotescriptconf.py
