Son on yılda, Linux bir alternatif işletim sistemi meraklıları için dünyanın en sağlam yazılım altyapılarından bazılarına güç sağlamak için önemli bir araca dönüştürüyor.
Bu tür hizmetlerin kapsamının her geçen gün artmasıyla, bu sistemleri yönetmede yetkin kişilere olan talep de artmıştır. Linux Hands On serisi ile bu seviyeye ulaşma yolculuğuna birkaç adım daha yaklaşmaya çalışıyoruz.
Son iki haftadan beri Linux terminalini sıfırdan izliyoruz. ile başladık temel Linux komutları ve ilk bölümde sanal bir makinede Linux kurulumu ve ardından bunun üzerine ara Linux komutları ve ikinci bölümde Linux süreçleri ve bunların nasıl görüntülenip sonlandırılacağı hakkında kısa bir giriş.
Bu hafta için nihayet oyunumuzu hızlandıracağız!
Ne öğreneceksin
- Komut takma ile üretkenliği artırma
- Birimlere ve dosya türlerine göre disk kullanımını kontrol etme
- Ağ üzerinden dosya indirme
- Ağ Sorun Giderme temelleri
- Hizmetler ve bunların nasıl yönetileceği
- Kullanıcı erişim kontrolü/oturum yönetimi
- Sistemi kapatma ve yeniden başlatma
Bu hafta gelişmiş terminal komutlarını ele alacağız. Bu komutlar, sistem yönetimi sırasında çoğu zaman ihtiyaç duyacağınız şeyler etrafında döner, ayrıca geri dönüş sürenizi kısaltmanıza ve verimliliğinizi artırmanıza yardımcı olacak birkaç komutumuz da var.
1. Komut Takma Adları
Bu yüzden ele alacağımız ilk nokta takma adlar ve bu yazının üretkenlik kısmını vuracak. Kendinizi zaman zaman kesinlikle komutları tekrarlarken bulacaksınız. Bu durumlarda, ilk bölümde ele aldığım komut geçmişi tekniği. Komut geçmişi, komutu yazmaktan kaçınarak zamandan tasarruf etmenize yardımcı olduğunu fark edecek, kaydırdığınızda telafi edilecektir. Komut takma adını kullanarak tüm bu güçlüklerden kaçınabilirsiniz. Takma ad, özellikle yazması zor olan komutlarla uğraşırken ve terminalinizde bir otomatik tamamlama eklentisi kullanmadığınızda kullanışlı olur.
Takma adlar oluşturmadan önce bunları nasıl listeleyeceğimize bakalım. Takma ad (Linux terminal bağlamında), geleneksel bir terminal komutunun kısaltmasıdır. Ancak bu yalnızca Linux terminal komutlarına özel değildir. Akla gelebilecek hemen hemen her komuta takma ad verebilirsiniz.
İşte bir örnek. Bir git deposunu taahhüt etmek için -m bayrağıyla git commit kullanırız. Ortalama olarak, bu komutu haftada en az 10 ila 20 kez kullandığınızı varsayalım. Her şeyi yazmak bir anlam ifade etmiyor, takma ad burada devreye giriyor. Diyelim ki gitcmt gibi bir takma ad kullanarak, kendinizi her şeyi yazma zahmetinden kurtarırsınız. Birkaç ay ve yıl boyunca bu tasarrufu ekleyin ve kendinize birkaç ekstra saatiniz var. Aklını başından alıyor değil mi?
Pekala, takma adları nasıl kontrol edip oluşturacağımızı görelim.
Halihazırda var olan takma adları listelemek için, sadece takma ad Herhangi bir bayrak olmadan komut verin ve enter tuşuna basın. Ve takma adların listesi size iade edilecektir.
Bu takma adlar, çoğunlukla sistemin tüm kullanıcıları için geçerli olan sistem düzeyinde genel takma adlardır.

Artık bir sistemdeki tüm takma adları nasıl göreceğimizi bildiğimize göre devam edelim ve bir tane oluşturalım.
Bir takma ad oluşturmak için sözdizimi burada.
takma ad ALIASNAME="ACTUAL_COMMAND_NAME"
Yani bizim durumumuzda yapacağımız şey, sadece gösterim amacıyla echo komutu için bir takma ada sahip olmak.
Sadece aşağıdakini yazın ve enter tuşuna basın.
takma ad ec="echo"

