Re: Завершение shell скрипта при окончании сессии пользователя (logout)

2015-10-09 Пенетрантность Yuriy M. Kaminskiy
Andrey Tataranovich  writes:

> On Fri, 9 Oct 2015 15:08:15 +0300
> Andrey Tataranovich  wrote:
>
>> Возможно тут мне поможет использование
>> 
>> xprop -id $(xwininfo -root -int | awk '/^xwininfo:/ {print $4}') -spy
>
> Даже проще
>
> xprop -root -spy

FYI: в xprop -spy есть серьёзный memory leak, его нельзя оставлять работать
надолго.
См.
https://bugs.debian.org/cgi-bin/bugreport.cgi?bug=765828

Патчи для исправления пару недель назад были приняты в upstream/master:
http://permalink.gmane.org/gmane.comp.freedesktop.xorg.devel/46851
http://permalink.gmane.org/gmane.comp.freedesktop.xorg.devel/46895

git://anongit.freedesktop.org/git/xorg/app/xprop
b0ae4b9..fa732ad



Validation failed

2015-10-09 Пенетрантность Debian Webmaster
*** Errors validating /srv/www.debian.org/www/blends/gis/contact.ru.html:
***
Line 59, character 12:  document type does not allow element "UL" here;
assuming missing "LI" start-tag
*** Errors validating /srv/www.debian.org/www/blends/gis/deriv.ru.html: ***
Line 59, character 12:  document type does not allow element "UL" here;
assuming missing "LI" start-tag

--
 You received this mail for the language code ru.
 Please edit webwml/english/devel/website/validation.data if this is not 
accurate
 Please also update webwml/english/devel/website/ with the new coordinator(s) 
data



Re: Завершение shell скрипта при окончании сессии пользователя (logout)

2015-10-09 Пенетрантность Artem Chuprina
Руслан Коротаев -> debian-russian@lists.debian.org  @ Fri, 9 Oct 2015 20:02:25 
+0500:

 >> Решение в виде session-cleanup-script - это костыль. Оно не
 >> универсально и зависит от конкретного DM. Я ищу правильное решение,
 >> чтобы приложение могло узнать, что сессия завершается и совершить
 >> нужные действия.

 РК> Как вариант, можно попробовать ~/.bash_logout, если используете bash.
 РК> Предполагается что вы выключаете или перезагружаете комп, заодно
 РК> подчищаете логи, делаете бекап и так далее. Однако приложение не узнает
 РК> что сессия завершается, просто выполнит скрипт, но зато не зависимо от
 РК> конкретного DE/WM. 

Насколько я понимаю, .bash_logout не запускается, если то была не
интерактивная терминальная сессия.  Иксовая сессия не является
интерактивной терминальной.

 >> Похоже DE в частности XFCE4 не следит за всеми процессами, которые были
 >> запущены самой DE. Хотя с другой стороны возможно это и правильно - я
 >> ведь могу запустить несколько процессов, которые вполне могут жить и
 >> после завершения сессии.
 >> 
 >> У меня пробел в знании как вообще работает завершение сессии в DE. Ведь
 >> при выходе из системы приложения каким-то образом узнают, что сессия
 >> завершается. Например writer просит сохранить документ при выходе, но
 >> если ему отправить сигнал TERM, то ничего подобного не происходит.
 >> 
 >> Возможно DE закрывает все окна в текущей сессии и таким образом
 >> достигается gracefull exit.

 РК> Видимо это особенность конкретного DE/WM, у меня xmonad, когда я из него
 РК> выхожу он меня вообще ни о чем не предупреждает, вываливается в консоль
 РК> и всё. Writer потом пробует восстановить документ, а вот то что было
 РК> запущенно в терминале ведет себя по разному, некоторые приложения
 РК> нормально завершают работу, некоторые демонизируются, то есть это
 РК> зависит от самого приложения, от того как там реализована обработка
 РК> сигналов. 

