[Nasıl]Screen Kullanımı

Başlatan brooqs, 22 Şubat 2012 - 00:14:04

« önceki - sonraki »

0 Üyeler ve 1 Ziyaretçi konuyu incelemekte.

brooqs

Daha önce forumda anlatılmış olabilir o yuzden özür dileyerek başlıyorum.

Screen özellikle gdm olmayan sadece konsol üzerinden çalışan server tipi sistemlerde kullanılması oldukça faydalı bir yazılımdır. Bunun yanında eğer sunucunuz uzaktaysa ve putty gibi bir yazılımla sunucunuza bağlanıyorsanız yaptığınız işlem de çok uzunsa bağlandığınız yazılımın işlem bitene kadar açık ve bağlı kalması gerekmektedir. Kimsenin saatlerce başında bekleyeceğini sanmıyorum çünkü zaman çok değerlidir. Alternatif olarak farklı ttyler üzerindende bu işlemi yapabilirsiniz. Ancak ben yinede anlatmak istiyorum.

screen konsol üzerinden sonucun uzun bir bekleyişten sonra geleceği işlemler için yapılan işlemi arka plana atıp orda çalışmasını sağlayan yararlı bir yazılımdır. Eğer sisteminizde yüklü değil ise

sudo apt-get install screen

komutu ile sisteminize yükleyebilirsiniz.

Kullanımı oldukça bassittir. Başlatmak için konsola

screen

yazıp entera bastıktan sonra karşımıza aşağıdaki şekilde bir mesaj gelecektir.

Screen version 4.00.03jw4 (FAU) 2-May-06

Copyright (c) 1993-2002 Juergen Weigert, Michael Schroeder
Copyright (c) 1987 Oliver Laumann

This program is free software; you can redistribute it and/or modify it under
the terms of the GNU General Public License as published by the Free Software
Foundation; either version 2, or (at your option) any later version.

This program is distributed in the hope that it will be useful, but WITHOUT
ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS
FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details.

You should have received a copy of the GNU General Public License along with
this program (see the file COPYING); if not, write to the Free Software
Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA.

Send bugreports, fixes, enhancements, t-shirts, money, beer & pizza to
screen@uni-erlangen.de


                  [Press Space for next page; Return to end.]

bu sayfayı gördükten sonra tekrar enter a basarak screen içerisine giriyoruz.
artık burdan sonra çalıştıracağımız kodlar screen tarafından sarılacak ve sonucu beklememize gerek kalmadan arka planda çalışmasına devam etmesini sağlayabiliriz. Bu işlem için

öncelikle bir komut girelim. Mesela 34 gb lık bir mysql veritabanımız olsun ve içindede onlarca tablo ve veri olsun. Normal şartlarda eğerki kayıtların içerisinde bir problem varsa bunları problemli olan verilerin tespit edilmesi ve onarılması için mysqlcheck yazılımı ile kontrol edelim ki bu işlem gerçekten cok uzun zaman alacaktır. Burada imdadımıza scrren yetişiyor.

mysqlcheck --all-databases - R -u user -p

Yukarıdaki komutu yazdıktan sonra veritabanı kontrol ve onarım işlemi başlayacaktır. Şimdi bu işlemin 12 saatten fazla sürdüğüne şahit olduğum benzer durumlar oldu bunu böyle beklemek şöyle bir kenara dursun bağlantınızın kopmayacağının hiçbir garantisi yok. Şimdi yazdığımız bu komut aslında screen tarafından taşınıyor ve bir kaç kısayol tuşu ile bu komutun işlemini arka plana atıp program altta çalışırken biz tty mizi kapatıp işimize bakabiliriz. Peki nedir bu kısayol tuşları

Öncelikle screende attach ve deattach yapılarak çalışma pencereleri ekrana getirilir veya arka plana atılır.

Aktif sayfayı arka plana almak için Ctrl+a tuşuna bastıktan sonra "D" tuşuna basarak aktif sayfamızı arka plana atabiliriz. Eğer sadece bir tane screen kullanmışsak geri getirmek için aşağıdaki komutu yazmamız yeterli olacaktır.

screen -r

yukarıdaki komutu yazıp entera bastıktan sonra işlem yapılan sayfa tekrar karşımıza gelecektir.

Peki ya daha fazla screen kullanmışsak ne olacak.

Eğer birden fazla screen kullanmışsan screen  -r komutunu verdiğimizde bize bir liste sunacak ve bu listeden hangisini aktif etmemizi istediğimizi soracaktır ve aşağıdakine benzer bir çıktı verecektir.


There are several suitable screens on:
12143.pts-1.tdh-System-Product-Name (02/21/2012 11:38:26 PM) (Detached)
12131.pts-1.tdh-System-Product-Name (02/21/2012 11:38:04 PM) (Detached)
12084.pts-1.tdh-System-Product-Name (02/21/2012 11:23:21 PM) (Detached)
Type "screen [-d] -r [pid.]tty.host" to resume one of them.


yukarıdaki çıktıdada görüldüğü üzre her bir screen farklı bir pid almış şekilde çalışmaktadır. Şimdi biz bu listeden 12084 nolu pid ile çalışan screen i aktif edelim.

