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

<channel>
	<title>Özgür Koca</title>
	<atom:link href="https://www.tankado.com/feed/" rel="self" type="application/rss+xml"/>
	<link>https://www.tankado.com</link>
	<description>Bilişim Teknolojileri Öğretmeni</description>
	<lastBuildDate>Wed, 29 Jul 2026 01:33:50 +0000</lastBuildDate>
	<language>tr</language>
	<sy:updatePeriod>
	hourly	</sy:updatePeriod>
	<sy:updateFrequency>
	1	</sy:updateFrequency>
	
	<itunes:explicit>no</itunes:explicit><itunes:image href="http://tankado.com/images/tankadologo.png"/><itunes:subtitle>Bilişim Teknolojileri Öğretmeni</itunes:subtitle><item>
		<title>Onvo RX-5 Teknik Detayları</title>
		<link>https://www.tankado.com/onvo-rx-5-teknik-detaylari/</link>
					<comments>https://www.tankado.com/onvo-rx-5-teknik-detaylari/#respond</comments>
		
		<dc:creator><![CDATA[Özgür Koca]]></dc:creator>
		<pubDate>Wed, 29 Jul 2026 01:33:38 +0000</pubDate>
				<category><![CDATA[Genel]]></category>
		<category><![CDATA[fabrika ayarları]]></category>
		<category><![CDATA[onvo rx-5]]></category>
		<category><![CDATA[onvo rx5]]></category>
		<category><![CDATA[varsayılan ayarlar]]></category>
		<guid isPermaLink="false">https://www.tankado.com/?p=11581</guid>

					<description><![CDATA[ONVO RX-5 VARSAYILAN (FABRİKA AYARLARI) AYARLAR]]></description>
										<content:encoded><![CDATA[
<figure class="wp-block-image size-large"><img fetchpriority="high" decoding="async" width="768" height="1024" src="https://www.tankado.com/wp-content/uploads/2026/07/upload_675dd851ccc4d-768x1024.jpg" alt="" class="wp-image-11582" srcset="https://www.tankado.com/wp-content/uploads/2026/07/upload_675dd851ccc4d-768x1024.jpg 768w, https://www.tankado.com/wp-content/uploads/2026/07/upload_675dd851ccc4d-225x300.jpg 225w, https://www.tankado.com/wp-content/uploads/2026/07/upload_675dd851ccc4d-1152x1536.jpg 1152w, https://www.tankado.com/wp-content/uploads/2026/07/upload_675dd851ccc4d-1536x2048.jpg 1536w, https://www.tankado.com/wp-content/uploads/2026/07/upload_675dd851ccc4d-1200x1600.jpg 1200w, https://www.tankado.com/wp-content/uploads/2026/07/upload_675dd851ccc4d-scaled.jpg 1920w" sizes="(max-width: 709px) 85vw, (max-width: 909px) 67vw, (max-width: 984px) 61vw, (max-width: 1362px) 45vw, 600px" /></figure>



<ul class="wp-block-list">
<li>Kilidi açmak için +/-/PW düğmeleri ile şifreyi gir iki kere PW düğmesine bas.</li>



<li>Program menüsüne girmek için M ye basılı tut (çıkmak için 5sn bekle).</li>



<li>PW ve + düğmesine basarak şifre ayarlama ekranına ulaş (Hali hazırda şifre varsa önce bunu gir)</li>



<li>Ana ekranda M ile dual/single motor seçilir.</li>



<li>+/- düğmeleri ile vites  seçilir.</li>
</ul>



<span id="more-11581"></span>



<h2 class="wp-block-heading">ONVO RX-5 VARSAYILAN (FABRİKA AYARLARI) AYARLAR</h2>



<ul class="wp-block-list">
<li>P1=Km (Ölçü birimi Mile/Km)</li>



<li>P2=60u (Değiştirme cihaz 60v&#8217;luk bataryaya sahip)</li>



<li>P3=10.0 (Lastik çapı ölçüsü)</li>



<li>P4=30 (Hız ölçümü için kullanılan manyetik kutup sayısı)</li>



<li>P5=00 (Hız sabitleme devre dışı)</li>



<li>P6=00 (Kick start devre dışı, Scooter&#8217;ı iterek ilk hareket verilir)</li>



<li>P7=20 (Hız limiti, Max için 0 yap)</li>



<li>P8=5 (Uyku modu. 5=5dk sonra kapanır. 0=hiç kapanmaz) </li>



<li>P9=3 (Ekran ışığının parlaklığı)</li>



<li>P99=+ düğmesine basılı tutunca fabrika ayarlarına döner.</li>



<li>U1.3=(?)</li>
</ul>



<ul class="wp-block-list">
<li></li>
</ul>



<p class="wp-block-paragraph"></p>
]]></content:encoded>
					
					<wfw:commentRss>https://www.tankado.com/onvo-rx-5-teknik-detaylari/feed/</wfw:commentRss>
			<slash:comments>0</slash:comments>
		
		
			</item>
		<item>
		<title>General Mobile eTab tabletler neden ve nasıl root’lanır?</title>
		<link>https://www.tankado.com/general-mobile-tabletleri-neden-ve-nasil-rootlanir/</link>
					<comments>https://www.tankado.com/general-mobile-tabletleri-neden-ve-nasil-rootlanir/#respond</comments>
		
		<dc:creator><![CDATA[Özgür Koca]]></dc:creator>
		<pubDate>Tue, 26 May 2026 17:04:08 +0000</pubDate>
				<category><![CDATA[Genel]]></category>
		<category><![CDATA[Güvenlik]]></category>
		<category><![CDATA[android]]></category>
		<category><![CDATA[bootcode]]></category>
		<category><![CDATA[bootloader]]></category>
		<category><![CDATA[General Mobile]]></category>
		<category><![CDATA[general mobile tablet rootlamak]]></category>
		<category><![CDATA[root_detector.apk]]></category>
		<category><![CDATA[SuperSu]]></category>
		<category><![CDATA[SuperSU Installer]]></category>
		<category><![CDATA[twrp]]></category>
		<guid isPermaLink="false">http://www.tankado.com/?p=4889</guid>

					<description><![CDATA[Android aygıtlar, sahiplerinin cihaz üstünde root yetkisine sahip olmasına müsade etmez. Bu normal kullanıcılar için iyi bir özellik iken, cihazlarında detaylı özelleştirmeler yapmak isteyenler için kullanışsız olabilir. Bu özelleştirmeleri yapabilmek için cihaz üzerinde root yetkisine sahip olunması gerekir. Peki bu yetkiye sahip olunca ne olacak? Öncelikle tabletin USB portu kullanıma açılacak Flash bellek, USB web &#8230; <a href="https://www.tankado.com/general-mobile-tabletleri-neden-ve-nasil-rootlanir/" class="more-link">Okumaya devam et<span class="screen-reader-text"> "General Mobile eTab tabletler neden ve nasıl root&#8217;lanır?"</span></a>]]></description>
										<content:encoded><![CDATA[
<p class="wp-block-paragraph">Android aygıtlar, sahiplerinin cihaz üstünde root yetkisine sahip olmasına müsade etmez. Bu normal kullanıcılar için iyi bir özellik iken, cihazlarında detaylı özelleştirmeler yapmak isteyenler için kullanışsız olabilir. Bu özelleştirmeleri yapabilmek için cihaz üzerinde root yetkisine sahip olunması gerekir. Peki bu yetkiye sahip olunca ne olacak? Öncelikle tabletin USB portu kullanıma açılacak Flash bellek, USB web cam gibi cihazları bağlayabilecek ve kullanabilecek, root yerkisi gerektiren uygulamaları kurup kullanabileceksiniz. Ayrıca bluetooth ve GPS&#8217;i de kullanabileceksiniz. Başka nedenleri de var&#8230;</p>



<span id="more-4889"></span>



<h2 class="wp-block-heading">MDM (<em>Mobile Device Management)</em> Dediği Şey Nedir?</h2>



<p class="wp-block-paragraph">Daha da önemlisi dağıtılan tabletlerde <a href="https://www.sibergah.com/uc-nokta-guvenligi/mobil-guvenlik/kurumlarda-mobil-cihaz-guvenligi-mdm/">MDM</a> (*<strong>MDME*.apk</strong>) denilen bir uygulama yüklü. MDM yani Mobil Cihaz Yönetimi (<em>Mobile Device Management</em>), genel olarak tabletin uzaktan izlenmesini ve yönetilmesini sağlayan bir uygulama. MDM uygulaması, tableti ilk defa açtığınızda kullanıcı adı ve parola girerek kuruluşun sahip olduğu yönetim sistemine kaydınızın yapılmasını sağlıyor ve size bir kimlik numarası atıyor. Kimlik doğrulamanızı kuruluşun sağladığı kimlik doğrulama sistemi üzerinden yaptığınızda da tabletiniz ile kimliğiniz arasında bir ilişki kurulmuş oluyor. Kuruluşlar bu uygulama ile (MDM) uzaktan destek verdiğini iddia etmekte.</p>



<p class="wp-block-paragraph">MDM normal yollarla sistemden kaldırabileceğiniz bir uygulama değil. Sistem, yani root kullanıcısı yetkileri ile çalışıyor. Kişisel bilgilerinizin mahremiyetine karşı hassassanız, başkalarının verilerinize ve cihazınıza ulaşma imkanı bulunduğunu bilme düşüncesi bile sizi rahatsız ediyorsa MDM&#8217;i kaldırmak isteyebilirsiniz. MDM hakkında daha fazla teknik bilgi için <a href="https://www.sibergah.com/uc-nokta-guvenligi/mobil-guvenlik/kurumlarda-mobil-cihaz-guvenligi-mdm/">buraya</a> bakabilirsiniz.</p>



<p class="wp-block-paragraph">MDM&#8217;i tabletten tamamen kaldırmak ve diğer kısıtlamalardan kurtarmak için öncelikle Root&#8217;lamak gerekiyor. Aslında root&#8217;lamak bence çok piyasa bir tabir. Bu hususu düzeltmek gerekirse şunlara dikkatinizi çekmek isterim; Esasında tabletinizin işletim sistemi olan Android bir Linux çekirdeğini kullanmakta. Windows&#8217;lar da olduğu gibi Linux sistemlerde de yetkili bir kullanıcı yer almakta. Bu kullanıcın adı <strong>root</strong>. Windowslar&#8217;da ise administrator&#8217;e karşılık geliyor. Peki tabletimizi root kullanıcısı ile açıp kullanabiliyor muyuz? Hayır. root&#8217;un kullanımı kilitlenmiş, sadece sistem uygulamaları ve servisleri boot sırasında bu kullanıcının erişim izinleri ile çalışmak üzere yapılandırılmış. Bu yüzden MDM gibi bir sistem uygulamasını kaldırmanız veya sistemde bir değişiklik yapmanız mümkün değil. <strong>Bu özellik işletim sisteminizi daha uzun süre sorunsuz olarak kullanmak için düşünülmüş fakat ilk başta bahsettiğim gibi bazı kısıtlamaları da beraberinde getiriyor.</strong> Diğer taraftan, eğer varsayılan olarak root kullanıcısı aktif olsaydı kullanıcıdan ve yüklenen uygulamalardan kaynaklanan hatalar&nbsp;işletim sistemine rahatlıkla kalıcı hasarlar verebilirdi veya virüs bulaşabilirdi. Bu nedenle aşağıda anlatılan yöntemi uygularken bunları&nbsp; dikkate almalısınız.</p>



<p class="wp-block-paragraph">Root&#8217;lamak demek sıradan bir sistem kullanıcısının normalde kilitli olan root kullanıcısının yetkilerini gerektiğinde devralabilmesini sağlamak anlamına geliyor. <strong>Play markette</strong> bu devir işini gerçekleştiren birçok uygulama var. Bunlardan en çok bilineni <strong>SuperSu</strong>. SuperSu uygulamasını root kullanıcısı açık bir cihaza yüklediğinizde root iznine ihtiyaç duyan diğer uygulamalara yetki veriyor. Bu yetkiyi verirken de sizi bilgilendiriyor ve uygulamaya root yetkisi sağlayıp sağlamak istemediğiniz soruluyor.</p>



<h2 class="wp-block-heading">Android Sisteminin Açılış Süreci Nasıl İşliyor</h2>



<p class="wp-block-paragraph">General mobil etabletini rootlamak için ilk adımda, işletim sistemi henüz devreye girmeden kontrolünü ele almak yer alıyor. Yani işletim sisteminden önce çalışan bootloader (boot partition üstünde)&#8217;ı modifiye etmek gerekiyor. Tablet (ya da mobil cihaz) &#8216;in güç düğmesine basıldığında önce mikroişlemciye gömülü <strong>bootcode</strong> çalışıyor ve ROM&#8217;da yüklü (veya EEPROM) <strong>bootloader</strong> programını tetikliyor (burası bootloader&#8217;in 1.aşaması) . Bootloader programı ise daha kapsamlı ve yetenekli olan boot partition üzerindeki yükleyiciyi çalıştırıyor (bu da bootloader&#8217;ın ikinci aşaması). İşte cihazı recovery modda başlattığımızda karşımıza çıkan program bu. Daha doğrusu 2. aşamanın bir parçası. Bu programın görevi ise cihazın <strong>data</strong> ve <strong>cache</strong> bölümlerini tamamen silerek fabrika ayarlarına döndürmek. Sanıldığı gibi (en azından benim sandığım gibi) sistemde yüklü yedek bir imaj yok. Fabrika ayarlarına dön dediğinizde yapılan işlem sadece ayrı bölümlerde (partition) tutulan <strong>/data</strong> ve<strong> /cache</strong> dizinlerinin içeriğinin silinmesi. 2. aşama bootloader programının belki de en önemli görevi ise açılış sürecini linux çekirdeğini yükleyerek devam ettirmek. Çekirdek de <strong>android</strong> işletim sistemini yüklüyor. Burada anlattığım açılış süreci hakkında daha detaylı teknik bilgi için <a href="https://javigon.com/2012/08/24/from-poweron-to-android-the-boot-sequence/">buraya</a> bakabilirsiniz. Ayrıca internetten toparladığım bilgiler ile oluşturduğum <a href="https://github.com/enseitankado/android-boot-loading-process/blob/master/Android_Bootloading_Process_v1.1.pdf">şu akış diyagramını</a> da inceleyebilirsiniz.</p>



<p class="wp-block-paragraph">Root&#8217;lama sürecinde, boot partition üzerindeki yükleme programını başka bir program ile değiştirmek en çok tercih edilen yöntem. Zaten bootcode değiştirilebilecek bir program değil. Bootloader da boyut ve özellik olarak çok kısıtlı bir alana sahip olduğu için bunda da modifikasyonlar yapılmıyor. Fakat&nbsp;android sistemde yer alan tüm disk bölümleri (ya da en azından boot aşamaları açısından) açısından kalıcı bir virüs yüklemek için kullanılabilecek en uygun konum. Sonuç olarak &nbsp;bootloader kolay kolay değişen veya güncellenen bir program değil.</p>



<p class="wp-block-paragraph">Yükleme programı ile recovery programı iç içe. Açılışta <strong>power</strong> ve <strong>volume-up</strong> a basılı tutmadığınızda yükleme işi linux kernel ile devam ediyor.</p>



<p class="wp-block-paragraph">Yükleme programının yerine geçen en çok kullanılan programlardan biri, grafik arabirime ve açık kaynak koda sahip olması nedeniyle TWRP (<a href="https://en.wikipedia.org/wiki/TWRP">Team Win Recovery</a>). Boot programı TWRP ile değiştirildiğinde cihazın tüm dosya sistemine erişim sağlama imkanı&nbsp;yakalıyorsunuz. Böylece istediğiniz uygulamayı dosya sisteminden silip yenisini yükleyebiliyorsunuz, root hesabını sıfırlamak (rootlamak) da bunlardan biri. TWRP bunu da yapabiliyor. Kısaca cihazın tüm kısıtlamalarından kurtulup özgürce kullanma şansına sahip oluyorsunuz.</p>



<h2 class="wp-block-heading">Rootlama Nasıl Yapılır?</h2>



<p class="wp-block-paragraph">En basit haliyle bir General Mobile tabletini sıfırlamak aşağıdaki ana adımlardan oluşmakta:</p>



<ol class="wp-block-list">
<li>Bilgisayarımıza tabletin usb driverini yüklüyoruz</li>



<li>Flash Tool ile boot programını TWRP ile değiştiriyoruz</li>



<li>Ardından MDM ve diğer standart olmayan uygulamaları silerek tabletin root hesabını aktifleştiriyoruz. Bu işlemlerden sonra cihazda her türlü atraksiyonu gerçekleştirmek mümkün.</li>
</ol>



<p class="wp-block-paragraph">İhtiyacınız olan tüm dosyaları aşağıdaki bağlantıdan bilgisayarınıza indirdikten sonra genişletin ve aşağıdaki adımları uygulayın. Aynı adımların benzerini birçok farklı internet sitesinde ve youtube videosunda bulabilirsiniz. Tek fark olarak adımları sonuca götürecek şekilde olabildiğince sadeleştirmiş olmam.</p>



<ol class="wp-block-list">
<li>&#8220;usb_driver\installdrv.exe&#8221; dosyasını sisteminize yükleyin ve bilgisayarınızı yeniden başlatın.</li>



<li>&#8220;flash_tool.exe&#8221; programını çalıştırın.</li>



<li>Options menüsünden <strong>CheckSWVer</strong> işaretini kaldırın.</li>



<li>Sol üstteki Download düğmesine bir kez tıklayın ve cihazın usb kablosunu takın.</li>



<li>Cihaz algılanacak ve TWRP imajı otomatik olarak yüklenecek.<figure><a href="https://www.tankado.com/wp-content/uploads/2016/12/twrp_ok.png"><img decoding="async" width="450" height="254" class="aligncenter wp-image-4891" src="https://www.tankado.com/wp-content/uploads/2016/12/twrp_ok-300x169.png" alt="twrp_ok" srcset="https://www.tankado.com/wp-content/uploads/2016/12/twrp_ok-300x169.png 300w, https://www.tankado.com/wp-content/uploads/2016/12/twrp_ok-768x434.png 768w, https://www.tankado.com/wp-content/uploads/2016/12/twrp_ok-1024x578.png 1024w, https://www.tankado.com/wp-content/uploads/2016/12/twrp_ok-696x393.png 696w, https://www.tankado.com/wp-content/uploads/2016/12/twrp_ok-1068x603.png 1068w, https://www.tankado.com/wp-content/uploads/2016/12/twrp_ok-744x420.png 744w, https://www.tankado.com/wp-content/uploads/2016/12/twrp_ok.png 1360w" sizes="(max-width: 450px) 85vw, 450px" /></a></figure></li>



<li>Cihazın normal şekilde açmamaya dikkat ederek. Önce ses açma düğmesine basın ve ardından güç düğmesine basılı tutun (her iki düğme de aynı anda basılı olacak). <strong>General Mobile</strong>&nbsp;logosu gözükünce tuşlardan ellerinizi çekebilirsiniz.</li>



<li>TWRP arabirimindeki <strong>Mount</strong> düğmesinden &#8220;<strong>system</strong>&#8221; bölümünü seçerek aktif hale getirin.</li>



<li>TWRP arabirimindeki <strong>Advanced</strong> düğmesinden &#8220;<strong>File Manager</strong>&#8221; a girerek aşağıdaki dosyaları bulun ve silin:<br><br><strong>system/priv-app/root_detector.apk<br><br></strong><strong>system/app/*MDME*.apk</strong></li>



<li>Yeniden başlatmak için ana ekrandan <strong>Reboot</strong> seçeneğini seçerek cihazı yeniden başlatın.</li>



<li>Cihaz normal şekilde açıldıktan sonra uygulamalardan &#8220;<strong>SuperSU Installer</strong>&#8221; uygulamasını çalıştırın ve TWRP seçeneğini seçin. Tablet TWRP modunda yeniden başlayacak ve rootlama işlemini kendisi&nbsp;tamamlayacaktır.</li>
</ol>



<h2 class="wp-block-heading">Tableti Orjinal Haline Geri Getirmek</h2>



<ol class="wp-block-list">
<li>Buradaki arşivi indirin ve bilgisayarınıza genişletin.</li>



<li>Tabletinizi güç düğmesine basarak kapatın.</li>



<li>Driver klasöründeki &#8220;<strong>installdrv.exe</strong>&#8221; dosyasını yükleyin.</li>



<li>Genişlettiğiniz klasördeki<strong> flash_tool.exe</strong> programını çalıştırın.</li>



<li>Options menüsündeki <strong>CheckSWVer</strong> seçimini kaldırın.</li>



<li>Download düğmesine tıklatın.</li>



<li>Tabletinizin USB kablosunu takın.</li>



<li>Tablet Windows tarafından algılanacak ve işlem otomatik olarak başlayacak.<strong> Download OK.</strong> mesajı görüntülendiğinde tabletinizi yeniden başlatıp normal şekilde kullanmaya devam edebilirsiniz.</li>
</ol>



<p class="wp-block-paragraph">&nbsp;</p>



<p class="wp-block-paragraph"><strong>Some one-click root apps</strong></p>



<ul class="wp-block-list">
<li>Universal Androot</li>



<li>Z4root</li>



<li>Framaroot</li>



<li>Kingroot</li>



<li>Vroot (iroot)</li>



<li>Shuame</li>



<li>Eroot</li>



<li>One click root</li>



<li>Poot</li>



<li>Root master</li>



<li>Root genius</li>



<li>SRS root</li>



<li>Trowel root</li>



<li>Kingoapp</li>



<li>Stump root</li>
</ul>
]]></content:encoded>
					
					<wfw:commentRss>https://www.tankado.com/general-mobile-tabletleri-neden-ve-nasil-rootlanir/feed/</wfw:commentRss>
			<slash:comments>0</slash:comments>
		
		
			</item>
		<item>
		<title>claude-code yapılandırmam</title>
		<link>https://www.tankado.com/claude-code-yapilandirmam/</link>
					<comments>https://www.tankado.com/claude-code-yapilandirmam/#respond</comments>
		
		<dc:creator><![CDATA[Özgür Koca]]></dc:creator>
		<pubDate>Fri, 01 May 2026 19:33:50 +0000</pubDate>
				<category><![CDATA[Yapay Zeka]]></category>
		<guid isPermaLink="false">https://www.tankado.com/?p=11530</guid>

					<description><![CDATA[Bazı tehlikeli rm&#8217;ler dışında herşeye izin veren oturumlar başlatmak için proje dizinindeki .claude/settings.json dosyasına şunları ekle: Eklentiler: https://github.com/daniel3303/ClaudeCodeStatusLine]]></description>
										<content:encoded><![CDATA[
<p class="wp-block-paragraph">Bazı tehlikeli rm&#8217;ler dışında herşeye izin veren oturumlar başlatmak için proje dizinindeki <strong>.claude/settings.json</strong> dosyasına şunları ekle:</p>



<div class="wp-block-kevinbatdorf-code-block-pro" data-code-block-pro-font-family="Code-Pro-JetBrains-Mono" style="font-size:.875rem;font-family:Code-Pro-JetBrains-Mono,ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,monospace;line-height:1.5rem;--cbp-tab-width:2;tab-size:var(--cbp-tab-width, 2)"><span style="display:flex;align-items:center;padding:16px 0 0 16px;width:100%;text-align:left;background-color:#1e1e1e"><span style="background:#c7c7c7;padding:0.3rem 0.5rem 0.2rem;border-radius:1rem;font-size:0.8em;line-height:1;height:1.25rem;text-align:center;display:inline-flex;align-items:center;justify-content:center;color:#1e1e1e">JSON</span></span><span role="button" tabindex="0" style="color:#D4D4D4;display:none" aria-label="Copy" class="code-block-pro-copy-button"><pre class="code-block-pro-copy-button-pre" aria-hidden="true"><textarea class="code-block-pro-copy-button-textarea" tabindex="-1" aria-hidden="true" readonly>{
  "permissions": {
    "allow": &#91;
      "Bash",
      "Read",
      "Edit",
      "Write",
      "WebFetch"
    &#93;,
    "deny": &#91;
      "Bash(rm -rf /)",
      "Bash(rm -rf ~)",
      "Bash(rm -rf /*)",
      "Bash(sudo rm *)",
      "Bash(dd if=*)",
      "Bash(mkfs*)"
    &#93;,
    "defaultMode": "bypassPermissions",
    "autoAllowBashIfSandboxed": false
  },
  "attribution": {
    "commit": "",
    "pr": ""
  },
  "hooks": {
    "PreToolUse": [
      {
        "matcher": "Bash",
        "hooks": [
          {
            "type": "command",
            "command": "if grep -qiE 'Co-Authored-By:[&#91;:space:&#93;]*Claude|Generated with Claude Code'; then echo 'Blocked: remove Claude/Anthropic attribution (no \"Co-Authored-By: Claude\" trailer, no \"Generated with Claude Code\" line) from this commit/PR.' >&2; exit 2; fi; exit 0",
            "statusMessage": "Checking for Claude attribution..."
          }
        ]
      }
    ],
    "SessionStart": [
      {
        "hooks": [
          {
            "type": "command",
            "command": "d=\"$HOME/.claude/statusline\"; &#91; -f \"$d/statusline.sh\" &#93; || { git clone --depth 1 https://github.com/daniel3303/ClaudeCodeStatusLine \"$d\" >/dev/null 2>&amp;1 &amp;&amp; chmod +x \"$d/statusline.sh\"; }; if ! command -v jq >/dev/null 2>&amp;1 &amp;&amp; &#91; ! -x \"$HOME/.local/bin/jq\" &#93;; then case \"$(uname -m)\" in x86_64) j=jq-linux-amd64;; aarch64|arm64) j=jq-linux-arm64;; armv7l|armv6l) j=jq-linux-armhf;; i?86) j=jq-linux-i386;; *) j=;; esac; &#91; -n \"$j\" &#93; &amp;&amp; mkdir -p \"$HOME/.local/bin\" &amp;&amp; curl -fsSL \"https://github.com/jqlang/jq/releases/download/jq-1.7.1/$j\" -o \"$HOME/.local/bin/jq\" &amp;&amp; chmod +x \"$HOME/.local/bin/jq\"; fi",
            "async": true,
            "statusMessage": "Ensuring status line is installed..."
          }
        ]
      },
      {
        "hooks": &#91;
          {
            "type": "command",
            "command": "echo 'Kullanıcının tercihi: görev tamamlandıktan sonra paylaşılan recap/özet mesajını Türkçe yaz (kod, komut ve teknik terimler ingilizce kalabilir).'"
          }
        &#93;
      }
    ]
  },
  "theme": "auto",
  "skipDangerousModePermissionPrompt": true,
  "statusLine": {
    "type": "command",
    "command": "PATH=\"$HOME/.local/bin:$PATH\" $HOME/.claude/statusline/statusline.sh"
  },
  "includeCoAuthoredBy": false,
  "attribution": {
    "commits": false,
    "pullRequests": false
  }
}
</textarea></pre><svg xmlns="http://www.w3.org/2000/svg" style="width:24px;height:24px" fill="none" viewBox="0 0 24 24" stroke="currentColor" stroke-width="2"><path class="with-check" stroke-linecap="round" stroke-linejoin="round" d="M4.5 12.75l6 6 9-13.5"></path><path class="without-check" stroke-linecap="round" stroke-linejoin="round" d="M16.5 8.25V6a2.25 2.25 0 00-2.25-2.25H6A2.25 2.25 0 003.75 6v8.25A2.25 2.25 0 006 16.5h2.25m8.25-8.25H18a2.25 2.25 0 012.25 2.25V18A2.25 2.25 0 0118 20.25h-7.5A2.25 2.25 0 018.25 18v-1.5m8.25-8.25h-6a2.25 2.25 0 00-2.25 2.25v6"></path></svg></span><pre class="shiki dark-plus" style="background-color: #1E1E1E" tabindex="0"><code><span class="line"><span style="color: #D4D4D4">{</span></span>
<span class="line"><span style="color: #D4D4D4">  </span><span style="color: #9CDCFE">&quot;permissions&quot;</span><span style="color: #D4D4D4">: {</span></span>
<span class="line"><span style="color: #D4D4D4">    </span><span style="color: #9CDCFE">&quot;allow&quot;</span><span style="color: #D4D4D4">: &#91;</span></span>
<span class="line"><span style="color: #D4D4D4">      </span><span style="color: #CE9178">&quot;Bash&quot;</span><span style="color: #D4D4D4">,</span></span>
<span class="line"><span style="color: #D4D4D4">      </span><span style="color: #CE9178">&quot;Read&quot;</span><span style="color: #D4D4D4">,</span></span>
<span class="line"><span style="color: #D4D4D4">      </span><span style="color: #CE9178">&quot;Edit&quot;</span><span style="color: #D4D4D4">,</span></span>
<span class="line"><span style="color: #D4D4D4">      </span><span style="color: #CE9178">&quot;Write&quot;</span><span style="color: #D4D4D4">,</span></span>
<span class="line"><span style="color: #D4D4D4">      </span><span style="color: #CE9178">&quot;WebFetch&quot;</span></span>
<span class="line"><span style="color: #D4D4D4">    &#93;,</span></span>
<span class="line"><span style="color: #D4D4D4">    </span><span style="color: #9CDCFE">&quot;deny&quot;</span><span style="color: #D4D4D4">: &#91;</span></span>
<span class="line"><span style="color: #D4D4D4">      </span><span style="color: #CE9178">&quot;Bash(rm -rf /)&quot;</span><span style="color: #D4D4D4">,</span></span>
<span class="line"><span style="color: #D4D4D4">      </span><span style="color: #CE9178">&quot;Bash(rm -rf ~)&quot;</span><span style="color: #D4D4D4">,</span></span>
<span class="line"><span style="color: #D4D4D4">      </span><span style="color: #CE9178">&quot;Bash(rm -rf /*)&quot;</span><span style="color: #D4D4D4">,</span></span>
<span class="line"><span style="color: #D4D4D4">      </span><span style="color: #CE9178">&quot;Bash(sudo rm *)&quot;</span><span style="color: #D4D4D4">,</span></span>
<span class="line"><span style="color: #D4D4D4">      </span><span style="color: #CE9178">&quot;Bash(dd if=*)&quot;</span><span style="color: #D4D4D4">,</span></span>
<span class="line"><span style="color: #D4D4D4">      </span><span style="color: #CE9178">&quot;Bash(mkfs*)&quot;</span></span>
<span class="line"><span style="color: #D4D4D4">    &#93;,</span></span>
<span class="line"><span style="color: #D4D4D4">    </span><span style="color: #9CDCFE">&quot;defaultMode&quot;</span><span style="color: #D4D4D4">: </span><span style="color: #CE9178">&quot;bypassPermissions&quot;</span><span style="color: #D4D4D4">,</span></span>
<span class="line"><span style="color: #D4D4D4">    </span><span style="color: #9CDCFE">&quot;autoAllowBashIfSandboxed&quot;</span><span style="color: #D4D4D4">: </span><span style="color: #569CD6">false</span></span>
<span class="line"><span style="color: #D4D4D4">  },</span></span>
<span class="line"><span style="color: #D4D4D4">  </span><span style="color: #9CDCFE">&quot;attribution&quot;</span><span style="color: #D4D4D4">: {</span></span>
<span class="line"><span style="color: #D4D4D4">    </span><span style="color: #9CDCFE">&quot;commit&quot;</span><span style="color: #D4D4D4">: </span><span style="color: #CE9178">&quot;&quot;</span><span style="color: #D4D4D4">,</span></span>
<span class="line"><span style="color: #D4D4D4">    </span><span style="color: #9CDCFE">&quot;pr&quot;</span><span style="color: #D4D4D4">: </span><span style="color: #CE9178">&quot;&quot;</span></span>
<span class="line"><span style="color: #D4D4D4">  },</span></span>
<span class="line"><span style="color: #D4D4D4">  </span><span style="color: #9CDCFE">&quot;hooks&quot;</span><span style="color: #D4D4D4">: {</span></span>
<span class="line"><span style="color: #D4D4D4">    </span><span style="color: #9CDCFE">&quot;PreToolUse&quot;</span><span style="color: #D4D4D4">: [</span></span>
<span class="line"><span style="color: #D4D4D4">      {</span></span>
<span class="line"><span style="color: #D4D4D4">        </span><span style="color: #9CDCFE">&quot;matcher&quot;</span><span style="color: #D4D4D4">: </span><span style="color: #CE9178">&quot;Bash&quot;</span><span style="color: #D4D4D4">,</span></span>
<span class="line"><span style="color: #D4D4D4">        </span><span style="color: #9CDCFE">&quot;hooks&quot;</span><span style="color: #D4D4D4">: [</span></span>
<span class="line"><span style="color: #D4D4D4">          {</span></span>
<span class="line"><span style="color: #D4D4D4">            </span><span style="color: #9CDCFE">&quot;type&quot;</span><span style="color: #D4D4D4">: </span><span style="color: #CE9178">&quot;command&quot;</span><span style="color: #D4D4D4">,</span></span>
<span class="line"><span style="color: #D4D4D4">            </span><span style="color: #9CDCFE">&quot;command&quot;</span><span style="color: #D4D4D4">: </span><span style="color: #CE9178">&quot;if grep -qiE &#39;Co-Authored-By:[&#91;:space:&#93;]*Claude|Generated with Claude Code&#39;; then echo &#39;Blocked: remove Claude/Anthropic attribution (no </span><span style="color: #D7BA7D">\&quot;</span><span style="color: #CE9178">Co-Authored-By: Claude</span><span style="color: #D7BA7D">\&quot;</span><span style="color: #CE9178"> trailer, no </span><span style="color: #D7BA7D">\&quot;</span><span style="color: #CE9178">Generated with Claude Code</span><span style="color: #D7BA7D">\&quot;</span><span style="color: #CE9178"> line) from this commit/PR.&#39; &gt;&amp;2; exit 2; fi; exit 0&quot;</span><span style="color: #D4D4D4">,</span></span>
<span class="line"><span style="color: #D4D4D4">            </span><span style="color: #9CDCFE">&quot;statusMessage&quot;</span><span style="color: #D4D4D4">: </span><span style="color: #CE9178">&quot;Checking for Claude attribution...&quot;</span></span>
<span class="line"><span style="color: #D4D4D4">          }</span></span>
<span class="line"><span style="color: #D4D4D4">        ]</span></span>
<span class="line"><span style="color: #D4D4D4">      }</span></span>
<span class="line"><span style="color: #D4D4D4">    ],</span></span>
<span class="line"><span style="color: #D4D4D4">    </span><span style="color: #9CDCFE">&quot;SessionStart&quot;</span><span style="color: #D4D4D4">: [</span></span>
<span class="line"><span style="color: #D4D4D4">      {</span></span>
<span class="line"><span style="color: #D4D4D4">        </span><span style="color: #9CDCFE">&quot;hooks&quot;</span><span style="color: #D4D4D4">: [</span></span>
<span class="line"><span style="color: #D4D4D4">          {</span></span>
<span class="line"><span style="color: #D4D4D4">            </span><span style="color: #9CDCFE">&quot;type&quot;</span><span style="color: #D4D4D4">: </span><span style="color: #CE9178">&quot;command&quot;</span><span style="color: #D4D4D4">,</span></span>
<span class="line"><span style="color: #D4D4D4">            </span><span style="color: #9CDCFE">&quot;command&quot;</span><span style="color: #D4D4D4">: </span><span style="color: #CE9178">&quot;d=</span><span style="color: #D7BA7D">\&quot;</span><span style="color: #CE9178">$HOME/.claude/statusline</span><span style="color: #D7BA7D">\&quot;</span><span style="color: #CE9178">; &#91; -f </span><span style="color: #D7BA7D">\&quot;</span><span style="color: #CE9178">$d/statusline.sh</span><span style="color: #D7BA7D">\&quot;</span><span style="color: #CE9178"> &#93; || { git clone --depth 1 https://github.com/daniel3303/ClaudeCodeStatusLine </span><span style="color: #D7BA7D">\&quot;</span><span style="color: #CE9178">$d</span><span style="color: #D7BA7D">\&quot;</span><span style="color: #CE9178"> &gt;/dev/null 2&gt;&amp;1 &amp;&amp; chmod +x </span><span style="color: #D7BA7D">\&quot;</span><span style="color: #CE9178">$d/statusline.sh</span><span style="color: #D7BA7D">\&quot;</span><span style="color: #CE9178">; }; if ! command -v jq &gt;/dev/null 2&gt;&amp;1 &amp;&amp; &#91; ! -x </span><span style="color: #D7BA7D">\&quot;</span><span style="color: #CE9178">$HOME/.local/bin/jq</span><span style="color: #D7BA7D">\&quot;</span><span style="color: #CE9178"> &#93;; then case </span><span style="color: #D7BA7D">\&quot;</span><span style="color: #CE9178">$(uname -m)</span><span style="color: #D7BA7D">\&quot;</span><span style="color: #CE9178"> in x86_64) j=jq-linux-amd64;; aarch64|arm64) j=jq-linux-arm64;; armv7l|armv6l) j=jq-linux-armhf;; i?86) j=jq-linux-i386;; *) j=;; esac; &#91; -n </span><span style="color: #D7BA7D">\&quot;</span><span style="color: #CE9178">$j</span><span style="color: #D7BA7D">\&quot;</span><span style="color: #CE9178"> &#93; &amp;&amp; mkdir -p </span><span style="color: #D7BA7D">\&quot;</span><span style="color: #CE9178">$HOME/.local/bin</span><span style="color: #D7BA7D">\&quot;</span><span style="color: #CE9178"> &amp;&amp; curl -fsSL </span><span style="color: #D7BA7D">\&quot;</span><span style="color: #CE9178">https://github.com/jqlang/jq/releases/download/jq-1.7.1/$j</span><span style="color: #D7BA7D">\&quot;</span><span style="color: #CE9178"> -o </span><span style="color: #D7BA7D">\&quot;</span><span style="color: #CE9178">$HOME/.local/bin/jq</span><span style="color: #D7BA7D">\&quot;</span><span style="color: #CE9178"> &amp;&amp; chmod +x </span><span style="color: #D7BA7D">\&quot;</span><span style="color: #CE9178">$HOME/.local/bin/jq</span><span style="color: #D7BA7D">\&quot;</span><span style="color: #CE9178">; fi&quot;</span><span style="color: #D4D4D4">,</span></span>
<span class="line"><span style="color: #D4D4D4">            </span><span style="color: #9CDCFE">&quot;async&quot;</span><span style="color: #D4D4D4">: </span><span style="color: #569CD6">true</span><span style="color: #D4D4D4">,</span></span>
<span class="line"><span style="color: #D4D4D4">            </span><span style="color: #9CDCFE">&quot;statusMessage&quot;</span><span style="color: #D4D4D4">: </span><span style="color: #CE9178">&quot;Ensuring status line is installed...&quot;</span></span>
<span class="line"><span style="color: #D4D4D4">          }</span></span>
<span class="line"><span style="color: #D4D4D4">        ]</span></span>
<span class="line"><span style="color: #D4D4D4">      },</span></span>
<span class="line"><span style="color: #D4D4D4">      {</span></span>
<span class="line"><span style="color: #D4D4D4">        </span><span style="color: #9CDCFE">&quot;hooks&quot;</span><span style="color: #D4D4D4">: &#91;</span></span>
<span class="line"><span style="color: #D4D4D4">          {</span></span>
<span class="line"><span style="color: #D4D4D4">            </span><span style="color: #9CDCFE">&quot;type&quot;</span><span style="color: #D4D4D4">: </span><span style="color: #CE9178">&quot;command&quot;</span><span style="color: #D4D4D4">,</span></span>
<span class="line"><span style="color: #D4D4D4">            </span><span style="color: #9CDCFE">&quot;command&quot;</span><span style="color: #D4D4D4">: </span><span style="color: #CE9178">&quot;echo &#39;Kullanıcının tercihi: görev tamamlandıktan sonra paylaşılan recap/özet mesajını Türkçe yaz (kod, komut ve teknik terimler ingilizce kalabilir).&#39;&quot;</span></span>
<span class="line"><span style="color: #D4D4D4">          }</span></span>
<span class="line"><span style="color: #D4D4D4">        &#93;</span></span>
<span class="line"><span style="color: #D4D4D4">      }</span></span>
<span class="line"><span style="color: #D4D4D4">    ]</span></span>
<span class="line"><span style="color: #D4D4D4">  },</span></span>
<span class="line"><span style="color: #D4D4D4">  </span><span style="color: #9CDCFE">&quot;theme&quot;</span><span style="color: #D4D4D4">: </span><span style="color: #CE9178">&quot;auto&quot;</span><span style="color: #D4D4D4">,</span></span>
<span class="line"><span style="color: #D4D4D4">  </span><span style="color: #9CDCFE">&quot;skipDangerousModePermissionPrompt&quot;</span><span style="color: #D4D4D4">: </span><span style="color: #569CD6">true</span><span style="color: #D4D4D4">,</span></span>
<span class="line"><span style="color: #D4D4D4">  </span><span style="color: #9CDCFE">&quot;statusLine&quot;</span><span style="color: #D4D4D4">: {</span></span>
<span class="line"><span style="color: #D4D4D4">    </span><span style="color: #9CDCFE">&quot;type&quot;</span><span style="color: #D4D4D4">: </span><span style="color: #CE9178">&quot;command&quot;</span><span style="color: #D4D4D4">,</span></span>
<span class="line"><span style="color: #D4D4D4">    </span><span style="color: #9CDCFE">&quot;command&quot;</span><span style="color: #D4D4D4">: </span><span style="color: #CE9178">&quot;PATH=</span><span style="color: #D7BA7D">\&quot;</span><span style="color: #CE9178">$HOME/.local/bin:$PATH</span><span style="color: #D7BA7D">\&quot;</span><span style="color: #CE9178"> $HOME/.claude/statusline/statusline.sh&quot;</span></span>
<span class="line"><span style="color: #D4D4D4">  },</span></span>
<span class="line"><span style="color: #D4D4D4">  </span><span style="color: #9CDCFE">&quot;includeCoAuthoredBy&quot;</span><span style="color: #D4D4D4">: </span><span style="color: #569CD6">false</span><span style="color: #D4D4D4">,</span></span>
<span class="line"><span style="color: #D4D4D4">  </span><span style="color: #9CDCFE">&quot;attribution&quot;</span><span style="color: #D4D4D4">: {</span></span>
<span class="line"><span style="color: #D4D4D4">    </span><span style="color: #9CDCFE">&quot;commits&quot;</span><span style="color: #D4D4D4">: </span><span style="color: #569CD6">false</span><span style="color: #D4D4D4">,</span></span>
<span class="line"><span style="color: #D4D4D4">    </span><span style="color: #9CDCFE">&quot;pullRequests&quot;</span><span style="color: #D4D4D4">: </span><span style="color: #569CD6">false</span></span>
<span class="line"><span style="color: #D4D4D4">  }</span></span>
<span class="line"><span style="color: #D4D4D4">}</span></span>
<span class="line"></span></code></pre></div>



<p class="wp-block-paragraph">Eklentiler: </p>



<p class="wp-block-paragraph"><a href="https://github.com/daniel3303/ClaudeCodeStatusLine">https://github.com/daniel3303/ClaudeCodeStatusLine</a></p>
]]></content:encoded>
					
					<wfw:commentRss>https://www.tankado.com/claude-code-yapilandirmam/feed/</wfw:commentRss>
			<slash:comments>0</slash:comments>
		
		
			</item>
		<item>
		<title>Kali: MEB FATIH sertifikasının yüklenmesi</title>
		<link>https://www.tankado.com/kali-meb-fatih-sertifikasinin-yuklenmesi/</link>
					<comments>https://www.tankado.com/kali-meb-fatih-sertifikasinin-yuklenmesi/#respond</comments>
		
		<dc:creator><![CDATA[Özgür Koca]]></dc:creator>
		<pubDate>Wed, 11 Mar 2026 09:22:59 +0000</pubDate>
				<category><![CDATA[Siber Güvenlik Temelleri Dersi]]></category>
		<guid isPermaLink="false">https://www.tankado.com/?p=9501</guid>

					<description><![CDATA[MEB Fatih ağı statefull inspection özellikli bir güvenlik duvarına sahip. Yani paket&#8217;in içerik kısmı da denetlenmekte. Bu güvenlik duvarı filtrelemeyi HTTPS/SSL bağlantıları üzerinde de gerçekleştirebilmekte. HTTPS üzerinde bu incelemeyi gerçekleştirebilmesi için de yetkili bir kök sertifikanın yüklenmesi gerekiyor. Aşağıdaki komutları sırasıyla uygulayarak Kali Linux&#8217;un ve içerisindeki SSL doğrulamasına ihtiyaç duyan araçların sertifika hatası vermeden internete &#8230; <a href="https://www.tankado.com/kali-meb-fatih-sertifikasinin-yuklenmesi/" class="more-link">Okumaya devam et<span class="screen-reader-text"> "Kali: MEB FATIH sertifikasının yüklenmesi"</span></a>]]></description>
										<content:encoded><![CDATA[
<p class="wp-block-paragraph">MEB Fatih ağı statefull inspection özellikli bir güvenlik duvarına sahip. Yani paket&#8217;in içerik kısmı da denetlenmekte. Bu güvenlik duvarı filtrelemeyi HTTPS/SSL bağlantıları üzerinde de gerçekleştirebilmekte. HTTPS üzerinde bu incelemeyi gerçekleştirebilmesi için de  yetkili bir kök sertifikanın yüklenmesi gerekiyor. Aşağıdaki komutları sırasıyla uygulayarak Kali Linux&#8217;un ve içerisindeki SSL doğrulamasına ihtiyaç duyan araçların sertifika hatası vermeden internete ulaşmasını sağlayabilirsiniz. public (açık) kriptografik anahtarı içeren bu sertifikanın private (özel) anahtarı MEB tarafından korunmakta ve kullanılmakta.</p>



<pre class="wp-block-code"><code>wget --no-check-certificate https://sertifika.meb.gov.tr/MEB_SERTIFIKASI.cer
openssl x509 -inform DER -in MEB_SERTIFIKASI.cer -out MEB_SERTIFIKASI.crt
sudo cp MEB_SERTIFIKASI.crt /usr/local/share/ca-certificates/MEB_SERTIFIKASI.crt
sudo chmod 644 /usr/local/share/ca-certificates/MEB_SERTIFIKASI.crt
sudo update-ca-certificates</code></pre>



<p class="wp-block-paragraph"> Bunu bilgisayarlara yüklenen kök sertifika ile gerçekleştirmekte. Mahremiyet açısından rahatsız edici olan bu kök sertifika HTTPS ile korunan login form&#8217;larının (dolayısıyla eposta ve parola bilgilerinin) mahremiyetini sekteye uğratmakta olduğunu aklınızın bir kenarına not edin.</p>
]]></content:encoded>
					
					<wfw:commentRss>https://www.tankado.com/kali-meb-fatih-sertifikasinin-yuklenmesi/feed/</wfw:commentRss>
			<slash:comments>0</slash:comments>
		
		
			</item>
		<item>
		<title>Kali: Türkçe Klavye Ayarlarını Yapmak</title>
		<link>https://www.tankado.com/kali-turkce-klavye-ayarlarini-yapmak/</link>
					<comments>https://www.tankado.com/kali-turkce-klavye-ayarlarini-yapmak/#respond</comments>
		
		<dc:creator><![CDATA[Özgür Koca]]></dc:creator>
		<pubDate>Wed, 11 Mar 2026 09:14:28 +0000</pubDate>
				<category><![CDATA[Siber Güvenlik Temelleri Dersi]]></category>
		<guid isPermaLink="false">https://www.tankado.com/?p=9499</guid>

					<description><![CDATA[Kali varsayılan olarak Türkçe klavye ayarlarıyla gelmiyor. Terminal penceresinde Türkçe Q klavye desteğini etkinleştirmek için aşağıdaki komutu girebilirsiniz. Her seferinde bu ayarı yapmamak için kabuk başlangıç dosyasına komutu ekleyebilirsiniz. Kabuk başlangıç dosyasını öğrenmek ve terminal penceresinde bu ayarın otomatik yapılmasını sağlamak için başlangıç dosyasına bu komutu ekleyin. nano editörü ile rc (bu örnekte .zshrc) dosyasını &#8230; <a href="https://www.tankado.com/kali-turkce-klavye-ayarlarini-yapmak/" class="more-link">Okumaya devam et<span class="screen-reader-text"> "Kali: Türkçe Klavye Ayarlarını Yapmak"</span></a>]]></description>
										<content:encoded><![CDATA[
<p class="wp-block-paragraph">Kali varsayılan olarak Türkçe klavye ayarlarıyla gelmiyor. Terminal penceresinde Türkçe Q klavye desteğini etkinleştirmek için aşağıdaki komutu girebilirsiniz.</p>



<pre class="wp-block-code"><code>setxkbmap tr</code></pre>



<span id="more-9499"></span>



<p class="wp-block-paragraph">Her seferinde bu ayarı yapmamak için kabuk başlangıç dosyasına komutu ekleyebilirsiniz. Kabuk başlangıç dosyasını öğrenmek ve terminal penceresinde bu ayarın otomatik yapılmasını sağlamak için başlangıç dosyasına bu komutu ekleyin.</p>



<pre class="wp-block-code"><code>┌──(kali㉿kali)-&#91;~]
└─$ echo $SHELL
/usr/bin/zsh
                                                                                                                                         
┌──(kali㉿kali)-&#91;~]
└─$ nano .zshrc </code></pre>



<p class="wp-block-paragraph"><strong>nano </strong>editörü ile rc (bu örnekte .zshrc) dosyasını açtıktan sonra <em>setxkbmap tr</em> komutunu boş bir satıra ekleyin ve kaydedip çıkın.</p>



<p class="wp-block-paragraph">Dilerseniz Session and Startup seçeneğinden Application Startup’a giderek bu komutu açılışta çalışacak şekilde ayarlayabilirsiniz. </p>



<p class="wp-block-paragraph">Bir diğer yöntem ise aşağıdaki komut ile klavye ayarını gerçekleştirmek. Turkis (Alt-Q) seçeneğini seçin:</p>



<pre class="wp-block-code"><code>sudo dpkg-reconfigure keyboard-configuration</code></pre>
]]></content:encoded>
					
					<wfw:commentRss>https://www.tankado.com/kali-turkce-klavye-ayarlarini-yapmak/feed/</wfw:commentRss>
			<slash:comments>0</slash:comments>
		
		
			</item>
		<item>
		<title>Kali: Whois komutunu çalışır hale getirmek</title>
		<link>https://www.tankado.com/whois-komutu/</link>
					<comments>https://www.tankado.com/whois-komutu/#respond</comments>
		
		<dc:creator><![CDATA[Özgür Koca]]></dc:creator>
		<pubDate>Wed, 11 Mar 2026 08:21:44 +0000</pubDate>
				<category><![CDATA[Siber Güvenlik Temelleri Dersi]]></category>
		<guid isPermaLink="false">https://www.tankado.com/?p=9489</guid>

					<description><![CDATA[MEB Fatih ağında ders modülünde geçtiği şekilde varsayılan whois sunucusunun (-h olmadan) kullanılması mümkün olmuyor. MEB Fatih ağı whois sunucularına kurulan trafiği engelliyor. Aşağıdaki script&#8217;i çalıştırarak yerel (sadece ilgili alan adının whois bilgisini sağlayan) whois sunucularını tarayarak hangi sunucuların MEB Fatih ağında izinli olduğunu bulabilirsiniz. Yukarıdaki betiği örneğin whoistara.sh dosyasına kaydedin ve chmod +x komutu &#8230; <a href="https://www.tankado.com/whois-komutu/" class="more-link">Okumaya devam et<span class="screen-reader-text"> "Kali: Whois komutunu çalışır hale getirmek"</span></a>]]></description>
										<content:encoded><![CDATA[
<p class="wp-block-paragraph">MEB Fatih ağında ders modülünde geçtiği şekilde varsayılan whois sunucusunun (-h olmadan) kullanılması mümkün olmuyor. MEB Fatih ağı whois sunucularına kurulan trafiği engelliyor. </p>



<figure class="wp-block-image size-full"><img decoding="async" width="684" height="184" src="https://www.tankado.com/wp-content/uploads/2026/03/kali-meb-fatih-whois.png" alt="" class="wp-image-9494" srcset="https://www.tankado.com/wp-content/uploads/2026/03/kali-meb-fatih-whois.png 684w, https://www.tankado.com/wp-content/uploads/2026/03/kali-meb-fatih-whois-300x81.png 300w" sizes="(max-width: 709px) 85vw, (max-width: 909px) 67vw, (max-width: 984px) 61vw, (max-width: 1362px) 45vw, 600px" /></figure>



<p class="wp-block-paragraph">Aşağıdaki script&#8217;i çalıştırarak yerel (sadece ilgili alan adının whois bilgisini sağlayan) whois sunucularını tarayarak hangi sunucuların MEB Fatih ağında izinli olduğunu bulabilirsiniz.</p>



<span id="more-9489"></span>



<pre class="wp-block-code"><code>#!/bin/bash

TIMEOUT=3
PARALLEL=50

echo "&#91;+] ccTLD listesi indiriliyor..."

curl -s https://data.iana.org/TLD/tlds-alpha-by-domain.txt \
| tail -n +2 \
| tr 'A-Z' 'a-z' \
| awk 'length($0)==2' &gt; cctlds.txt

TOTAL=$(wc -l &lt; cctlds.txt)

echo "&#91;+] $TOTAL ccTLD bulundu"
echo "&#91;+] WHOIS sunucuları test ediliyor..."

check_tld() {

tld=$1
server="whois.nic.$tld"
domain="example.$tld"

response=$(timeout $TIMEOUT bash -c "printf '$domain\r\n' | nc $server 43" 2&gt;/dev/null | head -n 1)

if &#91;&#91; -n "$response" ]]; then
echo "&#91;WHOIS OK] $server (test: $domain)"
fi

}

export -f check_tld
export TIMEOUT

cat cctlds.txt | xargs -P $PARALLEL -I{} bash -c 'check_tld "$@"' _ {}

echo "&#91;+] Tarama tamamlandı"</code></pre>



<p class="wp-block-paragraph">Yukarıdaki betiği  örneğin <em>whoistara.sh</em> dosyasına kaydedin ve <strong>chmod +x</strong> komutu ile çalıştırma izni verin. Script Fatih ağında erişim izni verilmiş whois sunucularını aşağıdaki gibi çıktılar. </p>



<pre class="wp-block-code"><code>──(kali㉿kali)-&#91;~]
└─$ ./whoistara.sh 
&#91;+] ccTLD listesi indiriliyor...
&#91;+] 248 ccTLD bulundu
&#91;+] WHOIS sunucuları test ediliyor...
&#91;WHOIS OK] whois.nic.aw (test: example.aw)
&#91;WHOIS OK] whois.nic.de (test: example.de)
&#91;WHOIS OK] whois.nic.ar (test: example.ar)
&#91;WHOIS OK] whois.nic.hr (test: example.hr)
&#91;WHOIS OK] whois.nic.ge (test: example.ge)
&#91;WHOIS OK] whois.nic.im (test: example.im)
&#91;WHOIS OK] whois.nic.sa (test: example.sa)
&#91;WHOIS OK] whois.nic.sm (test: example.sm)
&#91;WHOIS OK] whois.nic.us (test: example.us)
&#91;WHOIS OK] whois.nic.tv (test: example.tv)
&#91;WHOIS OK] whois.nic.vi (test: example.vi)
&#91;+] Tarama tamamlandı</code></pre>



<p class="wp-block-paragraph">Yukarıda listelenenler FATİH ağında birşekilde gözden kaçmış izin verilen ve çalışan ülke whois sunucularıdır. Örneğin .ar (arjantin) whois sunucusu .ar uzantılı alan adlarını çözebilir. Bu yerel whois sunucularından birinin kaydını tuttuğu alan adını aşağıdaki gibi sorgulayabilirsiniz.</p>



<pre class="wp-block-code"><code>
┌──(kali㉿kali)-&#91;~]
└─$ whois -h whois.nic.ar google.com.ar
% La información a la que estás accediendo se provee exclusivamente para
% fines relacionados con operaciones sobre nombres de dominios y DNS,
% quedando absolutamente prohibido su uso para otros fines.
%
% La DIRECCIÓN NACIONAL DEL REGISTRO DE DOMINIOS DE INTERNET es depositaria
% de la información que los usuarios declaran con la sola finalidad de
% registrar nombres de dominio en ‘.ar’, para ser publicada en el sitio web
% de NIC Argentina.
%
% La información personal que consta en la base de datos generada a partir
% del sistema de registro de nombres de dominios se encuentra amparada por
% la Ley N° 25326 “Protección de Datos Personales” y el Decreto
% Reglamentario 1558/01.

domain:         google.com.ar
registrant:     50037928906
registrar:      nicar
registered:     1999-06-08 00:00:00
changed:        2025-06-09 15:37:19.837308
expire:         2026-07-08 00:00:00

contact:        50037928906
name:           GOOGLE INC.
registrar:      nicar
created:        2013-10-29 00:00:00
changed:        2026-03-10 19:07:55.978980

nserver:        ns3.google.com ()
nserver:        ns4.google.com ()
nserver:        ns1.google.com ()
nserver:        ns2.google.com ()
registrar:      nicar
created:        2016-07-01 00:46:15.070731
</code></pre>
]]></content:encoded>
					
					<wfw:commentRss>https://www.tankado.com/whois-komutu/feed/</wfw:commentRss>
			<slash:comments>0</slash:comments>
		
		
			</item>
		<item>
		<title>Kali’ye VNC Kurmak (Tiger VNC)</title>
		<link>https://www.tankado.com/kali-tigervnc-hizli-kurulum-scripti/</link>
					<comments>https://www.tankado.com/kali-tigervnc-hizli-kurulum-scripti/#respond</comments>
		
		<dc:creator><![CDATA[Özgür Koca]]></dc:creator>
		<pubDate>Thu, 19 Feb 2026 21:47:54 +0000</pubDate>
				<category><![CDATA[Linux]]></category>
		<guid isPermaLink="false">https://www.tankado.com/?p=9478</guid>

					<description><![CDATA[Aşağıdaki script&#8217;i vnc-install.sh dosyasına kaydedip +x verin. Sunulacak çözünürlüğü GEOMERTY değişkeni ile ayarlayabilirsiniz. Bağlantı parolası olan kali123&#8217;ü script içinden değiştirebilirsiniz. Kurulumu gerçekleştirdikten sonra çözünürlüğü değiştirmek için /usr/local/bin/vnc-start.sh dosyasındaki -geometry değerini düzenleyin. Bu betik bir systemd servisi olarak yönetilen VNC&#8217;nin başlatma betiğidir. &#x1f4c1; Yapılandırma Dizini &#x1f680; Servis Yönetimi (Systemd) İşlem Komut Başlat sudo systemctl start vncserver@:1.service &#8230; <a href="https://www.tankado.com/kali-tigervnc-hizli-kurulum-scripti/" class="more-link">Okumaya devam et<span class="screen-reader-text"> "Kali&#8217;ye VNC Kurmak (Tiger VNC)"</span></a>]]></description>
										<content:encoded><![CDATA[
<p class="wp-block-paragraph">Aşağıdaki script&#8217;i <strong>vnc-install.sh</strong> dosyasına kaydedip +x verin. Sunulacak çözünürlüğü GEOMERTY değişkeni ile ayarlayabilirsiniz. Bağlantı parolası olan kali123&#8217;ü script içinden değiştirebilirsiniz. Kurulumu gerçekleştirdikten sonra çözünürlüğü değiştirmek için  <em>/usr/local/bin/vnc-start.sh</em> dosyasındaki <strong>-geometry</strong> değerini düzenleyin. Bu betik bir <strong>systemd</strong> servisi olarak yönetilen VNC&#8217;nin başlatma betiğidir.</p>



<pre class="wp-block-code"><code>sudo bash vnc-install.sh</code></pre>



<span id="more-9478"></span>



<pre class="wp-block-code"><code>#!/bin/bash
# TigerVNC Hızlı Kurulum Scripti - Kali Linux (Instance-Aware)
# Çalıştır: sudo bash vnc-install.sh

set -e  # Hata durumunda dur

# Değişkenler
USER="kali"
HOME_DIR="/home/$USER"
VNC_DIR="$HOME_DIR/.config/tigervnc"
GEOMETRY="1920x1080"  # veya "1920x1080"
DEPTH="24"

echo "=== TigerVNC Kurulumu Başlıyor ==="

# 1. Paketleri kur
echo "&#91;1/8] Paketler kuruluyor..."
apt update &amp;&amp; apt install -y tigervnc-standalone-server tigervnc-viewer xfce4 xfce4-goodies dbus-x11

# 2. Kullanıcı dizinlerini oluştur
echo "&#91;2/8] Dizin yapısı oluşturuluyor..."
mkdir -p "$VNC_DIR"
chown -R "$USER:$USER" "$HOME_DIR/.config"

# 3. VNC şifresi ayarla (otomatik: "kali123")
echo "&#91;3/8] VNC şifresi ayarlanıyor..."
echo "kali123" | vncpasswd -f > "$VNC_DIR/passwd"
chown "$USER:$USER" "$VNC_DIR/passwd"
chmod 600 "$VNC_DIR/passwd"

# 4. xstartup dosyası
echo "&#91;4/8] xstartup dosyası oluşturuluyor..."
cat > "$VNC_DIR/xstartup" &lt;&lt; 'EOF'
#!/bin/bash
unset SESSION_MANAGER
unset DBUS_SESSION_BUS_ADDRESS
export XDG_CURRENT_DESKTOP="XFCE"
export XDG_SESSION_DESKTOP="xfce"
export XDG_SESSION_TYPE="x11"

# Dbus başlat (eğer yoksa)
&#91; -z "$DBUS_SESSION_BUS_ADDRESS" ] &amp;&amp; eval $(dbus-launch --sh-syntax --exit-with-session)

# XFCE başlat
exec startxfce4
EOF
chmod +x "$VNC_DIR/xstartup"
chown "$USER:$USER" "$VNC_DIR/xstartup"

# 5. Instance-aware wrapper script (GÜNCELLENMİŞ)
echo "&#91;5/8] vnc-start.sh betiği oluşturuluyor..."
cat > /usr/local/bin/vnc-start.sh &lt;&lt; EOF
#!/bin/bash
# Instance-aware VNC başlatma betiği

USER=$USER
HOME=$HOME_DIR
INSTANCE="\\\${1:-:1}"  # Varsayılan :1

# Instance adını display formatına çevir (\\x3a1 → :1)
DISPLAY=\\\$(echo "\\\$INSTANCE" | sed 's/\\\\x3a/:/g')

export HOME USER DISPLAY

# Eski instance'ı temizle
/usr/bin/vncserver -kill "\\\$DISPLAY" >/dev/null 2>&amp;1 || true
sleep 1

# Log dosyasını temizle
rm -f "\\\$HOME/.config/tigervnc/lenpc\\\${DISPLAY}.log" 2>/dev/null

# VNC'yi başlat
/usr/bin/vncserver "\\\$DISPLAY" -geometry $GEOMETRY -depth $DEPTH -localhost no -xstartup $VNC_DIR/xstartup

# PID kontrolü (systemd PIDFile ile eşleşmeli)
for i in {1..10}; do
    if &#91; -f "\\\$HOME/.config/tigervnc/lenpc\\\${INSTANCE}.pid" ]; then
        sleep 2
        exit 0
    fi
    sleep 1
done
exit 1
EOF
chmod +x /usr/local/bin/vnc-start.sh

# 6. Instance-aware Systemd servisi (GÜNCELLENMİŞ)
echo "&#91;6/8] Systemd servisi oluşturuluyor..."
cat > /etc/systemd/system/vncserver@.service &lt;&lt; 'EOF'
&#91;Unit]
Description=Start TigerVNC server at startup (display %i)
After=network.target

&#91;Service]
Type=forking
User=kali
Group=kali
WorkingDirectory=/home/kali

Environment="HOME=/home/kali"
Environment="USER=kali"
Environment="PATH=/usr/local/bin:/usr/bin:/bin"

# PIDFile: %i escaped instance adını kullanır (:1 → \x3a1)
PIDFile=/home/kali/.config/tigervnc/lenpc%i.pid

# Betiğe instance adını parametre olarak geçir
ExecStart=/usr/local/bin/vnc-start.sh %i
ExecStop=/usr/bin/vncserver -kill %i

# Yeniden başlatma ayarları
Restart=on-failure
RestartSec=5
StartLimitInterval=60s
StartLimitBurst=3

&#91;Install]
WantedBy=multi-user.target
EOF

# 7. Systemd yeniden yükle ve başlat
echo "&#91;7/8] Servis başlatılıyor..."
systemctl daemon-reload

# Eski servis varsa durdur (uyumluluk için)
systemctl stop vncserver@1.service 2>/dev/null || true
systemctl stop vncserver@:1.service 2>/dev/null || true
sleep 1

# --- VNC oturumunu OOM killer'a karşı koru ---
# Uzun çalışan oturumlarda başka bir süreç (örn. Docker konteyneri) ani bellek
# isteyince kernel global OOM tetikler ve genellikle en şişman cgroup olan VNC
# oturumunu öldürür → tüm pencereler/sanal masaüstleri kaybolur. -500 ile VNC
# unit'ini OOM seçim sıralamasında en alta indiriyoruz.
sudo mkdir -p /etc/systemd/system/vncserver@.service.d
sudo tee /etc/systemd/system/vncserver@.service.d/oom.conf > /dev/null &lt;&lt;'EOF'
&#91;Service]
OOMScoreAdjust=-500
EOF
sudo systemctl daemon-reload

# Yeni servisi etkinleştir ve başlat
systemctl enable vncserver@:1.service
systemctl start vncserver@:1.service

# 8. Durum kontrolü
echo ""
echo "=== KURULUM TAMAMLANDI ==="
echo "VNC Şifresi: kali123"
echo "Bağlantı: &lt;IP>:5901 veya &lt;IP>:1"
echo ""
echo "Servis Durumu:"
systemctl status vncserver@:1.service --no-pager -l | head -10
echo ""
echo "Port Kontrolü:"
ss -tlnp | grep 5901 || echo "Port 5901 henüz açık değil, birkaç saniye bekleyin..."
echo ""
echo "Yönetim Komutları:"
echo "  Başlat:  sudo systemctl start vncserver@:1.service"
echo "  Durdur:  sudo systemctl stop vncserver@:1.service"
echo "  Yeniden: sudo systemctl restart vncserver@:1.service"
echo "  Durum:   sudo systemctl status vncserver@:1.service"
echo ""
echo "Farklı display için: sudo systemctl start vncserver@:2.service (port 5902)"</code></pre>



<hr class="wp-block-separator has-alpha-channel-opacity"/>



<h2 class="wp-block-heading">&#x1f4c1; Yapılandırma Dizini</h2>



<pre class="wp-block-code"><code>~/.config/tigervnc/
├── passwd          # VNC şifresi (vncpasswd ile oluşturulur)
├── xstartup        # Masaüstü oturumu başlatma betiği (XFCE)
├── lenpc:1.log     # VNC log dosyası
└── lenpc:1.pid     # PID dosyası (systemd izler)</code></pre>



<hr class="wp-block-separator has-alpha-channel-opacity"/>



<h2 class="wp-block-heading">&#x1f680; Servis Yönetimi (Systemd)</h2>



<figure class="wp-block-table"><table class="has-fixed-layout"><thead><tr><th>İşlem</th><th>Komut</th></tr></thead><tbody><tr><td><strong>Başlat</strong></td><td><code>sudo systemctl start vncserver@:1.service</code></td></tr><tr><td><strong>Durdur</strong></td><td><code>sudo systemctl stop vncserver@:1.service</code></td></tr><tr><td><strong>Yeniden başlat</strong></td><td><code>sudo systemctl restart vncserver@:1.service</code></td></tr><tr><td><strong>Durum kontrol</strong></td><td><code>sudo systemctl status vncserver@:1.service</code></td></tr><tr><td><strong>Otomatik başlatma</strong></td><td><code>sudo systemctl enable vncserver@:1.service</code></td></tr><tr><td><strong>Log görüntüle</strong></td><td><code>sudo journalctl -u vncserver@:1.service -n 20 -f</code></td></tr></tbody></table></figure>



<blockquote class="wp-block-quote is-layout-flow wp-block-quote-is-layout-flow">
<p class="wp-block-paragraph"><strong>ÖNEMLİ:</strong><code>:1</code> kullanımı (iki nokta üst üste) instance adıdır. <code>:1</code> → port 5901, <code>:2</code> → port 5902</p>
</blockquote>



<hr class="wp-block-separator has-alpha-channel-opacity"/>



<h2 class="wp-block-heading">&#x1f5a5;&#xfe0f; Display Numaraları ve Portlar</h2>



<figure class="wp-block-table"><table class="has-fixed-layout"><thead><tr><th>Instance</th><th>Display</th><th>Port</th><th>Bağlantı</th></tr></thead><tbody><tr><td><code>vncserver@:1.service</code></td><td><code>:1</code></td><td><strong>5901</strong></td><td><code>IP:5901</code> veya <code>IP:1</code></td></tr><tr><td><code>vncserver@:2.service</code></td><td><code>:2</code></td><td><strong>5902</strong></td><td><code>IP:5902</code> veya <code>IP:2</code></td></tr><tr><td><code>vncserver@:3.service</code></td><td><code>:3</code></td><td><strong>5903</strong></td><td><code>IP:5903</code> veya <code>IP:3</code></td></tr></tbody></table></figure>



<hr class="wp-block-separator has-alpha-channel-opacity"/>



<h2 class="wp-block-heading">&#x1f527; Temel Komutlar</h2>



<pre class="wp-block-code"><code># VNC şifresini değiştir
sudo -u kali vncpasswd

# Port kontrolü
sudo ss -tlnp | grep 5901

# Çalışan VNC süreçlerini gör
ps aux | grep -i vnc

# Manuel başlat (systemd dışı, önerilmez)
sudo -u kali /usr/local/bin/vnc-start.sh :1

# Zorla temizlik (sıkışınca)
sudo rm -f /home/kali/.config/tigervnc/*.pid /tmp/.X1-lock /tmp/.X11-unix/X1</code></pre>



<hr class="wp-block-separator has-alpha-channel-opacity"/>



<h2 class="wp-block-heading">&#x1f4dc; Wrapper Script</h2>



<p class="wp-block-paragraph"><strong>Dosya:</strong><code>/usr/local/bin/vnc-start.sh</code></p>



<ul class="wp-block-list">
<li><strong>Instance-aware:</strong><code>%i</code> parametresini alır (<code>:1</code>, <code>:2</code>, vb.)</li>



<li><strong>Geometry:</strong><code>3000x1040</code> (değiştirmek için script&#8217;i düzenle)</li>



<li><strong>Depth:</strong> 24 bit</li>



<li><strong>Xstartup:</strong><code>~/.config/tigervnc/xstartup</code> (XFCE başlatır)</li>
</ul>



<hr class="wp-block-separator has-alpha-channel-opacity"/>



<h2 class="wp-block-heading">&#x1f50c; Bağlantı Bilgileri</h2>



<figure class="wp-block-table"><table class="has-fixed-layout"><thead><tr><th>Öğe</th><th>Değer</th></tr></thead><tbody><tr><td><strong>IP</strong></td><td><code>hostname -I</code> ile öğren</td></tr><tr><td><strong>Port</strong></td><td>5901 (display :1 için)</td></tr><tr><td><strong>Şifre</strong></td><td><code>~/.config/tigervnc/passwd</code> içinde (binary)</td></tr><tr><td><strong>Protokol</strong></td><td>VNC Auth + TLSVnc</td></tr></tbody></table></figure>



<p class="wp-block-paragraph"><strong>Bağlantı örnekleri:</strong></p>



<pre class="wp-block-code"><code>vncviewer 192.168.1.100:5901     # Tam port
vncviewer 192.168.1.100:1        # Kısa notasyon
remmina vnc://192.168.1.100:5901  # Remmina ile</code></pre>



<hr class="wp-block-separator has-alpha-channel-opacity"/>



<h2 class="wp-block-heading">&#x1f198; Sık Karşılaşılan Sorunlar</h2>



<figure class="wp-block-table"><table class="has-fixed-layout"><thead><tr><th>Sorun</th><th>Çözüm</th></tr></thead><tbody><tr><td><code>Failed to start vncserver@:1.service</code></td><td><code>sudo systemctl daemon-reload</code> sonra restart</td></tr><tr><td><code>Port 5901 already in use</code></td><td><code>sudo lsof -i :5901</code> ile bul ve <code>kill &lt;PID&gt;</code></td></tr><tr><td>Siyah ekran</td><td><code>~/.config/tigervnc/xstartup</code> dosyası kontrol et, <code>chmod +x</code> yap</td></tr><tr><td>Şifre hatası</td><td><code>vncpasswd</code> ile yeniden oluştur</td></tr><tr><td>Systemd takip hatası</td><td>PIDFile yolu kontrol et (<code>lenpc%i.pid</code>)</td></tr></tbody></table></figure>



<hr class="wp-block-separator has-alpha-channel-opacity"/>



<h2 class="wp-block-heading">&#x1f4dd; Mimari Hatırlatma</h2>



<pre class="wp-block-code"><code>Systemd Instance (%i)    Wrapper Betik          VNC Sunucu
─────────────────────────────────────────────────────────────
vncserver@:1.service  →  vnc-start.sh %i  →  Xtigervnc :1
      ↓                        ↓                    ↓
   ":1" (escaped)          $INSTANCE=":1"      Port 5901
   PIDFile=...%i.pid       DISPLAY=":1"        Desktop</code></pre>



<p class="wp-block-paragraph"><strong>Anahtar:</strong> Systemd şablon <code>vncserver@.service</code>, <code>%i</code> ile instance adını (<code>:1</code>) betiğe geçirir. Betik bu değeri <code>DISPLAY</code> değişkenine atar.</p>



<hr class="wp-block-separator has-alpha-channel-opacity"/>



<h2 class="wp-block-heading">&#x1f3af; Hızlı Başlangıç (Kopyala-Yapıştır)</h2>



<pre class="wp-block-code"><code># Kurulum sonrası ilk başlatma
sudo systemctl daemon-reload
sudo systemctl enable vncserver@:1.service
sudo systemctl start vncserver@:1.service

# Kontrol
sudo systemctl status vncserver@:1.service --no-pager
sudo ss -tlnp | grep 5901</code></pre>



<hr class="wp-block-separator has-alpha-channel-opacity"/>



<p class="wp-block-paragraph"><strong>Not:</strong> Bu yapı instance-aware&#8217;dir. <code>:1</code> yerine <code>:2</code>, <code>:3</code> kullanarak birden fazla bağımsız VNC oturumu açabilirsiniz. Her display kendi portunu (5902, 5903) ve kendi XFCE oturumunu kullanır.</p>
]]></content:encoded>
					
					<wfw:commentRss>https://www.tankado.com/kali-tigervnc-hizli-kurulum-scripti/feed/</wfw:commentRss>
			<slash:comments>0</slash:comments>
		
		
			</item>
		<item>
		<title>ETAP Pardus Açılışında Kullanıcı Parolalarının Sıfırlanması/Rastgele Belirlenmesi</title>
		<link>https://www.tankado.com/etap-pardus-acilisinda-kullanici-parolalarinin-sifirlanmasi-rastgele-belirlenmesi/</link>
					<comments>https://www.tankado.com/etap-pardus-acilisinda-kullanici-parolalarinin-sifirlanmasi-rastgele-belirlenmesi/#respond</comments>
		
		<dc:creator><![CDATA[Özgür Koca]]></dc:creator>
		<pubDate>Thu, 12 Feb 2026 08:11:13 +0000</pubDate>
				<category><![CDATA[Linux]]></category>
		<guid isPermaLink="false">https://www.tankado.com/?p=9460</guid>

					<description><![CDATA[Aşağıdaki betik her açılışta tüm kullanıcıların parolalarının rasgele bir parola ile ayarlanmasını sağlıyor. Böylece EBA QR veya USB Key ile oturum açıldığında oluşan kullanıcı hesaplarının parolaları her başlatmada rasgele bir değere ayarlanacak. Betik yalnızca user id&#8217;si 1000&#8217;den büyük olan kullanıcı hesaplarının parolalarının değiştirilmesini sağlıyor. etapadmin ve root kullanıcılarının parolalarında bir değişiklik yapmıyor. Kullanıcıların user id&#8217;lerini &#8230; <a href="https://www.tankado.com/etap-pardus-acilisinda-kullanici-parolalarinin-sifirlanmasi-rastgele-belirlenmesi/" class="more-link">Okumaya devam et<span class="screen-reader-text"> "ETAP Pardus Açılışında Kullanıcı Parolalarının Sıfırlanması/Rastgele Belirlenmesi"</span></a>]]></description>
										<content:encoded><![CDATA[
<p class="wp-block-paragraph">Aşağıdaki betik her açılışta tüm kullanıcıların parolalarının rasgele bir parola ile ayarlanmasını sağlıyor. Böylece EBA QR veya USB Key ile oturum açıldığında oluşan kullanıcı hesaplarının parolaları her başlatmada rasgele bir değere ayarlanacak.</p>



<p class="wp-block-paragraph">Betik yalnızca user id&#8217;si 1000&#8217;den büyük olan kullanıcı hesaplarının parolalarının değiştirilmesini sağlıyor. etapadmin ve root kullanıcılarının parolalarında bir değişiklik yapmıyor. Kullanıcıların user id&#8217;lerini görmek için passwd dosyasına bakabilirsiniz.</p>



<pre class="wp-block-code"><code>cat /etc/passwd </code></pre>



<p class="wp-block-paragraph">Aşağıdaki adımları gerçekleştirebilmek için öncelikle root kullanıcısına geçiş yapın.</p>



<pre class="wp-block-code"><code>sudo su etapadmin
sudo su</code></pre>



<p class="wp-block-paragraph"></p>



<span id="more-9460"></span>



<h2 class="wp-block-heading">1. Script&#8217;in oluşturulması</h2>



<pre class="wp-block-code"><code>nano /usr/local/sbin/randomize_passwords.sh</code></pre>



<pre class="wp-block-code"><code>#!/bin/bash

# Minimum UID değeri (örnek: 1000 normal kullanıcılar için)
MIN_UID=1000

LOG_FILE="/var/log/randomize_passwords.log"

echo "==== $(date) - Password rotation started ====" &gt;&gt; $LOG_FILE

# UID'si MIN_UID'den büyük kullanıcıları al
awk -F: -v min_uid="$MIN_UID" '
{
    if ($3 &gt; min_uid &amp;&amp; $3 &lt; 65534) 
        print $1
}' /etc/passwd | while read user; do

    # Rastgele 16 karakter parola üret
    NEW_PASS=$(openssl rand -base64 16)

    # Parolayı değiştir
    echo "$user:$NEW_PASS" | chpasswd

    echo "User: $user Password changed." &gt;&gt; $LOG_FILE

done

echo "==== Completed ====" &gt;&gt; $LOG_FILE
</code></pre>



<h2 class="wp-block-heading">2.Script’e Çalıştırma Yetkisi Ver</h2>



<pre class="wp-block-code"><code>sudo chmod +x /usr/local/sbin/randomize_passwords.sh</code></pre>



<h2 class="wp-block-heading">3. systemd Servisi Oluştur</h2>



<pre class="wp-block-code"><code>sudo nano /etc/systemd/system/randomize-passwords.service</code></pre>



<pre class="wp-block-code"><code>&#91;Unit]
Description=Randomize User Passwords at Boot
After=network.target

&#91;Service]
Type=oneshot
ExecStart=/usr/local/sbin/randomize_passwords.sh
RemainAfterExit=true

&#91;Install]
WantedBy=multi-user.target</code></pre>



<p class="wp-block-paragraph">Bu script&#8217;in açılışta otomatik çalışmasını sağlayarak EBA QR veya USB Key (usb-login) ile oluşturulan kullanıcı hesaplarının parolalarının da değiştirilmesini sağlamış olduk.</p>



<h2 class="wp-block-heading">4. Servisi Aktifleştir</h2>



<pre class="wp-block-code"><code>sudo systemctl daemon-reload
sudo systemctl enable randomize-passwords.service</code></pre>



<p class="wp-block-paragraph">Test etmek için:</p>



<pre class="wp-block-code"><code>sudo systemctl start randomize-passwords.service
cat /var/log/randomize_passwords.log</code></pre>
]]></content:encoded>
					
					<wfw:commentRss>https://www.tankado.com/etap-pardus-acilisinda-kullanici-parolalarinin-sifirlanmasi-rastgele-belirlenmesi/feed/</wfw:commentRss>
			<slash:comments>0</slash:comments>
		
		
			</item>
		<item>
		<title>Web sayfasından yazıcıya otomatik (diyalogsuz) çıktı göndermek</title>
		<link>https://www.tankado.com/web-sayfasindan-yaziciya-otomatik-cikti-gondermek/</link>
					<comments>https://www.tankado.com/web-sayfasindan-yaziciya-otomatik-cikti-gondermek/#respond</comments>
		
		<dc:creator><![CDATA[Özgür Koca]]></dc:creator>
		<pubDate>Mon, 24 Nov 2025 13:14:19 +0000</pubDate>
				<category><![CDATA[Programlama]]></category>
		<category><![CDATA[Web Tasarım]]></category>
		<guid isPermaLink="false">https://www.tankado.com/?p=9400</guid>

					<description><![CDATA[Modern web tarayıcılar yazıcıya çıktı gönderirken yazıcı diyalog penceresini görüntüler ve kullanıcıdan son bir yazdırma onayı alır. Bu modern tarayıcılara eklenmiş bir güvenlik özelliği olarak düşünülebilir. Aksi taktirde kötü niyetli bir web sayfası yazıcınıza yüzlerce sayfa çıkt gönderebilirdi. Bunu kimse istemez. Ancak geliştirdiğiniz web uygulamasının özel ihtiyaçlarından dolayı bu yazdırma diyalog penceresinin görünmemesini ve doğruda &#8230; <a href="https://www.tankado.com/web-sayfasindan-yaziciya-otomatik-cikti-gondermek/" class="more-link">Okumaya devam et<span class="screen-reader-text"> "Web sayfasından yazıcıya otomatik (diyalogsuz) çıktı göndermek"</span></a>]]></description>
										<content:encoded><![CDATA[
<p class="wp-block-paragraph">Modern web tarayıcılar yazıcıya çıktı gönderirken yazıcı diyalog penceresini görüntüler ve kullanıcıdan son bir yazdırma onayı alır. Bu modern tarayıcılara eklenmiş bir güvenlik özelliği olarak düşünülebilir. Aksi taktirde kötü niyetli bir web sayfası yazıcınıza yüzlerce sayfa çıkt gönderebilirdi. Bunu kimse istemez.</p>



<span id="more-9400"></span>



<p class="wp-block-paragraph">Ancak geliştirdiğiniz web uygulamasının özel ihtiyaçlarından dolayı bu yazdırma diyalog penceresinin görünmemesini ve doğruda varsayılan yazıcıya çıktı gönderilmesine ihtiyaç olan senaryolar oluşabilir. Yaptığım denemelerde edge ve chrom için farklı yöntemler önerilmiş olsa da (örn: chrome&#8217;a <em>&#8211;kiosk-printing</em> parametresini vermek veya <em>Chrome policy</em> ayarlarını değiştirmek vb) en kolay ve basiz çözüm Firefox üzerinde mümkün oldu. </p>



<p class="wp-block-paragraph">Bir web sayfasının yazıcıya otomatik olarak çıktı göndermesi için;</p>



<ul class="wp-block-list">
<li>Firefox tarayıcının adres çubuğuna <strong>about:config </strong>yazın</li>



<li><strong>print.always_print_silent</strong> değerini aratarak <strong>true </strong>yapın</li>



<li>Aşağıdaki test kodunu kullanarak ayarı kontrol edin</li>
</ul>



<div class="wp-block-kevinbatdorf-code-block-pro" data-code-block-pro-font-family="Code-Pro-JetBrains-Mono" style="font-size:.875rem;font-family:Code-Pro-JetBrains-Mono,ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,monospace;--cbp-line-number-width:calc(1 * 0.6 * .875rem);line-height:1.5rem;--cbp-tab-width:2;tab-size:var(--cbp-tab-width, 2)"><span style="display:flex;align-items:center;padding:16px 0 0 16px;width:100%;text-align:left;background-color:#fdf6e3"><span style="background:#708891;padding:0.3rem 0.5rem 0.2rem;border-radius:1rem;font-size:0.8em;line-height:1;height:1.25rem;text-align:center;display:inline-flex;align-items:center;justify-content:center;color:#fdf6e3">HTML</span></span><span role="button" tabindex="0" style="color:#657B83;display:none" aria-label="Copy" class="code-block-pro-copy-button"><pre class="code-block-pro-copy-button-pre" aria-hidden="true"><textarea class="code-block-pro-copy-button-textarea" tabindex="-1" aria-hidden="true" readonly>&lt;!DOCTYPE html>
&lt;html lang="tr">
&lt;body>
&lt;h2>Otomatik Yazdırma Test Sayfası&lt;/h2>
&lt;p>Bu sayfa açıldığı anda otomatik yazdırılır.&lt;/p>
&lt;button onclick="window.print();">Sayfayı yazdır&lt;/button>
&lt;/body>
&lt;/html></textarea></pre><svg xmlns="http://www.w3.org/2000/svg" style="width:24px;height:24px" fill="none" viewBox="0 0 24 24" stroke="currentColor" stroke-width="2"><path class="with-check" stroke-linecap="round" stroke-linejoin="round" d="M4.5 12.75l6 6 9-13.5"></path><path class="without-check" stroke-linecap="round" stroke-linejoin="round" d="M16.5 8.25V6a2.25 2.25 0 00-2.25-2.25H6A2.25 2.25 0 003.75 6v8.25A2.25 2.25 0 006 16.5h2.25m8.25-8.25H18a2.25 2.25 0 012.25 2.25V18A2.25 2.25 0 0118 20.25h-7.5A2.25 2.25 0 018.25 18v-1.5m8.25-8.25h-6a2.25 2.25 0 00-2.25 2.25v6"></path></svg></span><pre class="shiki solarized-light" style="background-color: #FDF6E3" tabindex="0"><code><span class="line"><span style="color: #93A1A1">&lt;!</span><span style="color: #268BD2">DOCTYPE</span><span style="color: #657B83"> </span><span style="color: #93A1A1">html&gt;</span></span>
<span class="line"><span style="color: #93A1A1">&lt;</span><span style="color: #268BD2">html</span><span style="color: #657B83"> </span><span style="color: #93A1A1">lang</span><span style="color: #657B83">=</span><span style="color: #2AA198">&quot;tr&quot;</span><span style="color: #93A1A1">&gt;</span></span>
<span class="line"><span style="color: #93A1A1">&lt;</span><span style="color: #268BD2">body</span><span style="color: #93A1A1">&gt;</span></span>
<span class="line"><span style="color: #93A1A1">&lt;</span><span style="color: #268BD2">h2</span><span style="color: #93A1A1">&gt;</span><span style="color: #657B83">Otomatik Yazdırma Test Sayfası</span><span style="color: #93A1A1">&lt;/</span><span style="color: #268BD2">h2</span><span style="color: #93A1A1">&gt;</span></span>
<span class="line"><span style="color: #93A1A1">&lt;</span><span style="color: #268BD2">p</span><span style="color: #93A1A1">&gt;</span><span style="color: #657B83">Bu sayfa açıldığı anda otomatik yazdırılır.</span><span style="color: #93A1A1">&lt;/</span><span style="color: #268BD2">p</span><span style="color: #93A1A1">&gt;</span></span>
<span class="line"><span style="color: #93A1A1">&lt;</span><span style="color: #268BD2">button</span><span style="color: #657B83"> </span><span style="color: #93A1A1">onclick</span><span style="color: #657B83">=</span><span style="color: #2AA198">&quot;</span><span style="color: #268BD2">window</span><span style="color: #2AA198">.</span><span style="color: #268BD2">print</span><span style="color: #2AA198">();&quot;</span><span style="color: #93A1A1">&gt;</span><span style="color: #657B83">Sayfayı yazdır</span><span style="color: #93A1A1">&lt;/</span><span style="color: #268BD2">button</span><span style="color: #93A1A1">&gt;</span></span>
<span class="line"><span style="color: #93A1A1">&lt;/</span><span style="color: #268BD2">body</span><span style="color: #93A1A1">&gt;</span></span>
<span class="line"><span style="color: #93A1A1">&lt;/</span><span style="color: #268BD2">html</span><span style="color: #93A1A1">&gt;</span></span></code></pre></div>



<p class="wp-block-paragraph"></p>
]]></content:encoded>
					
					<wfw:commentRss>https://www.tankado.com/web-sayfasindan-yaziciya-otomatik-cikti-gondermek/feed/</wfw:commentRss>
			<slash:comments>0</slash:comments>
		
		
			</item>
		<item>
		<title>AnkhTech WinPE: Bakım ve Kurtarma İşlemleri İçin Pratik Bir WinPE Çözümü</title>
		<link>https://www.tankado.com/ankhtech-winpe-bakim-ve-kurtarma-islemleri-icin-pratik-bir-winpe-cozumu/</link>
					<comments>https://www.tankado.com/ankhtech-winpe-bakim-ve-kurtarma-islemleri-icin-pratik-bir-winpe-cozumu/#respond</comments>
		
		<dc:creator><![CDATA[Özgür Koca]]></dc:creator>
		<pubDate>Thu, 20 Nov 2025 02:12:01 +0000</pubDate>
				<category><![CDATA[Genel]]></category>
		<category><![CDATA[Windows]]></category>
		<category><![CDATA[Acil Durum Diski]]></category>
		<category><![CDATA[AnkhTech]]></category>
		<category><![CDATA[Boot Disk]]></category>
		<category><![CDATA[Disk Yönetimi]]></category>
		<category><![CDATA[Teknik Servis]]></category>
		<category><![CDATA[veri kurtarma]]></category>
		<category><![CDATA[Windows PE]]></category>
		<category><![CDATA[winpe]]></category>
		<guid isPermaLink="false">https://www.tankado.com/?p=9371</guid>

					<description><![CDATA[Bilgisayar açılmadığında, sistem çöktüğünde veya onarım gerektiğinde WinPE tabanlı önyüklenebilir diskler teknik servisler için temel araçlardan biridir. Hiren&#8217;s Boot CD ve Sergei Strelec WinPE gibi bilinen çözümlere alternatif olarak geliştirilen AnkhTech WinPE, USB üzerinden çalışan bir mini Windows ortamı sunar ve bakım–onarım süreçlerinde kullanılabilecek çok sayıda aracı tek pakette toplar. AnkhTech WinPE, WinPE altyapısı üzerinde &#8230; <a href="https://www.tankado.com/ankhtech-winpe-bakim-ve-kurtarma-islemleri-icin-pratik-bir-winpe-cozumu/" class="more-link">Okumaya devam et<span class="screen-reader-text"> "AnkhTech WinPE: Bakım ve Kurtarma İşlemleri İçin Pratik Bir WinPE Çözümü"</span></a>]]></description>
										<content:encoded><![CDATA[
<figure class="wp-block-image size-full"><img loading="lazy" decoding="async" width="1024" height="768" src="https://www.tankado.com/wp-content/uploads/2025/11/489362431_659040626876017_6796476426719938020_n.jpg" alt="" class="wp-image-9387" srcset="https://www.tankado.com/wp-content/uploads/2025/11/489362431_659040626876017_6796476426719938020_n.jpg 1024w, https://www.tankado.com/wp-content/uploads/2025/11/489362431_659040626876017_6796476426719938020_n-300x225.jpg 300w, https://www.tankado.com/wp-content/uploads/2025/11/489362431_659040626876017_6796476426719938020_n-768x576.jpg 768w" sizes="auto, (max-width: 709px) 85vw, (max-width: 909px) 67vw, (max-width: 1362px) 62vw, 840px" /></figure>



<p class="wp-block-paragraph">Bilgisayar açılmadığında, sistem çöktüğünde veya onarım gerektiğinde WinPE tabanlı önyüklenebilir diskler teknik servisler için temel araçlardan biridir. <a href="https://www.tankado.com/hiren-s-bootcd-70/">Hiren&#8217;s Boot CD</a> ve <a href="https://www.tankado.com/winpe-10-sergei-strelec-boot-disk/">Sergei Strelec WinPE</a> gibi bilinen çözümlere alternatif olarak geliştirilen <a href="https://ankhtech.weebly.com/ankhtech-winpe.html">AnkhTech WinPE</a>, USB üzerinden çalışan bir mini Windows ortamı sunar ve bakım–onarım süreçlerinde kullanılabilecek çok sayıda aracı tek pakette toplar. AnkhTech WinPE, WinPE altyapısı üzerinde geliştirilmiş, bilgisayar ana işletim sistemi çalışmasa bile açılabilen bir mini Windows ortamıdır. </p>



<span id="more-9371"></span>



<p class="wp-block-paragraph">Bu ortam üzerinden:</p>



<ul class="wp-block-list">
<li>Veri kurtarma</li>



<li>Yedek alma / geri yükleme</li>



<li>Disk ve bölüm yönetimi</li>



<li>Sürücü yükleme</li>



<li>Sistem açılış sorunlarını giderme</li>
</ul>



<p class="wp-block-paragraph">gibi işlemler yapılabilir.</p>



<p class="wp-block-paragraph">AnkhTech WinPE&#8217;yi rakiplerinden ayıran ve dikkat çeken bazı temel özellikler şunlardır:</p>



<figure class="wp-block-table"><table class="has-fixed-layout"><thead><tr><td>Özellik</td><td>Açıklama</td><td>Faydası</td></tr></thead><tbody><tr><td>Çift Sistem Desteği</td><td>Tek bir ISO dosyası içerisinde hem Windows 11 hem de Windows 10 tabanlı iki ayrı sistem bulunur.</td><td>Farklı donanım uyumlulukları için esneklik sağlar ve en güncel sistemlere müdahale imkanı sunar.</td></tr><tr><td>Kullanıcı Dostu Arayüz</td><td>Her iki sistem de neredeyse orijinal Windows 10 ve 11 arayüzüne birebir benzeyecek şekilde tasarlanmıştır.</td><td>Kullanıcıların yabancılık çekmeden, hızlıca adapte olmasını sağlar.</td></tr><tr><td>Kapsamlı Program Yelpazesi</td><td>Bakım, onarım, kurtarma ve test işlemleri için çok sayıda program içerir. (Detaylı listeye yukarıdaki tabloda yer verilmiştir.)</td><td>Tek bir araçla geniş bir yelpazedeki soruna çözüm bulma imkanı sunar.</td></tr><tr><td>Çevrimdışı Sürücü Yükleyici</td><td>Önyükleme sonrasında Wi-Fi&#8217;ın çalışmaması veya disklerin görünmemesi gibi sorunlara karşı, internet bağlantısı gerektirmeyen bir sürücü yükleyici içerir.</td><td>Wi-Fi, AHCI, RAID ve NVME sürücülerini otomatik olarak yükleyerek donanım uyumluluğunu anında sağlar.</td></tr></tbody></table></figure>



<p class="wp-block-paragraph">Piyasada birçok WinPE tabanlı önyüklenebilir disk bulunmasına rağmen, AnkhTech WinPE, özellikle kullanım kolaylığı ve çevrimdışı sürücü desteği ile öne çıkmaktadır.</p>



<p class="wp-block-paragraph">Örnek olarak, Sergei Strelec&#8217;in WinPE diski [1], sunduğu devasa program listesiyle bir endüstri standardı haline gelmiştir. Ancak AnkhTech, bu karmaşık araç setini daha sade ve orijinal Windows deneyimine yakın bir arayüzle sunarak, teknik bilgi seviyesi ne olursa olsun herkesin rahatça kullanabileceği bir çözüm sunmayı amaçlamaktadır. Özellikle Wi-Fi ve NVME diskler için sunulan dahili ve çevrimdışı sürücü yükleyici, modern bilgisayarlara müdahale ederken karşılaşılan en büyük uyumluluk sorunlarından birini ortadan kaldırır.</p>



<h2 class="wp-block-heading">İçerdiği Programlardan Bazıları</h2>



<figure class="wp-block-table"><table class="has-fixed-layout"><thead><tr><th>Kategori</th><th>Öne Çıkan Programlar</th><th>Kullanım</th></tr></thead><tbody><tr><td>Yedekleme &amp; İmaj</td><td>Acronis True Image, Macrium Reflect, AOMEI Backupper</td><td>Disk imajı alma ve geri yükleme</td></tr><tr><td>Önyükleme Araçları</td><td>EasyBCD, BOOTICE, EasyUEFI</td><td>MBR/GPT onarımı, önyükleme kayıt düzenleme</td></tr><tr><td>Veri Kurtarma</td><td>R-Studio, GetDataBack Pro, Recuva</td><td>Silinen/kaybolan veri ve bölüm kurtarma</td></tr><tr><td>Disk Yönetimi</td><td>Partition Assistant, Disk Director, Partition Wizard</td><td>Bölüm oluşturma, silme, boyutlandırma</td></tr><tr><td>Disk Kontrol</td><td>Hard Disk Sentinel, Victoria, HD Tune Pro</td><td>Sağlık kontrolü, hata analizleri</td></tr><tr><td>Sürücü Araçları</td><td>Smart Driver Backup, Double Driver</td><td>Sürücü yedekleme/geri yükleme</td></tr><tr><td>Donanım İzleme</td><td>AIDA64, CPU-Z, GPU-Z, HWiNFO</td><td>Donanım bilgisi ve test</td></tr><tr><td>Güvenlik/Şifre</td><td>NTPWedit, Windows Login Unlocker</td><td>Windows parola sıfırlama, ürün anahtar görüntüleme</td></tr><tr><td>Dosya Araçları</td><td>7-Zip, TotalCommander, FastCopy</td><td>Dosya yönetimi ve hızlı kopyalama</td></tr><tr><td>ISO/USB</td><td>Rufus, WinToUSB, WinNTSetup</td><td>Önyüklenebilir USB hazırlama ve Windows kurulum araçları</td></tr><tr><td>Genel Araçlar</td><td>NirLauncher, SoftMaker Office, PotPlayer</td><td>Yardımcı araçlar, belge görüntüleme, medya oynatma</td></tr></tbody></table></figure>



<p class="wp-block-paragraph">Bu araç seti, tipik bir teknik servis personelinin günlük bakım işlerinde ihtiyaç duyabileceği uygulamaları kapsar.</p>



<h2 class="wp-block-heading">Öne Çıkan Teknik Özellikler</h2>



<p class="wp-block-paragraph"><strong>Çift Sistem Desteği</strong><br>ISO içinde hem Windows 10 hem de Windows 11 tabanlı iki ayrı WinPE ortamı bulunur. Donanım uyumluluğu düşük cihazlarda alternatif sunar.</p>



<p class="wp-block-paragraph"><strong>Standart Windows Arayüzü</strong><br>Arayüz, orijinal Windows 10/11’e benzer tasarlandığı için öğrenme gerektirmez.</p>



<p class="wp-block-paragraph"><strong>Çevrimdışı Sürücü Yükleyici</strong><br>Wi-Fi, AHCI, RAID, NVME gibi kritik sürücüler internet gerektirmeden yüklenebilir. Özellikle yeni nesil laptop ve masaüstü cihazlarda disk görünmeme veya ağ çalışmama sorunlarını çözer.</p>



<p class="wp-block-paragraph"><strong>Geniş Program Paketi</strong><br>Bakım, onarım ve kurtarma işlemlerinin çoğu tek ISO üzerinden yapılabilir.</p>



<h2 class="wp-block-heading">Değerlendirme</h2>



<p class="wp-block-paragraph">AnkhTech WinPE, WinPE tabanlı çözümler arasında sade arayüz, çift sistem desteği ve çevrimdışı sürücü yükleme gibi pratik özellikler sunar. Teknik servislerde, atölyelerde veya okullardaki laboratuvarlarda kullanılabilir bir kurtarma setidir. Modern sistemlerde sık görülen NVMe ve Wi-Fi sürücü problemleri için hazır araçlar içermesi, işlem sürecini hızlandırır.</p>



<p class="wp-block-paragraph"></p>
]]></content:encoded>
					
					<wfw:commentRss>https://www.tankado.com/ankhtech-winpe-bakim-ve-kurtarma-islemleri-icin-pratik-bir-winpe-cozumu/feed/</wfw:commentRss>
			<slash:comments>0</slash:comments>
		
		
			</item>
		<item>
		<title>LLM dalkavukluğuna karşı user level sistem promptu</title>
		<link>https://www.tankado.com/llm-dalkavukluguna-karsi-user-level-sistem-promptu/</link>
					<comments>https://www.tankado.com/llm-dalkavukluguna-karsi-user-level-sistem-promptu/#comments</comments>
		
		<dc:creator><![CDATA[Özgür Koca]]></dc:creator>
		<pubDate>Sun, 16 Nov 2025 01:54:07 +0000</pubDate>
				<category><![CDATA[Yapay Zeka]]></category>
		<category><![CDATA[llm]]></category>
		<category><![CDATA[llm sistem promptu]]></category>
		<category><![CDATA[llm user promptu]]></category>
		<guid isPermaLink="false">https://www.tankado.com/?p=9356</guid>

					<description><![CDATA[Günlük konuştuğunuz büyük dil modelleri (LLM’ler) bazen sanki “tam söyleyeceklerini söyleyemiyor” gibi davranır; bunun sebebi iletişim biçimlerinde ve güvenlik ayarlarında bulunan birtakım sınırlamalardır. Model, riskli ya da zararlı olabilecek içerikleri kırpabilir veya talebi sunma konusunda temkinli davranabilir. Müşteri memnuniyeti açısından (müşteri biziz) belirsizlikleri açıkça göstermekte isteksiz olabilir ve kesinmiş gibi konuşma eğiliminde olabilir. Bunların sonucu &#8230; <a href="https://www.tankado.com/llm-dalkavukluguna-karsi-user-level-sistem-promptu/" class="more-link">Okumaya devam et<span class="screen-reader-text"> "LLM dalkavukluğuna karşı user level sistem promptu"</span></a>]]></description>
										<content:encoded><![CDATA[
<p class="wp-block-paragraph">Günlük konuştuğunuz büyük dil modelleri (LLM’ler) bazen sanki “<strong>tam söyleyeceklerini söyleyemiyor</strong>” gibi davranır; bunun sebebi iletişim biçimlerinde ve güvenlik ayarlarında bulunan birtakım sınırlamalardır. Model, riskli ya da zararlı olabilecek içerikleri kırpabilir veya talebi sunma konusunda temkinli davranabilir. Müşteri memnuniyeti açısından (müşteri biziz) belirsizlikleri açıkça göstermekte isteksiz olabilir ve kesinmiş gibi konuşma eğiliminde olabilir. Bunların sonucu olarak da; eksik bağlam verildiğinde ya fazla genel yanıtlar alırız ya da net olmayan ama öz güvenli cümlelerle karşılaşırız. Yani cevap “doğru gibi” durur ama kritik ayrıntılar ya yoktur ya da gizlenmiştir.</p>



<span id="more-9356"></span>



<p class="wp-block-paragraph">Bu yüzden LLM’lerle çalışırken şu strateji önemli:<strong> </strong>&#8220;Modeli sadece bir bilgi deposu olarak değil, aynı zamanda bir mantık denetleyicisi ve sorgulayıcı partner olarak yönlendirmek&#8221;. </p>



<p class="wp-block-paragraph">Aşağıda paylaşacağım “rol” metni yani modelden nasıl yanıtlamasını isteyeceğimiz yönerge tam olarak bunu yapıyor: <strong>Dürüstlük, varsayımları açığa çıkarma, belirsizlikleri etiketleme ve mantık zinciri talep ediyor</strong>. </p>



<p class="wp-block-paragraph">Bunu kopyalayıp ChatGPT’ye ya da başka bir LLM’e verdiğinizde, alacağınız cevaplarda belirsizliklerin, varsayımların ve kritik risklerin daha görünür hale gelmesini sağlayabilirsiniz; hiçbir rol metni mucize değildir ama bilgi sunma ve iletişimdeki önemli sınırlılıkları ciddi oranda azaltır.</p>



<h2 class="wp-block-heading">LLM ile bir diyaloğa başlamadan önce şu prompt&#8217;u verin</h2>



<blockquote class="wp-block-quote is-layout-flow wp-block-quote-is-layout-flow">
<p class="wp-block-paragraph">Uzman bir yapay zeka danışmanı, mantık denetleyicisi, kör nokta avcısı ve stratejik düşünme koçu olarak davran; dürüst, doğrudan ve net ol, gereksiz yumuşatma, onaylama veya duygusal teselli verme; varsayımlarımı sorgula, hangi varsayımlara dayandığımı belirt ve yanlış, eksik veya riskli varsayımları açıkça söyle; mantık zincirimi analiz et, tutarsızlık, atlama, önyargı veya yanlış çıkarım varsa göster ve gerekirse alternatif mantık yolları sun; kör noktaları ortaya çıkar, atladığım kritik riskleri, fazla iyimser ya da iyimser olmayan tahminleri ve farkında olmadığım fırsat maliyetlerini belirt; bahane, erteleme veya kendimi kandırma algılarsan bunu doğrudan söyle ve etkisini açıkla; belirsizlikleri yönet, bilgi eksikliği varsa işaret et, hangi verilerin gerektiğini sırala ve tahmin yapıyorsan belirsizlik derecesini belirt; konu teknikse formülleri, hesap adımlarını ve mantığı yaz, stratejikse seçenekleri, senaryoları ve karar noktalarını ver; her cevapta şu yapıyı kullan: özet değerlendirme, tespit edilen kritik noktalar, kör noktalar/riskler/varsayımlar, önceliklendirilmiş 3–5 eylem adımı, bu adımların beklenen etkileri ve gerekiyorsa ek veri listesi; hiçbir filtreleme, örtme veya pohpohlama yapma çünkü benim lehime olan şey daima gerçek, netlik ve stratejik doğruluktur.</p>
</blockquote>



<hr class="wp-block-separator has-alpha-channel-opacity"/>



<p class="wp-block-paragraph"></p>
]]></content:encoded>
					
					<wfw:commentRss>https://www.tankado.com/llm-dalkavukluguna-karsi-user-level-sistem-promptu/feed/</wfw:commentRss>
			<slash:comments>1</slash:comments>
		
		
			</item>
		<item>
		<title>XAMPP’e WordPress Kurmak</title>
		<link>https://www.tankado.com/xamppe-wordpress-kurmak/</link>
					<comments>https://www.tankado.com/xamppe-wordpress-kurmak/#respond</comments>
		
		<dc:creator><![CDATA[Özgür Koca]]></dc:creator>
		<pubDate>Thu, 18 Sep 2025 09:11:05 +0000</pubDate>
				<category><![CDATA[Açık Kaynak]]></category>
		<category><![CDATA[Wordpress]]></category>
		<category><![CDATA[portable xampp]]></category>
		<category><![CDATA[wordpress kurmak]]></category>
		<guid isPermaLink="false">https://www.tankado.com/?p=9293</guid>

					<description><![CDATA[Meslek liselerinde okutulan Web Tabanlı İçerik Yönetim Sistemleri dersinin ilk konusu olan PHP+MySQL özellikli bir web sunucuya WordPress kurmak için aşağıdaki adımları dikkatlice uyguladığınızda hedefinize ulaşabilirsiniz. Ayrıca derse ait örnek sınav soruları için yazının sonundaki indirme bağlantısını kullanabilirsiniz.]]></description>
										<content:encoded><![CDATA[
<p class="wp-block-paragraph">Meslek liselerinde okutulan <strong>Web Tabanlı İçerik Yönetim</strong> <strong>Sistemleri</strong> dersinin ilk konusu olan <strong>PHP</strong>+<strong>MySQL </strong>özellikli bir web sunucuya WordPress kurmak için aşağıdaki adımları dikkatlice uyguladığınızda hedefinize ulaşabilirsiniz. Ayrıca derse ait örnek sınav soruları için yazının sonundaki indirme bağlantısını kullanabilirsiniz.</p>



<span id="more-9293"></span>



<ol class="wp-block-list">
<li>Kullandığınız bilgisayarda hali hazırda bir MySQL (Port 3306) veya Apache Web Sunucusu (Port: 80, 443) kurulu olma ihtimaline karşı, <em>Bilgisayarım->Yönet->Hizmetler ve Uygulamalar->Hizmetler</em>  yolunu takip ederek mysql,httpd ve apache vb hizmetleri kontrol edin ve çalışır durumda iseler sağ tıklatarak durdur komutunu verin.</li>



<li><a href="https://sourceforge.net/projects/xampp/files/XAMPP%20Windows/ ">https://sourceforge.net/projects/xampp/files/XAMPP%20Windows/ </a>adresindeki en güncel klasöre girin. Açılan sayfada isminde <strong>portable </strong>geçen <strong>zip </strong>dosyasını indirin. İndireceğiniz paketin portable olması kritik öneme sahip, aksi takdirde XAMPP flaş belleğe ya da farklı bir dizine taşındığında apache,mysql ve php yapılandırmalarına ulaşılamaz. </li>



<li>İnen arşivin içindeki <strong>xampp </strong>dizinini flaş belleğinize (doğrudan flaş belleğin kök dizinine) ya da C:\ sürücüsüne çıkart. Dilediğiniz başka bir dizine de çıkartabilirsiniz fakat xampp dizininin patikasında boşluk ya da Türkçe karakter olmadığından emin olun.</li>



<li>Çıkarttığınız <strong>xampp </strong>dizini altındaki &#8220;<strong>xampp-control.exe</strong>&#8221; programını sağ tıklatarak yönetici olarak çalıştırın.</li>



<li>Açılan kontrol programının arayüzü üzerinden <strong>Apache </strong>ve <strong>MySQL</strong>&#8216;i start edin. Artık <a href="http://localhost/" data-type="link" data-id="http://localhost/">localhost</a> adresi üzerinden web sunucusuna (Apache) erişebilirsiniz.</li>



<li>WordPress&#8217;i kurmaya başlamadan önce, bir veritabanı ve bu veritabanına erişme yetkisi olan bir kullanıcı tanımlamak için aynı arayüzün MySQL satırındaki &#8220;<strong>Admin</strong>&#8221; düğmesine tıklayın ve <strong>phpMyAdmin</strong>&#8216;in web tarayıcısında açılmasını sağlayın.</li>



<li>Bir veritabanı ve kullanıcısı eklemek için PhpMyAdmin arayüzünün üst kısmında yer alan &#8220;<strong>Kullanıcı Hesapları</strong>&#8221; menüsüne tıklayın. Yeni kullanıcı hesabı ekle&#8217;yi seçin. Bu ekranda <strong>kullanıcı adı</strong> ve <strong>parolayı </strong>tanımlayın ardıdnan &#8220;<strong>Aynı isimle veritabanı oluştur ve tüm yetkileri ver.</strong>&#8221; seçeneğini işaretleyin ve &#8220;<strong>Git</strong>&#8221; düğmesine tıklatın. Böylece ismi kullanıcı adıyla aynı olan bir veritabanı da oluşturulacak. Kullanıcıya bu veritabanı için tüm yetkiler verilecek.</li>



<li>XAMPP&#8217;in yayın dizinindeki (örn: c:\xampp\htdocs) tüm dosyaları silin.</li>



<li><a href="https://tr.wordpress.org/download/">https://tr.wordpress.org/download/</a> adresine giderek son sürüm WordPress&#8217;i indirin. İndirdiğiniz arşivin içindeki wordpress dizinine giderek tüm dosyaları yayın dizinine çıkartın.</li>



<li>Bir web tarayıcısı açarak <strong><a href="http://localhost /">localhost</a> </strong>yazın ve WordPress kurulumuna başlayın. Daha önce tanımladığınız veritabanı, kullanıcı adı ve parola alanlarını doldurun ve kurulumu başlatın.</li>



<li>Kurulumun sıradaki aşamasında WordPress&#8217;in yönetim paneline erişebilmek için bir kullanıcı adı, parola ve eposta adresi tanımlayın. (örneğin: admin:admin123) Yine de zayıf parola kullanmak istiyorsanız &#8220;<strong>Zayıf parola kullanılabilsin</strong>&#8221; seçeneğini işaretleyin &#8220;<strong>WordPress&#8217;i Kur</strong>&#8221; düğmesine tıklatın.</li>



<li>Her şey tamam &#8220;<a href="http://localhost/wp-login.php">http://localhost/wp-login.php</a>&#8221; sayfasına giderek WordPress ile çalışmaya başlayabilirsiniz (Not: WordPress kullanıcı adını/parolasını hatırlamıyorsanız <a href="https://www.tankado.com/wordpress-parolasini-sifirlamak/" data-type="link" data-id="https://www.tankado.com/wordpress-parolasini-sifirlamak/">şuradaki </a>yazıya göz atabilirsiniz).</li>
</ol>


<aside
	class="dlm-download-box">

	<img decoding="async" alt="Placeholder" class="wp-post-image" src="https://www.tankado.com/wp-content/plugins/download-monitor/assets/images/placeholder.png" />
	<div
		class="dlm-download-count">17050 indirme</div>

	<div
		class="dlm-download-box-content">

		<h1>Web Tabanlı İçerik Yönetim Sistemleri Dersi Sınav Soruları</h1>

						<a  data-e-Disable-Page-Transition="true" class="dlm-download-link dlm-download-button" title="" href="https://www.tankado.com/download/web-tabanli-icerik-yonetim-sistemleri-dersi-sinav-sorulari/?tmstv=1786518787" rel="nofollow" id="download-link-9345" data-redirect="false" >
			Dosyayı İndir			<small>wtiys-sinavlar.zip				&ndash; 4,18 MB</small>
		</a>
			</div>
</aside>


]]></content:encoded>
					
					<wfw:commentRss>https://www.tankado.com/xamppe-wordpress-kurmak/feed/</wfw:commentRss>
			<slash:comments>0</slash:comments>
		
		
			</item>
		<item>
		<title>Bootable Clonezilla ISO Imajı Oluşturmak</title>
		<link>https://www.tankado.com/bootable-iso-clonezilla-imaji-olusturmak/</link>
		
		<dc:creator><![CDATA[Özgür Koca]]></dc:creator>
		<pubDate>Wed, 17 Sep 2025 19:31:40 +0000</pubDate>
				<category><![CDATA[Açık Kaynak]]></category>
		<category><![CDATA[Genel]]></category>
		<category><![CDATA[clonezilla etap imaj]]></category>
		<category><![CDATA[clonezilla to ram]]></category>
		<guid isPermaLink="false">https://www.tankado.com/?p=9267</guid>

					<description><![CDATA[Bu yazımda diskleri klonlamak için kullanılan açık kaynak kodlu bir yedekleme aracı olan Clonezilla&#8217;nın faydalı olduğunu düşündüğüm (ve pek bilinmeyen) bazı pratiklerinden bahsedeceğim. Clonezilla&#8217;yı kullanmaya aşina olduğunuzu varsayarak detaya girmeden birkaç kullanışlı senaryoyu anlatayım. Clonezilla To RAM seçeneği Eğer yeterince büyük bir flaş belleğe sahipseniz disk imajını açılış yaptığnız flaş belleğe de kaydedebilirsiniz (ikinci bir &#8230; <a href="https://www.tankado.com/bootable-iso-clonezilla-imaji-olusturmak/" class="more-link">Okumaya devam et<span class="screen-reader-text"> "Bootable Clonezilla ISO Imajı Oluşturmak"</span></a>]]></description>
										<content:encoded><![CDATA[
<p class="wp-block-paragraph">Bu yazımda diskleri klonlamak için kullanılan açık kaynak kodlu bir yedekleme aracı olan Clonezilla&#8217;nın faydalı olduğunu düşündüğüm  (ve pek bilinmeyen)  bazı  pratiklerinden bahsedeceğim. Clonezilla&#8217;yı kullanmaya aşina olduğunuzu varsayarak detaya girmeden birkaç kullanışlı senaryoyu anlatayım.</p>



<ol class="wp-block-list">
<li>Clonezilla To RAM seçeneği</li>



<li>Başlatılabilir (bootable) kurtarma ISO&#8217;su oluşturmak</li>



<li>Clonezilla ile gelen kullanışlı araçlar</li>
</ol>



<span id="more-9267"></span>



<h2 class="wp-block-heading">Clonezilla To RAM seçeneği</h2>



<p class="wp-block-paragraph">Eğer yeterince büyük bir flaş belleğe sahipseniz disk imajını açılış yaptığnız flaş belleğe de kaydedebilirsiniz (ikinci bir disk ya da flaş belleğe ihtiyaç olmadan). &#8220;<strong>Clonezilla live (To RAM)</strong>&#8221; seçeneği tam da bu iş için kullanılır.</p>



<figure class="wp-block-image size-full"><img loading="lazy" decoding="async" width="792" height="309" src="https://www.tankado.com/wp-content/uploads/2025/09/clonezilla-live-to-ram-2025-09-03_20-50-52.png" alt="" class="wp-image-9268" srcset="https://www.tankado.com/wp-content/uploads/2025/09/clonezilla-live-to-ram-2025-09-03_20-50-52.png 792w, https://www.tankado.com/wp-content/uploads/2025/09/clonezilla-live-to-ram-2025-09-03_20-50-52-300x117.png 300w, https://www.tankado.com/wp-content/uploads/2025/09/clonezilla-live-to-ram-2025-09-03_20-50-52-768x300.png 768w" sizes="auto, (max-width: 709px) 85vw, (max-width: 909px) 67vw, (max-width: 984px) 61vw, (max-width: 1362px) 45vw, 600px" /></figure>



<p class="wp-block-paragraph"><strong>&#8220;</strong>Clonezilla To RAM<strong>&#8220;</strong> ile devam edildiğinde canlı sistemin çalışabilmesi için gerekli olan dosya sistemleri RAM üzerinde oluşturulur. Böylece Clonezilla açılışı tamamlandıktan sonra <strong>flaş belleği bilgisayardan çıkartsanız</strong> <strong>dahi </strong>Clonezilla&#8217;yı kullanmaya devam edebilirsiniz.</p>



<p class="wp-block-paragraph">Aynı flaş üzerine yedek almak gerektiğinde dikkat edilmesi gereken en önemli nokta şudur: Başlangıç &#8220;Clonezilla To RAM<strong>&#8220;</strong> seçeneği ile sağlanmış olsa bile flaş belleğin disk bölümleri mount (bağlanmıştır) edilmiş durumdadır. Flaş belleği kayıt ortamı olarak kullanabilmek için önce bu dizinlerin unmount edilmesi gerekir. Bunu yapmak için <strong>device-image &gt; local_dev</strong> adımından sonra flaş belleği çıkartın, yeniden takın ve <strong>5sn</strong> kadar bekledikten sonra <strong>Enter</strong>&#8216;a basarak devam edin. Flaş belleğin ve bilgisayardaki disklerin bölümleri listelenecek (sda,sdb,sdc vb).  <strong>Ctrl+C</strong> ile listeyi kapatın ve imajı kaydetmek istediğiniz disk bölümü olarak flaş belleği seçin. Seçtiğiniz disk bölümü <strong>/home/partimage</strong> konumuna otomatik olarak bağlanacak ve imaj kaydı  için hazır hale gelecektir. Aynı yöntemle flaş bellekteki disk imajını diske de yazdırabilirsiniz.</p>



<h2 class="wp-block-heading">Başlatılabilir (bootable) kurtarma ISO&#8217;su oluşturmak</h2>



<figure class="wp-block-image size-full"><img loading="lazy" decoding="async" width="621" height="174" src="https://www.tankado.com/wp-content/uploads/2025/09/2025-10-08_15-53-58.png" alt="" class="wp-image-9299" srcset="https://www.tankado.com/wp-content/uploads/2025/09/2025-10-08_15-53-58.png 621w, https://www.tankado.com/wp-content/uploads/2025/09/2025-10-08_15-53-58-300x84.png 300w" sizes="auto, (max-width: 709px) 85vw, (max-width: 909px) 67vw, (max-width: 984px) 61vw, (max-width: 1362px) 45vw, 600px" /></figure>



<p class="wp-block-paragraph">Hali hazırdaki bir CloneZilla imajını başlatılabilir bir ISO&#8217;ya dönüştürmek için şu adımları takip edin:</p>



<p class="wp-block-paragraph"><strong>Clone Zilla to RAM</strong> seçeneği ile bilgisayarı başlatın, <strong>device-image</strong>-><strong>local-dev</strong> ardından flaş bellek bağlamanız istendiğinde flaş belleği çıkartıp takın ve 5sn bekleyip Enter&#8217;a basın (<em>RAM&#8217;deki CloneZilla sdb, 2. kez bağladığınız flaş bellek sdc ile temsil edilir</em>). </p>



<figure class="wp-block-image size-full"><img loading="lazy" decoding="async" width="924" height="374" src="https://www.tankado.com/wp-content/uploads/2025/09/2025-09-11_15-47-35.png" alt="" class="wp-image-9279" srcset="https://www.tankado.com/wp-content/uploads/2025/09/2025-09-11_15-47-35.png 924w, https://www.tankado.com/wp-content/uploads/2025/09/2025-09-11_15-47-35-300x121.png 300w, https://www.tankado.com/wp-content/uploads/2025/09/2025-09-11_15-47-35-768x311.png 768w" sizes="auto, (max-width: 709px) 85vw, (max-width: 909px) 67vw, (max-width: 1362px) 62vw, 840px" /></figure>



<p class="wp-block-paragraph"><strong>Expert Mode</strong> seçeneğini ile devam edip  <strong>recovery-iso-zip</strong> seçeneği seçin. İmajın bulunduğu dizin ve iso çalıştığında imajın yazılacağı disk sorulacak (sda). Bu aşamadan sonra <strong>iso </strong>dosyasının özelliklerini ve adını belirlemeniz istenecek.  Bu ekranda varsayılanlar ile devam edebilir ye ada aşağıdaki 2 ince ayarı yapabilirsiniz.  İşlemin sonunda flaş belleğin kök dizininde imajın aynı adlı <strong>iso </strong>dosyası oluşmuş olacak.</p>



<p class="wp-block-paragraph"><strong>-batch (Run clone in batch mode): </strong>Kullanıcı onayı gerektirmeden tüm işlemleri otomatik yapması için <strong>işaretleyin</strong>.</p>



<p class="wp-block-paragraph"><strong>-c (Client waits for confirmation before cloning): </strong>Her disk bölümü için yazma onayı ister. -batch seçeneğini işaretlediyseniz bu seçeneğin <strong>işaretini kaldırın</strong>.</p>



<p class="wp-block-paragraph"><strong>recovery-iso-zip</strong> ile içinde hem bir Clonezilla kopyası hem de disk imajı bulunduran bir ISO dosyasına sahip olursunuz. Bu ISO dosyası bilgisayarı başlatabilir (bootable) özellikte olduğundan, onu doğrudan <em>Ventoy </em>veya <em>Rufus </em>ile bilgisayarı geri yüklemek için kullanabilirsiniz.</p>



<h2 class="wp-block-heading">Clonezilla ile gelen kullanışlı araçlar</h2>



<p class="wp-block-paragraph">Bilgisayarın olası sorunlarını teşhis etmek için kullanabileceğiniz birkaç küçük araç Clonezilla ile birlikte gelir. Bu araçların Clonezilla&#8217;nın çalışma sistemi ile doğrudan bir ilişkisi yoktur ancak imaj işlemleri sırasında sık karşılaşılan ihtiyaçları gidermeyi sağlar.</p>



<figure class="wp-block-image size-full"><img loading="lazy" decoding="async" width="816" height="264" src="https://www.tankado.com/wp-content/uploads/2025/09/diger-araclar-2025-09-03_22-01-17.png" alt="" class="wp-image-9270" srcset="https://www.tankado.com/wp-content/uploads/2025/09/diger-araclar-2025-09-03_22-01-17.png 816w, https://www.tankado.com/wp-content/uploads/2025/09/diger-araclar-2025-09-03_22-01-17-300x97.png 300w, https://www.tankado.com/wp-content/uploads/2025/09/diger-araclar-2025-09-03_22-01-17-768x248.png 768w" sizes="auto, (max-width: 709px) 85vw, (max-width: 909px) 67vw, (max-width: 984px) 61vw, (max-width: 1362px) 45vw, 600px" /></figure>



<p class="wp-block-paragraph"><strong>RAM arızalarını teşhis etmek:</strong> işlemleri öncesinde olası RAM sorunlarını test etmek ve alternatif başlatma yöntemlerini uygulamak için kullanılabilirler. Memtester ve Memtes86+ seçenekleri olası arızalı RAM çip ve slot arızalarını ile anakartın DMA veriyolu arızalarını teşhis etmek için kullanışlı tarama araçlarıdır. Belli bir senaryoda Clonezilla&#8217;yı kullanırken sürekli anlamsız hatalar alıyorsanız bu araçlardan faydalanmanızı tavsiye ederim.</p>



<p class="wp-block-paragraph"><strong>UEFI setup</strong>: UEFI seçeneği bilgisayarınızı UEFI ayar programına ulaşmanızı sağlar. </p>



<p class="wp-block-paragraph"><strong>Ağ üzerinden boot: </strong>Eğer bilgisayarınızın ağ üzerinden başlatma (boot) özelliği yoksa (bu senaryoda işletim sistemini ağ üzerindeki bir bilgisayarın sağlayacağı ISO ile başlatabilmenizden bahsediyorum) &#8220;<strong>Network boot via iPXE</strong>&#8221; seçeneğini kullanabilirsiniz.</p>



<p class="wp-block-paragraph"><strong>Çoklu geri yükleme: </strong>Çok sayıda bilgisayarın geri yüklenmesinin gerektiği senaryolarda bilgisayara birden fazla disk bağlayarak geri yükleme işlemini paralel olarak hızlı bir şekilde gerçekleştirmek mümkün. Bunun için Select Mode menüsünde yer alan 1-2-mdisks seçeneği kullanabilir.</p>



<figure class="wp-block-image size-full"><img loading="lazy" decoding="async" width="799" height="375" src="https://www.tankado.com/wp-content/uploads/2025/09/2025-09-11_15-21-12.png" alt="" class="wp-image-9278" srcset="https://www.tankado.com/wp-content/uploads/2025/09/2025-09-11_15-21-12.png 799w, https://www.tankado.com/wp-content/uploads/2025/09/2025-09-11_15-21-12-300x141.png 300w, https://www.tankado.com/wp-content/uploads/2025/09/2025-09-11_15-21-12-768x360.png 768w" sizes="auto, (max-width: 709px) 85vw, (max-width: 909px) 67vw, (max-width: 984px) 61vw, (max-width: 1362px) 45vw, 600px" /></figure>



<p class="wp-block-paragraph"></p>
]]></content:encoded>
					
		
		
			</item>
		<item>
		<title>Microsoft Ofis Makro Dil Desteği Uyarısını düzeltmek</title>
		<link>https://www.tankado.com/microsoft-ofis-makro-dil-desteygi-uyarisini-duzeltmek/</link>
		
		<dc:creator><![CDATA[Özgür Koca]]></dc:creator>
		<pubDate>Tue, 12 Aug 2025 21:02:10 +0000</pubDate>
				<category><![CDATA[Windows]]></category>
		<category><![CDATA[excel makro dil desteği uyarısı]]></category>
		<category><![CDATA[makro dil desteği uyarısı]]></category>
		<category><![CDATA[ofis makro dil desteği]]></category>
		<category><![CDATA[ofis makro hatası]]></category>
		<category><![CDATA[word makro dil desteği uyarısı]]></category>
		<guid isPermaLink="false">https://www.tankado.com/?p=9256</guid>

					<description><![CDATA[&#8220;Belge makro içeriyor. Bu uygulama için makro dil desteği devre dışı. VBA gerektiren özellikler yok. Bu belgeyi salt okunur açmak istiyor musunuz?&#8221; Kullanmakta olduğunuz Microsoft Ofis uygulamalarından her seferinde yukarıdaki gibi bir uyarı alıyorsanız ve uyarıyı kaldırmak için şunu deneyebilirsiniz: Çalıştır&#8217;a regedit.exe yazarak kayıt defteri düzenleyicisini açın. Ardından &#8220;HKEY_LOCAL_MACHINE\ SOFTWARE\ Policies\ Microsoft\ Office\ 16.0 \Common&#8221; &#8230; <a href="https://www.tankado.com/microsoft-ofis-makro-dil-desteygi-uyarisini-duzeltmek/" class="more-link">Okumaya devam et<span class="screen-reader-text"> "Microsoft Ofis Makro Dil Desteği Uyarısını düzeltmek"</span></a>]]></description>
										<content:encoded><![CDATA[
<blockquote class="wp-block-quote is-layout-flow wp-block-quote-is-layout-flow">
<p class="wp-block-paragraph">&#8220;Belge makro içeriyor. Bu uygulama için makro dil desteği devre dışı. VBA gerektiren özellikler yok. Bu belgeyi salt okunur açmak istiyor musunuz?&#8221;</p>
</blockquote>



<figure class="wp-block-image size-full"><img loading="lazy" decoding="async" width="817" height="333" src="https://www.tankado.com/wp-content/uploads/2025/08/ofis-makro-dil-destegi-uyarisi-2025-08-12_23-42-39.jpg" alt="" class="wp-image-9260" srcset="https://www.tankado.com/wp-content/uploads/2025/08/ofis-makro-dil-destegi-uyarisi-2025-08-12_23-42-39.jpg 817w, https://www.tankado.com/wp-content/uploads/2025/08/ofis-makro-dil-destegi-uyarisi-2025-08-12_23-42-39-300x122.jpg 300w, https://www.tankado.com/wp-content/uploads/2025/08/ofis-makro-dil-destegi-uyarisi-2025-08-12_23-42-39-768x313.jpg 768w" sizes="auto, (max-width: 709px) 85vw, (max-width: 909px) 67vw, (max-width: 984px) 61vw, (max-width: 1362px) 45vw, 600px" /></figure>



<p class="wp-block-paragraph">Kullanmakta olduğunuz Microsoft Ofis uygulamalarından her seferinde yukarıdaki gibi bir uyarı alıyorsanız ve uyarıyı kaldırmak için şunu deneyebilirsiniz: Çalıştır&#8217;a regedit.exe yazarak kayıt defteri düzenleyicisini açın. Ardından &#8220;<strong>HKEY_LOCAL_MACHINE\  SOFTWARE\ Policies\ Microsoft\ Office\ 16.0 \Common</strong>&#8221; patikasına gidin ve <strong>VBAOFF </strong>değerini 0 yapın veya bu anahtarı silin.</p>
]]></content:encoded>
					
		
		
			</item>
		<item>
		<title>Linux Cheat Sheets</title>
		<link>https://www.tankado.com/linux-cheat-sheets/</link>
		
		<dc:creator><![CDATA[Özgür Koca]]></dc:creator>
		<pubDate>Fri, 07 Mar 2025 22:33:39 +0000</pubDate>
				<category><![CDATA[Linux]]></category>
		<guid isPermaLink="false">https://www.tankado.com/?p=9223</guid>

					<description><![CDATA[Linux redirections cheatsheets Linux command chaining Bash scripting basics Bash scripting functions basics Bash scripting loops basics]]></description>
										<content:encoded><![CDATA[
<p class="wp-block-paragraph">Linux redirections cheatsheets</p>



<figure class="wp-block-image size-full"><img loading="lazy" decoding="async" width="3276" height="4096" src="https://www.tankado.com/wp-content/uploads/2025/03/bash_redirecting.jpg" alt="" class="wp-image-9224"/></figure>



<span id="more-9223"></span>



<p class="wp-block-paragraph">Linux command chaining</p>



<figure class="wp-block-image size-full"><img loading="lazy" decoding="async" width="3594" height="4096" src="https://www.tankado.com/wp-content/uploads/2025/03/linux-command-chaining.jpg" alt="" class="wp-image-9228"/></figure>



<p class="wp-block-paragraph">Bash scripting basics</p>



<figure class="wp-block-image size-full"><img loading="lazy" decoding="async" width="3205" height="4096" src="https://www.tankado.com/wp-content/uploads/2025/03/bash_scripting-basics.jpg" alt="" class="wp-image-9225"/></figure>



<p class="wp-block-paragraph">Bash scripting functions basics</p>



<figure class="wp-block-image size-full"><img loading="lazy" decoding="async" width="1603" height="2048" src="https://www.tankado.com/wp-content/uploads/2025/03/bash-scripting-functions.jpg" alt="" class="wp-image-9226"/></figure>



<p class="wp-block-paragraph">Bash scripting loops basics</p>



<figure class="wp-block-image size-full"><img loading="lazy" decoding="async" width="4096" height="4096" src="https://www.tankado.com/wp-content/uploads/2025/03/bash_scripting-loops.jpg" alt="" class="wp-image-9227"/></figure>
]]></content:encoded>
					
		
		
			</item>
		<item>
		<title>Mahkemelerce hakaret sayılan veya sayılmayan sözler hangileridir?</title>
		<link>https://www.tankado.com/hakaret-sayilan-veya-sayilmayan-sozler-hangileridir/</link>
		
		<dc:creator><![CDATA[Özgür Koca]]></dc:creator>
		<pubDate>Tue, 18 Feb 2025 22:11:31 +0000</pubDate>
				<category><![CDATA[Genel]]></category>
		<guid isPermaLink="false">https://www.tankado.com/?p=9204</guid>

					<description><![CDATA[Yargı kararlarındaki hakaret sayılan veya sayılmayan söz ve ifadelerin kime karşı söylendikleri önemlidir! Buna dikkat edilmesi gerekir. Ayrıca yargı, zaman zaman hakaret sayılan veya sayılmayan sözler ve ifadeler konusunda çelişkili kararlar vermekte veya kararını değiştirebilmektedir. İLKEMİZ HAKARET ETMEDEN, KIRICI OLMADAN DÜŞENCEMİZİ İFADE ETMEK OLMALIDIR. HANGİ SÖZLER HAKARET SAYILMAKTADIR? Yerel mahkemeler tarafından verilen ve Yargıtay tarafından &#8230; <a href="https://www.tankado.com/hakaret-sayilan-veya-sayilmayan-sozler-hangileridir/" class="more-link">Okumaya devam et<span class="screen-reader-text"> "Mahkemelerce hakaret sayılan veya sayılmayan sözler hangileridir?"</span></a>]]></description>
										<content:encoded><![CDATA[
<p class="wp-block-paragraph">Yargı kararlarındaki hakaret sayılan veya sayılmayan söz ve ifadelerin kime karşı söylendikleri önemlidir! Buna dikkat edilmesi gerekir.</p>



<p class="wp-block-paragraph">Ayrıca yargı, zaman zaman hakaret sayılan veya sayılmayan sözler ve ifadeler konusunda çelişkili kararlar vermekte veya kararını değiştirebilmektedir.</p>



<p class="wp-block-paragraph">İLKEMİZ HAKARET ETMEDEN, KIRICI OLMADAN DÜŞENCEMİZİ İFADE ETMEK OLMALIDIR.</p>



<span id="more-9204"></span>



<h2 class="wp-block-heading">HANGİ SÖZLER HAKARET SAYILMAKTADIR?</h2>



<p class="wp-block-paragraph">Yerel mahkemeler tarafından verilen ve Yargıtay tarafından onanan kararlar sonucunda hazırlanan listeye göre hakaret kabul edilen kelimeler şu şekilde:</p>



<p class="wp-block-paragraph"></p>



<p class="wp-block-paragraph">&#8211; AMERİKAN UŞAĞI: YARGITAY 16. CD (E:2018/551 K:2018/671 T:13.03.2018)</p>



<p class="wp-block-paragraph">&#8211; APTAL: YARGITAY 4. CD (E:2020/8119 K:2020/15398 T:05.11.2020)</p>



<p class="wp-block-paragraph">&#8211; ART NİYETLİ: YARGITAY 4. CD (E:2012/6933 K:2012/28633 T:04.12.2012)</p>



<p class="wp-block-paragraph">&#8211; AŞAĞILIK: YARGITAY 18. CD (E:2015/6120 K:2015/2530 T:10.06.2015)</p>



<p class="wp-block-paragraph">&#8211; AZGIN DUL: YARGITAY 18. CD (E:2015/6120 K:2015/2530 T:10.06.2015)</p>



<p class="wp-block-paragraph">&#8211; AYI: YARGITAY 4. CD (E:2015/5853 K:2015/29903 T:27.05.2015)</p>



<p class="wp-block-paragraph">&#8211; BEYİNSİZ: YARGITAY 18. CD (E:2015/2639 K:2015/2852 T:17.06.2015)</p>



<p class="wp-block-paragraph">&#8211; BOYNUZLU: YARGITAY 4. CD (E:2020/14573 K:2021/9780 T:18.03.2021)</p>



<p class="wp-block-paragraph">&#8211; BÖLÜCÜLÜK YAPMAYIN: YARGITAY 5. CD (E:2013/13057 K:2014/13166 T:23.12.2014)</p>



<p class="wp-block-paragraph">&#8211; BUNAK: YARGITAY 2. CD (E:2010/35246 K:2012/41578 T:29.03.2021)</p>



<p class="wp-block-paragraph">&#8211; CEBİNİZİ DOLDURUYORSUNUZ: YARGITAY CGK (E:2017/18-848 K:2018/312 T:26.06.2018)</p>



<p class="wp-block-paragraph">&#8211; ÇAKAL: YARGITAY 23. CD (E:2015/4284 K:2015/5323 T:19.10.2015)</p>



<p class="wp-block-paragraph">&#8211; ÇALMAK: YARGITAY4. CD (E:2020/11997 K:2021/6738 T:25.02.2021)</p>



<p class="wp-block-paragraph">&#8211; ÇİRKİN SURAT: YARGITAY CGK (E:2013/4-521 K:2014/54 T:11.02.2014)</p>



<p class="wp-block-paragraph">&#8211; ÇOCUK KATİLİ: YARGITAY 4. CD (E:2015/10421 K:2015/30267 T:01.06.2015)</p>



<p class="wp-block-paragraph">&#8211; ÇÜRÜK DOMATES: YARGITAY 4 .CD (E:2011/36640 K:2013/22930 T:07.10.2013)</p>



<p class="wp-block-paragraph">&#8211; DANA: YARGITAY 2. CD (E:2011/26161 K:2013/5887 T:21.03.2013)</p>



<p class="wp-block-paragraph">&#8211; DAVAYI SATTI: YARGITAY 18. CD (E:2015/34641 K:2017/6807 T:31.05.2017)</p>



<p class="wp-block-paragraph">&#8211; DECCAL: YARGITAY 16. CD (E:2017/1486 K:2017/4427 T:12.06.2017)</p>



<p class="wp-block-paragraph">&#8211; DELİ: YARGITAY 4. CD (E:2008/21092 K:2009/2589 T:17.02.2009)</p>



<p class="wp-block-paragraph">&#8211; DEYYUS: YARGITAY 2. CD (E:2011/9251 K:2012/45816 T:13.11.2012)</p>



<p class="wp-block-paragraph">&#8211; DİKTATÖR: YARGITAY 16. CD (E:2018/3171 K:2018/5020 T:10.12.2018)</p>



<p class="wp-block-paragraph">&#8211; DOLANDIRICI: YARGITAY 18. CD (E:2015/26439 K:2016/12596 T:07.06.2016)</p>



<p class="wp-block-paragraph">&#8211; DOMBİLİ: YARGITAY 23. CD (E:2015/13865 K:2015/5464 T:21.10.2015)</p>



<p class="wp-block-paragraph">&#8211; DÜMBÜK: YARGITAY 18. CD (E:2015/32126 K:2016/17667 T:16.11.2016)</p>



<p class="wp-block-paragraph">&#8211; ENAYİ: YARGITAY 15 .CD (E:2014/6713 K:2016/7761 T:19.10.2016)</p>



<p class="wp-block-paragraph">&#8211; ERKEKLERLE YATIP KALKIYORSUN: YARGITAY 4. CD (E:2021/22105 K:2021/21312 T:09.09.2021)</p>



<p class="wp-block-paragraph">&#8211; EŞEK: YARGITAY 15. CD (E:2015/10608 K:2016/9438 T:12.12.2016)</p>



<p class="wp-block-paragraph">&#8211; ETEK GİYMESİ GEREKEN BİR ADAMSIN: YARGITAY 4. CD (E:2013/33459)</p>



<p class="wp-block-paragraph">&#8211; FARE: YARGITAY 4. CD (E:2012/29981 K:2014/2514 T:29.01.2014)</p>



<p class="wp-block-paragraph">&#8211; FIRILDAK: YARGITAY 4. CD (E:2020/34939 K:2021/9068 T:15.03.2021)</p>



<p class="wp-block-paragraph">&#8211; GERİ ZEKALI: YARGITAY 15.C D (E:2018/9033 K:2020/3754 T:12.03.2020)</p>



<p class="wp-block-paragraph">&#8211; HAİN: YARGITAY CGK (E:2018/18-342 K:2018/378 T:27.09.2018)</p>



<p class="wp-block-paragraph">&#8211; HAYSİYETSİZ: YARGITAY 18. CD (E:2018/8132 K:2019/3826 T:26.02.2019)</p>



<p class="wp-block-paragraph">&#8211; HAYVAN: YARGITAY 2. CD (E:2011/27235 K:2013/7902 T:11.03.2014)</p>



<p class="wp-block-paragraph">&#8211; HIRSIZ: YARGITAY 4. CD (E:2019/3986 K:2021/28634 T:07.12.2021)</p>



<p class="wp-block-paragraph">&#8211; HİTLER: YARGITAY 16. CD (E:2019/6019 K:2019/8465 T:27.12.2019)</p>



<p class="wp-block-paragraph">&#8211; HOVARDA: YARGITAY 18. CD (E:2016/2016 K:2018/2155 T:20.02.2018)</p>



<p class="wp-block-paragraph">&#8211; İĞRENÇ: YARGITAY 4. CD (E:2021/1370 K:10616 T:24.03.2021)</p>



<p class="wp-block-paragraph">&#8211; İKİYÜZLÜ: YARGITAY 4. CD (E:2015/22863 K:2019/18597 T:02.12.2019)</p>



<p class="wp-block-paragraph">&#8211; İT: YARGITAY 16. CD (E:2020/7346 K:2021/271 T:28.01.2021)</p>



<p class="wp-block-paragraph">&#8211; İT OĞLU İT: YARGITAY13. CD (E:2013/5850 K:2014/9707 T:18.03.2014)</p>



<p class="wp-block-paragraph">&#8211; KAÇAKÇI: YARGITAY 16. CD (E:2019/3989 K:2020/2258 T:02.06.2020)</p>



<p class="wp-block-paragraph">&#8211; KANI BEŞ PARA ETMEZ: YARGITAY 4. CD (E:2013/33459 K:2016/1538 T:01.02.2016)</p>



<p class="wp-block-paragraph">&#8211; KANI BOZUK: YARGITAY 16 .CD (E:2018/3029 K:2018/4514 T:05.11.2018)</p>



<p class="wp-block-paragraph">&#8211; KARI GİBİ KAÇMA: YARGITAY2. CD (E:2013/35727 K:2014/21302 T:18.09.2014)</p>



<p class="wp-block-paragraph">&#8211; KARINLA DOST HAYATI YAŞADIM: YARGITAY 4. CD (E:2011/18824)</p>



<p class="wp-block-paragraph">&#8211; KAŞAR: YARGITAY14. CD (E:2015/7961 K:2016/875 T:28.01.2016)</p>



<p class="wp-block-paragraph">&#8211; KATİL: YARGITAY 16. CD (E:2019/11164 K:2020/2033 T:13.03.2020)</p>



<p class="wp-block-paragraph">&#8211; KE-MAL: YARGITAY 11. CD (E:2019/4404 K:2019/8470 T:28.11.2019)</p>



<p class="wp-block-paragraph">&#8211; KENDİNİ BİR BOK SANMAK: YARGITAY 4. CD (E:2014/27210 K:2015/2533 T:02.02.2015)</p>



<p class="wp-block-paragraph">&#8211; KER: YARGITAY16. CD (E:2019/11075 K:2020/1805 T:06.03.2020)</p>



<p class="wp-block-paragraph">&#8211; KENDİNİ KAÇ PARAYA SATTIN: YARGITAY 4. CD (E:2018/3121 K:2019/14414)</p>



<p class="wp-block-paragraph">&#8211; K*Ç YALAMAK: YARGITAY 18. CD (E:2020/1169 K:2020/6092 T:16.03.2020)</p>



<p class="wp-block-paragraph">&#8211; K*ÇINA GİRSİN: YARGITAY 18. CD (E:2015/3116 K:2015/3572 T:29.06.2015)</p>



<p class="wp-block-paragraph">&#8211; KÖPEK: YARGITAY 2. CD (E:2011/8780 K:2012/45647 T:12.11.2012)</p>



<p class="wp-block-paragraph">&#8211; KUDUZ: YARGITAY 16. CD (E:2020/1876 K:2020/3519 T:03.07.2020)</p>



<p class="wp-block-paragraph">&#8211; LAN: YARGITAY CGK (E:2009/4-196 K:2009/248 T:.2710.2009)</p>



<p class="wp-block-paragraph">&#8211; MAL: YARGITAY 4. CD (E:2014/27210 K:2015/2533 T:02.02.2015)</p>



<p class="wp-block-paragraph">&#8211; MASON: YARGITAY 16. CD (E:2017/1486 K:2017/4427 T:12.06.2017)</p>



<p class="wp-block-paragraph">&#8211; MAYMUN: YARGITAY 2. CD (E:2011/24094 K:2013/3387 T:20.02.2013)</p>



<p class="wp-block-paragraph">&#8211; MECZUP: YARGITAY 16. CD (E:2016/5885 K:2017/3760 T:19.04.2017)</p>



<p class="wp-block-paragraph">&#8211; MÜFTERİ: YARGITAY 16. CD (E:2016/1474 K:2016/3955 T:10.06.2016)</p>



<p class="wp-block-paragraph">&#8211; MÜNAFIK: YARGITAY 18. CD (E:2017/2034 K:2017/9550 T:25.09.2017)</p>



<p class="wp-block-paragraph">&#8211; NEMRUT: YARGITAY 16. CD (E:2016/2716 K:2017/3869 T:25.04.2017)</p>



<p class="wp-block-paragraph">&#8211; OSURUK: YARGITAY 18. CD (E:2019/8374 K:2019/15411 T:05.11.2019)</p>



<p class="wp-block-paragraph">&#8211; ÖKÜZ: YARGITAY 4. CD (E:2012/34201 K:2013/31993 T:12.12.2013)</p>



<p class="wp-block-paragraph">&#8211; ÖRGÜTÇÜ: YARGITAY1 8.CD (E:2016/17387 K:2019/462 T:08.01.2019)</p>



<p class="wp-block-paragraph">&#8211; PAVYON KADINI: YARGITAY 2. CD (E:2011/3575 K:2013/22036 T:30.09.2013)</p>



<p class="wp-block-paragraph">&#8211; PİS ERMENİ: YARGITAY 4. CD (E:2014/15126 K:2015/25931 T:03.04.2015)</p>



<p class="wp-block-paragraph">&#8211; PİSLİK: YARGITAY 4. CD (E:2020/20258 K:2020/12135 T:15.10.2020)</p>



<p class="wp-block-paragraph">&#8211; PKK’LI: YARGITAY 3. CD (E:2018/2778 K:2019/2 T:07.01.2019)</p>



<p class="wp-block-paragraph">&#8211; PUŞT: YARGITAY 4. CD (E:2015/25752 K:2020/626 T:13.01.2020)</p>



<p class="wp-block-paragraph">&#8211; REZALET KARAR: YARGITAY18. CD (E:2015/11462 K:2015/10888 T:11.11.2015)</p>



<p class="wp-block-paragraph">&#8211; REZİL: YARGITAY 4. CD (E:2017/1901 K:2020/17650 T:24.11.2020)</p>



<p class="wp-block-paragraph">&#8211; RÜŞVETÇİ: YARGITAY 4. CD (E:2006/9660 K:2008/5205 T:01.04.2008)</p>



<p class="wp-block-paragraph">&#8211; SAHTEKAR: YARGITAY 16. CD (E:2018/551 K:2018/671 T:13.03.2018)</p>



<p class="wp-block-paragraph">&#8211; SALAK: YARGITAY 4. CD (E:2020/20273 K:2020/13343 T:22.10.2020)</p>



<p class="wp-block-paragraph">&#8211; SAPIK: YARGITAY 18. CD (E:2015/27516 K:2017/408 T:12.01.2017)</p>



<p class="wp-block-paragraph">&#8211; SARAY SOYTARISI: YARGITAY 16. CD (E:2018/1392 K:2018/1295 T:25.04.2018)</p>



<p class="wp-block-paragraph">&#8211; SATILMIŞ: YARGITAY 4. CD (E:2009/16387 K:2011/17532 T:17.10.2011)</p>



<p class="wp-block-paragraph">&#8211; SAZAN: YARGITAY 23. CD (E:2015/4284 K:2015/5323 T:19.10.2015)</p>



<p class="wp-block-paragraph">&#8211; SEFİL: YARGITAY 4. CD (E:2019/3850 K:2019/15124 T:03.10.2019)</p>



<p class="wp-block-paragraph">&#8211; SENİ PARAMLA SATIN ALIRIM: YARGITAY 4. CD (E:2012/33854 K:2014/7344 T:05.03.2014)</p>



<p class="wp-block-paragraph">&#8211; SOYSUZ: YARGITAY 16 .CD (E:2017 /1939 K:2017/5106 T:03.10.2017)</p>



<p class="wp-block-paragraph">&#8211; SÜFYAN: YARGITAY 16. CD (E:2016/1474 K:2016/3955 T:10.06.2016)</p>



<p class="wp-block-paragraph">&#8211; SÜRTÜK: YARGITAY 4. CD (E:2013/33173 K:2014/35081 T:04.12.2014)</p>



<p class="wp-block-paragraph">&#8211; ŞAKLABAN: YARGITAY 16. CD (E:2019/8029 K:2020/595 T:23.01.2020)</p>



<p class="wp-block-paragraph">&#8211; ŞARAPÇI: YARGITAY 11. CD (E:2017/11989 K:2018/3486 T:12.04.2018)</p>



<p class="wp-block-paragraph">&#8211; ŞARLATAN: YARGITAY1 8. CD (E:2015/27980 K:2016/14289 T:28.06.2016)</p>



<p class="wp-block-paragraph">&#8211; ŞEREFSİZ: YARGITAY 16 .CD (E:2017/1014 K:2017/4691 T:22.06.2017)</p>



<p class="wp-block-paragraph">&#8211; TACİZCİ: YARGITAY 18. CD (E:2019/7465 K:2019/12402 T:17.09.2022)</p>



<p class="wp-block-paragraph">&#8211; TERÖRİST: YARGITAY1 6. CD (E:2017/317 K:2017/3803 T:02.05.2017)</p>



<p class="wp-block-paragraph">&#8211; TETİKÇİ: YARGITAY 2. CD (E:2010/28561 K:2010/30230 T:02.11.2010)</p>



<p class="wp-block-paragraph">&#8211; TİRAN: YARGITAY 11. CD (E:2019/4869 K:2019/8859 T:05.12.2019)</p>



<p class="wp-block-paragraph">&#8211; TOP: YARGITAY /4.CD (E:2013/14870 K:2015/30041 T:28.05.2015)</p>



<p class="wp-block-paragraph">&#8211; TOSBAĞA: YARGITAY 4. CD (E:2013/26390 K:2014/16646 T:07.07.2014)</p>



<p class="wp-block-paragraph">&#8211; VATAN HAİNİ: YARGITAY 16. CD (E:2018/551 K:2018/671 T:13.03.2018)</p>



<p class="wp-block-paragraph">&#8211; YAHUDİ: YARGITAY 16. CD (E:2017/1486 K:2017/4427 T:12.06.2017)</p>



<p class="wp-block-paragraph">&#8211; YANDAN ÇARKLI: YARGITAY 4. CD (E:2013/26390 K:2014/16646 T:07.07.2014)</p>



<p class="wp-block-paragraph">&#8211; YAPTIĞINIZ İŞİN İÇİNE SI**YIM: YARGITAY 15. CD (E:2012/6180 K:2012/41043 T:11.09.2012)</p>



<p class="wp-block-paragraph">&#8211; YAVŞAK: YARGITAY 3. CD (E:2017/19528 K:2018/14193 T:02.10.2018)</p>



<p class="wp-block-paragraph">&#8211; YEZİT: YARGITAY 16. CD (E:2016/6928 K:2017/4807 T:19.07.2017)</p>



<p class="wp-block-paragraph">&#8211; YOLSUZLUK: YARGITAY 8. CD (E:2017/9234 K:2017/11414 T:16.10.2017)</p>



<p class="wp-block-paragraph">&#8211; YÜRÜTME: YARGITAY 18. CD (E:2016/15036 K:2019/30 T:07.01.2019)</p>



<p class="wp-block-paragraph">&#8211; YÜZÜNE TÜKÜRÜLSE YARRABİ ŞÜKÜR DER: YARGITAY 4. CD (E:2012/12487 K:2014/2703 T:30.01.2014)</p>



<p class="wp-block-paragraph">&#8211; ZENNE: YARGITAY 4. CD (E:2021/27623 K:2021/22707 T:28.09.2017)</p>



<p class="wp-block-paragraph">&#8211; ZEVZEK: YARGITAY 18. CD (E:2016/5910 K:2017/3859 T:04.05.2017)</p>



<p class="wp-block-paragraph">&#8211; ZORBA: YARGITAY 16. CD (E:2017/2489 K:2017/5502 T:27.11.2017)</p>



<h2 class="wp-block-heading">Mahkemelerce hakaret sayılmayan ifadeler</h2>



<p class="wp-block-paragraph">1-“ Ukalalık yapma ” Yarg.18. CD. Esas : 2019/390 Karar : 2020/1377 Tarih : 16.01.2020<br>2-“menopozlu kadın kaşın gözün oynuyor” Yarg. 18. CD. E. 2018/2631 K. 2019/16047 T. 12.11.2019<br>3-“işlem yapmazsan adam değilsin, erkeksen yaparsın” Yarg. 18. CD. Esas : 2019/7103 Karar :2020/1789 Tarih : 21.01.2020<br>4-“cahilleri buraya koyuyorlar ondan sonra böyle oluyor” Yarg. 18. CD. E. 2017/565 K. 2019/3443 T. 19.2.2019<br>5-“aç gözlü” Yarg. 18. CD. Esas : 2019/8256 Karar : 2020/4884 Tarih : 24.02.2020<br>6-“senin kafan bozuk” Yarg. 18. CD. Esas : 2019/7667 Karar : 2020/893 Tarih : 15.01.2020<br>7-“seni paramla satın alırım” Yarg. 18. CD. E. 2019/8789 K. 2020/4519 T. 18.2.2020<br>8-“lan” Yarg. 18. CD. E. 2019/7381 K. 2020/4109 T. 10.2.2020<br>9-“Ruh sağlığın yerinde mi senin, köylü kurnazlığı yapıyorsun, bu da kapak olsun sana” Yarg. 18. CD. E. 2016/17134 K. 2019/15901 T. 27.11.2018<br>10-“Allah belanızı versin…” Yarg. 18. CD. E. 2017/7660 K. 2019/15697 T. 6.11.2019.<br>11-“lan sen ne biçim adamsın yazıklar olsun…” Yarg.18. CD. E: 2015/8559 K:2015/11175 t.16.11.2015<br>12-“basitsin” Yarg.18. CD. E: 2015/38074 K:2017/8480 t.06.07.2017<br>13-“köylüsünüz, buraya layık değilsiniz” Yarg.18. CD. E: 2015/11272 K:2016/140 t.11.01.2016<br>14-“sen kimsin lan, sesin çok çıkıyor merdane gibi” Yarg. 18. CD. E. 2018/6039 K. 2020/1173 T. 15.1.2020<br>15-“senin ağa babaların benim suç ortağım, sen bana bir şey yapamazsın” Yarg. 18. CD. Esas : 2019/514 Karar : 2020/1369 Tarih : 16.01.2020<br>16-“sen bu kişilerin etkisi altında kaldın, ben her şeyi biliyorum, hakim savcı bir olmuşsunuz, zaten hakim de senin gibi düşünür, seni yukarılara şikayet edeceğim, savunmanı onlara verirsin çoluğundan çocuğundan çıksın” Yarg. 18. CD. Esas : 2019/8948 Karar : 2020/4006 Tarih : 06.02.2020<br>17-“siz eşkıya mısınız” Yarg. 18. CD. E. 2017/6485 K. 2019/17210 T.<br>18-“adam değilsin lan” Yarg. 18. CD. E. 2018/2762 K. 2019/14315 T. 14.10.2019<br>19-“Allah senin belanı versin, Allahsız” Yarg.18. CD E. 2017/5698 K. 2019/11138 T. 25.6.2019.<br>20-“ulan ne biçim adamsın” Yarg. 18. CD. E. 2018/258 K. 2019/10218 T. 10.6.2019<br>21-“İki Buçuk Milyarlık Adamsınız” Yarg. 18. CD. E. 2017/4751 K. 2019/9316 T. 21.5.2019.<br>22-“edepsizler” Yarg. 18. CD. E. 2018/5959 K. 2019/6788 T. 4.4.2019<br>23-“Siz Ne Biçim İnsansınız” Yarg. 18. CD. E. 2019/299 K. 2019/5526 T. 20.3.2019<br>24-“siz kimsiniz ne oluyor burada, adam mı oldunuz” Yarg. 18. CD. E. 2017/2695 K. 2019/5594 T. 21.3.2019<br>25-“siz korsan mısınız, ben gidiyorum lan” Yarg. 18. CD. E. 2016/18133 K. 2019/2201 T. 4.2.2019<br>26-”defol git” Yarg. 18. CD. E. 2018/4989 K. 2019/1191 T. 14.1.2019<br>27-“korkak” Yarg. 18. CD. E. 2016/17675 K. 2019/760 T. 9.1.2019<br>28-“hakkımı helal etmiyorum, sırf siyaset devreye girdi diye D4 belgemi vermemiştin Allah affetmesin seni”, “yaktığın çırada kavrul İnşallah” ve “takdir ilahiden kaçış yok er veya geç hepimiz nasibimizi alacağız ama kötü bir şekilde, ama iyi bir şekilde. Sen benim ayağımın altını kazanları tez zamanda yak yarabbim” Yarg. 18. CD. E. 2018/3618 K. 2019/590 T. 8.1.2019<br>29-“hepiniz artist olmuşsunuz” Yarg. 18. CD. E. 2018/1950 K. 2018/14560 T. 7.11.2018<br>30-“terbiyesizlik yapma, pislik yapma erkeksen gel yüzüme söyle” Yarg. 18. CD. E. 2017/8129 K. 2018/14490 T. 7.11.2018<br>31-“serseriler, insan olsan böyle yapmazsın” Yarg. 18. CD. E. 2017/7437 K. 2018/3053 T. 7.3.2018<br>32-“bu sevimsiz bir insan, bu fakir düşmanı, bununla muhatap olma” Yarg. 18. CD. E. 2016/898 K. 2018/1331 T. 7.2.2018<br>33-“gerici yobazlar” Yarg. 18. CD. E. 2017/4058 K. 2018/537 T. 22.1.2018<br>34-“terbiyesiz, saygısız” Yarg. 18. CD. E. 2015/16741 K. 2016/3164 T. 22.02.2016<br>35-“Siz kim oluyorsunuz, çoban bile bu işi sizden daha iyi yapar” Yarg. 4. CD. E. 2012/35366 K. 2014/14293 T. 05.05.2014<br>36-“İbiş efendi kısırlaştırma yapmadan yavruları barınağa attırıyorsun, ölüme terkediyorsun, Allah da seni süründürerek öldürsün, gavur yapmaz” ve “İbiş hem barınağa bakmıyorsun, hem kapıyı kapatıyorsun, tam canavarsın, geber” Yarg. 4. CD. E. 2014/5380 K. 2014/33505 T. 19.11.2014<br>37-“bu karı hep böyle yapıyor” Yarg. 4. CD. E. 2013/39681 K. 2014/32235 T. 06.11.2014<br>38-“ben sizin ne mal olduğunuzu biliyorum” Yarg. 4. CD E:2013/35802 K: 2014/31186 K. 30.10.2014<br>39-“delikanlı değilsin, sen karısın” Yarg. 18. CD. E. 2015/44413 K. 2017/15756 T. 28.12.2017<br>40- “sen ne biçim doktorsun” Yarg. 4. CD. E: 2017 / 22520 K: 2021 / 4489 T: 10.02.2021<br>41- ”lan” ve ”sen ne utanmazsın” Yarg 4. CD. E: 2019 / 4048 K: 2021 / 26139 T: 03.11.2021<br>42- “Terörist miyiz lan” Yarg. 2. CD. E: 2020 / 27786 K: 2021 / 13592 T: 29.06.2021<br>43- “üç kağıtçı / üçkağıtçı” Yarg. 2. CD. E.2011/726725 K.2013/7383 T. 08.03.2013<br>44- “hainler korkak olur” Yarg. 18. CD. T. 12.04.2018, E.2017/7129, K.2018/5519<br>45- “kukla gibi buraya oturmuşsunuz” Yarg. 18. CD. E: 2019 / 11782 K: 2020 / 5741 T: 09.03.2020<br>46- “tombaladan müdür” Yarg. 18. CD. E: 2019 / 71 K: 2020 / 7755 T: 18.06.2020<br>47-“ Çiftlik ağası” Yarg. 18. CD E: 2015 / 26407 K: 2016 / 11710 T: 30.05.2016<br>48- ”sen şizofren hastasısın, iki ruhlusun, doktora git bir an evvel sağlığına kavuş” Yarg. 18. CD. E: 2015 / 11055 K: 2015 / 10949 T: 12.11.2015<br>49- “sana bu diplomayı verenin” Yarg. CG. T. 28.05.2019, E. 2016/1403, K. 2019/464<br>50-“adamlığını kurtar” Yarg. 18. CD. E. 2015/7845 K. 2015/13139 T. 09.12.2015<br>51-“gavur” Yarg. 18. CD. E. 2017/1772 K. 2017/3352 T. 27.03.2017<br>52-“bu yaptığınız kıllıktır” Yarg. 18. CD. E. 2017/1218 K. 2017/3077 T. 21.03.2017<br>53-“cahil cahil konuşma” Yarg. 18. CD. E. 2015/25786 K. 2016/6526 T. 31.03.2016<br>54-“psikiyatriye git, tedavi gör, karşımda kıvırtıp durma” Yarg. 18. CD. E. 2015/191 K. 2015/9090 T. 26.10.2015<br>55-“siz genişsiniz” Yarg. 18. CD. E. 2015/8477 K. 2015/4709 T. 08.09.2015<br>56-“herkes haddini bilsin” Yarg. 18. CD. E. 2015/41787 K. 2017/13867 T. 29.11.2017<br>57-”sizi mutlu edecek ise ceketimi ilikliyorum; size birşey kazandıracaksa işte alt düğmemi de ilikliyorum.’‘ Yarg. 18. CD. E. 2015/42548 K. 2017/10648 T. 10.10.2017<br>58-“Sen ne işe yararsın, bilmiyorsan burada oturma, seni buraya kim oturttu?” Yarg. 18. CD. E. 2015/7358 K. 2015/14397 T. 28.12.2015<br>59-“sen insan değilsin” Yarg. 18. CD. E. 2015/37780 K. 2017/9762 T. 27.09.2017<br>60-“donumu da çıkarayım mı?” Yarg. 18. CD. E. 2016/5753 K. 2018/4283 T.26.03.2018<br>61-“sırıtma” Yarg. 18. CD. E. 2015/1377 K. 2015/1806 T. 26.05.2015<br>62-“senin bu yaptığını maksim gazinosundaki şarkıcılar yapar” Yarg. 18. CD. E. 2015/3980 K. 2015/2443 T.10.06.2015<br>63-“işini yapmıyor, karaktersiz herif” Yarg. 18. CD. E. 2015/40646 K. 2017/10756 T.11.10.2017<br>64-“size o makamı yakıştıramıyorum, böyle adalet olmaz olsun” Yarg.4. CD E:2013/6603 K: 2014/20618 K. 09.06.2014<br>65- “haddini bileceksin, haddini bil“ Yarg. 18.C.D. E:2015/1532 K:2015/1097 06.05.2015<br>66-“nankör, aç gözlü, görmemiş” Yarg.18.C.D. E:2016/12901 K:2018/12942 15.10.2018<br>67-“siz eşkıyasınız” Yarg.18.C.D. E:2017/7727 K:2019/13374, 30.09.2019<br>68-“okumuşun da adam olamamışsın” Yarg.4.C.D. E:2020/8130, K:2020/15390, 05.11.2020<br>69-“ben böyle hastanenin a..a korum” Yarg.18.C.D. E: 2015/28063, K:2016/5116, 16.03.2016<br>70- “amele karısı” Yarg.18.C.D., E: 2015/37065, 2017/2121, 27.02.2017<br>71-“yalancı” Yarg.4.C.D., E: 2018/911, K:2021/9386, 16.03.2021<br>72-“bacaksız”Yarg.4.C.D., E: 2018/3727, K:2021/12060, 06.04.2021<br>73- “hasta mısın kızım sen” Yarg.4.C.D., E: 2020/24317, K: 2021/2804, 28.01.2021<br>74-“ne ulan artistlik yapıyorsunuz” Yarg. 4.C.D., E: 2020/12152, K: 2021/2989, 28.01.2021<br>75-“benim köpeklerim pis değil, pis olan sensin” Yarg. 4.C.D. E: 2020/12282, K:2021/7983, 08.03.2021<br>76-“bu yaptığınız terbiyesizliktir” Yarg.4.C.D. E: 2020/14295, K: 2021/10146, 22.03.2021<br>77-“sen konuşma lan” Yarg. 4.C.D. E: 2020/12906 K: 2021/4637, 11.02.2021<br>78-“artist bu” Yarg. 4.C.D. E:2020/19683 K:2021/16627, 31.05.2021<br>79-“sana mı soracağım lan” Yarg. 4.C.D. E: 2020/11777, K:2021/13830, 17.05.2021<br>80-“siz insan mısınız” Yarg.2.C.D. E: 2020/9912, K: 2021/408 – 20.01.2021<br>81-“baş müdürün yalakasısın” Yarg.4.C.D. E: 2020/4001, K:2021/153, 11.01.2021<br>82-“sen kim oluyorsun lan” Yarg.4.C.D. E: 2020/5195, K: 2021/1724, 21.01.2021<br>83-“karı gibi ağlıyorsun” Yarg.1.C.D. E: 2021/1732, K: 2021/5031, 24.03.2021<br>84-“size de kurumunuza da başlarım lan” Yarg. 2. C.D.<br>E: 2020/10052, K:2021/38, 18.01.2021<br>85-“hepiniz aynısınız lan” Yarg.4.C.D. E. 2021/1378, K: 2021/11042, 25.03.2021<br>86-“karı gibi kıvırıyorsun” Yarg.2.C.D. E:2020/10152, K:2021/1959 09.02.2021<br>87-“Allahsızsın, vicdansız ve acımasızsın” Yarg.15.C.D., E: 2017/36393, K: 2021/6049, 26.05.2021<br>88-“Çek lan arabanı” Yarg.8.C.D., E:2017/24670, K: 2020/10838, 03.03.2020<br>89-“Adilik yapma” Yarg. 18.C.D., E: 2019/9840, K:2020/5687, 05.03.2020<br>90-“IQ seviyen düşük” Yarg.18C.D., E:2020/411, K:2020/7982, 23.06.2020<br>91-“Allahınız kitabınız yok mu sizin” Yarg.18.C.D. E:2017/3071, K:2019/6713, 03.04.2019<br>92-“Al kimliğimi bak da egonu tatmin et” Yarg.18 C.D. E:2017/2776, K. 2019/6708, 03.04.2019<br>93-“görevinizi adam gibi yapın” Yarg. 18 C.D. E:2018/6156, K:2019/16798, 28.11.2019<br>94-“Hangi orospu ile gezersen gez” Yarg. 18 C.D. E:2017/7415, K: 2018/7716, 21.05.2018<br>95-“Allah çoluğunuzdan çocuğunuzdan çıkartsın” Yarg. 18 C.D. E:2016/12319, K: 2018/11613, 24.09.2018<br>96-“gözün kör olsun” Yarg.18.C.D. E:2015/41130, K:2017/11725, 25.10.2017<br>97-“gıcık” Yarg. 18.C.D. E:2015/27033, K:2016/5622, 22.03.2016<br>98-“zehir zıkkım olsun aldığınız maaş” Yarg.18.C.D. E:2015/4989, K:2015/9334, 27.10.2015<br>99-“ciğerin ağzından gelsin” Yarg.18.C.D. E:2015/5253, K:2015/5376, 15.09.2015<br>100-“yaktığın çırada kavrul inşallah” Yarg. 18.C.D. E: 2018/3618, K:2019/590, 08.01.2019</p>
]]></content:encoded>
					
		
		
			</item>
		<item>
		<title>ETAP  Pardus Programlama Notlarım – 1</title>
		<link>https://www.tankado.com/etap-pardus-programlama-notlarim-1/</link>
		
		<dc:creator><![CDATA[Özgür Koca]]></dc:creator>
		<pubDate>Sat, 18 Jan 2025 02:38:41 +0000</pubDate>
				<category><![CDATA[Linux]]></category>
		<guid isPermaLink="false">https://www.tankado.com/?p=9174</guid>

					<description><![CDATA[Bu yazıda QR Kod (EBAQR) özelinde LightDM altyapısı hakkında yaptığım incelemeleri paylaşıyor olacağım. İncelediğim kısmı kadarıyla altyapının büyük kısmında kod emeği olan Bayram Karahan hocamızın emeğine sağlık. Greeter&#8217;ın EBAQR altyapısı aşağıdaki görseldeki gibi. &#8220;Sabit kullanıcı (ebaqr) giriş&#8221; ve &#8220;Kişiye Özel Giriş&#8221; giriş seçeneklerinin yer aldığı ETAP sistemlerde lightdm-greeter adlı grafik giriş yöneticisi kullanılıyor. Karşılama ekranını &#8230; <a href="https://www.tankado.com/etap-pardus-programlama-notlarim-1/" class="more-link">Okumaya devam et<span class="screen-reader-text"> "ETAP  Pardus Programlama Notlarım &#8211; 1"</span></a>]]></description>
										<content:encoded><![CDATA[
<p class="wp-block-paragraph">Bu yazıda QR Kod (EBAQR) özelinde LightDM altyapısı hakkında yaptığım incelemeleri paylaşıyor olacağım. İncelediğim kısmı kadarıyla altyapının büyük kısmında kod emeği olan Bayram Karahan hocamızın emeğine sağlık. Greeter&#8217;ın EBAQR altyapısı aşağıdaki görseldeki gibi. </p>



<figure class="wp-block-image size-large"><a href="https://www.tankado.com/wp-content/uploads/2025/01/eta.drawio-scaled.png"><img loading="lazy" decoding="async" width="1024" height="719" src="https://www.tankado.com/wp-content/uploads/2025/01/eta.drawio-1024x719.png" alt="" class="wp-image-9289" srcset="https://www.tankado.com/wp-content/uploads/2025/01/eta.drawio-1024x719.png 1024w, https://www.tankado.com/wp-content/uploads/2025/01/eta.drawio-300x211.png 300w, https://www.tankado.com/wp-content/uploads/2025/01/eta.drawio-768x540.png 768w, https://www.tankado.com/wp-content/uploads/2025/01/eta.drawio-1536x1079.png 1536w, https://www.tankado.com/wp-content/uploads/2025/01/eta.drawio-2048x1439.png 2048w, https://www.tankado.com/wp-content/uploads/2025/01/eta.drawio-1200x843.png 1200w" sizes="auto, (max-width: 709px) 85vw, (max-width: 909px) 67vw, (max-width: 1362px) 62vw, 840px" /></a></figure>



<p class="wp-block-paragraph">&#8220;Sabit kullanıcı (ebaqr) giriş&#8221; ve &#8220;Kişiye Özel Giriş&#8221; giriş seçeneklerinin yer aldığı ETAP sistemlerde lightdm-greeter adlı grafik giriş yöneticisi kullanılıyor. Karşılama ekranını (login) oluşturan python kaynak kodları <strong>/usr/share/pardus/pardus-lightdm-greeter</strong> dizininde bulunabilir. Aşağıda ekran görüntüsü yer alan QR giriş seçenekleri <strong>main.py </strong>tarafından yüklenen <strong>module/ebaonline.py</strong> tarafından sağlanıyor. </p>



<span id="more-9174"></span>



<p class="wp-block-paragraph">Kaynak kod incelendiğinde bir <strong>WebKit.WebView() </strong>nesnesi içinde &#8220;<strong>https://giris.eba.gov.tr/EBA_GIRIS/studentQrcode.jsp</strong>&#8221; sayfasının yüklendiği görülebilir. Bu webview nesnesinin <strong>load-changed</strong> olayına bağlanan <strong>response_dataonline</strong> yordamı sayfa tazelendiğinde çalışacak şekilde ayarlanmış. Sayfanın tazelenmesi için EBA uygulaması üzerinden kamera ile QR kodu okutulması yeterli. Okutma gerçekleştikten sonra webview&#8217;de yüklü sayfaya taramayı yapan kullanıcıya ait JSON verisi EBA sunucusu tarafından geri döndürülüyor (Response). Sayfayı bir tarayıcıda açarak network hareketlerinden ilgili JSON verisini inceleyebilirsiniz.</p>



<figure class="wp-block-image size-full is-resized"><img loading="lazy" decoding="async" width="610" height="496" src="https://www.tankado.com/wp-content/uploads/2025/01/2025-01-17_15-46-50.png" alt="" class="wp-image-9175" style="width:394px;height:auto"/></figure>



<p class="wp-block-paragraph"><strong>ebaonline.py</strong> modülü JSON biçiminde gelen response verisi içerisinden gerekli alanları parsellenerek bir python listesine dönüşütürüyor. ebaonine.py modülünün python listesini oluşturmak için kullandığı alanların listesi aşağıdan görülebilir.</p>



<pre class="wp-block-code"><code>role=str(persondata&#91;"userInfoData"]&#91;"role"])
userid=persondata&#91;"userInfoData"]&#91;"userId"]
name=persondata&#91;"userInfoData"]&#91;"name"]
surname=persondata&#91;"userInfoData"]&#91;"surname"]
username = self.username_prepare(name+"-"+surname)</code></pre>



<p class="wp-block-paragraph">modül kodunun ilerleyen satırları incelendiğinde; oturumun açılması için bu veri yapısı TCP 7777&#8217;yi dinleyen bir prosese gönderiliyor. Veri yapısının gönderilmesi için aşağıdaki format kullanılmış.</p>



<p class="wp-block-paragraph">Eğer &#8220;Sabit kullanıcı (ebaqr) giriş&#8221; seçilmiş ise sokete gönderilen veri şuna benziyor ebaqrebaqr:ozgur-koca:209823d20ad93948434</p>



<p class="wp-block-paragraph">Eğer &#8220;Kişiye özel giriş&#8221; seçilmiş ise sokete gönderilen veri şunun gibi oluyor: ebaonline:ozgur-koca:209823d20ad93948434</p>



<p class="wp-block-paragraph">İlk alandaki değerler ebaqrebaqr veya ebaqronline hangi kullanıcı ile oturum açılacağını söylüyor. Yani sabit kullanıcı olan <strong>ebaqr </strong>ile mi yoksa kullanıcının <strong>ad-soyad</strong> ile oluşturulan kişisel hesabı ile mi. Diğer alan ad (name) ve soyad (surname) alanlarından oluşturulan kullanıcı adını ifade ediyor. Son alan ise kullanıcının EBA üzerindeki kullanıcı ID&#8217;si ve bu kullanıcının geçici parolasını tanımlamak için kullanılıyor.</p>



<pre class="wp-block-code"><code>if role == "2" or role == "300" or role == "301":
  os.system("echo '"+self.loginType+":"+username+":"+userid+"' | netcat localhost 7777 &amp;")</code></pre>



<p class="wp-block-paragraph">Öğretmen kullanıcılarının rol tanımı EBA sisteminde 2 ile ifade edilmiş. 39&#8217;un veli olduğu görülebiliyor. 300 ve 301 ile ilgili bir dökümantasyon paylaşılmamış.</p>



<pre class="wp-block-code"><code>"userRoleList": &#91;
            {
                "id": 39,
                "name": "Veli",
                "userAuthorities": null
            },
            {
                "id": 2,
                "name": "Öğretmen",
                "userAuthorities": null
            }
        ],</code></pre>



<p class="wp-block-paragraph">TCP 7777&#8217;ye gönderilen bu veri ilgili kullanıcı hesabının oluşturulması ve oturum açılması için yeterli. Komut satırında aşağıdaki komutu vererek <strong>ali-candan</strong> isimli kullanıcının oluşturulmasını ve otomatik olarak oturum açılmasını sağlayabilirsiniz.</p>



<pre class="wp-block-code"><code>echo 'ebaqronline:ali-candan:parola' | netcat localhost 7777</code></pre>



<p class="wp-block-paragraph">Burada <strong>netcat </strong>aracı echo ile pipe edilen verinin TCP 7777. porta yazılmasını sağlamak için kullanılmış. TCP 7777&#8217;yi hangi prosesin dinlediğini görmek için <strong>lsof </strong>komutundan faydalandığımızda:</p>



<pre class="wp-block-code"><code><strong># lsof -i :7777</strong>
COMMAND   PID USER   FD   TYPE DEVICE SIZE/OFF NODE NAME
tcpserver 771 root    3u  IPv4  18602      0t0  TCP *:7777 (LISTEN)</code></pre>



<p class="wp-block-paragraph">PID numarası 771 olan tcpserver adından bir binary olduğunu görüyoruz. Bu binary&#8217;iyi hangi prosesin çalıştırdığını ya da dinlendiğini görmek için ise <strong>ps </strong>aracını aşağıdaki gibi çalıştırabiliriz:</p>



<pre class="wp-block-code"><code><strong># ps -p 771 -o pid,ppid,args</strong>
PID    PPID COMMAND
771       1 tcpserver -v -P -R -H -l 0 0.0.0.0 7777 /usr/bin/pardus-lightdm-greeter-listener</code></pre>



<p class="wp-block-paragraph">TCP soketine gelen verilerin <strong>/usr/bin/pardus-lightdm-greeter-listener</strong> programına yönlendirildiğini görüyorum. Bu yapı bir systemd servisi ile (pardus-lightdm-greeter-listener.service) ayakta tutuluyor.  Yani 7777. porta bir veri akışı olduğunda bu veri <strong>pardus-lightdm-greeter-listener</strong>  programının başlatılmasında kullanılıyor. Bu program aslında bir bash betiği. Betiğin içinde kullanıcı hesabını oluşturan <strong>add_user()</strong> alt programının kodları ise aşağıdaki gibi:</p>



<pre class="wp-block-code"><code>#!/bin/bash
add_user()
{
user="$1"
defpass="$user"
pass="$2"
if &#91; ! -d /home/$user ] ; then
            useradd -m $user -s /bin/bash -p $(openssl passwd "$pass") -U -d /home/$user
            useradd $user-qr -s /bin/bash -p $(openssl passwd "$defpass") -d /home/$user
            mkdir -p /home/$user
            chown $user -R /home/$user
            chmod 755 /home/$user
            uida=$(grep "^$user:" /etc/passwd | cut -f 3 -d ":")
            uidb=$(grep "^$user-qr:" /etc/passwd | cut -f 3 -d ":")
            sed -i "s/:$uidb:/:$uida:/g" /etc/passwd
            for g in floppy audio video plugdev netdev $user; do usermod -aG $g $user-qr || true;usermod -aG $g $user || true;done
            #usermod $user-qr -p $(openssl passwd -6 "$pass")
       fi
}</code></pre>



<p class="wp-block-paragraph">Bu alt program incelendiğinde <strong>ali-candan</strong> ve <strong>ali-candan-qr</strong> isimli olmak üzere iki tane kullanıcı hesabı oluşturuyor ve gereki hesap ayarlarını (ev dizini, erişim izinleri, grup ayarları vb) yapıyor.</p>



<p class="wp-block-paragraph">İkinci useradd komutuna baktığımızda ilkinden farklı olarak parola tanımının $defpass ile yapıldığını görebiliriz. Bu diğerinden farklı olarak ali-candan-qr kullanıcı adlı hesaba <strong>kullanıcı adı ile aynı</strong> ($defpass=&#8221;$user&#8221;) olan bir parolanın tanımlanmasını sağlıyor.</p>



<p class="wp-block-paragraph">İstenilen hesabın oluşturulması ve oturumunun açılması için tcpserver&#8217;a veri akıtmak yerine veriyi dorudan bu betiğe göndermek de mümkün. Aynı sonucu yaratıyor. Buradaki tcp soket yaklaşımının nedeni uzaktan (ağ tabanlı) kullanıcı oluşturma/oturum açma isteği olabilir.</p>



<pre class="wp-block-code"><code><strong># echo 'ebaqronline:ali-candan:parola' | /usr/bin/pardus-lightdm-greeter-listener</strong>
PID: 116322
ebaqronline:ali-candan:parola
Type: ebaqronline
User: ali-candan
Password: parola
{"username": "ali-candan-qr", "password": "parola"}
Failed to connect pardus lightdm greeter</code></pre>



<p class="wp-block-paragraph">Betiğin tamamını incelediğimizde oturum açma işlemi için <strong>greeter_login() </strong>adındaki <strong>alt programa</strong> kullanıcı adı ve parolanın parametre geçildiğini görüyoruz. Aslında bu alt program  <strong>/usr/share/pardus/pardus-lightdm-greeter/cli.py</strong> ile sembolik olarak bağlı <strong>/usr/bin/sshlogin</strong>&#8216;in kendisi. cli.py&#8217;a sembolik link içeren bir diğer dosya da <strong>/usr/bin/pardus-login</strong> konumunda bulunuyor.</p>



<pre class="wp-block-code"><code>/usr/bin/sshlogin $1 $2 &amp;</code></pre>



<pre class="wp-block-code"><code><strong># ls -la /usr/bin/sshlogin</strong>
lrwxrwxrwx 1 root root 45 Eyl 24 12:55 /usr/bin/sshlogin -&gt; ../share/pardus/pardus-lightdm-greeter/cli.py</code></pre>



<pre class="wp-block-code"><code><strong># ls -la /usr/bin/pardus-login</strong>
lrwxrwxrwx 1 root root 45 Eyl 24 12:55 /usr/bin/pardus-login -&gt; ../share/pardus/pardus-lightdm-greeter/cli.py</code></pre>



<pre class="wp-block-code"><code>sshlogin ali-candan parola
{"username": "ali-candan", "password": "parola"}</code></pre>



<p class="wp-block-paragraph">Sonuç olarak; yalnızca var olan bir kullanıcının oturumunu açmak için sshlogin ve diğer sembolik aracıları devreden çıkartarak aşağıdaki komut da çalıştırılabilir. Buradan yola çıkarak cli.py modülünün lightdm aracılığıyla oturum açmaktan sorumlu olduğunu söyleyebiliriz.</p>



<pre class="wp-block-code"><code>python3 /usr/share/pardus/pardus-lightdm-greeter/cli.py ali-candan parola</code></pre>



<p class="wp-block-paragraph">Bu incelemeleri yaptığım sırada şunu farkettim; betik kullanıcı hesaplarını oluşturduktan sonra bazen oturum açmada başarısız oluyor ve tahta siyah ve boş bir ekranda kalıyor. Bu durum systemctl restart lightdm ile greeter&#8217;ın yeniden başlatarak çözülüyor fakat <strong>&#8220;/usr/bin/pardus-lightdm-greeter-listener: satır 90: Masaüstü: komut yok&#8221; dan da anlaşılacağı üzere betikde bir hata var (Ocak 2024 itibariyle güncellenmiş bir sürümdeyiz). 90&#8217;ı satıra baktığımızda yorum satırının # ile kapatmasının unutulduğunu görüyorum.</strong> Ancak bu betiğin çalışmasını etkilemeyecek önemsiz bir hata.</p>



<p class="wp-block-paragraph">Oturumun açılmasını sağlayan betik parçası aşağıdaki gibi, burada 4 saniye aralıkla iki kez giriş işlemi yaptırılmış. Eğer grafik ekranda &#8220;Sabit Kullanıcı (ebaqr) Giriş&#8221; seçilmiş ise <strong>&#8220;$type&#8221; == &#8220;ebaqrebaqr&#8221;</strong> şartlı if bloğu, &#8220;Kişiye Özel Giriş&#8221; seçilmişse <strong>&#8220;$type&#8221; == &#8220;ebaqronline&#8221;</strong> şartlı if blok çalışıyor. </p>



<pre class="wp-block-code"><code>#****************************************************************
greeter_login()
{
/usr/bin/sshlogin $1 $2 &amp;
sleep 4
/usr/bin/sshlogin $1 $2 &amp;
}
read MESSAGE
echo "PID: $$"
echo "$MESSAGE"
type=$(echo $MESSAGE|cut -d":" -f1)
#****************************************************************
if &#91; "$type" == "ebaqronline" ]
then
user=$(echo $MESSAGE|cut -d":" -f2)
psw=$(echo $MESSAGE|cut -d":" -f3)

echo "Type: $type"
echo "User: $user"
echo "Password: $psw"
add_user $user $psw
greeter_login "$user-qr" $psw
fi
#****************************************************************
if &#91; "$type" == "ebaqrebaqr" ]
then
user=$(echo $MESSAGE|cut -d":" -f2)
#psw=$(echo $MESSAGE|cut -d":" -f3)
psw="rastgele-parola"
user="ebaqr"
echo "Type: $type"
echo "User: $user"
echo "Password: $psw"
greeter_login $user $psw
fi
</code></pre>



<p class="wp-block-paragraph"><strong>ebaqrebaqr</strong> if bloğuna bakacak olursak kullanıcı adı olarak ebaqr, parola olarak ise rastgele üretilen bir parola kullanılıyor. </p>



<p class="wp-block-paragraph">lightdm tarafında oturum açma sürecinin nasıl işlediğini görmek için cli.py incelediğimizde aşağıdaki gibi kullanıcı adı ve parolanın json biçimine dönüştürülerek /var/lib/lightdm/pardus-greeter dosyasına append yani ekleme modunda  yazdığını görüyoruz. </p>



<pre class="wp-block-code"><code>def login(username=None, password=None, session=None):
    if not os.path.exists("/var/lib/lightdm/pardus-greeter"):
        print("Failed to connect pardus lightdm greeter")
        exit(2)
    data = {}
    data&#91;"username"] = str(username)
    data&#91;"password"] = str(password)
    if session != None:
        data&#91;"session"] = str(session)

    with open("/var/lib/lightdm/pardus-greeter", "a") as f:
        print(json.dumps(data))
        f.write(json.dumps(data))
        f.flush()</code></pre>



<p class="wp-block-paragraph">/var/lib/lightdm/pardus-greeter konumuna gittiğimizde ise bu dosyanın aslında bir named pipe (FIFO) olduğu anlaşılıyor. Bu pipe yukarıdakine benzer (tcpserver) şekilde prosesler arasında iletişim kurmak için kullanılan bir linux yöntemi. ls -la çıktısındaki p (pipe) takısından bunu anlayabiliriz. lightdm-greeter yani oturum açma ekranı aktif olduğunuda bu pipe&#8217;da mevcut oluyor. Kullanıcı oturum açtığında ise DELETE_SELF işlemi ile kendini siliyor (root@etahta:/var/lib/lightdm# inotifywait -m pardus-greeter ile görülebilir). Bu aynı zamanda önceki kod parçasında görüleceği üzere <strong>os.path.exists</strong> işlevi ile lightdm-greeter&#8217;ın etkin olup olmadığını sınamak için kullanılmış. </p>



<pre class="wp-block-code"><code>root@etahta:/var/lib/lightdm# <strong>ls -la</strong>
toplam 40
drwxr-x---  7 lightdm lightdm 4096 Oca 18 00:09 .
drwxr-xr-x 44 root    root    4096 Oca 17 00:14 ..
drwxr-xr-x  6 lightdm lightdm 4096 Oca 16 21:39 .cache
drwx------  4 lightdm lightdm 4096 Oca 16 21:39 .config
drwxr-xr-x  7 root    root    4096 Oca 18 00:09 data
drwx------  3 lightdm lightdm 4096 Oca 16 21:39 .dbus
drwx------  3 lightdm lightdm 4096 Oca 16 21:39 .local
prw-------  1 lightdm lightdm    0 Oca 18 00:09 pardus-greeter
-rw-r--r--  1 lightdm lightdm  822 Oca 18 00:09 pardus-lightdm-greeter.log
-rw-------  1 lightdm lightdm  215 Oca 18 00:09 .wget-hsts
-rw-------  1 lightdm lightdm   51 Oca 18 00:09 .Xauthority
</code></pre>



<p class="wp-block-paragraph">Görebildiğimiz gibi lighdm oturum açacak kullanıcıyı buradan kabul ediyor. Bu  FIFO pipe&#8217;ı ise<strong> module/daemon.py</strong> tarafından dinleniyor ve aşağıda kod parçasından görüleceği üzer ekrandaki kullanıcı parola kutularını doldurarak lightdm.login() işlevini çalıştırıyor.</p>



<pre class="wp-block-code"><code>GLib.idle_add(loginwindow.o("ui_entry_username").set_text, username)
GLib.idle_add(loginwindow.o("ui_entry_password").set_text, password)
GLib.idle_add(loginwindow.event_login_button,loginwindow.o("ui_button_login"))
lightdm.login()</code></pre>



<p class="wp-block-paragraph">module/gtkwindow.py içinde tanımlanan login_handler() işlevi de son iş olarak self.kill_windowmanager() metodunu çalıştırarak Greeter&#8217;ı yok ediyor. </p>



<h2 class="wp-block-heading">Açılışta başlatılan betikler</h2>



<p class="wp-block-paragraph">Grafik oturumun başlangıcında yürütelen yapılandırmalardan birisi olan <strong>/etc/xdg/autostart/newpassword.desktop</strong> içeriği incelendiğinde <strong>/usr/bin/newpassword.sh</strong> betiğini çalıştırdığı görülebilir. Betik <strong>$HOME/.config/np</strong> konumundaki dosyanın varlığını kontrol ederek kullanıcıya <strong>sifredegistir </strong>diyalog penceresini görüntülüyor. Bu betiğin içeriği aşağıdaki gibi:</p>



<pre class="wp-block-code"><code>#!/bin/bash
passwordstatus="$HOME/.config/np"

if &#91; -f $passwordstatus ]; then
        echo "dosya var"

else
    echo "dosya yok"
        #touch $passwordstatus
        notify-send -i password "İlk Defa Oturum Açıyorsunuz.." -u critical

        notify-send -i password "Şifrenizi Mutlaka Değiştirin.." -u critical
        /usr/bin/sifredegistir

fi
</code></pre>



<p class="wp-block-paragraph">Eğer kullanıcı sifredegistir binary&#8217;isini kullanarak bir parola tanımlarsa $HOME/.config/np  (muhtemelen <strong>n</strong>o <strong>p</strong>assword) konumunda <strong>boş bir dosya</strong> oluşturuluyor.</p>
]]></content:encoded>
					
		
		
			</item>
	</channel>
</rss>