Это, в общем, одна из разниц между DE и WM.  DE подразумевает интеграцию
в том числе и на уровне сеанса работы в среде, информирует свои
компоненты (и вообще всех, кто понимает) о _намерении_ пользователя
завершить сеанс и пытается дождаться ответов.  

WM ведет себя попроще.  Судя по "демонизируются", шлет SIGHUP.  Я, если
честно, не проверял, как ведет себя xmonad - я обычно закрываю все
программы вручную, прежде чем выйти.  Я, впрочем, оттуда выхожу только
когда собираюсь перезагрузить машинку, раз в несколько месяцев.



Re: Завершение shell скрипта при окончании сессии пользователя (logout)

2015-10-09 Пенетрантность cat3
PAM session pam_exec.so уже предлагали? Это может помочь:

http://linux.die.net/man/8/pam_exec

https://www.linuxquestions.org/questions/linux-software-2/clear-screen-
on-logout-using-pam-888174/

С помощью строки
"sessionoptionalpam_exec.so /path/to/script.sh"
в соответствующем файле в pam.d/ можно заставить PAM выполнять
script.sh при каждом начале/завершении сессии пользователя. 


P.S. первый раз пишу в @lists, прошу простить, если что не так. 



Re: Завершение shell скрипта при окончании сессии пользователя (logout)

2015-10-09 Пенетрантность Andrey Tataranovich
On Fri, 9 Oct 2015 15:08:15 +0300
Andrey Tataranovich  wrote:

> Возможно тут мне поможет использование
> 
> xprop -id $(xwininfo -root -int | awk '/^xwininfo:/ {print $4}') -spy

Даже проще

xprop -root -spy

-- 
WBR, Andrey Tataranovich



Re: Завершение shell скрипта при окончании сессии пользователя (logout)

2015-10-09 Пенетрантность Andrey Tataranovich
On Thu, 08 Oct 2015 22:29:39 +0300
Илья  wrote:

> Это конечно не правильно, но можно отслеживать изменения pid в файле 
> /tmp/.X0-lock.
> 
> $ps `cat /tmp/.X0-lock`
>PID TTY  STAT   TIME COMMAND
> 21334 tty7 Ss+0:16 /usr/bin/X :0
> -auth /var/run/lightdm/root/:0 -nolisten tcp vt7 -novtswitc

Интересный вариант, но такое решение не подойдет, если приложение
запущено через сеть, например через "ssh -X"

-- 
WBR, Andrey Tataranovich



Re: Завершение shell скрипта при окончании сессии пользователя (logout)

2015-10-09 Пенетрантность Artem Chuprina
Andrey Tataranovich -> debian-russian@lists.debian.org  @ Fri, 9 Oct 2015 
13:35:05 +0300:

 >> по идее, если его запускает DE, запускаемый из-под пользователя, то
 >> при выходе из сессии должен глушиться DE и все процессы-потомки, что
 >> он назапускал. можно попробовать реализовать желаемое средствами DM.
 >> например, в lightdm есть вот такая штука в конфиге:
 >> # session-cleanup-script = Script to run when quitting a user session
 >> (runs as root) как в других - не знаю.
 >> либо копать в сторону приблуды, управляющей сессиями в DE (типа
 >> xfce4-session в xfce), возможно там будут какие-то механизмы
 >> выполнения команд при разлогине

 AT> Решение в виде session-cleanup-script - это костыль. Оно не
 AT> универсально и зависит от конкретного DM. Я ищу правильное решение,
 AT> чтобы приложение могло узнать, что сессия завершается и совершить
 AT> нужные действия.

 AT> Похоже DE в частности XFCE4 не следит за всеми процессами, которые были
 AT> запущены самой DE. Хотя с другой стороны возможно это и правильно - я
 AT> ведь могу запустить несколько процессов, которые вполне могут жить и
 AT> после завершения сессии.

 AT> У меня пробел в знании как вообще работает завершение сессии в DE. Ведь
 AT> при выходе из системы приложения каким-то образом узнают, что сессия
 AT> завершается. Например writer просит сохранить документ при выходе, но
 AT> если ему отправить сигнал TERM, то ничего подобного не происходит.

 AT> Возможно DE закрывает все окна в текущей сессии и таким образом
 AT> достигается gracefull exit.