Şimdi kullanmak yerine kaçırmak, basitçe yazabiliriz ec yerine.
Ancak bu takma adın yalnızca bir oturum süreceğini, yani terminali kapatıp yeniden açarsanız artık çalışmayacağını unutmayın. Kalıcı hale getirmek için, üzerinde depolanan kabuk yapılandırma dosyanızı düzenlemeniz gerekir. ~ / .bashrc
Dosyayı nano'da açın, komutu aşağıdaki ekran görüntüsünde gösterildiği gibi bu dosyanın içine yerleştirin ve çıkın.

Çıktıktan sonra aşağıdaki komutu verin:
kaynak ~ / .bashrc

Bu yapıldıktan sonra komut takma adınız kalıcı olacaktır.
Şimdi bir komutu nasıl unalias yapabileceğinizi kontrol edelim. verilmesiyle ters etki elde edilir. takma adlar komuta
The takma adlar komutu, takma adı yalnızca geçerli oturumdan değil, aynı zamanda kabuk yapılandırma dosyasından da kaldıracaktır.

2. nerede Komut
Çoğu zaman insanlar yazılım yazarken 2 farklı ortam tutarlar. Üretim sunucusunun kurulumuna benzeyen bir geliştirme ortamı ve kullanıcının ihtiyacına göre düzenli bir yerel ortam. Bu 2 alanı birbirinden izole/ayrı tutmak için çoğu insan ya Docker ya da serseri gibi bir şey kullanır, ancak bazı insanlar manuel bir yaklaşımı da tercih eder. İkinci yarıya düşerseniz, aynı makinede yinelenen ikili dosyalara veya farklı sürümlere sahip aynı ikili dosyalara sahip olmanız olasıdır. Bu sonraki komut, belirli bir ikili programın tüm kurulumlarını listelemenize yardımcı olur. Komut, whereis olarak adlandırılır ve belgeleriyle birlikte belirli bir ikili programın depolandığı konumu listeler.
İşte sözdizimi nerede komut:
BINARY_NAME nerede
Şimdi söz dizimini gördüğümüze göre, whereis komutunun nasıl kullanılacağına bakalım:

Gördüğünüz gibi, git ikili dosyasının konumu sistemde saklanıyor.
Bu komut basit olsa da, bir şey inşa ederken uyumluluk sorunlarıyla karşılaştığınızda çok yardımcı olacaktır.
3. hizmet Komutanlığı
Arka planda uzun süre çalışan bir işlem, Linux'ta hizmet olarak adlandırılır. Linux işletim sistemi, /etc/init.d dizinine giderek öğrenebileceğiniz bir dizi hizmetle birlikte gelir. Bu yazının kapsamı dışında olduğu için özel bir hizmetin nasıl oluşturulacağını ele alamasak da, StackOverflow'ta basit bir arama, nasıl oluşturulacağı konusunda kesinlikle rehberlik edecektir. Ancak, hizmetleri yönetmek hakkında konuşacağız. Bu, yeniden başlatmayı başlatmayı, durdurmayı ve hizmetlerin durumunu kontrol etmeyi içerir.
Sözdizimi hizmet komut aşağıdaki gibi olacaktır:
SERVICE_NAME hizmeti başlıyor
Bu örnek için, sshd güvenli bir kabuk sunucusu olan hizmet OpenBSD.
Bir hizmeti başlatmak için hizmet başlangıcını ve ardından hizmet adını kullanırız. (burada sshd).
hizmet sshd başlangıç
Aşağıda eylemde görelim. Ve enter tuşuna basıldığında terminalde hiçbir şey görünmüyorsa, başarılı bir şekilde çalıştığı anlamına gelir.

Şimdi aynı servisin durumunu kontrol edelim. Bunu yapmak için kullanacağız durum servis komutuyla birlikte seçenek. Aşağıda görüldüğü gibi.
hizmet sshd durumu
Bu, hizmetin etkin olup olmadığını, diğer yararlı ayrıntılarla birlikte gösterir.

Artık bir hizmeti nasıl başlatacağımızı ve durumunu kontrol etmeyi bildiğimize göre, onu nasıl durdurabileceğimizi görelim.
Bunu yapmak için service komutuyla birlikte stop seçeneğini kullanıyoruz. Şimdi durumu kontrol ederseniz, size aktif olmadığını söyleyecektir.
servis sshd durdurma

Pekala, şimdi son kısım için hizmeti yeniden başlatacağız. Ve bunu yapmak için sürpriz bir sürpriz, yeniden başlatma seçeneğini kullanacağız.
Servis sshd yeniden

