Справочник команд для EggDrop/WinDrop в dcc/telnet

Это я набросал года три назад. Сейчас оно лежит здесь
—-
=> Перечитать конфиги | Эта команда перечитает конфигурационные файлы и скрипты бота | .rehash
rehash                         -перечитать конфигурацию-
      Эта команда заставляет бота перечитать файлы конфигурации, скрипты и все что
      подгрузается при старте. Эта команда не перезагружает модули и бота!

=> Перезапустить бота | Эта команда перезапустит бота и перезагрузит все модули | .restart
restart                       -перезапустить бота-
      Эта команда заставляет перезагрузиться всего бота целиком. По этой команде
      перезагружаются файлы конфигурации, скрипты, модули, очищаются "ловушки"
      событий (bind). При этой команде не сбрасывается аптайм бота,
      но если Вы пользуетесь модулем uptime - Вашего бота будут считать
      как недоверенным (кажется так это будет на русском).
      Это связано с тем что модуль uptime также будет выгружен.

=> Посмотреть статус бота | Эта команда покажет некоторую инфонрмацию о боте, ОС, на которой он запущен, и каналах. | .status
status                         -Показать статус-
      Эта команда показывает информацию о боте, ОС, в которой он запущен и о каналах, которые
      поддерживает бот.

=> Посмотреть аптайм | Эта команда покажет "время жизни" бота. | .uptime
uptime                              -Показать аптайм-
      Эта команда покажет "время жизни" бота. Т.е. сколько времени бот находится в "живом" состоянии.
      Пример:
              .uptime
              #Bart-mdv-# uptime
              Online for 47 days, 07:53   (background)
     (Бот запущен и работает 47 дней, 7 часов 53 минуты.)

=> Посмотреть инфу юзера | Эта команда выдаст Вам информацию об определенном пользователе. | .whois [юзер] | .whois Вася
whois <пользователь>                    -Показать инфу о пользователе-
      Эта команда покажет информацию о пользователе.
      ! ВНИМАНИЕ ! Ник в IRC не всегда идентичен пользователю на боте.
      Пример:
      .whois Bart-mdv-
      #Bart-mdv-# whois SomeUser
      HANDLE                                                     PASS NOTES FLAGS                     LAST
      SomeUser                                                 yes           0 fhjlmnoptx           07:21 (partyline)
        ^1^                                                       ^2^       ^3^   ^4^                         ^5^
                                                          #some-chan                 -                             14 Июл
                                                          ^6^                           ^7^                           ^8^
                                                          #other-chan               ao                           12 Июл
     
                                                    ^6^                           ^7^                           ^8^
            HOSTS: nick!ident@host-or-ip, *!*@other-host
          ^Хостмаски, под которыми бот знает этого юзера^
            Saved Console Settings:
          Некоторые настройки dcc (патилайна)
                Channel: #main
                Console flags: mcobw, Strip flags: -, Echo: no
                Page setting: 0, Console channel: 0
              1 - Хендл (внутреннее имя юзера)
              2 - Наличие пароля (yes/no)
              3 - количество записок
              4 - глобальные флаги
              5 - время и место, где в последний раз был замечен
              6 - Канал, где был этот пользователь
              7 - флаги пользователя на этом канале
              8 - Когда был замечен в последний раз на этом канале

=> Показать кто сейчас в dcc. | Эта команда покажет кто сейчас подключен к боту/ботам в dcc | .who [бот] | .who - покажет кто подключен к вашему боту
who [бот]                         -Показать кто подключен к боту-
      Эта команда показывает кто сейчас подключен к ботам в dcc (partyline).
     Она показывает как пользователей, так и ботов, которые подключены к данному боту.
     Если параметр бот не указан - будет показан who для текущего бота,
     если параметр бот указан - будет показан who для указанного бота.
     Для пользователей сообщен также хост пользователя, для ботов -      дата, время подключения,
     версия бота и сеть бота.