Ну, там два хода, скорее всего.  Сначала всем окнам посылается close
(иксовое сообщение, не сигнал процессу).  По нему-то writer и предлагает
сохранить документ.

А потом тупо делается exit, а за убийство или неубийство процессов
отвечает уже ядро, на основании того, работали ли они в той же сессии
(уже в смысле процессов, а не в смысле иксов) или при запуске сделали
себе setsid.  И шлется им, кажется, не SIGTERM, а SIGHUP.  Кстати,
проверь - если writer'у послать SIGHUP, он предложит сохранить или нет?

Надо сказать, что в юниксах традиционно за уход процесса из сессии
отвечает сам процесс.  Так делают штатные демоны.  Но вот zsh, например,
имеет ручку "демонизировать запущенное", когда перед exec делается не
только fork, но и setsid.  Но, кстати, кажется, не закрывает
stdout/stderr.

nohup, кстати, сколь я помню, не делает setsid, а только игнорирует
SIGHUP.  Но от терминала отцепляет.



Re: Завершение shell скрипта при окончании сессии пользователя (logout)

2015-10-09 Пенетрантность Илья
Ну если переменная $DBUS_SESSION_BUS_ADDRESS видна то возможно ее 
анализировать?


On 10/09/2015 01:38 PM, Andrey Tataranovich wrote:

On Thu, 08 Oct 2015 22:29:39 +0300
Илья  wrote:


Это конечно не правильно, но можно отслеживать изменения pid в файле
/tmp/.X0-lock.

$ps `cat /tmp/.X0-lock`
PID TTY  STAT   TIME COMMAND
21334 tty7 Ss+0:16 /usr/bin/X :0
-auth /var/run/lightdm/root/:0 -nolisten tcp vt7 -novtswitc

Интересный вариант, но такое решение не подойдет, если приложение
запущено через сеть, например через "ssh -X"





Re: Завершение shell скрипта при окончании сессии пользователя (logout)

2015-10-09 Пенетрантность Andrey Tataranovich
On Fri, 09 Oct 2015 14:46:14 +0300
Artem Chuprina  wrote:

> Ну, там два хода, скорее всего.  Сначала всем окнам посылается close
> (иксовое сообщение, не сигнал процессу).  По нему-то writer и
> предлагает сохранить документ.

Возможно тут мне поможет использование

xprop -id $(xwininfo -root -int | awk '/^xwininfo:/ {print $4}') -spy

если процесс завершился, то нужно прибивать скрипт.

> А потом тупо делается exit, а за убийство или неубийство процессов
> отвечает уже ядро, на основании того, работали ли они в той же сессии
> (уже в смысле процессов, а не в смысле иксов) или при запуске сделали
> себе setsid.  И шлется им, кажется, не SIGTERM, а SIGHUP.  Кстати,
> проверь - если writer'у послать SIGHUP, он предложит сохранить или
> нет?

writer никак не реагирует на sighup

-- 
WBR, Andrey Tataranovich



Re: Завершение shell скрипта при окончании сессии пользователя (logout)

2015-10-09 Пенетрантность Andrey Tataranovich
On Thu, 8 Oct 2015 15:08:01 +0300
dimas  wrote:

> по идее, если его запускает DE, запускаемый из-под пользователя, то
> при выходе из сессии должен глушиться DE и все процессы-потомки, что
> он назапускал. можно попробовать реализовать желаемое средствами DM.
> например, в lightdm есть вот такая штука в конфиге:
> # session-cleanup-script = Script to run when quitting a user session
> (runs as root) как в других - не знаю.
> либо копать в сторону приблуды, управляющей сессиями в DE (типа
> xfce4-session в xfce), возможно там будут какие-то механизмы
> выполнения команд при разлогине