Birlikte hareket edelim.
4. df Komutu
Serinin bu bölümü, terminal aracılığıyla bir Linux sisteminin nasıl yönetileceğini öğrenmekle ilgili olduğundan, bir işletim sistemi kullanırken gerçekleştirdiğimiz en yaygın görevlerden birini öğrenelim. Disk alanını doğrudan terminalden nasıl kontrol edeceğimizi göreceğiz. Bunun için df komutunu kullanacağız. anlamına gelir disk dosya sistemi ve bir dosya sisteminde mevcut olan disk alanı miktarını görüntülemek için kullanılır.
df komutunun sözdizimi ile başlayalım:
df [SEÇENEK]... [DOSYA]...
df komutunu çalışırken görelim. Varsayılan olarak, hiçbir seçenek sağlanmadan df komutu, tek tek birimlerin boyutunu tam olarak okunamayan bir biçimde listeler.

Bunu önlemek için, kullanacağız -h insan tarafından okunabilir biçimi temsil eden bayrak. Aşağıdaki komutu girin
df -h

Ve şimdi, gördüğünüz gibi, hacim boyutunu listeledi. Megabayt ve Gigabayt. df komutunun desteklediği daha birçok seçenek var ve bunları man komutunu kullanarak kontrol etmenizi öneririm.
5. du Komutanlığı
Makinemiz için disk alanı istatistiklerini nasıl kontrol edebileceğimizi gördük ama bu tam kontrole doğru sadece bir adım. Bireysel dosyaların kapladığı alanı kontrol etmeye ne dersiniz? Bunu yapmak için dosyalar tarafından kullanılan disk alanını tahmin eden du komutunu kullanıyoruz.
İşte du komutunun sözdizimi:
du [SEÇENEK]... [DOSYA]...
Varsayılan olarak, herhangi bir seçenek sağlanmadan, komutun dosyaları ve aldıkları alanı okunamayan bir biçimde listelediğini görebiliriz.

Onlardan daha fazla anlam çıkarmak için kullanalım -h şeyleri insan tarafından okunabilir bir biçimde gösterecek olan seçenek.
sen
Aşağıda görebileceğiniz gibi, artık tüm dosya türlerinin kapladığı alanı aşina olduğumuz birimler halinde listelemiştir.

Ayrıca, aşağıdakileri kullanarak bir dizindeki belirli bir dosya türünün kapladığı boyutu da kontrol edebiliriz. -s bayrak. Geçerli dizindeki metin dosyalarını kontrol edelim.
du -s *.txt

6. passwd Komutu
Sistem üzerinde tam kontrole sahip olmanın bir sonraki adımı, aslında şifreyi değiştirebilmek olacaktır. Demek istediğim, bir sistem yöneticisi kendi makinesine kilitlenirse ne işe yarar? harika, bu yüzden şifreyi nasıl değiştireceğimize bir göz atacağız ve bunu yapmak için passwd Komut.
İşte passwd komutunun sözdizimi:
passwd [SEÇENEK] [KULLANICI]
Ve şimdi passwd komutunu şu şekilde kullanıyoruz:
passwd

Şimdi açıkçası güvenlik nedenleriyle, Linux ve Unix konsolda şifreyi yıldız şeklinde göstermiyor çünkü bir şifrenin uzunluğunu öğrenerek kaba zorlamaya 1 adım daha yaklaşabilirsiniz, ancak bunun için söz veriyorum. ve deneyin, işe yarıyor.
Pekala, ilerlemeye devam edelim.
7. wget Komutu
Sırada, dosyaları doğrudan terminalinizden nasıl indirebileceğinizi görelim. Bunu zaten kendinize “UI için bırakacağı bir şey var mı?” diyorsanız, teşekkürler ama bırakmamaya çalışacağım.
İnternetten dosya indirmek için web get anlamına gelen wget komutunu kullanacağız. Ve dosyayı bir ağ üzerinden indirmek için bir komut satırı yardımcı programıdır. wget komutunu kullanmak çok kolaydır. wget komutundan sonra indirilecek dosyanın URL'sini belirtmeniz yeterlidir.
Yapı uğruna, işte sözdizimi:
wget URL_OF_FILE
Ve işte örnek bir kullanım.

wget ile ilgili ilginç olan şey, bir ağ sorunu veya başka nedenlerle başarısız olursa indirmeye devam edebilmesidir.
8 kim komuta
Bir sistem yöneticisi için erişim kontrolü, önemli rollerden bir diğeridir. Ana sisteme erişimi yönetmeleri ve şu anda oturum açmış olanların aktivitelerini kontrol etmeleri ve izlemeleri gerekir. Bu sonraki komut, sisteme o anda kimlerin giriş yaptığını kontrol etmenize yardımcı olacaktır. komut denir kim ve işte bunun sözdizimi.
kim [ SEÇENEK ]... [ DOSYA ] [ ben miyim ]
Şimdi who komutunun nasıl çalıştığını kontrol edelim:

