<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0"
	xmlns:content="http://purl.org/rss/1.0/modules/content/"
	xmlns:wfw="http://wellformedweb.org/CommentAPI/"
	xmlns:dc="http://purl.org/dc/elements/1.1/"
	xmlns:atom="http://www.w3.org/2005/Atom"
	xmlns:sy="http://purl.org/rss/1.0/modules/syndication/"
	xmlns:slash="http://purl.org/rss/1.0/modules/slash/"
	>

<channel>
	<title>Linux İpuçları &#187; rpmrebuild</title>
	<atom:link href="http://www.linuxipuclari.com/tag/rpmrebuild/feed" rel="self" type="application/rss+xml" />
	<link>http://www.linuxipuclari.com</link>
	<description>Linux Hakkında Pratik İpuçları</description>
	<lastBuildDate>Sat, 24 Apr 2010 21:14:53 +0000</lastBuildDate>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	<generator>http://wordpress.org/?v=3.0.1</generator>
		<item>
		<title>RPM&#8217;cinin İsviçre çakısı :)</title>
		<link>http://www.linuxipuclari.com/genel/rpm-cinin-isvicre-cakisi</link>
		<comments>http://www.linuxipuclari.com/genel/rpm-cinin-isvicre-cakisi#comments</comments>
		<pubDate>Tue, 27 Jan 2009 06:46:01 +0000</pubDate>
		<dc:creator>Ali Soğukpınar</dc:creator>
				<category><![CDATA[Genel]]></category>
		<category><![CDATA[Gezegen]]></category>
		<category><![CDATA[rpm]]></category>
		<category><![CDATA[rpmbuild]]></category>
		<category><![CDATA[rpmrebuild]]></category>

		<guid isPermaLink="false">http://www.linuxipuclari.com/?p=244</guid>
		<description><![CDATA[Belki sizlerin de başına gelmiştir &#8211; tabii ki her zaman için haklı nedenlerden dolayı ;) - bazen bir üreticinin rpm&#8217;lerinin üzerinde ufak tefek değişiklik yapmak zorunluluğunu hissedebilirsiniz. Eğer söz konusu ticari bir uygulamanın paketi ise %99.9 olasılıkla SRPM dosyalarına veya kaynak kodlarına erişiminiz olmayacaktır. Hoş, erişiminiz olsa bile bir RPM&#8217;i kendiniz tekrar paketlemeye çalıştığınızda hiç de hoş [...]


No related posts.

Related posts brought to you by <a href='http://mitcho.com/code/yarpp/'>Yet Another Related Posts Plugin</a>.]]></description>
			<content:encoded><![CDATA[<p>Belki sizlerin de başına gelmiştir &#8211; tabii ki her zaman için haklı nedenlerden dolayı ;) - bazen bir üreticinin rpm&#8217;lerinin üzerinde ufak tefek değişiklik yapmak zorunluluğunu hissedebilirsiniz.</p>
<p>Eğer söz konusu ticari bir uygulamanın paketi ise %99.9 olasılıkla SRPM dosyalarına veya kaynak kodlarına erişiminiz olmayacaktır. Hoş, erişiminiz olsa bile bir RPM&#8217;i kendiniz tekrar paketlemeye çalıştığınızda hiç de hoş olmayan bir çok süprizle karşılaşmanız muhtemel.</p>
<p>Şimdi karşılaştığım gerçek bir problem üzerinden yazımıza konu olan <strong><em>rpmrebuild</em></strong> programının kullanımını ve ne gibi faydaları olduğunu açılklamaya çalışalım.</p>
<p>Bir müşterimiz için geliştirdiğimiz platformun merkezi loglama ihtiyacını Syslog-NG ile karşılama yoluna gittik. Açık kaynaklı bu  projenin ticari versiyonunu kullanan muşterimize üretici Balabit firmasında premium edition olarak etiketlenmiş yeni bir rpm ulaştı.</p>
<p>Balabit firmasının müşterimize gönderdiği rpm kurulum bittikten sonra syslog servisinin yerine kendisini yani syslog-ng servisini ekliyor. Buraya kadar bir sorun yok fakat kurulumun son aşamasında rpm&#8217;in post install scriptinde  syslog servisini durdurup  syslog-ng servisini başlatıyor.</p>
<p>Geliştirilen platformun mimarisi gereği syslog-ng servisinin platform tarafindan talep edilene kadar çalıştırılmaması loglamanın local syslog servisi tarafından yapılması gerekiyor. Kaldi ki syslog-ng servisinin konfigurasyonu daha ilerki bir aşamada platformun değişik bileşenleri tarafından tamamlanacak.</p>
<p>Balabit firması açısından önemsiz bir problem olmakla birlikte müşterimizin, dolayısıyla bizim başımız bu sorundan dolayı oldukça ağrıdı. Sadece post installation scriptini değiştirebilsek yani syslog servisinin durdurulup syslog-ng servislerinin başlatıldığı iki satırı rpm&#8217;den çıkarabilirsen sorunumuz çözülecek, müşterimiz de biz de gayet mutlu olacaktık.</p>
<p>Bu noktada internette yaptığımız araştırmalar sonucunda <em><strong>rpmrebuild</strong></em><strong> </strong>isimli programı bulduk. <em><strong>rpmrebuild</strong></em> aracılığıyla binary bir rpm paketinin içindeki dosyaları değiştirebilir, yeni dosya ekleyebilir, varolan dosyaları silebilir ve hatta rpm&#8217;in elinizde olmadığı durumlarda rpm veritabanı aracılığıyla ilgili rpm&#8217;in <em>spec</em> dosyasını tekrar oluşturabilirsiniz. Uzun lafın kısası İsviçre çakısı gibi bir uygulama. :)</p>

<div class="wp_syntax"><div class="code"><pre class="bash" style="font-family:monospace;"><span style="color: #7a0874; font-weight: bold;">&#91;</span>sogua00<span style="color: #000000; font-weight: bold;">@</span>aliontl901 ~<span style="color: #7a0874; font-weight: bold;">&#93;</span>$ rpmrebuild <span style="color: #660033;">-n</span> <span style="color: #660033;">--edit-post</span> <span style="color: #660033;">-p</span> syslog-ng-premium-edition-2.1.4-1.x86_64.rpm
&nbsp;
warning: syslog-ng-premium-edition-2.1.4-1.x86_64.rpm: Header V3 DSA signature: NOKEY, key ID f5297614
warning: syslog-ng-premium-edition-2.1.4-1.x86_64.rpm: Header V3 DSA signature: NOKEY, key ID f5297614
warning: syslog-ng-premium-edition-2.1.4-1.x86_64.rpm: Header V3 DSA signature: NOKEY, key ID f5297614
warning: syslog-ng-premium-edition-2.1.4-1.x86_64.rpm: Header V3 DSA signature: NOKEY, key ID f5297614
warning: syslog-ng-premium-edition-2.1.4-1.x86_64.rpm: Header V3 DSA signature: NOKEY, key ID f5297614
warning: syslog-ng-premium-edition-2.1.4-1.x86_64.rpm: Header V3 DSA signature: NOKEY, key ID f5297614
warning: syslog-ng-premium-edition-2.1.4-1.x86_64.rpm: Header V3 DSA signature: NOKEY, key ID f5297614
warning: syslog-ng-premium-edition-2.1.4-1.x86_64.rpm: Header V3 DSA signature: NOKEY, key ID f5297614
warning: syslog-ng-premium-edition-2.1.4-1.x86_64.rpm: Header V3 DSA signature: NOKEY, key ID f5297614
warning: syslog-ng-premium-edition-2.1.4-1.x86_64.rpm: Header V3 DSA signature: NOKEY, key ID f5297614
warning: syslog-ng-premium-edition-2.1.4-1.x86_64.rpm: Header V3 DSA signature: NOKEY, key ID f5297614
warning: syslog-ng-premium-edition-2.1.4-1.x86_64.rpm: Header V3 DSA signature: NOKEY, key ID f5297614
warning: syslog-ng-premium-edition-2.1.4-1.x86_64.rpm: Header V3 DSA signature: NOKEY, key ID f5297614
warning: syslog-ng-premium-edition-2.1.4-1.x86_64.rpm: Header V3 DSA signature: NOKEY, key ID f5297614
&nbsp;
Do you want to <span style="color: #7a0874; font-weight: bold;">continue</span> ? <span style="color: #7a0874; font-weight: bold;">&#40;</span>y<span style="color: #000000; font-weight: bold;">/</span>N<span style="color: #7a0874; font-weight: bold;">&#41;</span> y
&nbsp;
Processing files: syslog-ng-premium-edition-2.1.4-<span style="color: #000000;">1</span>
&nbsp;
Wrote: <span style="color: #000000; font-weight: bold;">/</span>home<span style="color: #000000; font-weight: bold;">/</span>sogua00<span style="color: #000000; font-weight: bold;">/</span>rpmbuild<span style="color: #000000; font-weight: bold;">/</span>RPMS<span style="color: #000000; font-weight: bold;">/</span>x86_64<span style="color: #000000; font-weight: bold;">/</span>syslog-ng-premium-edition-2.1.4-1.x86_64.rpm
&nbsp;
result: <span style="color: #000000; font-weight: bold;">/</span>x86_64<span style="color: #000000; font-weight: bold;">/</span>syslog-ng-premium-edition-2.1.4-1.x86_64.rpm</pre></div></div>

<p>Yukarıdaki komut satırı ve ekran çıktısı üzerinden <em><strong>rpmrebuild</strong></em> komutunun çalışmasını incelemeye çalışalım. Öncelikle kullanılan parametreler bakalım</p>
<p><strong>-p</strong> kaynak olarak bu parametreyı takip eden paket dosyasının kullanılacağını belirtir. Eğer bu parametreyi belirtmezseniz belirtmiş olduğunuz rpm&#8217;in sisteminize kurulu olduğunu varsayıp sistem veritabanını kullanamaya çalışacaktır.</p>
<p><strong>-n </strong>rpm paketini değiştirdikten veya yeniden oluşturduktan sonra test kurulumu yapmamasını belirtir. Genelde rpm&#8217;leri oluşturduğunuz ortamlar ile kurulum gerçekleşeceği ortamlar birbirleriyle alakasız yapılandırmaya sahiptir.</p>
<p><strong>&#8211;edit-post</strong> post install scriptini değiştireceğimizi ifade eder.</p>
<p>Yukarıdaki komutu çalıştırdığınızda <em><strong>rpmrebuild</strong></em> <em>syslog-ng-premium-edition-2.1.4-1.x86_64.rpm</em> isimli rpm dosyasini okuyup post install scriptini standart editörünüzde açacak. (Bizim sistemimiz için  vi). vi aracılığıyla post install scriptinde istediğimiz değişikliği gerçekleştirip vi editöründen çıktığımızda <em><strong>rpmrebuild</strong></em> işleme devam edip etmek istemediğimizi soracak. Eğer onay verirseniz macro tanımlarınız doğrultusunda rpmbuild dizininize değiştirilmiş rpm dosyasını kaydedecek.</p>
<p>Programın birçok özelligi ve kullanabileceğiniz birçok seçeneği var. Fedora 8 ve sonrasında standart fedora depolarından <em><strong>rpmrebuild</strong></em> paketini temin etmek mümkün.</p>
<p>Aşağıdaki makalelerden ve programın sitesinden ve man sayfalarından daha detaylı bilgi edinebilirsiniz.</p>
<p><a href="http://rpmrebuild.sourceforge.net/" target="_blank">http://rpmrebuild.sourceforge.net/</a><br />
<a href="http://www.redhatmagazine.com/2007/12/04/hacking-rpms-with-rpmrebuild/" target="_blank">http://www.redhatmagazine.com/2007/12/04/hacking-rpms-with-rpmrebuild/</a><br />
<a href="http://www.linux.com/feature/62262" target="_blank">http://www.linux.com/feature/62262</a></p>
<p>İyi çalışmalar.
<p><strong style="color:#999;">Bu yazıyı beğendiyseniz, diğer yazılarımıza da <a href="http://www.linuxipuclari.com">Linuxipuclari.com</a> adresinden ulaşabilirsiniz.</strong></p>


<p>No related posts.</p>
<p>Related posts brought to you by <a href='http://mitcho.com/code/yarpp/'>Yet Another Related Posts Plugin</a>.</p>]]></content:encoded>
			<wfw:commentRss>http://www.linuxipuclari.com/genel/rpm-cinin-isvicre-cakisi/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
	</channel>
</rss>
