Отправляет email-рассылки с помощью сервиса Sendsay

За 2003-10-25

Re: рейтинг DM

On Sat, 25 Oct 2003 07:53:14 +0300, Русскин Андрей <big_t***@u*****.net>
wrote:

> Господа, предлагаю организовать новый соцопрос:
> Кто пользуется какой оболочкой и почему?
>
> От себя скажу - мое сердце заняло Icewm
> быстрый, легкий, прост в настройке, можно все индивидуально под себя
> настроить
Полностью с вами согласен. ...сказал NixoiD и посмотрел на встроенный в
IceWM монитор загрузки сети ;)

   2003-10-25 23:48:13 (#11842)

Gaim+rusconv

Здравствуйте!

Решил настроить Gaim 0.68, порылся на поисковиках...
для перекодировки koi8-r <-> cp1251
скачал rusconv-2.2-linux-i386.tar.gz. В архиве оказался rusconv.so
Положил его в '/usr/lib/gaim', даже создал еще и rusconv.la в соответствии с
лежащими там другими плагинами - запустил Gaim,
но в меню загрузки плагинов rusconv не оказалось.
Объясните, пожалуйста, как правильно загрузить этот плагин.

Заранее благодарен.

//Echa_ton
//mailto: echa_ton[at]pisem[dot]net

-*Информационный канал Subscribe.Ru
Написать в лист: mailto:comp.soft.linux.discuss-list@subscribe.ru
Отписаться: http://subscribe.ru/member/unsub?grp=comp.soft.linux.discuss&email=
http://subscribe.ru/ mailto:ask@subscribe.ru

   2003-10-25 23:07:31 (#11836)

Re: рейтинг DM

25 Октябрь 2003 08:53, Русскин Андрей написал:
> Господа, предлагаю организовать новый соцопрос:

Предлагаю не организовывать.

> Кто пользуется какой оболочкой и почему?
>
> От себя скажу - мое сердце заняло Icewm
> быстрый, легкий, прост в настройке, можно все индивидуально под себя
> настроить

Ну вот и зачем соцопрос? :)

   Ilya 2003-10-25 21:16:11 (#11828)

рейтинг DM

Господа, предлагаю организовать новый соцопрос:
Кто пользуется какой оболочкой и почему?

От себя скажу - мое сердце заняло Icewm
быстрый, легкий, прост в настройке, можно все индивидуально под себя
настроить

-*Информационный канал Subscribe.Ru
Написать в лист: mailto:comp.soft.linux.discuss-list@subscribe.ru
Отписаться: http://subscribe.ru/member/unsub?grp=comp.soft.linux.discuss&email=
http://subscribe.ru/ mailto:ask@subscribe.ru

   Русскин Андрей 2003-10-25 21:11:07 (#11826)

Re: timeout

On Sat, 25 Oct 2003, Alexander S. Yurkov wrote:
> Похоже это просто. Надо взять отрицательный PID. Т.е. если у головного
> процесса, к примеру, PID=241, то kill -s 9 '-241' убивает его и всех его
> потомков, в отличие от положительного PID, когда потомки остаются живы. Во
> всяком случае на одном примере у меня только что получилось именно так.

Забавно, что это не всегда работает. Например в моем скрипте таймаута:

#!/bin/bash
PID=$$
trap "echo timeout! ; kill -9 '-$PID_PROC' ; exit" SIGUSR1
(sleep $1 ; PID_SLEEP=$! ; kill -s SIGUSR1 $PID) &
$2 &
PID_PROC=$! ; wait $PID_PROC ; kill -9 $PID_SLEEP
exit

когда в конце предпоследней строки стояло kill -9 '-$PID_SLEEP'
bash ругался "нет такого пид". А в строке где trap с'едает в лучшем
виде... Что бы это значило?

-*Информационный канал Subscribe.Ru
Написать в лист: mailto:comp.soft.linux.discuss-list@subscribe.ru
Отписаться: http://subscribe.ru/member/unsub?grp=comp.soft.linux.discuss&email=
http://subscribe.ru/ mailto:ask@subscribe.ru

   2003-10-25 19:08:59 (#11806)

Re: timeout

On Sat, 25 Oct 2003, Kolotov Alexandr wrote:
> Тогда, к примеру, можно сделать там некоторую переделку:
> засыпать не $time секунд, а на 1, но $time раз - ошибка во времени тогда
> максимум 1 секунда, а если в некоторый момент $kid все-таки существует, то
break
> из цикла нафиг. Не так?

Так можно. Но лучше и естетсвеннее использовать прерывания (сигналы).
В общем мы разобрались как (см. bush-скрипт). Ну и убивать, судя по всему,
надо отрицательный пид (небольшая модификация) чтобы убить и всех
потомков тоже, которые мог нарожать наш процесс. А вообще посмотрите
man 2 kill, там еще что-то про отрицательные сигналы, но под bush
это не работает, я проверил. На каком языке писать
- ну какая разница, суть от этого не меняется. Я вообще Паскаль люблю :-),
когда-то давно любил фортран, сейчас юникс осваиваю - глядишь С
полюблю... Но, конечно, ассемблер (в аппаратнозависимых частях) - это
любовь навечно :-)

-*Информационный канал Subscribe.Ru
Написать в лист: mailto:comp.soft.linux.discuss-list@subscribe.ru
Отписаться: http://subscribe.ru/member/unsub?grp=comp.soft.linux.discuss&email=
http://subscribe.ru/ mailto:ask@subscribe.ru

   2003-10-25 17:18:58 (#11793)

Re: trap

On Sat, 25 Oct 2003, Kolotov Alexandr wrote:
> ИМХО, trap так и работает:
> запускается скрипт, в начале его ставится trap, если в дальнейшем при выполнении
> скрипта происходит одно из прерываний перечисленных в trap, то выполняется
набор
> команд определенных в аргументе trap.
> Таким образом связь с потомком будет организована только в том случае, если
этот
> потомок пошлет вызывающему скрипту какой-нить сигнал, что было показано в
> скрипте при обсуждении timeout - sleep после своего выполнения посылает
> вызывающему скрипту сигнал SIGUSR1, а вызывающий скрипт перехватывает этот
> сигнал с помощью trap.

Это само-собой. Но оказывается это не работает. Точнее, как
теперь уже выясняется, работает но не со всеми сигналами. Только что
выяснил что сигнал 10 (SIGUSR1) так проходит. Другие из скрипта в другой
(родитель) не ходят. Ходят только в пределах одного скрипта. Кроме 17
(SIGCHLD). Но дело даже не этом. При завершении потомка этот потомок сам
должен послать SIGCHLD родительскому процессу. Без каких-либо хлопот с
моей стороны. Но то ли не посылает, то ли сигнал не доходит. И почему
когда я даю kill -s sig pid с другой консоли, скрипт не реагирует на
сигнал, хотя перехват именно этого сигнала я прописал в нем (я их всех
прописал для экспериментов, с выводом разных текстов:-) )... Впрочем,
только что проверил: SIGUSR1 и тут проходит. А как же все остальные? Куда
они деваются? В общем не так страшно, стало ясно что просто надо
пользоваться не каким попало сигналом а SIGUSR1. Но хотелось бы
разобраться также, почему нет перехвата сигнала SIGCHLD.

-*Информационный канал Subscribe.Ru
Написать в лист: mailto:comp.soft.linux.discuss-list@subscribe.ru
Отписаться: http://subscribe.ru/member/unsub?grp=comp.soft.linux.discuss&email=
http://subscribe.ru/ mailto:ask@subscribe.ru

   2003-10-25 17:08:55 (#11791)

Re: timeout

ASY> Я толком не знаю перл, но вроде можно догадаться, что там написано (похоже
ASY> на С). Так ИМХО тот перл-скрипт просто неправилен. Если задача завершается
ASY> раньше, чем наступит таймаут, то скрипт завершится позже, чем надо.
ASY> Соответственно (если это использовать для дальнейшего управления),
ASY> передача управления произойдет не в то время, какое надо.
Тогда, к примеру, можно сделать там некоторую переделку:
засыпать не $time секунд, а на 1, но $time раз - ошибка во времени тогда
максимум 1 секунда, а если в некоторый момент $kid все-таки существует, то break
из цикла нафиг. Не так?

C уважением, Kolotov Alexandr aka mr. Эбола
отвечать: myscri***@e*****.ru
ICQ: 100349254

| Registered Linux user # 236664 |
-*Информационный канал Subscribe.Ru
Написать в лист: mailto:comp.soft.linux.discuss-list@subscribe.ru
Отписаться: http://subscribe.ru/member/unsub?grp=comp.soft.linux.discuss&email=
http://subscribe.ru/ mailto:ask@subscribe.ru

   Kolotov Alexandr 2003-10-25 16:56:14 (#11788)

Re: timeout

On Saturday 25 October 2003 15:53, you wrote:
> VE> Функция finalize - это просто для удобства - в нее можно вставить то,
> что VE> надо делать для завершения задачи.
> ИМХО, тот perl-скрипт от Shema прозрачнее...
>

Может и прозрачнее, но делает не то - если kid кончится раньше timeout -
перловка все равно будет ждать. Это не всегда хорошо - если, скажем, надо
ресурсы освободить, протокол написать и т.п. Похоже без дополнительного
сигнала не обойтись.

А вообще (я уж достаточно попрограммировал на sh, perl, python) python самый

прозрачный. perl не зря называют write-only языком. Впрочем, у каждого языка

свои любители :)

   Vladimir Efremov 2003-10-25 16:54:43 (#11787)

Re: timeout

On Sat, 25 Oct 2003, Kolotov Alexandr wrote:
> VE> Функция finalize - это просто для удобства - в нее можно вставить то, что
> VE> надо делать для завершения задачи.
> ИМХО, тот perl-скрипт от Shema прозрачнее...

Я толком не знаю перл, но вроде можно догадаться, что там написано (похоже
на С). Так ИМХО тот перл-скрипт просто неправилен. Если задача завершается
раньше, чем наступит таймаут, то скрипт завершится позже, чем надо.
Соответственно (если это использовать для дальнейшего управления),
передача управления произойдет не в то время, какое надо.

-*Информационный канал Subscribe.Ru
Написать в лист: mailto:comp.soft.linux.discuss-list@subscribe.ru
Отписаться: http://subscribe.ru/member/unsub?grp=comp.soft.linux.discuss&email=
http://subscribe.ru/ mailto:ask@subscribe.ru

   2003-10-25 16:39:25 (#11782)

Re: timeout

On Sat, 25 Oct 2003, Vladimir Efremov wrote:

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

Похоже это просто. Надо взять отрицательный PID. Т.е. если у головного
процесса, к примеру, PID=241, то kill -s 9 '-241' убивает его и всех его
потомков, в отличие от положительного PID, когда потомки остаются живы. Во
всяком случае на одном примере у меня только что получилось именно так.

-*Информационный канал Subscribe.Ru
Написать в лист: mailto:comp.soft.linux.discuss-list@subscribe.ru
Отписаться: http://subscribe.ru/member/unsub?grp=comp.soft.linux.discuss&email=
http://subscribe.ru/ mailto:ask@subscribe.ru

   2003-10-25 16:29:17 (#11780)

Re: trap

ASY> Сколько ни экспериментирую, никак не получается что надо. И вообще как-то
ASY> все непонятно. Выяснил следующее. Прерывания 2 и 20 (клавиши CTRL-C и
ASY> CTRL-Z) ловятся всегда. Хоть нажатием клавиш генерируй эти прерывания,
ASY> хоть kill давай с другой консоли, хоть в том же скрипте пиши kill.
ASY> Прерывание 17 (как раз SIGCHLD) не ловится никогда, ни при одном из
ASY> этих двух (кроме нажатия клавиши, естественно) способов их генерации.
ASY> Остальные прерывания ловятся только если они сгенерированы с помощью kill
ASY> в том же скрипте (но никак не в скрипте вызваным этим скриптом или с
ASY> другой консоли). man bash перечитал вдоль и поперек про маскирование
ASY> прерываний ничего не нашел. Кто-нибудь может все это об'яснить?
ИМХО, trap так и работает:
запускается скрипт, в начале его ставится trap, если в дальнейшем при выполнении
скрипта происходит одно из прерываний перечисленных в trap, то выполняется набор
команд определенных в аргументе trap.
Таким образом связь с потомком будет организована только в том случае, если этот
потомок пошлет вызывающему скрипту какой-нить сигнал, что было показано в
скрипте при обсуждении timeout - sleep после своего выполнения посылает
вызывающему скрипту сигнал SIGUSR1, а вызывающий скрипт перехватывает этот
сигнал с помощью trap.

C уважением, Kolotov Alexandr aka mr. Эбола
отвечать: myscri***@e*****.ru
ICQ: 100349254

| Registered Linux user # 236664 |
-*Информационный канал Subscribe.Ru
Написать в лист: mailto:comp.soft.linux.discuss-list@subscribe.ru
Отписаться: http://subscribe.ru/member/unsub?grp=comp.soft.linux.discuss&email=
http://subscribe.ru/ mailto:ask@subscribe.ru

   Kolotov Alexandr 2003-10-25 16:24:51 (#11774)

Re: timeout

VE> Функция finalize - это просто для удобства - в нее можно вставить то, что
VE> надо делать для завершения задачи.
ИМХО, тот perl-скрипт от Shema прозрачнее...

C уважением, Kolotov Alexandr aka mr. Эбола
отвечать: myscri***@e*****.ru
ICQ: 100349254

| Registered Linux user # 236664 |
-*Информационный канал Subscribe.Ru
Написать в лист: mailto:comp.soft.linux.discuss-list@subscribe.ru
Отписаться: http://subscribe.ru/member/unsub?grp=comp.soft.linux.discuss&email=
http://subscribe.ru/ mailto:ask@subscribe.ru

   Kolotov Alexandr 2003-10-25 15:58:14 (#11767)

Re: timeout

On Sat, 25 Oct 2003, Vladimir Efremov wrote:

> > мало... Кроме того, не вполне понимаю две вещи: всегда ли потомки
> > завершаются при завершении родителя (в данном случае будет ли
>
> Нет, не всегда. Дети завершаются тогда, когда они входят в группу процессов.
>
> Группа процессов, например, автоматически организуется, если shell - это
> login shell. Правда, как из bash стартовать процесс и сказать, что он будет

> главный в группе - я что-то не припоминаю - может кто вспомнит? Да и можно
ли
>
> это вообще?

Если это невозможно, то это весьма печально. Взять ту же проблему запуска
с таймаутом. Все получилось, да? А если этот процесс (который мы
хотим запустить с таймаутом) потомков наплодил? Их тоже как-то
искать-убивать?

-*Информационный канал Subscribe.Ru
Написать в лист: mailto:comp.soft.linux.discuss-list@subscribe.ru
Отписаться: http://subscribe.ru/member/unsub?grp=comp.soft.linux.discuss&email=
http://subscribe.ru/ mailto:ask@subscribe.ru

   2003-10-25 15:28:59 (#11755)