Linux arka plan işlemleri nasıl görüntülenir ve çalıştırılır

Hem uygulamaların hem de işletim sisteminin diğer öğelerinin hem uyumlulukta hem de işlevlerinin yürütülmesinde doğru şekilde hareket etmesini sağladığından, kullanılan herhangi bir işletim sisteminde süreçlerin yürütülmesi hayati önem taşır.

Her işletim sistemi süreçleri farklı şekilde işleyebilir, ancak Linux söz konusu olduğunda, kural olarak süreçler bir terminal ile ilişkilendirilir. Bu, sürecin normal şekilde çalışabilmesi için açık olması gerektiği anlamına gelir, ancak bu eylem aşağıdaki gibi durumlara yol açabilir:

  • Açık terminal, yalnızca verileri okumayı değil, yönetmeyi de zorlaştıran çok sayıda çıktı verisi veya hata / tanı mesajı içerebilir.
  • Terminali kapatacak olursak, süreç ikincil süreçleriyle birlikte yapılacak görevi doğrudan etkileyecek şekilde sona erecektir.

Bu senaryo türünde gerekli işlemlerin arka planda yürütülmesi esastır, arka plan işlemi gizli bir şekilde yürütülecek işlemdir ve çalışması için kullanıcının müdahalesine gerek kalmaz, ancak bu şekilde terminal ana kapalıdır, süreç görevini yürütmeye devam edecektir. Arka plan işlemleri, komut dosyaları, indirme dosyaları ve herhangi bir şey yapmadan eylemin tamamlanmasını bekleyemediğimiz diğerleri gibi zaman alabilen görevler için geçerlidir.

Linux'ta işlemleri ön planda veya arka planda yürütebiliriz. Terminalde çalıştırıldığında ön planda bir program, işlem bitene kadar başka bir komut çalıştıramayız, ancak arka plandan veya arka plandan yapılabilir.

Bir kez başlatıldığında arka planda çalışan bir program, çalıştırıldığı andan sonuna kadar terminali kullanmaz. Eklediğimiz terminalden arka planda bir yazılım veya komutu çalıştırmak için Çalıştırmak istediğimiz komut veya scriptin sonuna bir ve işareti (&) eklersek, işletim sistemi tarafından arka planda yürütülür. Örnek:

 nano & 
Solvetic, Linux'ta arka plan işlemlerini nasıl görebileceğimizi ve çalıştırabileceğimizi açıklayacaktır.

1. Linux'ta ps komutuyla işlemlerin listesine bakın


ps komutu ile bir işlemin durumunu bilebiliriz.Ps, işlem durumu veya işlem durumudur. ps komutu, işlemleri listelemez ve bazı PID, TTY, TIME ve CMD sütunlarını belirtir.

PID (İşlem Numarası)Her işlem, Linux çekirdeği tarafından atanan benzersiz bir kimlik numarası alır.

TTYişlemle ilişkili terminaldir, başka bir giriş aygıtı da olabilir.

ZAMANİşlemin devam ettiği süre.

CMDYürütülen komutun adıdır, bash kabuk işlemidir.

Örneğin ps -A komutu ile çalışan tüm işlemleri bize gösterecektir.

2. Linux'ta bg kullanarak Linux'ta bir arka plan işlemi veya komutu başlatın


bg komutu, askıya alınan işleri devam ettiren, ancak bunları arka planda çalıştıran bir iş kontrol komutu olarak geliştirilmiştir.

Aşama 1
Bu komutun temel sözdizimi aşağıdaki gibidir:

 bg [iş] 
Adım 2
Halihazırda bir işlem çalışıyorsa, onu durdurmak için aşağıdaki tuşlara basmalı ve ardından bir iş olarak arka planda yürütülmesine devam etmek için bg komutunu girmeliyiz. Bu örnek için aşağıdaki satırları kullanacağız:

Ctrl + Z

 tar -czf ana sayfa.tar.gz. (Ctrl + Z ile durdurulacak işlemin çalıştırılması) bg (komutun arka planda yürütülmesi) işler (yapılan işlerin görselleştirilmesi)

Aşama 3
İşlemin hala devam ettiğini görebiliriz, ancak şimdi arka planda. Ayrıca sonuna ve işareti girerek bir işlemi doğrudan arka planda çalıştırmak da mümkün olacaktır:

 tar -czf ana sayfa.tar.gz. & Meslekler 