screen -r 12084

yukarıdaki komutu yazdığımızda pid değeri 12084 olan screen ekrana gelecektir.  Bu screen ile işimiz bittiğinde ise kapatmak için screen aktif iken

exit

komutunu girip entera  basmamız yeterli olacaktır.

screen ile ilgili daha fazla seçenek * tabi ki mevcut ancak bunları ihtiyaçlarınız doğrultusunda araştırıp öğrenebilirsiniz.

man screen

Yukarıdaki komutu yazdığınızda man ile ilgili detaylı bilgiye sahip olabilirsiniz.


Not: Yazımdaki imla hatalarından dolayı özür dilerim.

Kendinize iyi bakın.
Linux is an adventure!!!

if

Konuyu yazılar/incelemeler bölümüne taşıdım.

Eline sağlık @brooqs.

karboran

#2
Yazıyı okudum ve hiç bişey anlamadım. Bu yazıyı anlamam için önce neleri öğrenmem lazım benim? .. İşin temeli ne neresi ?

Düzenleme Notu: Lütfen imlâ kurallarına uyunuz.
Kabin basıncı düştü motorlarda arıza !
Vakit süratle aksın hakimiyet kur nabıza !
İçinden nasıl geldiyse yaz anlat herşeyi ,
Bu mektup varmıcak hayalini kurduğun kıza !

heartsmagic

İşin temeli sabır @karboran. Diğer iletilerini okuduğum için şunu söyleyebilirim, çok hızlı ilerlemek istiyorsun. Bu hem zordur, hem seni bir çok şeyden soğutur hem de sıkıntıya sokar. Kendine vakit tanı, önce günlük işlerin için Linux kullanmaya devam et. Okulundan, hayatından vakit buldukça foruma takıl, diğer kaynakları kurcala, kitap, belgelendirme bul ve oku. Her şeyi anlaman mümkün değil, hiçbirimizin her şeyi anladığı söylenemez. İşimiz düşünce öğreniyoruz sadece.
Hayattan çıkarı olmayanların, ölümden de çıkarı olmayacaktır.
Hayatlarıyla yanlış olanların ölümleriyle doğru olmalarına imkân var mıdır?


Böylece yalan, dünyanın düzenine dönüştürülüyor.

karboran

@heartsmagic Haklısın abi bende bu sabah onu anladım.@if @ct sağolsunlar konuştuk bu konuda birazda.Windows kullanır gibi yapcam oyun oynayacağım muzik dinleyeceğim, java çalışacağım film izlemeyi bıraktım yeminle linux kullanmaya başlayalı beri. Kasmıyorum artık ;) . Saolun iyi ki varsınız ubuntu forum olarak <3
Kabin basıncı düştü motorlarda arıza !
Vakit süratle aksın hakimiyet kur nabıza !
İçinden nasıl geldiyse yaz anlat herşeyi ,
Bu mektup varmıcak hayalini kurduğun kıza !

heartsmagic

Yardımcı olabiliyorsak ne mutlu bize @karboran. Günlük işlerini yap, ancak dediğimiz gibi vaktin varsa yavaş yavaş kitap, belgelendirme de oku. Hem zevk alırsın hem de mesleki kariyerin için bir şeyler edinmiş olursun. Temeli söktükten sonra yavaş yavaş kendine bir anayol tayin eder orada geliştirmeye çalışırsın kendini. Örneğin programlama, sistem yöneticiliği, güvenlik konuları vs. gibi.
Hayattan çıkarı olmayanların, ölümden de çıkarı olmayacaktır.
Hayatlarıyla yanlış olanların ölümleriyle doğru olmalarına imkân var mıdır?


Böylece yalan, dünyanın düzenine dönüştürülüyor.

karboran

Aynen dediğiniz yapacağım artık :) .. Oh be bi rahatlık geldi ferahladım valla :)   "belgelendirme" derken abi ?
Kabin basıncı düştü motorlarda arıza !
Vakit süratle aksın hakimiyet kur nabıza !
İçinden nasıl geldiyse yaz anlat herşeyi ,
Bu mektup varmıcak hayalini kurduğun kıza !

heartsmagic

Herhangi bir konunun anlatımı, yönergeleri vs. Ancak, yanlış kullanmışım "belgelendirme" değil de "belgeleri" oku demeliymişim. Canın sıkılıyorsa şuradan başla:

http://belgeler.org/

Eski kaynaktır ancak güzel bir temeldir.
Hayattan çıkarı olmayanların, ölümden de çıkarı olmayacaktır.
Hayatlarıyla yanlış olanların ölümleriyle doğru olmalarına imkân var mıdır?


Böylece yalan, dünyanın düzenine dönüştürülüyor.

karboran

Saolasın abi oruçda zaten vakit geçmiyor bi gömüleyim :)
Kabin basıncı düştü motorlarda arıza !
Vakit süratle aksın hakimiyet kur nabıza !
İçinden nasıl geldiyse yaz anlat herşeyi ,
Bu mektup varmıcak hayalini kurduğun kıza !