powershell ve terminal nedir, powershell nedir, terminal nedir, powershell kullanımı, terminal kullanımı
Bu Yazının İçeriği
- 1 Windows komut satırı nedir? PowerShell ve Terminal arasında ne fark var? Detaylıca anlatıyoruz.
- 2 Komut İstemi’ni Çalıştırma
- 3 Microsoft PowerShell Çalıştırma
- 4 Windows Terminal Çalıştırma
- 5 Windows’ta Kullanıcı Yetkileri
- 6 Komut İstemini Yönetici Olarak Çalıştırma
- 7 Sistemde Hangi Kullanıcı Hesabında Olduğunuzu Öğrenme
Windows komut satırı nedir? PowerShell ve Terminal arasında ne fark var? Detaylıca anlatıyoruz.
Her bir işletim sisteminde komut satırı veya konsol olarak adlandırdığımız bir Shell, yani kabul yer alıyor. Peki bu yazılım ne işe yarıyor? Kabuğu aslında sistemdeki bazı işlemler için bir aracı olarak düşünebilirsiniz. Bunu yabancı biriyle konuşurken çevirmen kullanmaya benzetebilirsiniz. Bir proje üzerinde beraber çalışırken çevirmene derdinizi ve beraber yapmak istediğiniz projeyi anlatırsınız. O da yabancının anlayabileceği dile uygun şekilde çevirir. Kabuk da (Shell) bizlerin işletim sistemine bir şeyler yaptırmak istediğinde kullanabileceği alternatif yollardan biridir. Biz komut satırına komutu yazarız, o da işletim sisteminin çekirdeğinin anlayabileceği şekilde “çağrı“ yapar ve işlem gerçekleşir.
Windows sistemlerde ise üç adet komut satırı yapısı bulunuyor. Bunlar:
- Command Prompt
- Microsoft PowerShell
- Windows Terminal
Bunları tek tek açıklayacak olursak:
- Komut İstemi (Command Prompt): IBM ve Microsoft tarafından geliştirilip ilk olarak Aralık 1987 yılında kullanıcılara sunulan komut istemcisidir. OS/2, MS-DOS, Windows ve ReactOS tarafından varsayılan konsol olarak kullanılır. “cmd.exe” olarak da bildiğimiz bu yazılım, sistem ile kullanıcının etkileşime girmesi için kullanılan en temel kabuktur.
- Microsoft PowerShell: Microsoft tarafından Command Prompt’a alternatif olarak geliştirilen; çok daha güçlü, gelişmiş ve kendisine özgü “Cmdlet” adı verilen bir scripting yapısına sahip komut satırı uygulamasıdır. Windows 7’den beri tüm Windows sistemlerle beraber gelen PowerShell’i kullanarak sistemde yetenekleriniz ölçüsünde neredeyse her şeyi yapabilirsiniz. PowerShell aynı zamanda varsayılan Command Prompt komutlarını da destekliyor.
- Windows Terminal: Aslında Windows Terminal’e tam anlamıyla bir kabuk diyemeyiz. Command Prompt, PowerShell, WSL (Windows Subsystem for Linux) destekli yenilikçi bir komut istemci uygulaması. Oldukça modern ve minimal çizgilere sahip diyebiliriz. Windows Terminal’i Microsoft Store üzerinden edinebilirsiniz.
Komut İstemi’ni Çalıştırma
Windows’un en temel ve varsayılan komut istemcisi olan Command Prompt, aslında C:\Windows\System32\cmd.exe
yolunda bulunan başlı başına bir yazılım. Komut istemine genel itibariyle üç veya daha farklı şekillerde ulaşabilirsiniz:
- Windows Search hizmetinden faydalanarak “cmd” veya “komut istemi” (tırnaklar olmadan) kelimelerini aratıp karşımıza çıkan “Komut İstemi” sonucuna tıklayarak.
- Çalıştır hizmetini açıp “cmd” (tırnaklar olmadan) girerek “Tamam” butonuna basarak.
C:\Windows\System32
dizininin altında bulundancmd.exe
dosyasını çalıştırarak.
Ben aşağıdaki ekran görüntüsünde “Çalıştır” aracını kullanarak komut istemine ulaşmayı tercih ettim. Siz komut istemini bu yollardan dilediğinizi ve size en kolay geleni kullanarak çalıştırabilirsiniz. Çalışmasında herhangi bir farklılık olmayacaktır.
Microsoft PowerShell Çalıştırma
Microsoft tarafından daha güçlü özelliklere sahip yetenekli bir kabuk yapısı olarak geliştirilen PowerShell’e de üç şekilde ulaşabilirsiniz.
- Windows Arama hizmetinden faydalanarak “PowerShell” kelimesini aratıp karşımıza çıkan “PowerShell” sonucuna tıklayarak.
- Çalıştır hizmetini açıp “powershell” (tırnaklar olmadan) girerek “Tamam” butonuna basmak.
C:\Windows\System32\WindowsPowerShell\v1.0
yolunda bulunan “powershell.exe” dosyasını çalıştırarak.
Ben aşağıda yer alan ekran görüntüsünde görüldüğü gibi dizine gidip çift tıklayarak “PowerShell”i çalıştırmayı tercih ettim. Siz yine aynı şekilde kolayınıza gelen bu yollardan herhangi birisini seçip çalıştırmakta özgürsünüz.
Windows Terminal Çalıştırma
Daha modern çizgilere sahip bu terminal maalesef Windows ile beraber gelmemekte. Windows Terminal’i edinmek için Microsoft Store’u açalım ve arama çubuğuna “Windows Terminal” yazalım. Çıkan sonuçlardan uygun olanı seçelim ve aşağıda görüldüğü gibi “Al” butonuna basalım. İndirme başlayacaktır, kurulumun bitmesini bekleyelim. Daha sonra başlat menüsünden veya Windows Search hizmeti yardımıyla bulup çalıştırabilirsiniz.
Windows’ta Kullanıcı Yetkileri
Eski Windows sürümlerinin aksine güncel olan Windows 10 gibi sistemlerde kullanıcı yetkileri güvenlik nedenlerinden ötürü çok daha fazla önem arz etmekte. Bu nedenle Windows’ta da diğer tüm işletim sistemlerinde olduğu gibi sadece kullanıcı yetkileriniz ölçüsünde işlem yapabilirsiniz. Windows sistemlerde genel itibariyle önemli diyebileceğimiz 3 adet kullanıcı grubu bulunur. Bunlar:
- User (Normal Kullanıcı)
- Administrator (Yönetici)
- NT AUTHORITY/SYSTEM (Sistem haklarında çalışan en yetkili kullanıcı)
Normal bir bilgisayar kullanıcısı bu gruplardan yalnızca “User” ve “Administrator” yetkilerine ulaşabilir. NT AUTHORITY/SYSTEM ise kritik sistem işlemlerinin çalıştığı kullanıcı grubudur. Eğer sistem haklarıyla çalışmak istiyorsanız bunu “doğal” yollar ile yapamazsınız. Zira eğer herkes bu alana erişebilseydi işletim sistemine zarar verecek birçok değişiklik yapabilirdi veya güvenlik anlamında ciddi sıkıntılar oluşabilirdi. Bu kullanıcı grubunu Unix ve Unix-benzeri sistemlerdeki “root” grubuna, Administrator’ü ise “superuser” kullanıcıya benzetebiliriz. Biz bu anlatımda sistem haklarıyla çalışmamız gereken herhangi bir şey yapmayacağız fakat isterseniz sistem haklarına nasıl geçebileceğinize de kısaca değinelim.
Normal bir Windows kullanıcısı olarak sistem haklarına geçmek için Privilege Escalation yöntemlerinden faydalanmak zorundasınız. Türkçeye “hak yükseltme” olarak çevrilen bu terim aslında herhangi bir yetkili yazılımda, sürücüde veya sistemde çalışan çeşitli özelliklerde yer alan hatalar ve güvenlik açıklarından faydalanılarak bir üst yetkili gruba geçişi ifade ediyor. Windows sistemlerde birkaç şekilde hak yükseltebilirsiniz. Bu yöntemlerden birkaçı:
- Çeşitli güvenlik açıkları, zafiyetlerden faydalanmak. Exploitlerden yararlanmak.
- Hak yükseltmeye imkan tanıyan sistem sürücülerinden faydalanan, sisteme zafiyetli sürücü yükleyip bu açıkları sömüren yazılımlar kullanmak
Bu maddelerden neredeyse hiçbirinin son kullanıcının uygulayabileceği kadar kolay olmadığını biliyoruz. Bu yöntemi kullanmak için öncelikle Administrator yetkilerinde bir kullanıcı hesabına sahip olmalısınız.
Not: Bir uzman tarafından önerilmedikçe sistem haklarında çalışmayın, hak yükseltmeye yarayan yazılımları veya diğer yöntemlerden faydalanmaya kalkışmayın. Zira sistem haklarında çalışırken yapacağınız bir hata nedeniyle işletim sistemine zarar verebilir veya çeşitli güvenlik sorunlarının ortaya çıkmasına neden olabilirsiniz.
Normal Windows kullanıcıları genel itibariyle hiçbir zaman sistem haklarında çalışmaya ihtiyaç duymayacakları için, bu ve bu seri altında yayınlacak olan sonraki yazılarımız boyunca normal kullanıcı (User) haklarını ve yönetici haklarını (Administrator) kullanarak komut satırında işlemler yapacağız.
Komut İstemini Yönetici Olarak Çalıştırma
Komut istemcisini yönetici olarak çalıştırmak için yapmanız gereken tek şey, komut istemcilerini çalıştırmadan önce sağ tıklayıp “Yönetici Olarak Çalıştır” seçeneğini kullanmak. Daha sonra hesabınızda herhangi bir parola bulunuyorsa istendiğinde girmeniz yeterli.
Yönetici olarak çalıştırılan komut istemcisi pencerelerinin başlığında “Administrator” ibaresi geçer ve normal çalıştırmadan farklı olarak kullanıcı dizini yerine ana sistem dizini olan “System32” altında çalışmaya başlar.
Yalnızca Command Prompt’u değil, diğer tüm kabukları da aynı şekilde yönetici olarak çalıştırabilirsiniz.
Sistemde Hangi Kullanıcı Hesabında Olduğunuzu Öğrenme
Windows sistemlerde komut satırı ile işlem yaparken hangi kullanıcıyla beraber işlemler yaptığımızı anlamak için whoami
komutunu kullanabilirsiniz. Windows’ta yönetici hesapla işlem yaparken diğer işletim sistemlerinin aksine çıktıda herhangi bir farklılık olmaz. Yani normal kullanıcı yetkileriyle de çalışırken, Administrator olarak da çalışırken whoami
çıktısı aynıdır. Sadece NT AUTHORITY\SYSTEM haklarında çalıştığınızda farklı bir yanıt alabilirsiniz.
Normal kullanıcı ve Administrator çıktısı:
NT AUTHORITY\SYSTEM çıktısı:
Ayrıca whoami
komutuyla beraber /groups
takısını kullanarak sistemdeki kullanıcı grupları hakkında da bilgiler edinebilirsiniz.