3. Linux'ta terminalden çıktıktan sonra çalışan Linux işlemlerini kaydedin


Bu önemli bir noktadır, çünkü daha önce de belirttiğimiz gibi normal modda terminal kapatıldığında tüm aktif işlemler sona erecektir, böylece terminal kapalıyken bile çalışmaya devam etmelerine izin vermek mümkündür.

Bunun için bir işlem başlatıldıktan ve arka plana atıldıktan sonra kullanılacak olan disown komutunu kullanabiliriz, disown komutu, görevi aktif Shell'in aktif listesinden işleri çıkarmak olan bir kabuk işidir.

Aşama 1
Reddetme işleminin yürütülmesiyle, terminali kapattığımızda, iş çökmez veya herhangi bir alt işe SIGHUP göndermez. Temel sözdizimi şöyledir:

 iş kimliğini reddetmek 
Adım 2
Çalışması için aşağıdakileri uygulayacağız:
 sudo rsync Şablonları / * / var / www / html / dosyalar / & (yürütme komutu) işler (etkin işler) disown -h% 1 (işlemi kapatmama emri veya komut) işler (işlerin görüntülenmesi)

NotBirden fazla işlem veya komutun yürütülmesi durumunda, her birinin bir kimlik numarası aldığını görebiliriz, hangi işlemin çalışmaya devam edeceğini belirtmek için bunun reddedilerek girilmesi gerekir.

Aşama 3
Reddetme ile kullanılacak seçenekler şunlardır:

-ileJobID sağlanmazsa tüm işleri kaldırır.

-HKabuk bir SIGHUP alırsa SIGHUP'ın işe gönderilmemesi için her bir iş kimliğini işaretler.

-rYalnızca çalışan işleri temizler.

4. Linux'ta terminalden çıktıktan sonra çalışan Linux işlemlerini kaydedin


Nohup komutunun temel görevi, oturumu kapatırken veya kabuktan çıkarken komutun otomatik olarak iptal edilmesini önlemektir. nohup (kapatma yok) komutu kullanıldığında, kullanıcının oturumu kapattığını bildirmek için bir işleme gönderilen kapatma sinyali (HUP), işlemin saniyeler içinde düz bir şekilde çalışmaya devam etmesine izin vermek için nohup tarafından yakalanır.

Aşama 1
Kullanım sözdizimi aşağıdaki gibidir:

 nohup komutu [komut argümanı …] 
Adım 2
Bu durumda aşağıdaki örneği kullanacağız. Standart giriş bir terminal ise, nohup onu / dev / null konumundan yönlendirir. Bu nedenle, nohup ile bir komut çalıştırıldığında terminal girişi mümkün değildir. Standart çıktının bir terminal olması durumunda, komut çıktısı nohup.out veya $ HOME / nohup.out dosyasına eklenir. Standart hata bir terminal ise, standart çıktıya yönlendirilir. Çıktıyı bir dosyaya kaydetmek için "nohup komut> dosya" kullanmalıyız.
 nohup tar -czf iso.tar.gz Şablonlar / * & işler

5. Terminaldeki bir Linux işleminin bağlantısını kaldırın

Aşama 1
Amaç, bir işlemi terminalden tamamen ayırmaksa, aşağıdaki sözdizimini kullanmalıyız:

 uygulama / dev / boş & 
Adım 2
Örneğin:
 firefox / dev / boş ve 

6. Linux'ta Screen ile arka plan işlemlerini kullanın


Arka planda, nohup ve & seçenekleri ile bir komut kullanılması durumunda, oturumu kapattıktan sonra bile yürütülecektir, sorun şu ki, aynı oturuma tekrar bağlandığımızda, aktif işi görmeyeceğiz. arka planda, bunu düzeltmek için ekran komutu var.

ekran, normalde kabukların etkileşimli olduğu çeşitli işlemler arasında fiziksel bir terminali yöneten tam ekran bir pencere yöneticisidir. Her sanal terminal, bir DEC VT100 terminalinin işlevlerini ve ek olarak, onu son derece dinamik kılan ISO 6429 (ECMA 48, ANSI X3.64) ve ISO 2022 standartlarının çeşitli kontrol işlevlerini sunar.

