<?xml version="1.0" encoding="utf-8"?>
<feed xmlns="http://www.w3.org/2005/Atom">
	<title type="html"><![CDATA[Linux Forum &mdash; Отложенный запуск скрипта]]></title>
	<link rel="self" href="https://linuxforum.ru/extern.php?action=feed&amp;tid=35627&amp;type=atom" />
	<updated>2014-07-29T16:27:50Z</updated>
	<generator>PunBB</generator>
	<id>https://linuxforum.ru/viewtopic.php?id=35627</id>
		<entry>
			<title type="html"><![CDATA[Re: Отложенный запуск скрипта]]></title>
			<link rel="alternate" href="https://linuxforum.ru/viewtopic.php?pid=417487#p417487" />
			<content type="html"><![CDATA[<p>Я бы как-то так сделал.</p><p>1. Добавить в cron отдельным файлом на запуск скрипта xxxx, можно регулярно выставить, на тот случай если будет выключен, чтоб отработало наверняка.<br />2. После запуска скрипт xxxxx&nbsp; проверяет файл с требованиями /tmp/xxxx.clear выполнился ли он или нет, если нет, то п.3<br />3. Проверить не работает ли пакетный менеджер, если работает то уходим в sleep и после выхода проверяем снова, пока не освободится.<br />4. Удаляем по списку добавляя результат в /tmp/xxxx.clear<br />5. Посылаем на почту результат.<br />6. Удаляемся из крона.</p>]]></content>
			<author>
				<name><![CDATA[kixiro]]></name>
				<uri>https://linuxforum.ru/profile.php?id=18147</uri>
			</author>
			<updated>2014-07-29T16:27:50Z</updated>
			<id>https://linuxforum.ru/viewtopic.php?pid=417487#p417487</id>
		</entry>
		<entry>
			<title type="html"><![CDATA[Re: Отложенный запуск скрипта]]></title>
			<link rel="alternate" href="https://linuxforum.ru/viewtopic.php?pid=417438#p417438" />
			<content type="html"><![CDATA[<div class="quotebox"><cite>esvstn пишет:</cite><blockquote><p> Потому как на момент исполнения этого скрипта менеджер yum будет запущен.</p></blockquote></div><p>А запустить свой скрипт через at? Не поможет? <a href="http://www.ithowto.ru/43-odnokratnoe-vypolnenie-zadach-pri-pomoshhi.html">http://www.ithowto.ru/43-odnokratnoe-vy … oshhi.html</a></p>]]></content>
			<author>
				<name><![CDATA[Cruiser78]]></name>
				<uri>https://linuxforum.ru/profile.php?id=631</uri>
			</author>
			<updated>2014-07-29T11:20:15Z</updated>
			<id>https://linuxforum.ru/viewtopic.php?pid=417438#p417438</id>
		</entry>
		<entry>
			<title type="html"><![CDATA[Re: Отложенный запуск скрипта]]></title>
			<link rel="alternate" href="https://linuxforum.ru/viewtopic.php?pid=417342#p417342" />
			<content type="html"><![CDATA[<p><strong>Kettler</strong>, Большое спасибо, кажется, так может получиться. Надо будет, правда, потестить на аварийное отключение электричества, например, во время работы скрипта. Но вроде работает как надо. Еще раз большое спасибо.</p>]]></content>
			<author>
				<name><![CDATA[esvstn]]></name>
				<uri>https://linuxforum.ru/profile.php?id=34678</uri>
			</author>
			<updated>2014-07-28T13:13:47Z</updated>
			<id>https://linuxforum.ru/viewtopic.php?pid=417342#p417342</id>
		</entry>
		<entry>
			<title type="html"><![CDATA[Re: Отложенный запуск скрипта]]></title>
			<link rel="alternate" href="https://linuxforum.ru/viewtopic.php?pid=417336#p417336" />
			<content type="html"><![CDATA[<div class="quotebox"><cite>esvstn пишет:</cite><blockquote><p>это конфликтовать, если во время этого стукнет время исполниться моему скрипту?</p></blockquote></div><p>Пусть твой скрипт создаст write.lock файл в tmp и проверяет его. Если есть, то запускается. Если нет, то скрипт уже был запущен и работает.</p>]]></content>
			<author>
				<name><![CDATA[XliN]]></name>
				<uri>https://linuxforum.ru/profile.php?id=6412</uri>
			</author>
			<updated>2014-07-28T12:50:24Z</updated>
			<id>https://linuxforum.ru/viewtopic.php?pid=417336#p417336</id>
		</entry>
		<entry>
			<title type="html"><![CDATA[Re: Отложенный запуск скрипта]]></title>
			<link rel="alternate" href="https://linuxforum.ru/viewtopic.php?pid=417335#p417335" />
			<content type="html"><![CDATA[<p>Вам то надо все раз запустить, не мне вас учить но я бы сделал так:<br />бекап крона, делаем null.<br />Пишим своё в крон.<br />Выполняем скрипт.<br />Возвращаем бекап.</p>]]></content>
			<author>
				<name><![CDATA[Kettler]]></name>
				<uri>https://linuxforum.ru/profile.php?id=11719</uri>
			</author>
			<updated>2014-07-28T12:49:15Z</updated>
			<id>https://linuxforum.ru/viewtopic.php?pid=417335#p417335</id>
		</entry>
		<entry>
			<title type="html"><![CDATA[Re: Отложенный запуск скрипта]]></title>
			<link rel="alternate" href="https://linuxforum.ru/viewtopic.php?pid=417324#p417324" />
			<content type="html"><![CDATA[<p>О кроне думал уже. Дело в том, что компы обновляются по нему каждые пять минут. Ну, в смысле, не обновляются, а проверяют репозиторий на наличие обновлений. А если обновлений он найдет много и начнет их ставить, не будет ли это конфликтовать, если во время этого стукнет время исполниться моему скрипту?</p>]]></content>
			<author>
				<name><![CDATA[esvstn]]></name>
				<uri>https://linuxforum.ru/profile.php?id=34678</uri>
			</author>
			<updated>2014-07-28T11:45:40Z</updated>
			<id>https://linuxforum.ru/viewtopic.php?pid=417324#p417324</id>
		</entry>
		<entry>
			<title type="html"><![CDATA[Re: Отложенный запуск скрипта]]></title>
			<link rel="alternate" href="https://linuxforum.ru/viewtopic.php?pid=417319#p417319" />
			<content type="html"><![CDATA[<p>Устанавливаем пакет, во время установки пишите в крон задачу .....<br />Крон отрабатывает ваш скрипт и удаляет запись из задач.</p>]]></content>
			<author>
				<name><![CDATA[Kettler]]></name>
				<uri>https://linuxforum.ru/profile.php?id=11719</uri>
			</author>
			<updated>2014-07-28T11:26:02Z</updated>
			<id>https://linuxforum.ru/viewtopic.php?pid=417319#p417319</id>
		</entry>
		<entry>
			<title type="html"><![CDATA[Отложенный запуск скрипта]]></title>
			<link rel="alternate" href="https://linuxforum.ru/viewtopic.php?pid=417314#p417314" />
			<content type="html"><![CDATA[<p>Здравствуйте. На меня внезапно свалилась админская задача, и мне совершенно не приходит в голову ее решение. Имеется несколько сотен совершенно одинаковых компьютеров с linux-ом и пакетным менеджером yum. Все они подключены к одному репозиторию, к которому у меня есть непосредственный доступ. Мне эти машинки нужно админить через этот репозиторий, то есть все настройки я могу делать только через выпуск своих rpm обновлений. И если с установкой и настройкой необходимого ПО все очевидно, то сейчас возникла задача потереть с них лишние пакеты вроде различных древнекитайстких шрифтов, гномовских графических мануалов итд. Тупо место закончилось, надо освободить. На тестовой машинке набросал скрипт, который будет через &quot;rpm -qa&quot; проверять наличие на компьютере ненужных пакетов и через &quot;yum remove -y&quot; их удалять. Сам по себе скрипт прекрасно фурычет. Создал пустой пакет clean c целью запилить этот скрипт в графу %post spec-файла. После этого у меня включилась голова и сказала мне, что так оно работать не будет. Потому как на момент исполнения этого скрипта менеджер yum будет запущен. А так как он не позволяет запустить одновременно два экземпляра себя, в моем скрипте не исполнится ни rpm ни yum. Следовательно, он не сработает. Значит, мне нужно как-то запустить мой скрипт после того, как менеджер пакетов уже отработает и решит что, наконец, пора бы завершиться. Вот и возник вопрос, как бы это правильно организовать. Просто sleep-ом не выйдет, потому как непонятно, на какое время моему скипту придется заснуть. Вдруг поставят новую чистую машинку и захотят ее обновить до текущей версии актуальной конфигурации системы. Тогда первое же обновление будет проходить довольно долго и заранее неизвестно сколько, ведь сеть там может сбоить, или еще какие факторы случатся, которые замедлят работу обновления. В общем вот. Заранее прошу прощения за свое дилетантство, я программист по работе, но вот иногда на меня сваливаются вот такие админсткие задачи, которые я случайно не умею. С нетерпением жду совета от более опытного поколения)</p>]]></content>
			<author>
				<name><![CDATA[esvstn]]></name>
				<uri>https://linuxforum.ru/profile.php?id=34678</uri>
			</author>
			<updated>2014-07-28T11:09:06Z</updated>
			<id>https://linuxforum.ru/viewtopic.php?pid=417314#p417314</id>
		</entry>
</feed>