=> Показать пользователей в dcc | Эта команда покажет пользователей, подключенных к боту/ботам в dcc | .whom
whom [канал/*]                    -Показать пользователей в dcc-
     Эта команда очень похожа на who. Отличие в том, что whom показывает только пользователей
     (людей), которые сейчас в dcc.
     При Использовании модуля assoc есть возможность создавать "каналы" в dcc (патилайне).
     Обычно это редко используется т.к. нет смысла использовать dcc-чат, когда есть IRC.

=> Показать подключенных ботов | Эта команда выдаст список ботов в ботнете. | .bots
bots                              -Показать ботов в ботнете-
     Эта команда выдаст список ботов, которые в данный момент находятся в ботнете.
     Более удобные команды: bottree и vbottree

=> Посмотреть дерево ботнета | Эта команда покажет список ботов, построенный ввиде "дерева" | .bottree
bottree                              -Показать "дерово" ботнета-
     Эта команда покажет список ботов в ботнете, отсортированный в виде "дерева"
     Похожие команды: vbottree

=> Посмотреть дерево ботнета с указанием версий ботов | Эта команда покажет список ботов с указанием версий, построенный ввиде "дерева" | .vbottree
vbottree                              -Показать "дерево" ботнета с указанием версий-
     Эта команда покажет список ботов в ботнете, отсортированный в виде "дерева"
     Похожие команды: bottree

=> Поменять пароль пользователю | Поменять пароль другому пользователю | .chpass <юзер> [пароль] | .chpass Федя SuperKrutoyParol
chpass <пользователь> [пароль]          -Поменять пароль пользователю-
     Эта команда меняет пароль указанному пользователю.
     При указании пользователя и отсутствующем параметре пароль, пароль пользователя
     будет удален. При указании пароля, пароль должен быть длинной 6 или более символов.

=> Поменять свой пароль | Поменять пароль себе | .newpass | .newpass MouKJI3Bbiunap0JIb
newpass <пароль>                    -Поменять свой пароль-
     Эта команда меняет пароль пользователю, под которым произведен вход на бота.
     Параметр пароль обязателен и должен быть длинной 6 или более символов.

=> Выключить бота | Эта команда "убьет" (выключит) бота. | .die [причина] | .die Ушел на профилактику. Приду через 3-5 минут.
die [причина]                         -"убить" бота-
     Эта команда "убьет" (выключит) бота.
     Если указана причина, бот покинет IRC с этой причиной в "quit-сообщении"
     Если причина не указана, бот покинет IRC с ником "убившего" в "quit-сообщении"

=> Влезть на другого бота | Эта команда позволяет влезть на другого бота через текущего. | .relay | .relay DrugoyBot
relay [бот]                         -Присоединиться к другому боту-
     Эта команда позволяет подключиться к другому боту, через того бота, куда Вы сейчас
     подключены. Может быть особенно полезна если у Вас есть несколько ботов в одной
     локальной сети и только один из них имеет доступ во внешнюю сеть.
     Бот, к которому Вы хотите подключиться таким образом, должен быть добавлен текущему
     боту командой +bot. При выходе с уделенного бота, Вы вернетесь к текущему.

=> Включить/выключить чат | Эта команда включает/отключает режим чата в патилайне. | .chat | .chat on / .chat off
chat                              -Включить/отключить чат-
     Эта команда позволяет включить или отключить режим чата в патилайне.
     Т.е. если писать какой-либо текст в патилайне и в начале не поставить командный
     префикс (обычно точка ".") то этот текст увидят все кто сейчас находятся в патилайне
     во всем ботнете (объединении ботов). Таким образом можно разговаривать без irc.

=> Сменить юзера | Перезайти под другим юзером | .su | .su Vasya
su                                   -Сменить юзера-
     Эта команда позволяет сменить пользователя. Полезна если надо то или иное действие
     выполнить от имени другого пользователя бота или если надо перезайти в юзера с более
     высокими правами чем у текущего.

=> Сменить права(флаги) пользователю | Позволяет менять права доступа указанному пользователю. | .chattr |[chan_flags] [#chan] | .chattr Vasya +f|+o #chan
chattr                              -Сменить права пользователю-
     Эта команда позволяет менять флаги (права) доступа для пользователя.
     Перевод назначения стандартных флагов Вы можете найти на http://www.solarnet.ru/pub/
     или посмотреть помощь по команде chattr. Оригинал находится в директории
     "doc" в директории бота.
     Несколько примеров:
     .chattr vasya +m - выдать пользователю vasya глобальный флаг "m" (мастер)
     .chattr vasya |+m #chan - выдать пользователю vasya флаг "m" на канале #chan

=> Уйти в away (режим "ушел") | Эта команда переводит Вас в режим "away" | .away [reason] | .away Ушел гулять
away                              -Уйти в away-
     Эта команда поставит Вас в режим "away" (ушел) с указанной причиной.
     Причина будет видна тем, кто наберет команду who в патилайне.
     Вернуться из "away" можно командой back или away без параметра причины.

=> Вернуться из "away" | Эта команда снимет с Вам режим "away" | .back | .back
back                              -Выход из away-
     Эта команда снимет с Вам режим "away"
     Также можно использовать команду away без параметров.

=> Выйти из патилайна | Выход из патилайна (telnet) | .quit [reason] | .quit Ушел :-]
quit                              -Выход из патилайна-
     Эта команда порвет telnet-соединение с ботом (патилайн)
     При указании причины, ее увидят те, кто остался в патилайне.

=> Посмотреть настройки канала | Покажет настройки канала, установленные в боте | .chaninfo | .chaninfo #MyChannel
chaninfo                              -Посмотреть настройки канала-
     Эта команда выдаст Вам настройки канала, которые указаны в боте.
     Менять настройки можно командой chanset

=> Поменять настройки канала | Позволяет менять настройки канала, установленные в боте | .chanset | .chanset #MyChannel flood-chan 10:8
chanset                              -Поменять настройки канала-

=> Поиск по юзерам | Позволяет искать пользователей по определенным параметрам | .match [channel] [[start] limit] | .match *Вася* - найдет всех, кто подходит под эту маску.

=> Поменять ник в боте | Позволяет менять свое имя в боте (не в IRC) | .handle   | .handle Петя
handle                              -Поменять ник в боте
     Эта команда меняет Ваш внутренний ник на указанный.
     Также можно пользоваться командой nick
     Пример:
          <бяка> .handle someuser
          [04:32:02] Stats.mod: Transferred stats from Bart-mdv- to someuser
          [04:32:02] Switched 0 notes from Bart-mdv- to someuser.
          *** Handle change: Bart-mdv- -> someuser
          [04:32:02] #Bart-mdv-# handle someuser
          Okay, changed.
          Поменяли свой "внутренний ник на "someuser"
          <бяка> .nick Bart-mdv-
          [04:32:11] Stats.mod: Transferred stats from someuser to Bart-mdv-
          [04:32:11] Switched 0 notes from someuser to Bart-mdv-.
          *** Handle change: someuser -> Bart-mdv-
          [04:32:11] #someuser# handle Bart-mdv-
          Okay, changed.
          Поменяли обратно на Bart-mdv- :-]
     Примечание: На боте, где был пример, установлен модуль statsmod и включен
     модуль notes. У Вас может быть меньше/больше сообщений о смене.

=> Добавить маску пользователю | Добавляет маску указанному пользователю. Если пользователь не указан - добавляет текущему. | .+host [handle] | .+host Вася *!*vasya@vasya.some.net - Добавит юзеру "Вася" маску "*!*vasya@vasya.some.net"
+host                              -Добавить маску-
     Эта команда позволяет добавлять маску указанному пользователю.
     Если пользователь не указан - маска добавится текущему.
     Пример:
          .+host vasya *!*vasya@vasya.some.net - добавит юзеру "Vasya" маску "*!*vasya@vasya.some.net"
          .+host *!*petya@petya.other.net - добавит текущему юзеру (под которым сейчас произведен вход)
               маску "*!*petya@petya.other.net"
     Близкие команды: -host

=> Удалить маску пользователю | Удаляет маску у указанного пользователя. Если пользователь не указан - удаляет у текущего. | .-host [handle] | .-host Вася *!*vasya@vasya.some.net - Удалит у юзера "Вася" маску "*!*vasya@vasya.some.net"
-host                              -Удалить маску-
     Эта команда позволяет удалить маску у указанного пользователя.
     Если пользователь не указан - маска удалится у текущего.
     Пример:
          .-host vasya *!*vasya@vasya.some.net - удалит у юзера "Vasya" маску "*!*vasya@vasya.some.net"
          .-host *!*petya@petya.other.net - удалит у текущего юзера (под которым сейчас произведен вход)
               маску "*!*petya@petya.other.net"
     Близкие команды: +host

=> Посмотреть "ловушки событий" | Эта команда покажет Вам список "ловушек" для событий. | .binds [маска/тип] [all]
binds [тип/маска] [all]          -ловушки событий-
     Эта команда покажет Вам список "ловушек" для событий.
     TYPE          FLGS               COMMAND               HITS     BINDING (TCL)
     [тип ловушки]     [необходимые флаги]     [команда(событие)]     [хиты]     [имя процесса]

     тип ловушки - tcl-тип события
     необходимые флаги - tcl-флаги (уровни) доступа
     команда(событие) - событие, на которое реагирует эта строка
     хиты - количество "попаданий" (использований) этой команды
          с последней перезагрузки (restart) бота.
     Описание типов событий и флагов Вы можете найти в директории "doc" в директории бота.
     Несколько примеров:
          binds *seen* - показать все "ловушки", где встречается маска *seen*
          "*" - любое количество любых символов.
          binds all - показать все "ловушки"

Комментарии | опубликовано: Янв 10, 11:43

Как я ставил openvz на Debian etch

Подключаем дополнительный репозиторий:
deb http://debian.systs.org/ etch openvz
Ну или вместо него зеркало:
deb http://debian.tm-net.ru/mirrors/debian.systs.org/ etch openvz

Надо добавить ключик:
wget http://debian.systs.org/dso_archiv_signing_key.asc -q -O - | apt-key add -

Ищем подходящее нам ядро:
aptitude search ovzkernel
и ставим его :)

Ставим всякие утилиты:
aptitude install rsync vzctl vzquota vzprocps vzdump vzctl-ostmpl-debian
vzctl-ostmpl-debian – это окружение для openvz с шаблоном debian 4.0

Дописываем в /etc/sysctl.conf

# On Hardware Node we generally need
# packet forwarding enabled and proxy arp disabled
net.ipv4.ip_forward = 1
net.ipv4.conf.default.proxy_arp = 0

# Enables source route verification
net.ipv4.conf.all.rp_filter = 1

# Enables the magic-sysrq key
kernel.sysrq = 1

# TCP Explict Congestion Notification
# net.ipv4.tcp_ecn = 0

# we do not want all our interfaces to send redirects
net.ipv4.conf.default.send_redirects = 1
net.ipv4.conf.all.send_redirects = 0

Для совместимости со всякой OpenVZ-шеной ботвой делаем симлинк
ln -s /var/lib/vz /vz

Ребутаемся.

Скорее всего утилиты некоторые не поставились до ребута, ставим еще раз.

С установкой – все.

Создаем VE:

$VEID – ID виртуального окружения (лучше не делать меньше 100)
Как создать новый виртуальный сервер:
vzctl create $VEID --config vps.basic

Полезные параметры:

vzctl set $VEID —name ИМЯ – имя буковками, по которому можно будет вызывать вместо VEID циферками
—ipadd x.x.x.x – ставим IP-адрес
—numproc – количество процессов
—numtcpsock – количество TCP-сокетов
—numothersock – количество “других“сокетов
—onboot yes/no – стартовать этот VE при загрузки ноды
—hostname host.domain – имя хоста, выводимое в hostname
—nameserver x.x.x.x – IP-адрес DNS-сервера
—privvmpages=N – общая память (RAM, с возможностью запихивания части в swap на ноде)
—vmguarpages=N – память, которая гарантированно будет выдана этому VE (указывается в страницах, на x86 – 1 страница – 4Кб)
—kmemsize=N – память, которая ни при каких обстоятельствах не уйдет в своп (она типа всегда занята ядром)
—tcpsndbuf N – размер TCP-буфера на отправку
—tcprcvbuf N – размер TCP-буфера на прием
—dgramrcvbuf N – размер UDP-буфера на прием
—othersockbuf N – размер для других буферов
—cpulimit N – лимит мегагерцев процессора (в процентах)
—cpuunits N – еще один лимит процессора (забыл зачем он)
—diskspace N – лимит места на диске (можно указывать <число>M – мегабайты)

Если в конце строки указать —save – параметры запишутся в конфиг. Если не указать – после следующего ребута все вернется как было.

Все размеры, указываются в килобайтах, если не указано иное.

Если какое-то VE стало не нужным – его можно удалить командой vzctl destroy &lt;VE_ID&gt;
Работающий сервер удалить нельзя. Сначала надо остановить.

Создаем VE-шку:


# 256Mb RAM, 10% CPU, 5Gb HDD
vzctl create 8051 --config vps.basic
vzctl set 8051 --ipadd "1.2.3.4" --ipadd "2001:ff:ff:0:0:80:51:1" --ipadd "192.168.80.51" --save
vzctl set 8051 --onboot yes --hostname virtual.host.name --name virtual \
--nameserver "2001:ff:ff:0:1:80:37:1 192.168.80.37" --privvmpages=256M --vmguarpages=128M \
--kmemsize=16M --save
vzctl set 8051 --numproc 10240 --numtcpsock 20480 --numothersock 20480 \
--tcpsndbuf 32M --tcprcvbuf 32M \
--diskspace 5000M --diskinodes 1000000 \
--othersockbuf 32M --dgramrcvbuf 32M --save
vzctl set 8051 --cpulimit 10 --cpuunits 1000 --save

  • Миграция с одного физического сервера на другой

1 – создаем свой публичный SSH-ключик и кладем его на сервер, куда будем перемещать.
{
нужно создать ключи
ssh-keygen -t rsa
затем публичный ключ ~/.ssh/id_rsa.pub нужно закинуть в ~/.ssh/authorized_keys на ноде, куда будем переносить
ssh-copy-id -i ~/.ssh/id_rsa.pub root@нода_куда_переносим
}

2 – перемещаем :-)
vzmigrate —online нода_куда_переносим VEID
ключики:
-v – будет писать больше инфы во время переноса
-r yes/no – удалять или нет VE на сервере, откуда переносим
—online – использовать rsync (ни одного процесса не убъется, даунтайм минимальный)

Про остальное читайте маны сами :-)


Ага, я знаю что оно старо уже. Буду апдейтиться на lenny – может перепишу.

Комментарии | опубликовано: Янв 7, 07:38

Следующая страница --->