Sunucu Yönetimi & Linux

    tmux ile Terminal Oturumu Yönetimi

    tmux ile SSH kopsa bile süren oturumlar açıp ekranı bölerek verimli çalışmanın pratik rehberi.

    13 dk okuma Güncellendi: 10 Temmuz 2026

    Uzaktaki bir sunucuya SSH ile bağlanıp uzun sürecek bir işi başlattığınızı düşünün: büyük bir veritabanı taşıması, bağımlılıkların derlenmesi ya da yüzlerce megabaytlık bir yedeğin geri yüklenmesi. Tam iş yarılanmışken kablosuz ağınız bir saniyeliğine düşüyor, dizüstünüzün kapağını kapatıyorsunuz ya da uçakta internet kesiliyor. SSH oturumu kopuyor ve onunla birlikte çalıştırdığınız süreç de SIGHUP sinyaliyle sonlanıyor. Yarım kalan taşıma, bozulmuş bir veritabanı ve baştan başlanacak saatlerce iş demek bu. Sunucu yöneticiliğinde en sık yaşanan sinir bozucu senaryolardan biridir ve çözümü şaşırtıcı derecede basittir: tmux.

    tmux (terminal multiplexer, yani terminal çoklayıcı) tek bir terminal penceresi içinde birden fazla oturum, pencere ve bölme çalıştırmanızı sağlayan bir araçtır. En kritik özelliği ise oturumları bağlantınızdan bağımsız olarak sunucuda canlı tutmasıdır. Bağlantınız kopsa bile tmux oturumu ve içindeki tüm süreçler sunucu tarafında çalışmaya devam eder; yeniden bağlandığınızda tek komutla kaldığınız yere geri dönersiniz. Bu rehberde tmux'un temel mantığını, günlük iş akışına oturan kısayollarını ve uzun süren bakım işlerini kesintilere karşı nasıl güvence altına aldığını, kıdemli bir sistem yöneticisinin müşterisine anlatacağı sadelikte ele alacağız.

    tmux Nedir ve Hangi Sorunu Çözer#

    Klasik bir SSH oturumunda çalıştırdığınız her komut, o oturuma bağlıdır. Terminaliniz kapandığında kabuk (shell) ve onun çocuk süreçleri sonlandırılır. nohup ya da disown gibi yöntemler süreci arka planda tutmaya yardımcı olur ama size iki şey vermez: sürecin ekran çıktısına geri dönme imkânı ve etkileşimli programlarla (bir kurulum sihirbazı, bir editör, bir izleme aracı) çalışmaya devam etme yeteneği. tmux tam da burada devreye girer.

    tmux mimarisi üç katmandan oluşur ve bu hiyerarşiyi anlamak aracın tamamını anlamanın anahtarıdır:

    KavramİngilizcesiNe işe yarar
    OturumSessionBağlantıdan bağımsız yaşayan en üst kapsayıcı; kopmaya dayanıklı olan katman budur
    PencereWindowBir oturum içindeki sekme; her pencere tam ekran bir çalışma alanıdır
    BölmePaneBir pencerenin dikey/yatay bölünmüş parçası; her bölme ayrı bir kabuk çalıştırır

    Bir tmux sunucusu arka planda çalışır ve tüm oturumları o barındırır; terminaliniz yalnızca bu sunucuya bağlanan bir istemcidir. Bağlantı koptuğunda istemci gider ama sunucu ve oturumlar sağ kalır. Ekranı böldüğünüzde aynı anda hem bir dosyayı izleyip hem log akışını takip edebilir, hem de üçüncü bir bölmede komut çalıştırabilirsiniz. Sunucu tarafında çalıştığınız her senaryoda bu araç hız ve güvenlik kazandırır; SSH'ın kendisini güvenli kurmakla ilgileniyorsanız SSH bağlantısı ve güvenliği rehberimize de göz atmanızı öneririz.

    Kurulum ve İlk Oturumu Açmak#

    tmux neredeyse tüm dağıtımların depolarında hazır bulunur, tek satırla kurulur:

    # Debian / Ubuntu
    sudo apt update && sudo apt install -y tmux
    
    # CentOS / RHEL / AlmaLinux / Rocky
    sudo dnf install -y tmux
    
    # Kurulumu doğrulayın
    tmux -V
    

    Kurulumdan sonra ilk oturumunuzu açmak için tek kelime yeterlidir:

    tmux
    

    Bu komut isimsiz bir oturum başlatır ve sizi doğrudan içine alır. Alt kısımda yeşil bir durum çubuğu görürsünüz; soldaki köşeli parantez içinde oturum adı, ortada pencere listesi, sağda ise saat ve makine adı yer alır. Pratikte oturumları isimlendirerek açmak çok daha yönetilebilirdir, çünkü onlarca oturum arasında hangisinin ne işe yaradığını hatırlamak zorlaşır:

    # Anlamlı bir isimle oturum başlat
    tmux new -s dagitim
    
    # Var olan oturumları listele
    tmux ls
    
    # İsme göre bir oturuma yeniden bağlan
    tmux attach -t dagitim
    

    tmux ls çıktısı size her oturumun adını, kaç pencere barındırdığını ve ne zaman oluşturulduğunu gösterir:

    dagitim: 3 windows (created Fri Jul 10 09:14:22 2026)
    veritabani: 1 windows (created Fri Jul 10 08:02:10 2026) (attached)
    

    Buradaki (attached) etiketi o oturuma şu anda bağlı bir istemci olduğunu belirtir. Bu üç komut (new, ls, attach) tmux'un iskeletidir; geri kalan her şey oturumun içinde klavye kısayollarıyla yapılır.

    Prefix Tuşu Mantığı: Ctrl+b#

    tmux içindeyken çalıştırdığınız her komut aslında iki aşamalıdır. Önce tmux'a "şimdi sana bir komut vereceğim" dersiniz, sonra komut tuşuna basarsınız. Bu "dikkat çekme" tuşuna prefix denir ve varsayılanı Ctrl+b'dir. Bu tasarım kasıtlıdır: eğer tmux her tuşu doğrudan yakalasaydı, içinde çalıştırdığınız nano, htop ya da vim gibi programların kendi kısayollarıyla çakışırdı. Prefix, tmux komutlarını normal klavye kullanımınızdan yalıtır.

    Kullanım kalıbı her zaman aynıdır: Ctrl+b'ye basıp bırakın, ardından komut tuşuna basın. Örneğin yeni pencere açmak için Ctrl+b sonra c, oturumu ayırmak için Ctrl+b sonra d. En sık kullanacağınız kısayolları bir tabloda toplayalım:

    Kısayolİşlev
    Ctrl+b cYeni pencere aç (create)
    Ctrl+b dOturumdan ayrıl (detach)
    Ctrl+b %Bölmeyi dikey böl (yan yana)
    Ctrl+b "Bölmeyi yatay böl (alt alta)
    Ctrl+b oBir sonraki bölmeye geç
    Ctrl+b n / pSonraki / önceki pencere
    Ctrl+b 09Numaraya göre pencereye atla
    Ctrl+b ,Pencereyi yeniden adlandır
    Ctrl+b xAktif bölmeyi kapat
    Ctrl+b [Kaydırma/kopyalama moduna gir
    Ctrl+b ?Tüm kısayolların listesini göster

    Bu tablodaki son satır özellikle değerlidir: Ctrl+b sonra ? size o anki tuş atamalarının canlı bir listesini açar; bir kısayolu unuttuğunuzda dokümantasyona gitmeden hatırlamanın en hızlı yoludur (bu listeden q ile çıkarsınız). Klavye kısayollarına ek olarak Linux terminalinde kendinizi rahat hissetmek isterseniz temel Linux komutları rehberimiz sağlam bir zemin oluşturur.

    Pencere Yönetimi#

    Pencereler tmux'taki sekmelerdir. Her pencere tam ekran bir çalışma alanıdır ve durum çubuğunda numarasıyla listelenir. Farklı görevleri ayrı pencerelere dağıtmak zihinsel yükü azaltır: bir pencerede uygulama loglarını izlerken diğerinde kod düzenleyip üçüncüde git komutları çalıştırabilirsiniz.

    Ctrl+b c ile yeni pencere açtığınızda durum çubuğuna yeni bir numara eklenir. Aktif pencere yıldız (*) ile işaretlenir. Pencereler arasında Ctrl+b n (next) ve Ctrl+b p (previous) ile dolaşabilir ya da doğrudan numarasına Ctrl+b 1 gibi atlayabilirsiniz. Pencere sayısı arttığında isimlendirme hayat kurtarır; Ctrl+b , ile aktif pencereyi yeniden adlandırırsınız:

    # Ctrl+b , sonra çubuktaki adı silip yazın:
    loglar
    # Durum çubuğunda artık "0:loglar*" gibi görünür
    

    Bir pencereyi kapatmak için o pencerenin son kabuğundan exit yazmanız ya da Ctrl+b & kısayolunu kullanmanız yeterlidir. Oturumdaki tüm pencereleri kapattığınızda oturum da kendiliğinden sonlanır. Pratik bir alışkanlık olarak, uzun süreli bir işi kendi penceresinde çalıştırıp o pencereye işin adını vermek, günler sonra oturuma geri döndüğünüzde neyin nerede olduğunu saniyeler içinde hatırlatır. Bu düzen özellikle birden çok sunucuyu yönettiğiniz veya sunucu yönetimi hizmeti kapsamında birden çok müşterinin makinesine bakan ekipler için verimliliği ciddi biçimde artırır.

    Bölme (Pane) Yönetimi#

    Bölmeler, tek bir pencereyi aynı anda görünen birden çok kabuğa ayırır. Bir işlemi başlatıp aynı ekranda sonucunu izlemek isteyen herkes için tmux'un en sevilen özelliğidir bu. Dikey bölme için Ctrl+b % (ekranı sağ-sol ikiye ayırır), yatay bölme için Ctrl+b " (üst-alt ayırır) kullanılır. Aynı pencerede istediğiniz kadar bölmeyi iç içe oluşturabilirsiniz.

    Tipik bir sunucu bakımı düzeni şöyle görünebilir: sol bölmede komutları çalıştırıp, sağ üstte servis loglarını, sağ altta ise kaynak kullanımını takip edersiniz.

    # Sol bölme: komut çalıştırma alanı
    sudo systemctl restart nginx
    
    # Sağ üst bölme: canlı log akışı (Ctrl+b " ile açtınız)
    sudo journalctl -u nginx -f
    
    # Sağ alt bölme: kaynak izleme (Ctrl+b % ile açtınız)
    htop
    

    Bölmeler arasında geçiş için Ctrl+b o (sıradaki bölme) ya da Ctrl+b ardından yön tuşları (ok tuşları) kullanılır. Bir bölmeyi geçici olarak tam ekran yapıp odaklanmak isterseniz Ctrl+b z (zoom) çok kullanışlıdır; aynı kısayola tekrar basınca eski düzene dönersiniz. Bölme boyutlarını değiştirmek için Ctrl+b'yi basılı tutup yön tuşlarıyla oynayabilirsiniz. En sık kullanılan bölme kısayolları:

    Kısayolİşlev
    Ctrl+b %Dikey böl (sağ-sol)
    Ctrl+b "Yatay böl (üst-alt)
    Ctrl+b oSıradaki bölmeye geç
    Ctrl+b ok tuşlarıYöne göre bölme seç
    Ctrl+b zBölmeyi tam ekran yap / geri al
    Ctrl+b xAktif bölmeyi kapat
    Ctrl+b { / }Bölmenin yerini sola/sağa taşı

    Bölme sınırlarını farenizle sürükleyerek de yeniden boyutlandırabilirsiniz; bunun için yapılandırmada fare desteğini açmanız gerekir, buna aşağıda değineceğiz. Bölmeler bir işi ekranı bölmeden takip etme ihtiyacınızı ortadan kaldırır ve çok daha az sekme değiştirmenizi sağlar.

    Detach ve Reattach: Kopmalara Dayanıklı Çalışma#

    Şimdi tmux'un asıl var oluş nedenine, kopmaya dayanıklılığa geliyoruz. Detach (ayrılma), oturumu kapatmadan istemciyi ondan koparmak demektir. Ctrl+b d tuşladığınızda tmux'tan çıkıp normal kabuğa dönersiniz ama oturum ve içindeki her şey sunucuda çalışmaya devam eder. Bu bilinçli bir ayrılmadır; SSH bağlantınız beklenmedik biçimde koptuğunda da aynı şey olur, oturum kendiliğinden ayrılmış (detached) duruma geçer ve süreçleriniz zarar görmez.

    Yeniden bağlanmak (reattach) için sunucuya tekrar SSH yaptıktan sonra tek komut yeterlidir:

    # Tek oturum varsa doğrudan bağlan
    tmux attach
    
    # İsme göre belirli bir oturuma bağlan
    tmux attach -t dagitim
    
    # Hangi oturumlar var, önce bakın
    tmux ls
    

    Bu davranış tmux'u basit nohup çözümlerinden ayıran şeydir. nohup yalnızca süreci hayatta tutar ama çıktısını bir dosyaya yönlendirmeniz gerekir ve etkileşim kuramazsınız. tmux ise sürecin canlı ekranına aynen bıraktığınız gibi geri döndürür; imleç nerede kaldıysa oradan devam edersiniz. Karşılaştırma için:

    Özelliktmuxnohup / disownscreen
    Kopmaya dayanıklı oturumEvetKısmen (yalnızca süreç)Evet
    Etkileşimli programlara geri dönüşEvetHayırEvet
    Ekranı bölme (pane)EvetHayırSınırlı
    Canlı yapılandırma / esneklikYüksekYokOrta
    Modern geliştirmeAktifYavaş

    Aynı oturuma birden fazla istemci de bağlanabilir; bu, bir meslektaşınızla aynı ekranı paylaşarak sorun çözmek için pratik bir yöntemdir. Bu tür uzaktan yönetimi kendi kaynaklarınız üzerinde yapmak isterseniz, kök erişim sunan bir VDS sunucu ya da esnek sanal sunucu çözümü tmux ile çok verimli bir kombinasyon oluşturur.

    Uzun Süren İşleri Kesintiye Karşı Korumak#

    Girişte anlattığımız felaket senaryosunu artık tersine çevirebiliriz. Uzun sürecek her işe başlamadan önce izlenecek altın kural şudur: işi doğrudan SSH kabuğunda değil, önce bir tmux oturumu açıp onun içinde çalıştırın. Böylece internetiniz, dizüstünüz ya da SSH bağlantınız ne yaparsa yapsın, sunucudaki iş etkilenmez.

    Tipik bir dağıtım veya güncelleme akışı şöyle olmalı:

    # 1) Sunucuya bağlanın, hemen isimli bir oturum açın
    tmux new -s guncelleme
    
    # 2) Uzun süren işi oturumun İÇİNDE başlatın
    sudo apt update && sudo apt full-upgrade -y
    
    # 3) İş sürerken güvenle ayrılın (Ctrl+b d) — internet kopsa bile devam eder
    # 4) Sonra tekrar bağlanıp durumu kontrol edin
    tmux attach -t guncelleme
    

    Aynı yaklaşım veritabanı taşımaları, büyük yedeklerin geri yüklenmesi, kaynak koddan derleme veya saatlerce sürebilecek dosya senkronizasyonu için de geçerlidir:

    # Büyük bir SQL dökümünü içeri aktarma — kopsa bile devam etmeli
    tmux new -s import
    mysql -u root -p uygulama_db < buyuk_yedek.sql
    # Ctrl+b d ile ayrılın, akşam geri dönüp bittiğini görün
    
    # rsync ile büyük veri taşıma
    tmux new -s tasima
    rsync -avz --progress /veri/ kullanici@yeni-sunucu:/veri/
    

    Burada kritik nokta işi tmux açıldıktan sonra başlatmaktır; halihazırda çalışan bir süreci sonradan tmux'a taşımak mümkün değildir. Bir sunucudan diğerine geçiş yaparken bu düzen site taşıma süreçlerini çok daha güvenli hale getirir; taşıma yarıda kesilmez, kesilse bile kaldığı yerden takip edilebilir. Aynı disiplin, düzenli yedekleme işlerinizi elle çalıştırdığınızda da yedeğin yarım kalma riskini ortadan kaldırır. Bir ipucu: uzun işi çalıştıran pencereyi işin adıyla adlandırın ve işin bittiğinde sesli uyarı vermesi için sonuna basit bir komut ekleyin, böylece oturuma dönüp dönmeyeceğinizi bilirsiniz.

    .tmux.conf ile Yapılandırma İpuçları#

    tmux'un varsayılanları işlevseldir ama küçük ayarlarla çok daha keyifli hale gelir. Yapılandırma dosyanız ev dizininizdeki ~/.tmux.conf dosyasıdır; burada yaptığınız değişiklikler yeni oturumlara uygulanır. En sık yapılan iyileştirmeler prefix tuşunu değiştirmek, fare desteğini açmak ve pencere numaralandırmasını 1'den başlatmaktır.

    # ~/.tmux.conf
    
    # Prefix'i Ctrl+b yerine daha erişilebilir Ctrl+a yap
    unbind C-b
    set -g prefix C-a
    bind C-a send-prefix
    
    # Fare desteğini aç: bölme seçme, boyutlandırma, kaydırma
    set -g mouse on
    
    # Pencere ve bölme numaralarını 1'den başlat (0 yerine)
    set -g base-index 1
    setw -g pane-base-index 1
    
    # Kaydırma geçmişini büyüt (varsayılan 2000 satır)
    set -g history-limit 20000
    
    # Bölmeleri klavye oklarıyla kolayca seç
    bind Left select-pane -L
    bind Right select-pane -R
    bind Up select-pane -U
    bind Down select-pane -D
    

    Dosyayı kaydettikten sonra ayarları yeniden yüklemek için oturumu kapatmanıza gerek yoktur; tmux içinde Ctrl+b (ya da yeni prefix'iniz) ardından : yazıp komut satırını açar ve şunu çalıştırırsınız:

    source-file ~/.tmux.conf
    

    Fare desteğini açtığınızda bölmeleri farenizle seçebilir, sınırlarını sürükleyerek boyutlandırabilir ve tekerlekle kaydırabilirsiniz; klavye kısayollarını henüz ezberlemediğiniz dönemde bu ayar geçişi çok yumuşatır. history-limit değerini artırmak ise uzun log akışlarında geriye doğru daha fazla satır görmenizi sağlar. Bu birkaç satırlık yapılandırma, tmux'u "işe yarayan bir araçtan" günlük iş akışınızın vazgeçilmez bir parçasına dönüştürür.

    Sıkça Sorulan Sorular#

    tmux ile screen arasındaki fark nedir?#

    İkisi de terminal çoklayıcıdır ve kopmaya dayanıklı oturumlar sunar, ancak tmux daha modern ve aktif olarak geliştirilen bir araçtır. tmux'ta ekranı dikey ve yatay bölmelere ayırmak, canlı yapılandırma yeniden yüklemek ve bölmeleri esnek biçimde düzenlemek çok daha kolaydır. screen hâlâ birçok sistemde bulunur ve iş görür, ama yeni bir alışkanlık ediniyorsanız doğrudan tmux öğrenmenizi öneririz; topluluk desteği, eklenti ekosistemi ve güncellemeler tmux tarafında çok daha canlıdır.

    tmux oturumumu yanlışlıkla kapattım, süreçlerim kayboldu mu?#

    Oturumu gerçekten kapattıysanız (tüm pencerelerden exit yaptıysanız ya da oturumu kill ettiyseniz) içindeki süreçler de sonlanır. Ancak yalnızca Ctrl+b d ile ayrıldıysanız veya SSH bağlantınız koptuysa oturum sunucuda canlı kalmaya devam eder. Yeniden bağlanmadan önce tmux ls komutuyla oturumlarınızın hâlâ orada olup olmadığını kontrol edin; listede görünüyorsa tmux attach -t oturum_adi ile kaldığınız yere dönersiniz. Ayrılma ile kapatmayı karıştırmamak bu yüzden çok önemlidir.

    tmux içindeyken çıktıyı yukarı nasıl kaydırırım?#

    tmux kendi kaydırma tamponunu yönetir, bu yüzden terminalinizin tekerleği bazen beklediğiniz gibi çalışmaz. Kaydırma moduna girmek için Ctrl+b ardından [ tuşlayın; artık ok tuşları, PageUp ve PageDown ile çıktı geçmişinde gezebilirsiniz. Bu moddan çıkmak için q tuşuna basmanız yeterlidir. Yapılandırmada set -g mouse on satırını eklerseniz fare tekerleğiyle de doğal biçimde kaydırabilirsiniz, bu çoğu kullanıcı için en pratik yöntemdir.

    tmux oturumları sunucu yeniden başlatılınca kalır mı?#

    Hayır. tmux oturumları sunucunun belleğinde yaşayan süreçlerdir; makine yeniden başlatıldığında ya da kapandığında tüm oturumlar ve içlerindeki süreçler kaybolur. tmux yalnızca ağ kopması ve terminal kapanması gibi bağlantı kesintilerine karşı koruma sağlar, güç kesintisine ya da yeniden başlatmaya karşı değil. Yeniden başlatma sonrası otomatik olarak ayağa kalkması gereken servisler için systemd birimleri kullanın; tmux, elle yürüttüğünüz uzun ve etkileşimli işler için tasarlanmıştır.

    Aynı tmux oturumuna birden fazla kişi bağlanabilir mi?#

    Evet. Aynı sunucu kullanıcısı üzerinden birden çok istemci aynı oturuma tmux attach -t oturum_adi ile bağlanabilir ve herkes aynı ekranı canlı olarak görür; bu, uzaktan birlikte sorun çözmek için çok kullanışlıdır. Farklı sistem kullanıcıları arasında paylaşım için oturumu paylaşmadan önce izinleri ve soket yolunu ayarlamanız gerekir, ki bu ileri düzey bir konudur. Ekip çalışmasında herkesin aynı klavyeyi kontrol edebildiğini unutmayın; kimin ne yazdığını konuşarak koordine etmek karışıklığı önler.

    Kapanış#

    tmux öğrenmesi bir saatinizi alan ama size sayısız saat kazandıran o ender araçlardan biridir. Prefix mantığını bir kez oturttuğunuzda pencere ve bölme yönetimi refleks haline gelir; en önemlisi, uzun süren dağıtım, güncelleme ve taşıma işlerini bir daha yarıda kesilme korkusu olmadan çalıştırırsınız. Kural basittir: uzun işe başlamadan önce isimli bir tmux oturumu açın, işi onun içinde başlatın ve gönül rahatlığıyla ayrılın. Bu tek alışkanlık, sunucu yönetiminde başınıza gelebilecek en can sıkıcı sürprizlerin çoğunu ortadan kaldırır.

    Bu iş akışını gerçekten verimli kılmak için köklü, tam kontrol sağlayan bir sunucuya ihtiyacınız var. Clou.TR'nin kök erişimli VDS ve sanal sunucu çözümleri, tmux ile yürüteceğiniz her türlü bakım ve dağıtım işi için ideal bir zemin sunar; sunucularınızın kurulumunu ve rutin bakımını bize bırakmak isterseniz sunucu yönetimi hizmetimiz devrede olur. Tüm sunucu çözümlerimizi inceleyerek ihtiyacınıza en uygun paketi seçebilir, terminal başında geçirdiğiniz zamanı çok daha üretken hale getirebilirsiniz.

    tmuxTerminalLinux

    Uygulamaya geçmeye hazır mısınız?

    NVMe SSD, ücretsiz SSL ve %99.9 uptime garantisiyle Clou.TR hosting ve sunucu çözümleriyle projenizi hayata geçirin.