Ekranı çalıştırdığımızda, bir kabuk veya belirtilen komutla tek bir pencere oluşturulur ve ardından programı normal şekilde kullanabilmek için baypas edilir.

Aşama 1
Linux'ta ekranı kurmak için aşağıdakileri uygulayacağız. İndirmeyi ve kurulumu onaylamak için S harfini giriyoruz.

 sudo apt yükleme ekranı

Adım 2
Kurulduktan sonra "ekran" komutunu çalıştırıyoruz ve aşağıdakileri göreceğiz:

Aşama 3
Arka planda kullanmak için işlemi veya komutu yürüttüğümüz yeni pencereye yönlendirilmek için Enter tuşuna basıyoruz:

 sudo tar czf temp.tar.gz / tmp & 

4. Adım
Aktif pencereleri kullanarak görselleştirebileceğiz. Ekran oturumundan çıkmak için tuşları kullanabiliriz

Ctrl + a + d

Ctrl + alt + d

 ekran -ls 

7. Linux'ta askıya alınmış veya arka planda bir işlemi durdurun veya sonlandırın


İşlemin arka planda yürütülmesini sonlandırmaktan oluşan bu eylem için "kill" komutunu kullanabiliriz ve PID yerine iş tanımlayıcısını belirtebiliriz, örneğin:
 işler (mevcut işleri listele) kill% 2 (öldürme veya sonlandırma işlemi 2 olarak tanımlanır)

8. Bir işlemi durdurun veya bir işlemi arka plana alın


Bazı programların tamamlanması uzun zaman alır ve bu arada önemli bir şey yapmazlar. Programları derlemek, büyük bir dosyayı sıkıştırmak gibi bu görevlerden biridir. Bu işlemler bitip kaynakları tüketirken bilgisayarı kullanmayı bırakmanın bir anlamı yok. Bu durumlarda, bilgisayarı başka bir programı çalıştıracak konumda bırakmak için bunları arka planda çalıştırmak daha iyidir.

İşlemler askıya alınabilir. Askıya alınmış bir işlem, şu anda çalışmayan, ancak geçici olarak durdurulan bir işlemdir. Bir görevi askıya aldıktan sonra, gerektiğinde ön planda veya ikinci sırada göreve devam etmesi talimatını verebilirsiniz. Askıya alınmış bir görevi sürdürmek, görevin kaldığı yerden devam edeceğinden, görevin durumunu hiç değiştirmez.

Aşama 1
Bir işlemi kesmek için aşağıdaki kombinasyon kullanılır, bu kombinasyona basıldığında işlem ölür ve tüm kaynaklar serbest bırakılır.

Ctrl + C

Adım 2
Arka plana yinelenen bir komut göndermeyi deneyelim. yes komutu, birçok onay gerektiren komut dosyasını test etmek için kullanılır.Yaptığı şey, komut dosyası durdurulana veya kullanıcı onu durdurana kadar önünde ne yazıyorsa "ve"yi sonsuza kadar tekrarlamaktır:

  • Terminalde "evet" yazarsak, sonsuz bir "ve" listesi göreceğiz.
  • Terminalde evet merhaba yazarsak sonsuz bir merhaba listesi göreceğiz.

Aşama 3
Bir dosyayı onaylamak istediğinde herhangi bir tuşa basmadan silmek için kullanabiliriz

 evet | rm -i * .txt 
4. Adım
Arka plana bir işlem göndermek için onu komut satırından çağırırız ve ardından & sonsuz boş aygıtlar yaratırız
 evet> / dev / boş & 
Adım 5
Bu bize görev numarasını ve [1] 4106 numaralı pid'i gösterecek.
 [1] + Yürütülüyor yes> / dev / null &
6. Adım
onu ön plana çıkarmak için fg 1 yazıyoruz ve pid olan kill 4106 işlemini öldürmek için yazıyoruz.
 Fg 1 Öldür 4106
Belirtilen seçeneklerden herhangi biri ile Linux'ta arka plan işlemlerini çok daha merkezi bir şekilde yönetmek ve böylece oturum kapalıyken bile gerekli görevlerin yürütülmesine izin vermek mümkün olacaktır.

wave wave wave wave wave