Решение в виде session-cleanup-script - это костыль. Оно не
универсально и зависит от конкретного DM. Я ищу правильное решение,
чтобы приложение могло узнать, что сессия завершается и совершить
нужные действия.

Похоже DE в частности XFCE4 не следит за всеми процессами, которые были
запущены самой DE. Хотя с другой стороны возможно это и правильно - я
ведь могу запустить несколько процессов, которые вполне могут жить и
после завершения сессии.

У меня пробел в знании как вообще работает завершение сессии в DE. Ведь
при выходе из системы приложения каким-то образом узнают, что сессия
завершается. Например writer просит сохранить документ при выходе, но
если ему отправить сигнал TERM, то ничего подобного не происходит.

Возможно DE закрывает все окна в текущей сессии и таким образом
достигается gracefull exit.

-- 
WBR, Andrey Tataranovich



[DONE] wml://blends/gis/get/{index,live}.wml

2015-10-09 Пенетрантность Lev Lamberov
Cheers!
Lev Lamberov
--- english/blends/gis/get/index.wml	2015-10-09 08:35:40.0 +0500
+++ russian/blends/gis/get/index.wml	2015-10-09 23:01:32.131978342 +0500
@@ -1,48 +1,50 @@
-#use wml::debian::blend title="Getting the blend"
+#use wml::debian::blend title="Получение смеси"
 #use wml::debian::blends::gis
 #use "../navbar.inc"
 # $Id: index.wml,v 1.1 2015/10/09 03:35:40 irl Exp $
+#use wml::debian::translation-check translation="1.1" maintainer="Lev Lamberov"
 
-The Debian GIS Pure Blend is distributed freely
-over Internet.
-If you want to use the Blend, these are your options:
+Чистая смесь Debian GIS распространяется свободно
+через Интернет.
+Если вы хотите использовать смесь, то вам доступны следующие возможности:
 
   
-Use the metapackages
-Depending on your needs, you can install one or more of the following metapackages on an existing Debian installation:
+Использование метапакетов
+В зависимости от ваших нужд вы можете установить один или несколько следующих метапакетов на уже имеющуюся систему Debian:
 
-  https://packages.debian.org/unstable/gis-data;>gis-data
-  https://packages.debian.org/unstable/gis-devel;>gis-devel
-  https://packages.debian.org/unstable/gis-gps;>gis-gps
-  https://packages.debian.org/unstable/gis-osm;>gis-osm
-  https://packages.debian.org/unstable/gis-remotesensing;>gis-remotesensing
-  https://packages.debian.org/unstable/gis-statistics;>gis-statistics
-  https://packages.debian.org/unstable/gis-web;>gis-web
-  https://packages.debian.org/unstable/gis-workstation;>gis-workstation
 
   
   
-Download a live image
+Загрузка живых образов
 
-  You can try the Blend by booting a live system from a DVD or USB key
-  without installing any files to the computer. When you are ready, you can
-  run the included installer.
+  Вы можете попробовать смесь, загрузив живую систему с DVD или USB-носителя,
+  не устанавливая каких-либо файлов на свой компьютер. Когда же вы будете готовы, вы сможете
+  запустить программу установки, которая также имеется на диске.
 
 
-  64-bit PC live
-  32-bit PC live
+  64-битный образ
+  32-битный образ
 
   
 
 
 
+
--- english/blends/gis/get/live.wml	2015-10-09 08:35:41.0 +0500
+++ russian/blends/gis/get/live.wml	2015-10-09 23:06:27.586272197 +0500
@@ -1,55 +1,57 @@
-#use wml::debian::blend title="Download Live Images"
+#use wml::debian::blend title="Загрузить живые образы"
 #use wml::debian::blends::gis
 #use "../navbar.inc"
 # $Id: live.wml,v 1.1 2015/10/09 03:35:41 irl Exp $