Şimdi, tek kullanıcılı bir makinede olduğum ve şu anda sadece ben kullandığım için, ekran görüntüsünde görebileceğiniz tek kullanıcı benim. Ancak aynı anda oturum açmış birkaç 100 kullanıcıya sahip bir üretim sunucusunu yönettiğinizi varsayarsak, onları aynı listede görürsünüz. Man komutunu kullananların kullanabileceği tüm seçenekleri test ettiğinizden emin olun.
9. ping Komutu
Peki. Bu sonraki komutla, uzak bir ana bilgisayarın çevrimiçi olup olmadığını kontrol edeceğiz. Bunun için ping komutunu kullanıyoruz. En ilkel teknik açıklamada bu, komutun göndereceği anlamına gelir. ICMP ECHO_REQUEST kullanılabilirliğini kontrol etmek için ana bilgisayara paketler. Ana bilgisayar müsaitse, bir onay ile yanıt verir ve değilse, paketler düşer. Şimdi ping komutunun nasıl kullanılacağını görelim.
Sözdizimi oldukça basittir.
ping [-LRUbdfnqrvVaAB] [-c sayısı] [-m işareti] [-i aralığı] [-l önyüklemesi] [-p modeli] [-s paket boyutu] [-t ttl] [-w son teslim tarihi] [-F akış etiketi] [-I arabirimi] [-M ipucu] [-N seçeneği] [-Q tos] [-S snbuf] [-T zaman damgası seçeneği] [-W zaman aşımı] [atlama ...] hedef
Ve işte örnek bir kullanım.
ping google.com

Bu komut çoğunlukla ağ sorunlarını gidermeye çalışırken kullanılır. Ping komutunun çıktısı birkaç farklı istatistik içerir. İlk olarak, şunları içerir: ICMP paket numarasını söyleyen sıra numarası. Bununla birlikte şunları da içerir: TTL bir paket için yaşama süresini belirten alan, yani gerçekten atılmadan önce atlayabileceği yönlendirici sayısı.
10. kapatma Komutu
Pekala, sonunda bu bölümün sonuna geldik. Sistemi terminalden nasıl kapatacağımızı öğrenerek bunu resmi olarak kapatalım. Ayrıca sistemi doğrudan terminalin kendisinden nasıl yeniden başlatacağımızı da göreceğiz. Şimdi bu komut aslında makineyi kapattığından, sunucumda, ana makinem aracılığıyla güvenli bir kabuk kullanarak erişeceğim bir demo göstereceğim. Kapatma komutunun sözdizimi şöyledir:
kapatma [-akrhPHfFnc] [-t sn] süre [mesaj]
Makineyi kapatmak için sadece kapanma herhangi bir seçenek olmadan komut. Ve yeniden başlatmak için kullanabilirsiniz. -r bayrak. İşte nasıl görüneceği -r bayrağı.
kapatma -r

Ve aslında demoda sisteminizin kapanacağı gerçeği dışında “görecek” pek bir şey yok. Komutun yürütülmesinden sonra sunucumun gerçekten kapandığını gösterdiğim yukarıdaki videoyu izleyebilirsiniz.
Sonuç
Pekala millet, Linux Hands On serisinin 3. Kısmının sonuna geldik. Bölüm 1 çok temelleri ele aldık, sonra bunun üzerine inşa ettik Bölüm 2 ve Bölüm 3'te Linux'un sistem yönetimi yönüne odaklandık. Her zaman olduğu gibi, sadece gönderiyi okumak veya videoları izlemek yerine bu gelişmiş Linux terminal komutlarını denemenizi şiddetle tavsiye ederim. Çok önem verdiğim şeylerden biri yeterliliktir ve bu da kapsamlı uygulama ile birlikte gelir. Bunu yaptığınızdan emin olun ve hatalarla karşılaşırsanız veya bir sorunuz varsa, yorumlar bölümünde veya Twitter'da bize yazın. Bu serinin son bölümü ile haftaya tekrar görüşürüz ve oğlum eğlenceli bir bölüm olacak mı? Ben Bölüm 4'ü hazırlarken, biraz zaman ayırın ve bu komutları uygulayın. Bir sonrakine kadar! Mutlu Kodlama!
Yorum Yap
Bu makale hakkında söyleyeceğiniz bir şey var mı? Yorumunuzu ekleyin ve tartışmayı başlatın.