amblem
Herkes İçin Linux
Furkan BaytekinFurkan Baytekin
16/06/2023
Rehber
GKKKitle Amblemi

Çalıştırmaktan Kaçınmanız Gereken Komutlar

Bu makalede gösterilen hiçbir komutu doğrudan çalıştırmayın. Önce ne yaptığınızın farkında olun. Bu makalenin amacı internette gördüğünüz komutları bilinçsizce çalıştırmanıza engel olmak ve bir farkındalık yaratmaktır. İnternet trolleri insanların bilgisayarlarına zarar verme fikrinden bile zevk almaktalar. Bu trollerin oyunlarına düşmeyin. Çalıştıracağınız komutların ne olduğu hakkında bir fikir sahibi olun.

Trollerin bazı oyunlarından yola çıkarak asla çalıştırmamanız gereken bazı komutlara bakalım.

1) Sistemin Tamamını Silmek

rm -rf /
rm -rf --no-preserve-root /
rm -rf /*

Bu komut, sistemdeki her şeyi silmeye neden olacaktır. Birçok rm komutu varyasyonu, doğrudan kök dizinini silmeye karşı korumalı olacaktır. Bu nedenle ilk komut belki işe yaramaz ancak bu korumayı ortadan kaldırmak ya da kök dizininin içindeki her şeyi sil demek yine bu işlemi gerçekleştirecektir. Bu komutu çalıştırdıktan sonra sistemde kalıcı hasarlar oluşacaktır. Dışarıdan müdahale olmadan sistem yeniden kurulamaz. Önceki dosyaların çoğuna erişilemez.

2) Fork Bomb (Çatal Bombası)

Çataldan kasıt, bir işlemin çatalın uçları gibi kendini çoğaltmasıdır. Bunu her oluşturulan her işlem yapmaya devam edecektir. Böylece sistem kaynakları tükenene kadar bu işlem gerçekleştirilecek ve bilgisayarınız donacaktır. Bilgisayarı yeniden kullanılabilir hale getirmenin tek yolu, onu yeniden başlatmaktır.

:(){ :|: & };:

Sistemde dosya taşıma işlemleri varken bu komutu çalıştırırsanız belki taşıdığınız dosyalar hasar görebilir ancak modern bir dosya sistemi kullanıyorsanız bu dosyalar sizin müdahaleniz olmadan kurtarılmaya çalışılacaktır.

3) Dosya Sistemi Oluşturma

mkfs.XXX -XXX /XXX/XXX
mkfs -t XXX -XXX /XXX/XXX

X'lerle belirtilen yerlere bazı farklı değerler gelebilir. Verilen şekillerde görünmeleri mümkündür:

mkfs.ext4 /dev/sda1
mkfs.fat -F32 /dev/nvme0n1

Bu komut make filesystem anlamına gelir ve bir dosya sistemi oluşturmaya yarar. Bilgisayarınızın fazla ısınması, bir dosyanın silinmemesi, bir uygulamanın çalışmaması gibi sorunların çözümü bir dosya sistemi oluşturmak olamaz. Trollerin oyunlarından uzak durun.

Bu komut ile bir dosya sistemi oluşturduğunuzda belirtilen diskte ya da disk bölümündeki tüm dosyalar silinecek ve sıfırdan bir dosya sistemi oluşturmuş olacaktır. Dosyaları kurtarmak için ileri düzey dosya kurtarma yöntemlerine başvurmanız gerekecektir ki bu yöntemler hiçbir zaman %100 başarı garantisi veremezler.

4) Standart Çıktı ve Hata Yönlendirme

Standart çıktı ve hata dosyaları 1 ve 2 numaralı dosyalardır. büyüktür işareti ise yönlendirme işlemine yarar. Başına 1 yazılması gerekmeksizin çıktıyı, 2 yazılması durumunda hata çıktılarını belirtilen dosyaya yönlendirir.

[herhangi bir komut] > /dev/sda
[herhangi bir komut] 1> /dev/sda2
[herhangi bir komut] 2> /dev/nvme0n1
[herhangi bir komut] >> /dev/nvme0n2p3
[herhangi bir komut] 1>> /media/USB
[herhangi bir komut] 2>> /mnt/HDD

Belirtilen gösterimde yönlendirme karakterlerinden önce ne geldiği hiç önemli değildir. Burada asıl önemli olan çıktıların ne olduğudur. Çıktı sıradan bir metin dosyası olduğu sürece sıkıntı yoktur. Ancak örneklerde verilen dizinler bir disk ya da disk bölümünü göstermektedir. Sıradan bir komut çıktısı ile tüm diski değiştirmek demek dosyalarınızın kaybına neden olmak anlamına gelmektedir. İleri düzey dosya bir kurtarma yöntemi ile dosyalar garanti olmaksızın kurtarılabilir.

5) Sıfırlarla Doldurma

dd if=/dev/zero of=/dev/sda

Bir diski ya da bir dosyayı sıfır bitleri ile doldurmak, eski içeriğin kaybolması anlamına gelmektedir. Bütün bitler sıfıra çevrildiği için dosya kurtarma işlemi de oldukça zorlaşmaktadır. Diskteki bitler 1 ve 0'a fiziksel anlamda tam olarak gitmeyebilirler. 0'a yakınsa 0 olarak okunur. Bit sıfıra ne kadar yakın, ne kadar uzak ayrımı yaparak dosya kurtarmak imkansıza yakın olsada mümkün olabilmektedir.

5.5) Diski Rastgele Bitlerle Doldurma

dd if=/dev/random of=/mnt/SSD
dd if=/dev/urandom of=/dev/nvme0n2p3

Rastgele bitlerle yazmak, bitin 0'a ya da 1'e yakınlığını anlamayı imkansız hale getirmekte ve dosya kurtarmayı imkansız kılmaktadır. Bu komutları bilmeden çalıştırmayınız. Ciddi anlamda güçlülerdir ve kontrolsüz güç her zaman zararlıdır.

6) Uzay Boşluğuna Taşıma

mv XXX /dev/null

Bir dosyayı taşımak veya yeniden adlandırmak için kullanılan bu komuta varış noktası olarak uzay boşluğunu (/dev/null) vermek, dosyaların yok olması anlamına gelmektedir. İleri düzey dosya kurtarma yöntemleri denenebilir.

7) Dosyaları Doğrama

shred XXX

Kanalda daha önce bahsedilen bu komut dosyaları rastgele bitlerle donatarak okunmaz ve kurtarma yöntemlerini kullanılamaz hale getirir. Bu komutu kullanarak sileceğiniz bir dosya, disk ya da disk bölümü kurtarılamayacak şekilde düzenlenir.

8) Bilinmeyen Kaynaktan Program İndirip Çalıştırmak

wget XXX -O - | sh -
sh -c "$(wget XXX -O -)"
curl -XXX XXX | sh
sh -c (curl -XXX XXX)

Bu komutlar bir çalıştırılabilir dosyayı indirip çalıştırmaya yarar. Dosyanın içeriği bilmeden bu komutları çalıştırmanız önerilmez. Tanımadığınız, güvenmediğiniz birinden gelen bu tarz komutları çalıştırmayın.

9) Herkese Erişim İzni Vermek

chmod 777 XXX
chmod -R 777 XXX
chmod a+rwx XXX
chmod -R a+rwx XXX

Bazı dosyalar güvenlik için, bazıları çalışma mantıkları gereği herkese kullanım izni vermemelidir. Yazma, okuma ve çalıştırma yetkileri farklı gruplara ve kullanıcılara farklı şekillerde verilmelidir. Bu komut bir bilgisayar korsanının dosyalarınıza erişmek istemesi ya da sisteminizde kalıcı hasarlar vermek istemi sonucunda karşınıza çıkabilir. Bu nedenle chmod komutunu kullanırken dikkatli olun.

Buradaki -R parametresi ise dizinlerin içerisindeki dosyaları da kapsamayı sağlamaktadır.

9.5) Sahiplik/Grup Değiştirme

chown USER:GROUP XXX
chown -R USER:GROUP XXX
chgrp GROUP XXX
chgrp -R GROUP XXX

Belirli kimselere belirli izinler verilir dedik. Sizin kim olduğunuz bilgisi (dosyaya göre) değişirse yani artık dosya sahibi değil diğer kişilere dahilseniz dosya hakkında söz sahipliğiniz de değişecektir.

10. Dosya Niteliklerini Değiştirmek

chattr +XXX XXX
chattr -XXX XXX
chattr =XXX XXX

Dosya nitelikleri lsattr komutuyla öğrenilebilir ve gerekmedikçe değiştirilmemelidir. Bir dosyanın silinmesi durumunda gerçekleştirilecekler, dosyanın düzenlenme ve ekleme durumlarına müdahale etme, dosyanın nasıl derleneceğine karar verme gibi özelliklerini düzenleyebilen bu nitelikler bilinçsizce kullanılmamalıdır.

Örneğin i ile gösterilen nitelik eklendiğinde dosya immutable (değişmez) hale gelecektir ve root kullanıcısı tarafından dahi değiştirilemeyecektir. Elbette root kullanıcısının bu niteliği kaldırma yetkisi her zaman olacaktır.

Bu makalede çalıştırmamanız ve çalıştırırken dikkat etmeniz gereken komutlara yer verdim. Umarım birkaç kişinin de olsa sorun yaşamasına engel olabilirim.