+#use wml::debian::translation-check translation="1.1" maintainer="Lev Lamberov"
 
-The Debian GIS Pure Blend produces Live DVD images that can
-be used to try out the Debian GIS Pure Blend on a computer without
-having to install it first. The images also contain an installer which can
-be used to install Debian along with the packages from the blend.
+Чистая смесь Debian GIS создаёт живые образы DVD, которые
+можно использовать для запуска чистой смеси Debian GIS на компьютере без
+предварительной установки системы. Образы также содержат программу установки, которая может
+использоваться для установки Debian вместе с другими пакетами нашей смеси.
 
-Debian GIS Blend stable
+Стабильный выпуск Debian GIS
 
-A preview release of the Debian GIS Blend Live DVD is available
-for download.
+Для загрузки доступен предварительный выпуск Debian GIS для
+живых DVD.
 
-The latest stable release is: .
+Последним стабильный выпуском является .
 
 
-amd64 Live DVD image (ISO) 
-	(GPG signature)
-i386 Live DVD image (ISO) 
-	(GPG signature)
-Live DVD image Source Archive (tar) 
-	(GPG signature)
+живой образ DVD для архитектуры amd64 (ISO)
+(подпись GPG)
+живой образ DVD для архитектуры i386 (ISO)
+(подпись GPG)
+Архив исхдного кода для живого образа DVD (tar)
+(подпись GPG)
 
 
-Debian GIS Blend testing
+Тестируемый выпуск Debian GIS
 
-In the near future, live DVDs will be built for stretch (the current
-Debian testing distribution) although these are not currently
-available.
+В ближайшем будущем живые образы DVD будут собираться для выпуска stretch (текущий
+тестируемый выпуск Debian), но пока они
+не доступны.
 
-Getting Started
+Начало работы
 
-Using a DVD
+Использование DVD
 
-Most modern operating systems will have provisions for burning ISO images
-to DVD media. The Debian CD FAQ provides instructions for burning ISO images
-using https://www.debian.org/CD/faq/index#record-unix;>Linux, https://www.debian.org/CD/faq/index#record-windows;>Windows and https://www.debian.org/CD/faq/index#record-mac;>Mac OS. If you are
-having difficulty, using a web search engine should provide the answers you
-need.
+Большинство современных операционных систем содержат всё необходимое для записи ISO-образов
+на DVD-ностели. ЧаВО Debian CD содержит инструкции по записи ISO-образов
+в 

[DONE] wml://security/2015/dsa-3371.wml

2015-10-09 Пенетрантность Lev Lamberov
Cheers!
Lev Lamberov
--- english/security/2015/dsa-3371.wml	2015-10-09 23:28:31.0 +0500
+++ russian/security/2015/dsa-3371.wml	2015-10-10 00:06:22.984112689 +0500
@@ -1,23 +1,25 @@
-security update
+#use wml::debian::translation-check translation="1.1" maintainer="Lev Lamberov"
+обновление безопасности
 
-Frediano Ziglio of Red Hat discovered several vulnerabilities in spice,
-a SPICE protocol client and server library. A malicious guest can
-exploit these flaws to cause a denial of service (QEMU process crash),
-execute arbitrary code on the host with the privileges of the hosting
-QEMU process or read and write arbitrary memory locations on the host.
-
-For the oldstable distribution (wheezy), these problems have been fixed
-in version 0.11.0-1+deb7u2.
+Фредиано Зиглио из Red Hat обнаружил несколько уязвимостей в spice,
+клиентской и серверной библиотеке для поддержки протокола SPICE. Злоумышленник
+в гостевой системе может использовать эти уязвимости для вызова отказа в обслуживании (аварийное завершение процесса QEMU),
+выполнения произвольного кода на хост-системе с правами процесса
+QEMU, а также чтения и записи произвольных регионов памяти на хост-системе.
 
-For the stable distribution (jessie), these problems have been fixed in
-version 0.12.5-1+deb8u2.
+В предыдущем стабильном выпуске (wheezy) эти проблемы были исправлены
+в версии 0.11.0-1+deb7u2.
 
-For the unstable distribution (sid), these problems have been fixed in
-version 0.12.5-1.3.
+В стабильном выпуске (jessie) эти проблемы были исправлены в
+версии 0.12.5-1+deb8u2.
 
-We recommend that you upgrade your spice packages.
+В нестабильном выпуске (sid) эти проблемы были исправлены в
+версии 0.12.5-1.3.
+
+Рекомендуется обновить пакеты spice.
 
 
 # do not modify the following line
 #include "$(ENGLISHDIR)/security/2015/dsa-3371.data"
 # $Id: dsa-3371.wml,v 1.1 2015/10/09 18:28:31 carnil Exp $
+


Re: [DONE] wml://devel/hamradio/{News/2014/index,News/2015/index,News/2015/20150513,News/2014/20141202,index,contact,dev,live}.wml

2015-10-09 Пенетрантность Vladimir Zhbanov
Посмотрел [1] и [2] и думаю, что слово Blend в данном случае лучше бы
перевести по-другому. Мне кажется, «смесь» тут не лепится совсем.
Вообще, «blend» переводится ещё как «оттенок», а 'Pure Blend' звучит как
в рекламе, типа «чистый оттенок» (вкуса, цвета, и т. п.). Так вот здесь
это «чистый оттенок Debian» в противоположность не совсем чистым
системам, имеющим сторонние пакеты.  Если смотреть по сути, то это
целевое подмножество (набор) пакетов Debian. Так что второй вариант,
который пришёл мне в голову, это «чистый набор Debian», но как по мне,
так это звучит более коряво.

[1] http://blends.debian.org/blends/ch02.html#Blends
[2] https://wiki.debian.org/DebianPureBlends



Re: Завершение shell скрипта при окончании сессии пользователя (logout)

2015-10-09 Пенетрантность Руслан Коротаев
В сообщении от [Пт 2015-10-09 13:35 +0300]
Andrey Tataranovich  пишет:

> Решение в виде session-cleanup-script - это костыль. Оно не
> универсально и зависит от конкретного DM. Я ищу правильное решение,
> чтобы приложение могло узнать, что сессия завершается и совершить
> нужные действия.

Как вариант, можно попробовать ~/.bash_logout, если используете bash.
Предполагается что вы выключаете или перезагружаете комп, заодно
подчищаете логи, делаете бекап и так далее. Однако приложение не узнает
что сессия завершается, просто выполнит скрипт, но зато не зависимо от
конкретного DE/WM. 
 
> Похоже DE в частности XFCE4 не следит за всеми процессами, которые были
> запущены самой DE. Хотя с другой стороны возможно это и правильно - я
> ведь могу запустить несколько процессов, которые вполне могут жить и
> после завершения сессии.
> 
> У меня пробел в знании как вообще работает завершение сессии в DE. Ведь
> при выходе из системы приложения каким-то образом узнают, что сессия
> завершается. Например writer просит сохранить документ при выходе, но
> если ему отправить сигнал TERM, то ничего подобного не происходит.
> 
> Возможно DE закрывает все окна в текущей сессии и таким образом
> достигается gracefull exit.

Видимо это особенность конкретного DE/WM, у меня xmonad, когда я из него
выхожу он меня вообще ни о чем не предупреждает, вываливается в консоль
и всё. Writer потом пробует восстановить документ, а вот то что было
запущенно в терминале ведет себя по разному, некоторые приложения
нормально завершают работу, некоторые демонизируются, то есть это
зависит от самого приложения, от того как там реализована обработка
сигналов. 

-- 
http://google.com/+РусланКоротаев