Linux Komutları
Giriş
Bu kılavuzu kimler okumalı
Yeni başlayan bir GNU / Linux kullanıcısı mısınız ve normal pencere sürükleme ve fare tıklamasının ötesine bakmak mı istiyorsunuz? Bu kılavuz GNU / Linux komut satırının temellerini öğrenmek isteyen yeni başlayanlar için hazırlanmıştır. Bu eğitici, gezinme, dosya ve dizin yönetimi, yazılım yükleme ve temel sistem sorunlarını giderme ile ilgili temel Linux komutlarını gözden geçirmeyi amaçlamaktadır.GNU / Linux Komut Satırı nedir
Şansınız, birisinin GNU / Linux işletim sistemi hakkında konuştuğunu duyduğunuzda, komut satırı veya Linux komutları hakkında konuşmasını da dinlemenizdir. Bu komutu çalıştırın ve bunu ve şu komutu yürütün! Sağ?Ancak, neden? Neden GNU / Linux işletim sistemi neredeyse her zaman komutlar ve komut satırı ile bağlantılıdır? Bunun basit cevabı, komut satırının GNU / Linux işletim sisteminin ayrılmaz bir parçası olmasıdır ve bu nedenle kullanıcıya görevleri daha verimli, daha iyi bir hassasiyetle ve en önemlisi tüm yürütme süreci hakkında ek içgörü bilgileri ile gerçekleştirme imkanı sunar.

Kendimize karşı dürüst olalım! GNU / Linux sisteminden ve komut satırından kaçınmanız için ne tür bir bahaneniz olursa olsun, nedeni büyük olasılıkla anlama ve öğrenme isteksizliği ile bağlantılıdır.
Bu nedenle, eksikliklerimiz için GNU / Linux sistemini suçlamayalım! Tam bir başlangıç veya ileri seviye kullanıcı olmanıza yardımcı olmak için burada. Sistemin size ne ölçüde yardımcı olabileceği, bazı tescilli işletim sistemlerinde olduğu gibi, cüzdanınızın derinliğine bağlı değildir! GNU / Linux sisteminden aldığınız yardım miktarı sadece öğrenme isteğinize ve kararlılığınıza bağlıdır.
Bu aşamada, kendinize sorduğunuz sorunun şudur:GNU / Linux işletim sistemini kullanmak için GNU / Linux komut satırını ve sayısız komutları öğrenmem gerekir mi? Hızlı cevap hayır! GUI'nin yüklü olduğu iyi bir GNU / Linux işletim sistemi, kullanıcının temel ve hatta gelişmiş görevleri gerçekleştirmek için komut satırını kullanmasını gerektirmez.
GNU / Linux komut satırını öğrenmeyi düşünmenizin tek nedeni, sistemden en iyi şekilde yararlanmak için verimliliğinizi artırmak ve öndeki görev bunu yapmanızı gerektiriyorsa. Birçok GNU / Linux kullanıcısının komut satırının ne olduğunu bile bilmeden yıllarca gittiğini unutmayın! Linux komut satırını bilmemek son derece iyidir ve sistem ihtiyacınız olanı yaparsa en temel komutları bile öğrenmeye gerek yoktur.
Hangi GNU / Linux işletim sistemi çeşidini kullanırsanız kullanın, Grafik Kullanıcı Arayüzü olsun ya da olmasın, komut satırı her zaman bir biçimde bulunur.

Bununla birlikte, bunun için, GNU / Linux komut satırının en azından temel anlayışına sahip olması ve sunduğu bazı komutların bazı temel kullanımını öğrenmesi gerekir. Korkmayın, çünkü bu Linux komutları öğreticisini okuyarak öğreneceğiniz şey tam olarak budur.
Linux Komutları nedir
Linux komutları, tüm sistemi yönetmek için kullanılan tüm GNU / Linux işletim sisteminin özüdür. Bilmiyor olabilirsiniz, ancak grafik kullanıcı arabiriminde çalıştırdığınız uygulamaların çoğu, verilen görevi gerçekleştirmek için arka planda sizin için Linux komutları yürütmektedir.Uygulamanın bizim için otomatik olarak Linux komutlarını çalıştırmasına izin vermenin birçok belirgin faydası vardır. Bununla birlikte, dezavantaj, çoğu durumda komutun yürütülmesini, istenen sonuca getirmek için özelleştiremememizdir. Ayrıca, bir şeyler ters giderse, kullanıcı büyük olasılıkla sorunun nasıl giderileceği hakkında bir ipucu olmadan karanlıkta kalır.
Şimdi düşünüyor olabilirsiniz: Tamam, her şey yolunda ama kaç tane komut var ve hepsini öğrenmeliyim?GNU / Linux sisteminizde mevcut olan Linux komutlarının sayısı önemsizdir, çünkü sayı sistemden sisteme her zaman farklıdır. Ancak, tam sayı konusunda ısrar ediyorsanız, terminalinizde aşağıdaki komutu yürütün:
$ for i in ${PATH//:/ }; do ls $i; done | sort | uniq | wc -l

Bu nedenle, en iyi yaklaşım temel bilgilerle başlamaktır; mutlak, GNU / Linux dosya sisteminde gezinmenize ve temel yönetim görevlerini gerçekleştirmenize yardımcı olacak Linux komutlarını öğrenmelidir. Bu görevi yerine getirdikten ve Linux komut satırından emin olduktan sonra, geri kalanı sadece GNU / Linux sistemini kullanarak doğal olarak minimum çaba ile gelir. Tek ihtiyacınız olan açık bir zihin ve kararlılıktır.
Tamam, bu boş konuşma ile yeterince ve hadi başlayalım!
Temel Dosya Sistemi ve Gezinme Linux Komutları
Komut satırı bağımsız değişkenleri, seçenekleri ve parametreleri
GNU / Linux komut satırını tam olarak anlamak isterse, Linux komut satırı argümanları, seçenekleri ve parametreleri arasındaki farkı anlamak en önemli kısımdır. Bu nedenle, bu konuyu atlamayın, bunun yerine bir sonraki bölüme geçmeden önce konuyu iyice anladığınızdan emin olun.Linux komut satırı argümanları, seçenekleri ve parametreleri arasındaki farkı açıklamak için en iyi araç ls komutudur .
ls
Komutu henüz bilmiyorsanız endişelenmeyin, çünkü bu komut daha sonraki bölümlerde ayrıntılı olarak ele alınmıştır. Terminali açın ve aşağıdaki komutu çalıştırın. Girmeyin$
Bu işaret, yalnızca komut satırında yürütülecek bir komut olduğunu ve normal ayrıcalıklı olmayan bir kullanıcı olarak yürütüleceğini bildirmek için bir amaca hizmet eder:$ lsYukarıdaki komutu yazıp ENTER tuşuna bastıktan sonra, komut geçerli dizininizdeki tüm dosyaları ve dizinleri listeler. Şimdilik, komutun çıktısını dikkate almayın ve bu komutun, komutun
ls
kendisi olan tek bir argümandan oluştuğunu unutmayın . Bu argümanı argüman olarak adlandırıyoruz 0
. Ardından, şu komutu deneyin:$ ls -aYukarıdaki komut iki argümandan oluşur. Bağımsız değişken olarak adlandırılan ilk bağımsız değişken
0
, ls
komutun kendisidir ve ikinci bağımsız değişken 1
, ls
komutun seçeneği olarak numaralandırılır -a
.Komut seçenekleri kullanıcının komut çıkışını değiştirmesine izin verir. Her Linux komutunun farklı seçenekleri vardır. Komut seçenekleri komutun kendisine sabit kodlanmıştır. Adından da anlaşılacağı gibi, komut seçenekleri isteğe bağlıdır ve kullanıcının bunları kullanmasını gerektirmez. Bu durumda
ls
komutun seçeneği -a
, komutun dizinimizde bulunan gizli dosyaları veya dizinleri de yazdırmasını bildirir.Hala ana dizininizdeyken aşağıdaki komutu çalıştırın:
$ ls -l .bashrcEğer takip ederseniz, yukarıdaki komutun üç argümandan oluştuğunu zaten biliyorsunuzdur. İlk olarak,
0
komutun kendisinin argümanı vardır . İkinci argüman, daha doğrusu argüman 1
olan ls
komutun seçenek -l
talimatını ls
üreten uzun bir veya birden fazla dosyaları hakkında kullanıcıya bilgi veren çıktıyı listeleme için komutu. Son olarak, üçüncü argüman numarası 2
, ls
komuta sağlanan ve komutu yalnızca adlı tek bir dosya üzerinde çalışmasını söyleyen bir parametredir .bashrc
.
Yukarıdaki .bashrc
dosya durumunda , önekin dosya adının .
bir parçası olduğunu ve dosyanın gizlendiğini gösterdiğini lütfen unutmayın . Gizli seçeneği, seçenek kullanılmadıkça ls
komutun bu dosyayı varsayılan olarak çıktısının bir parçası olarak listelemeyeceği anlamına gelir -a
.
$ ls -l -h .bashrc .bash_historyBu durumda, komutumuz beş argümandan oluşur. Orada
ls
komut, iki seçenek yani bunlar, -l
ve -h
ve son olarak parametreler olarak iki dosya adları vardır .bashrc
ve .bash_history
dosyanın.Komut satırındaki tüm bağımsız değişkenleri sağlama sırası, yürütmekte olduğunuz Linux komutuna bağlıdır. Bununla birlikte, önerilen ve evrensel kural, komuttan sonra gerekli tüm seçenekleri ve ardından gerekli tüm parametreleri sağlamaktır. Örneğin, aşağıdakiler de yukarıdaki ile aynı çıktıyı üreten geçerli bir komuttur, ancak bu tür komut sözdiziminden kaçınılmalıdır:
$ ls .bashrc -l .bash_history -hSon olarak, komutunuzu kısaltmak ve böylece daha okunabilir hale getirmek için, komutların çoğu kullanıcının birden çok seçeneği tek bir argümanda birleştirmesine izin verir. Yani seçenekleri
-l
ve -h
tek bir argümanda birleştirmek mümkün -lh
. Örneğin:$ ls -lh .bashrc .bash_historyAşağıdaki videoda bölümün tamamı özetlenmektedir. Şimdiye kadar, komut satırı argümanları, seçenekleri ve parametreleri hakkında net bir anlayışa sahip olmalısınız.
Dosya sisteminde gezinme
Bu bölüm, Linux komut satırının dosya sisteminde gezinme olan bir başka önemli bölümünü de kapsamaktadır. Yıllar boyunca birçok kullanıcının GNU / Linux dosya sistemi navigasyonunu anlamak için zor zamanlar yaşadığını gördüm, çünkü normaldenC:
veya D:
sürücülerden önemli ölçüde farklı . Bu bölümde, cd
komut ve komut olan ilk iki Linux komutunu da öğreneceksiniz pwd
.Bize şu ifadeye başlayalım: unut
C:
ya D:
sen diğer mülkiyet işletim sistemlerinden biliyoruz sürücüler.Bu bilgi burada geçerli değildir ve sadece sizi şaşırtabilir. GNU / Linux dosya sistemi, tüm dosya sistemindeki herhangi bir dizinden herhangi bir sabit sürücüye veya bölüme erişime izin verir. Ancak, bu aşamada, bu konuda endişelenmemeliyiz.Belki de GNU / Linux dosya sistemini tanımlamak için en iyi benzetme, Bash Scripting Tutorial'ım için zaten kullandığım sistemdir . GNU / Linux dosya sistemini çok katlı bir bina olarak düşünün. İle belirtilen kök dizini (binanın giriş kapısı)
/
tüm dosya sistemine (bina) giriş sağlar, böylece tüm dizinlere (seviyeler / odalar) ve dosyalara (insanlar) erişim sağlar.Seviye 3'te oda 1'e gitmek için önce ana kapıya girmeliyiz
/
, sonra seviye 3'e geçmeliyizlevel3/
ve oradan girin room1
. Bu nedenle, bir bina içindeki bu odaya giden mutlak yoldur/level3/room1
. Buradan, oda2'yi seviye3'te de ziyaret etmek istiyorsak, önce oda1 olan mevcut konumumuzu girerek bırakmalı ../
ve sonra odanın adını eklemeliyiz room2
. Biz bu durumda room2 göreceli bir yol aldı ../room2
. Biz zaten seviye 3, bu yüzden tüm binadan ayrılmak ve ana giriş üzerinden mutlak yol almak gerek yoktu /level3/room2
. Kafa karıştırıcı? GNU / Linux komut satırı ile birkaç oturumdan sonra endişelenmeyin, bilgi batırır ve sizin için ikinci bir doğa haline gelir.İster inanın ister inanmayın, GNU / Linux işletim sistemi tüm kullanıcılara dosya sistemi navigasyonuna yardımcı olmak için bir pusula sağlar.
pwd
( S Rint ağırlık orking d irectory) komutu gönderir. Her kaybolduğunuzda sadece pwd
komutu girin ve size yolu gösterecektir. Şimdi dene. Terminali açın ve pwd
ENTER tuşuna basın:$ pwd

pwd
Komut örneği Geçerli çalışma dizin yolunu yazdırmak için./home
dizini vardır. Yukarıdaki resmin üzerine gösterildiği gibi kullanıcının ev dizininin tam yol linuxconfig
olduğunu /home/linuxconfig
. Sisteminizde "john" kullanıcısı varsa, bu kullanıcının ana dizininin mutlak yolu olur /home/john
.
Herhangi bir kullanıcı ana dizinine erişim yalnızca dizinin sahibi olan gerçek kullanıcı ve GNU / Linux durumunda kullanıcı olan yönetici tarafından kullanılabilir root
.
cd
( c hange d irectory) komutu. cd
Komut kullanıcı uygun erişim izinlerine sahip olduğunu koşulda dosya sistemi üzerinde herhangi bir dizine gidin kullanıcı mevcut verir.Aşağıdaki komutları uygulayarak deneyin ve denemekten korkmayın.
pwd
Size mevcut konumunuzu anında bildirmek için kişisel pusulanızı, komutunu unutmayın . Lütfen aşağıdaki linuxconfig
kullanıcıyı kendi kullanıcı adınızla değiştirmeyi unutmayın:$ cd /home
$ cd linuxconfig
$ cd /
$ cd home/linuxconfig
$ cd ../linuxconfig
$ cd ../../etc
$ cd /home/linuxconfig
Satır 5 ve Satır 6 hariç , yukarıdaki komutlar kendi kendini açıklayıcı olmalıdır. On Hat 5 biz kullanılan kısayol var ../
bir üst dizine yukarı taşımak için linuxconfig
dizine. On Line 6 biz gittiğiniz sonunda iki dizinleri yukarı taşındı ve var etc
dizine.
cd
Herhangi bir konumdan kullanıcı ana dizininize anında gitmek için herhangi bir argüman olmadan komutu yürütün . cd -
Ziyaret ettiğiniz son iki konum arasında geçiş yapmak için yürütün . Komutları yürüttükten cd ~
ve hangi dizinde buluyorsunuz cd .
?

cd
komutunu kullanarak .
Mutlak ve göreli yol arasındaki farkı söyleyebilir misiniz ? Yukarıdaki görüntüye bakarak, cd
komut kullanarak dosya sisteminde gezinirken mutlak ve göreli yolu kaç kez kullandığımızı sayabilir misiniz ?
İPUCU: Mutlak yol her zaman /
karakterle başlar .
cd
Linux bilgisi ve dizinler arasında gezinme konusunda kendinizi rahat hissettiğinizden emin olun , çünkü bu bilgi gelecek bölümlerde size iyi hizmet edecektir.Bir dizin içeriğini listeleme
Bu noktada,cd
komutu kullanarak dosya sisteminde gezinme konusunda rahat olmalısınız ve ayrıca komut satırı argümanları, seçenekleri ve parametreleri de dahil olmak üzere genel olarak GNU / Linux komut satırı hakkında temel bir anlayışa sahip olmalısınız. Şimdiye kadar herhangi bir dizine nasıl gidileceğini öğrendik, ancak henüz dizin içeriğinin nasıl listeleneceğini öğrenmedik. Dizin içeriğini listeleme bu bölümün ana konusudur.Herhangi bir dizinin içeriğini listelemek için kullanılacak araç
ls
komuttur. Şimdi dene. Terminali açın ve ls
herhangi bir seçenek veya parametre olmadan ana dizininizdeki komutu kendiniz girin :$ ls

ls
komut çıktısı.ls
Komut herhangi bir seçenek veya parametre olmadan yürütüldüğünde, komut geçerli çalışma dizininin içeriğini listeler. Birçok modern terminal, dizinleri mavi, normal dosyaları beyaz ve yürütülebilir dosyaları yeşil renkte boyayarak kullanıcıya ek bilgi sağlar. Pek çok terminalde bu tür bir lüks bulamayacağınıza dikkat edin ve bu nedenle, çeşitli dizin içeriği öğelerinin ls
komutunu kullanarak manuel olarak nasıl ayırt edeceğimizi öğrenmemiz gerekir .
Çoğu komut, işlevi ve her bir komutun hangi argümanları kabul ettiği hakkında bilgi edinmek için kullanılabilecek manuel bir sayfa ile birlikte gelir. man
İstediğiniz komutun manuel sayfasını görüntülemek için komutu kullanın . Örneğin, ls
komutun yürütülmesi için manuel bir sayfa görüntülemek man ls
. Manuel sayfadan çıkmak için q
tuşuna basın .
-l
uzun liste olarak da bilinen seçenek varsayılan ls
çıktıya daha fazla bilgi ekler :$ ls -l

ls
komut uzun liste seçeneği -l
, her dizin öğesi hakkında ek bilgi sağlar. Vurgulanan her dizin öğesi için d
bir dizin türünü ve -
normal bir dosyayı gösteren dosya türü bilgisidir .-l
seçeneği kullanarak ls
komut, kullanıcıya izinler, kullanıcı veya grup sahipliği, dosya boyutu ve değişiklik zamanı gibi ek bilgiler sağlar.Diğer bir genel
ls
komut seçeneği de, -a
dizindeki tüm gizli dosyaları veya dizinleri listeler. Öneki adı olan herhangi bir dosya veya dizin .
gizlidir, bu nedenle varsayılan ls
komut çıktısının bir parçası olarak dahil edilmez .$ ls -aBirçok
ls
komutun seçenekleri sadece bazı diğer seçenekler ile birlikte anlam var. Örneğin, seçilen herhangi bir dosyanın dosya boyutunu göstermek için kullanıcı ls
komutlara -l
seçenek ve söz konusu gerçek dosya adı ile parametre olarak sağlayabilir . Dosyanın ls
boyutunu göstermek için aşağıdaki komut örneğini düşünün image.jpg
:$ ls -l image.jpg

ls
Linux komutunu kullanarak dosya boyutunu görüntüleyin .ls
komut dosya boyutunu bayt cinsinden görüntüler, yani -h
(insan tarafından okunabilir) seçeneği sağlanmaz. -h
Seçenekle birlikte belirtilmedikçe, -l
seçeneğin bir anlamı olmadığını unutmayın .Bu noktada, kullanıcıların parametreleri kullanarak ana dizinlerinden ayrılmadan herhangi bir dizini listeleyebileceğini veya tüm dosya sistemindeki herhangi bir dosya hakkında bilgi bulabileceğini unutmamak önemlidir. Bunu yapmak için, komuta parametre olarak hakkında daha fazla bilgi listelemek istediğiniz bir dosya veya dizine mutlak veya göreli yol sağlamanız yeterlidir . Aşağıdaki komut örneklerini deneyin :
ls
ls
$ ls /etc/systemd $ ls -l ../ $ ls -lh /etc/services

ls
Komutu içeren mutlak veya göreli yol parametresi örneği .
ls
Komutun manuel sayfasını kullanın ve /etc
dizinin içeriğini dosya boyutuna göre azalan sırada göstermenin bir yolunu bulabileceğinizi görün .
Dizin oluşturma
Dizinlerin amacı dosya sistemini, dolayısıyla bizim ve sistem dosyalarımızı düzenli tutmaktır. Bu bölümde,mkdir
GNU / Linux komut satırındaki komutu kullanarak nasıl dizin oluşturacağınızı öğreneceksiniz .GNU / Linux sisteminde bir dizin oluşturmak
mkdir
, istenen doğrudan adı bir argüman olarak belirtirken komutu yürütmek kadar basittir . Şimdi dene. Terminali açın ve örneğin dir1
ana dizininizde adlı yeni bir dizin oluşturun .$ mkdir dir1

Adlarının bir parçası olarak boşluk içeren dosya ve dizinler oluşturmaktan kaçının. Linux'ta adı tırnak işareti ile çevreleyen bir dizin veya dosya adı oluşturmak mümkündür mkdir "my files"
, ancak bu daha sonra sorunlar yaratabilir, bu nedenle pahasına önlemek! Dosya veya dizin adında boşluk kullanmanız gerekiyorsa, _
bunun yerine bir alt çizgi kullanın.
ls
geçerli çalışma dizininizin içeriğini listelemek için komutu kullanın ve dizin doğru şekilde oluşturulduysa, bunu komut çıkışında görmelisiniz.Geçerli çalışma dizininizdeki dizini oluşturmakla aynı şekilde, uygun izinlere sahip olmanız koşuluyla dosya sisteminin herhangi bir yerinde bir dizin de oluşturabilirsiniz. Şimdi denilen yeni bir dizin oluşturalım
example
içinde /tmp
dizine.Artık bu göreve yaklaşmanın iki yolu var. İlk olarak, komutu
/tmp
kullanmaya gidebiliriz cd
ve dizinde bir kez mkdir
yeni dizin adını izleyen komutu yürütebiliriz .Diğer bir çözüm, yeni dizin adının sadece önekini yeni dizinin yaratılacağı dizinin doğru mutlak veya göreceli yoluyla önek oluşturarak oluşturmaktır
example
. Bu nedenle , komut yürütülmeden önce dizine cd
gitmek için komutu kullanmanıza gerek yoktur :/tmp/
mkdir
$ mkdir /tmp/example
mkdir
Komuta ile ilgili öğrenilecek çok şey yok . Daha önce açıklandığı gibi mutlak ve göreli yol arasındaki farkı anladığınız sürece, iyisinizdir. Komutla birlikte kullanılan yalnızca bir ortak seçenek daha vardır mkdir
ve bu da -p
seçenektir.Let Diyelim ki yeni bir dizin oluşturmak istiyor demek
dir2
varolan dizin içinde dir1
sıra yeni oluştururken dir3
içinde dir2
. İlk çözüm ilk önce, dir2
ardından dizin içinde mkdir
oluşturmak için ikinci komutun çalıştırılması olacaktır . Ancak, bu seçeneği kullanarak, tek bir komut yürütme ile elde edilebilir :dir3
dir2
-p
mkdir
$ mkdir -p dir1/dir2/dir3

mkdir
GNU / Linux komut satırındaki komutu kullanarak dizin oluşturma .
Kullanıcı hesabınızı kullanarak, dizin my_dir
içinde adlandırılan bir dizin oluşturmayı /etc
deneyin. Çalışıyor mu? Değilse, neden?
Dosya oluşturma ve dosya içeriğini okuma
GNU / Linux sistemi, ayarlar, yapılandırma ve günlük gibi verilerle ilgili bilgilerin çoğunu düz ASCII metin dosyaları biçiminde depolar. Bu nedenle, herhangi bir kullanıcının metin dosyası manipülasyonunu en azından temel olarak anlaması önemlidir.Bu bölümde, basit bir komut satırı tabanlı metin dosyası düzenleyicisi kullanarak nasıl dosya oluşturulacağını, dosya içeriğini nasıl okuyacağınızı ve bir metin dosyasını nasıl düzenleyeceğinizi öğreneceksiniz.
Başlangıç
file1
dizininizde boş bir dosya oluşturarak başlayalım . Bunu yapmak için touch
komutu kullanırız . Terminalinizi açın ve aşağıdaki Linux komutunu girin:$ touch file1Hepsi bu! Artık
file1
ana dizininizde başarıyla adlandırılan yeni bir dosya oluşturdunuz . Komutu ls
şimdi yürütünüz ve bu yeni dosyayı ana dizininizde oturup görmeniz gerekir.
touch
..txt
veya gibi bir uzantı içermeyen bir dosya oluşturduğumuzu fark etmiş olabilirsiniz .exe
. Not, GNU / Linux sistemlerindeki dosya uzantısının çoğunlukla ls
tüm dosyaları ve dizinleri listeleme komutunun yürütülmesi üzerine, bir uzantıya sahip bir dosyanın .txt
makul bir şekilde bir ASCII metin dosyası olduğu açıktır. ile bir dosyanın .png
bir görüntü dosyası olması muhtemeldir.Bu noktada, bir GNU / Linux işletim sisteminde dosya oluşturmanın birçok yolu olduğunu belirtmek önemlidir. Gerçekte, daha önce yaptığımız gibi boş bir dosya oluşturmanız gerekmiyor. Aslında, touch komutunun birincil amacı dosya oluşturmak değil, başka bir zaman için bir hikaye olan dosya zaman damgalarıyla manipüle etmektir.
Dosyaların asıl amacı veri depolamak olduğundan, tam da bunu yapacağız. Bazı rastgele metinler içeren
nano
yeni bir dosya oluşturmak için çağrılan bir metin dosyası düzenleyicisini kullanalım todo-list.txt
. Aşağıdaki komutu yürüterek başlayın:$ nano todo-list.txt
nano
Komutu yürüttüğünüzde, nano düzenleyici açılır ve yeni todo-list.txt
dosyanın içeriğini düzenlemenizi sağlar . İken nano
editörü dosya içeriğinde herhangi bir değişiklik gerçekleştirmek gerektiği gibi.Hazır olduğunda, dosyayı kaydetmek için
CTRL+o
önce ENTER
tuşuna , ardından tuşuna basın . Bu noktada yeni todo-list.txt
dosya oluşturulur. nano
Editörden çıkmak CTRL+x
için aşağıdaki resimlerde gösterildiği gibi tuş bileşimine basın :
nano
Düzenleyiciyi açın . Parametre olarak istediğiniz dosya adını girin.
CTRL+o
olduğunda, geçerli dosya içeriğini kaydetmek için tuş bileşimine basın .
ENTER
.
nano
basarak düzenleyiciden çıkın CTRL+x
.
todo-list.txt
Şimdi adlandırılan yeni dosya oluşturulur ve ls
komut yürütüldüğünde görünür olmalıdır .nano
Metin düzenleyici komutunun bir parametresi olarak dosya adını belirterek varolan herhangi bir metin dosyasını düzenlemeye devam edebilirsiniz .Şimdiye kadar nasıl bir dosya oluşturulacağını ve bir komut satırı metin düzenleyicisi kullanarak mevcut veya yeni metin dosyasını nasıl düzenleyeceğimizi öğrendik. Henüz ele almadığımız şey, metin dosyasının içeriğinin nasıl okunacağıdır. Dürüst olmak gerekirse, fazla bir şey yok!
cat
GNU / Linux komutunu kullanarak herhangi bir dosyanın içeriğini okuyabilirsiniz .Şimdi dene. Komutu yürütün
cat
ve parametre olarak incelemek istediğiniz dosyanın adını girin. Örneğin:$ cat todo-list.txt

cat
Herhangi bir metin dosyasının içeriğini görüntülemek için komutu kullanın . Dosya adını cat
komut parametresi olarak sağlamanız yeterlidir .
Bazı dosyalar binlerce satıra yayılabilir. Komutu /etc/services
kullanarak dosyanın içeriğini aramayı deneyin cat
. Bazı terminallerde sınırlı sayıda çizgi vardır ve kaydırma çubuğu yoktur. Bu nedenle, büyük metin dosyalarının içeriğini sadece cat
komutu kullanarak okumak mümkün olmazdı . Dosyanın içeriğini okumak less
veya more
okumak için komutlarla denemeler yapın /etc/services
.
file
.Daha önce, dosya adlarının uzantılarla sonlandırılmasının gerekli olmadığından bahsettiğimizi unutmayın. Eğer durum buysa, ana dizinimizde veya GNU / Linux dosya sisteminin herhangi bir yerinde ne tür bir dosyanın saklandığını nasıl bileceğiz? Bu,
file
komutun kullanışlı olduğu yerdir . file
Komut, parametre olarak sağlanmış olan bir dosyanın dosya tipini verir. Şimdi dene:$ file todo-list.txt

file
GNU / Linux komutunu kullanarak dosya türü bilgilerini alın .Dosyaları ve dizinleri yeniden adlandırma veya taşıma
Başka bir mantıklı adım, dosyaları ve dizinleri yeniden adlandırmayı veya taşımayı öğrenmektir. Bu noktada, dosya veya dizinlerin nasıl oluşturulacağını tartıştık, ama mevcut dizini veya dosyayı başka bir konuma taşımak ne olacak? GNU / Linux sistemi altında dosya veya dizinlerin taşınması ve yeniden adlandırılmasının temelde aynı olduğunu bilmekten memnuniyet duymalısınız.GNU / Linux dosya sistemindeki dosyaları yeniden adlandırmak ve taşımak basit bir iştir. Gerekli olan tek şey
mv
, yukarıdaki Dosya sistemi gezinme bölümünde daha önce anlatıldığı gibi mutlak ve göreceli yolun komutu ve anlaşılmasıdır .Aşağıdaki örneği düşünün:
$ touch file1 $ mkdir dir1Yukarıdakileri
touch
ve mkdir
komutları kullanarak file1
ve dizin adında bir dosya oluşturduk dir1
. touch
Ve mkdir
komutlarının kullanımı daha önce ele alınmıştı, bu yüzden açıklama gerekli olmamalı.Görev öncesinde yeniden adlandırmak etmektir
file1
için file2
ve dir1
hiç dir2
kullanarak mv
komutu. Bunu yapmak için, mv
komutu ilk parametre olarak yeniden adlandırmak istediğimiz dosya veya dizinin mutlak veya göreli yolunu sağlamalıyız. Gerekli ikinci parametre, dosya veya dizinin yeniden adlandırılmasını istediğimiz dosya veya dizinin mutlak veya göreli yoludur:$ mv file1 file2 $ mv dir1 dir2Burada anlaşılması gereken nokta, GNU / Linux'un dosyaları yeniden adlandırmak için açık bir komutu olmadığıdır. Bunun yerine,
mv
(taşıma için kısa) komutu, işlem sırasında adlarını değiştirirken dosya veya dizini bir konumdan diğerine taşımak için kullanılır. Aşağıdaki örneği düşünün:$ mv file2 /tmp/file3 $ mv dir2 /tmp/dir2İlk komut
file2
dizine taşındı /tmp/
ve yeniden adlandırıldı file3
. İkinci komut taşındı dir2
içine /tmp/
ve aynı hedef dizin adı verilen bu yana dizin adı aynı kalır.Bu nedenle, ikinci komut aslında kaynağı sadece
dir2
hedef dizine /tmp/
taşır, bu nedenle yeni dizin adını belirten ikinci parametre gerekli değildir ve aşağıdaki gibi yürütülebilir:$ mv dir2 /tmp/Yukarıdaki
mv
komutun anlaşılması önemlidir , çünkü mv
komut aynı zamanda birden çok parametreyi kabul etme yeteneğine sahiptir. Yani, tek mv
komutu yürüterek birden fazla dizini ve / veya dosyayı aynı anda taşımak mümkündür :$ mkdir dir4 dir5 $ touch file4 file5 $ mv file4 dir4 file5 dir5 /tmp

Birden fazla mv
komut parametresiyle uyulması gereken tek kural, komuta birden fazla kaynak parametresi sağlandığında mv
son sağlanan parametrenin bir dizin olması gerektiğidir.
mv
komut birden fazla dosya ve dizini yeni konuma taşıdı: /tmp
dizin. Burada, mv
komut olarak kaç kaynak dosya veya dizin sağlayacağınıza bakılmaksızın , son sağlanan parametrenin hedef olarak kabul edildiğini parametreler olarak belirtmek önemlidir .Başka bir konuya geçmeden önce,
mv
komut hakkında muhtemelen zarar verici bir gerçekten bahsetmek önemlidir .verilen hedef dosya parametresi
mv
zaten mevcutsa, uyarı yapılmadan üzerine yazılabilir, bu nedenle bu eylemin verilerinizi geri dönüşü olmayan bir şekilde kurtarma işlemi olmadan silme potansiyeli vardır. Aşağıdaki mv
komut örneğini düşünün :$ cat /tmp/sample.txt linuxconfig.org $ touch sample.txt $ mv sample.txt /tmp/sample.txt $ cat /tmp/sample.txt $Emin değilseniz, hedef dosyanın zaten mevcut olması durumunda komuta bir uyarı vermesini bildirmek için
-i
seçeneğini kullanın mv
. Misal:$ mv -i sample.txt /tmp/sample.txt mv: overwrite '/tmp/sample.txt'?
mv
, bu bölümde açıklandığı şekilde uygulanan komutu gösterir :
mv
komutuyla çalışma örneği .Dosyaları ve Dizinleri Kopyalama
Önceki bölümde,mv
GNU / Linux komutunu kullanarak dosya ve dizinleri bir konumdan diğerine nasıl taşıyacağımızı tartıştık . Bu bölüm, cp
komutu kullanarak dosyaların ve dizinlerin bir kopyasının nasıl oluşturulacağına ilişkin benzer bir konuyu kapsar .Önceki bölümde toplanan bilginin çoğu öğrenmek için bize yardım edecek
cp
her ikisi için sözdizimi olarak GNU / Linux komut mv
ve cp
komutları çok benzer. Temel fark, dosyaları veya dizini taşımak yerine cp
komutun kaynak dosyanın veya dizinin tam bir kopyasını oluşturmasıdır.Onunla olduğu gibi
mv
komut mekanizma aşağıdakilercp
komutunun en az iki parametre ile sağlanması gerekir. İlk parametre kaynak dosya veya dizindir ve ikinci parametre hedef dosya veya dizindir.Başlangıç dizinimizde bulunan dosyanın bir kopyasını oluşturmanın basit bir örneğiyle başlayalım. İlk olarak,
touch
komutu adlı yeni bir dosya oluşturmak için kullanırız file1
ve daha sonra bunun tam bir kopyasını yaparız file2
:$ touch file1 $ cp file1 file2Burada oldukça açık olan kural,
cp
komuta sağlanan kaynak ve hedef parametrelerin aynı olamayacağıdır:$ cp file1 file1 cp: 'file1' and 'file1' are the same fileHem kaynak hem de hedef parametresi için tam olarak aynı bir dosya adı sağlamanın tek yolu, dosyayı mutlak veya göreli yolu kullanarak farklı bir dizine kopyalamaktır. Aşağıdaki
cp
komut örneği file1
dizinin bir kopyasını oluşturur /tmp
:$ cp file1 /tmp/file1Ancak, dosya adını değiştirmek gibi bir niyetiniz yoksa, dosya adını bir hedef parametre olarak sağlamanız gerekmez. Bu nedenle, yukarıdaki komut şu şekilde kısaltılabilir:
$ cp file1 /tmp/

Tek cp
komutu çalıştırarak /etc/services
dosyanın bir kopyasını ana dizininize kopyalayın ve yeniden adlandırın port-numbers.txt
.
cp
Bir dizinin kopyasını da oluşturmak için aynı komut sözdizimini kullanabilirsiniz. Ancak, önemli bir fark vardır ve bir dizini kopyalamak için -r
(özyinelemeli) cp
komut seçeneğini kullanmamız gerekir . Aşağıdaki örneği düşünün:$ mkdir dir1 $ cp dir1 /tmp/ cp: -r not specified; omitting directory 'dir1' $ cp -r dir1 /tmpGNU / Linux
mv
komutunda da olduğu gibi, cp
komut birden fazla parametreyi de kabul eder. Yani, tek bir cp
komutla aynı anda birden fazla dosya ve dizin kopyalamak mümkündür .Kural, son parametrenin bir dizin olması gerektiğidir. İlk önce başka bir örnek dizin ve dosya oluşturduğumuz aşağıdaki örneği inceleyin. Ardından, bu dizini diğer iki dosyayla birlikte dizine kopyalarız
/tmp/
:$ mkdir dir2 $ touch file1 file2 $ cp -r dir2/ file1 file2 /tmp/
verilen hedef dosya parametresi
cp
zaten mevcutsa, uyarı yapılmadan üzerine yazılabilir, bu nedenle bu eylemin verilerinizi geri dönüşü olmayan bir şekilde kurtarma işlemi olmadan silme potansiyeli vardır. Belirli durumlarda bu davranış dizinler için de geçerlidir! Aşağıdaki cp
komut örneğini düşünün :$ cat sample.txt linuxconfig.org $ touch /tmp/sample.txt $ cp /tmp/sample.txt sample.txt $ cat sample.txt $Emin değilseniz, hedef dosyanın zaten mevcut olması durumunda komuta bir uyarı vermesini bildirmek için
-i
seçeneğini kullanın cp
. Misal:$ cp -i /tmp/sample.txt sample.txt cp: overwrite 'sample.txt'?
cp
, bu bölümde açıklandığı şekilde uygulanan komutu gösterir :
cp
GNU / Linux komut satırı terminalini kullanarak GNU / Linux dosya sistemindeki dizinleri ve dosyaları kopyalamak için GNU / Linux komut örnekleri.Dosyaları ve Dizinleri Kaldırma
Bu aşamada, Linux komut satırı temelleri konusunda oldukça emin olmalısınız. Komutların kullanıldığı bir kalıp da fark etmiş olabilirsiniz. Herhangi bir dosya veya dizini nasıl oluşturacağınızı, taşıyacağınızı ve yeniden adlandıracağınızı bilmelisiniz. Ancak, dosya veya dizinlerin nasıl kaldırılacağını bilmeden dosya sisteminiz dolar, bu nedenle daha fazla veri saklama özelliği kaybedilir.Bu bölümde iki komut ele alınacaktır. İlk komut
rmdir
ve ikinci komut rm
. Hem rmdir
ve rm
komutlarının adlarına bakarken , komutun rmdir
dizinleri kaldırmak için kullanıldığını ve ikinci komutun rm
dosyaları silmek için kullanıldığını ve çoğunlukla haklı olduğunuzu hızlı bir şekilde sonuçlandırabilirsiniz . Önce rmdir
komuta bakarak başlayalım .Deneylerimiz için, birden çok alt dizin ve dosya içeren aşağıdaki dizin yapısını kullanacağız. Amacımız tüm dosyaları ve dizinleri kaldırmak için nasıl kullanılacağını
rmdir
ve rm
komutları öğrenmek :
rmdir
Ve rm
komutlarını kullanarak dosya ve dizinleri nasıl kaldıracağınızı öğrenmek için dizin yapısını uygulayın .rmdir
komut birden fazla argümanı da kabul eder. Örneğin, dir4
tek yapmamız gereken rmdir
komut dizinine parametre olarak kaldırmak istediğimiz dizinin adını sağlamaktır:$ rmdir my_files/dir4/Basit değil mi? Şimdi bir sonraki dizini kaldıralım diyelim
dir1
:$ rmdir my_files/dir1 rmdir: failed to remove 'my_files/dir1': Directory not emptyGördüğünüz gibi, yukarıdaki
rmdir
komut dir1
dizini kaldıramadı . Bunun birincil görevi rmdir
dizinleri kaldırmaktır ve dizin dir1
dosyaları içerdiğinden, rmdir
komut bu dizini boş olmadığından şikayet eden bir hata iletisiyle bu dizini atladı.Mantık sağlam! Boş olmayan dizini kaldırmanın tek yolu,
rmdir
oldukça uzun komut satırı seçeneğini kullanmaktır --ignore-fail-on-non-empty
. Ancak, bu noktada rm
komutu kullanmak çok daha kolaydır . rm
Komut dizin boş veya dosya ve alt dizinleri herhangi bir sayı ile doldurulan olup olmadığını dosyaları ve dizinleri herhangi bir sayıda kaldırmak için yetenekli seçeneklerin doğru kombinasyonu ile olduğunu.İlk olarak,
rm
şu dosyayı kaldırmak için test edelim my_file.txt
:$ rm my_files/my_file.txtDizini kaldırmak
rm
için -r
seçenek kombinasyonunu kullanmamız gerekir . Seçenek -r
, özyinelemeli anlamına gelir, yani komut, içeriğinin yanı sıra herhangi bir dizini de kaldırır. Aşağıdaki komut, my_files/dir1
herhangi bir dosya veya alt dizin dahil olmak üzere tüm dizini kaldırır :kullanarak dosyaları kaldırmak
rm
geri döndürülemez bir işlemdir. Yani, kullanılan dosya sisteminize ve sistem kullanımınıza bağlı olarak verileriniz kurtarılamaz. rm
Linux komutunu kullanırken iki kez ölçtüğünüzden ve bir kez kestiğinizden emin olun .$ rm -r my_files/dir1/
rm
Komutu kullanmak oldukça basittir. Diğer birçok Linux komutları gibi, birden fazla parametreyi kabul eder, böylece tek veya herhangi bir sayıda dosya ve dizini kolayca kaldırabilir.
rm
ve rmdir
.
Giriş dizininizde bulunan rm
tüm my_file
dizini kaldırmak için tek komutu yürütün .
Dosya veya dizin arama
Bu noktada, dosya sistemi navigasyonu ve dosya / dizin yönetimi konusunda oldukça rahat olmalısınız. Temel GNU / Linux sistem yönetimi komutlarına adanmış bir sonraki bölüme geçmeden önce, böyle bir ihtiyaç ortaya çıktığında dosyaları nasıl arayacağımızı tartışmalıyız. Kullanıcının dosyaları aramasına izin veren iki ana Linux komutu vardır. Yani,locate
komut ve find
komuttur. Komut güçlü bir araç dolayısıyla buna başlayanlar söz konusu olduğunda biraz kullanımına ezici bit olabiliyor. Bu nedenle, komutu sadece kullanımı çok daha kolay olduğu için ele alıyoruz . Linux komutunun temel kullanımı oldukça basittir. Tür bir parametre olarak dosya veya dizin adının başına. Örneğin, şu dosyayı arayalım:find
locate
locate
locate
issue
:$ locate issueYukarıdaki komut, dosya sistemi
issue
veya dizin adının herhangi bir yerinde dizeyi içeren tüm dosya sistemindeki dosyaların veya dizinlerin bir listesini oluşturur . Ne aradığınıza bağlı olarak, bu liste önemli ölçüde büyüyebilir.Bu nedenle, tam bir dosya adı eşleşmesi aramanın daha uygun bulmaya meyilli bir çıktı üretmesi muhtemeldir. Bunu yapmak için normal ifadeler ve
locate
komut satırı seçeneğini kullanmamız gerekir -r
.Düzenli ifadeler bu eğitimin kapsamı dışındadır. Şimdilik, tam olarak bir dosya adı veya dizin adı aramak için dizeyi
/
ve ile çevrelememiz gerektiğini bilmeliyiz $
. Örneğin:$ locate -r /issue$

locate
Linux komut yöneticisinin rütbesine yükseltmeden önce , locate
komutun nasıl çalıştığını kısaca tartışalım . locate
Bu sadece kullanımı ile günde bir kez güncellenir mevcut ön inşa veritabanı dizin dosyası danışır çünkü komut, son derece hızlı bir arayış içindedir updatedb
komuta.Dezavantajı,
locate
komutun son updatedb
komut yürütüldüğünden bu yana oluşturulan herhangi bir dosyayı veya dizini almamasıdır . Bununla birlikte, yeni dosyaları dahil etmek için, kullanıcıların updatedb
komutu aşağıda gösterildiği gibi manuel olarak çalıştırma seçeneği vardır :$ sudo updatedb

updatedb
komut kullanım örneği.
locate
Linux komutuyla oynamayı deneyin ve komuta yalnızca belirli bir dizinde dosya arama talimatı vermenin bir yolunu bulabileceğinizi görün.
Temel Yönetim Linux Komutları
Yönetici Ayrıcalıklarıyla komutları yürütme
Çalıştırılacak Linux komutlarının çoğu yönetici ayrıcalıkları olmadan yürütülecektir. Nitekim, yönetici ayrıcalıklarına sahip komutların yürütülmesi, yalnızca önündeki görevin gerektirmesi durumunda önerilir. Bu basit kurala uymak genel sistem bütünlüğüne katkıda bulunacak ve kullanıcının Linux komut satırı ile etkileşime girerken maliyetli ve gereksiz hatalardan kaçınmasına izin verecektir.Bununla birlikte, Linux komutlarını yönetici ayrıcalıklarıyla tamamen yürütmekten kaçınmayı hayal etmek zordur. Yeni yazılım yüklemesi, temel sistem hizmetlerinin yapılandırması ve daha fazlası için yönetici ayrıcalıkları gerekir.
sudo
Linux komutunun kullanışlı olduğu yer burasıdır . Herhangi bir Linux komutunun önünesudo
komutun yönetici olarak adlandırılan kök ayrıcalıklarıyla yürütülmesini sağlar. Kendin dene:$ sudo whoami $ whoami

whoami
Komut hep yürütür kullanıcının bir kullanıcı adı döndürür. Bu durumda whoami
Linux komutunun komutla önekinin verilmesinin , sudo
komutun whoami
kök kullanıcı olarak yürütülmesini sağladığını görebiliriz.sudo
kullanıcıya sudo
ilk başarılı kimlik doğrulamasından sonra parola olmadan komutu kullanarak art arda ayrıcalıklı komutlar girmesi için 5 dakika verilir .
Terminalden Linux komutlarını çalıştırmanızı isteyen Linux ile ilgili herhangi bir belgeyi okuduğunuzda, $
veya ile ön ekli tüm komutları görürsünüz #
. $
İşareti, herhangi bir Linux düzenli olmayan ayrıcalıklı kullanıcı olarak yürütülecek komutları gerektirir. Öte yandan, #
verilen Linux komutlarının doğrudan kök kullanıcı olarak veya sudo
komut kullanılarak root / yönetici ayrıcalıklarıyla yürütüleceğini belirtir .
Yazılım yükleme
GNU / Linux sisteminizin varsayılan kurulumu, gereksinimlerinize uygun ek yazılımlar içerecek şekilde özelleştirilebilir ve sıklıkla özelleştirilebilir. Çeşitli GNU / Linux dağıtımları arasında bir fark varsa, yazılımın nasıl kurulduğu budur. Yazılım, ilgili dağıtım paketi deposundan temin edilebilen paketler halinde teslim edilir.Yazılım paketi yönetimi söz konusu olduğunda GNU / Linux dağıtımlarının iki ana dalı vardır.
Yani, DEB ve RPM . İlk şube yazılımı
apt
ve ikinci şube yum
yazılımı yüklemek için komutu kullanıyor . Elbette, yazılım kurulumu veya bakımına yardımcı olacak başka birçok yardımcı komut vardır, ancak temel bilgiler aşağıda açıklanmaktadır.İlk olarak, kurmak istediğimiz yazılımın paket adını aramaya başlarız. Diyelim ki torrent dosyalarını indirebilmemiz için bir çeşit torrent istemcisi kurmamız gerekiyor. İlk olarak, bir paket adı arıyoruz:
DEB GNU/LINUX SYSTEMS: $ apt search torrent client RPM GNU/LINUX SYSTEMS: $ yum search torrent clientYukarıdaki komutlar, paket adlarının ve ilgili açıklamalarının bir listesini oluşturur. Açıklama sütununu okuyun ve yüklemek istediğiniz sol sütundan bir paket seçin. Kurmak istediğiniz paketi seçtikten sonra, paketi kurmak için ilgili paket yönetimi komutunu tekrar çalıştırın.
Diyelim ki yüklemek istediğimiz paketin adı
bittorrent
. Kurulumu başlatmak için komutumuzun bir önceki bölümde açıklanan yönetici ayrıcalıklarıyla yürütülmesi gerekir. İstendiğinde, y
yüklemeyi gerçekleştirmek için yazın :DEB GNU/LINUX SYSTEMS: $ sudo apt install bittorrent RPM GNU/LINUX SYSTEMS: $ sudo yum install bittorrent

apt
Ubuntu Linux sistemine yazılım yüklemek için komut satırı yazılım paketi yönetim aracını kullanma.
apt search
Komutun yürütülmesi, terminal ekranınıza sığmayacak uzun bir paket listesi oluşturabilir. Bu rahatsızlığın üstesinden gelmek more
için boşluk tuşunu kullanarak komutun üzerine gelin ve listeyi aşağı kaydırın. Misal:
$ apt search YOUR SEARCH KEYWORDS | moreTo çıkın ve komut satırı basına dönmek
q
tuşuna basın.Disk alanı kullanımını kontrol etme
Bu bölümde, bir dizin ve dosya boyutunun nasıl kontrol edileceğini ve mevcut disk alanı kullanımınız hakkında nasıl bilgi edineceğinizi öğreneceksiniz. Bu bölümde ele alacağımız ilk Linux komutudf
komuttur. Komut adı d isk f ree df
kelimelerinin kısaltmasıdır . Komut herhangi bir parametre olmadan yürütüldüğünde, komut, kilobayt cinsinden erişilebilen tüm bölümler için kullanılmış ve kullanılabilir disk alanı hakkında bilgi verir. Varsayılan komut çıkışı disk kullanım bilgilerini kilobayt cinsinden yazdırır. Ancak, bu davranışın üzerine aşağıdaki seçenek kullanılarak yazılabilir :df
df
-h
$ df -hİstediğiniz dizinin boş disk alanını denetlemek için bu dizinin tam yolunu
df
komuta parametre olarak eklemeniz yeterlidir . Misal:$ df -h /home

df
içindeki komutu kullanarak boş disk alanı olup olmadığını kontrol edin /home
.df
komutla kontrol edilmesi, boyutu hakkında herhangi bir bilgi göstermez. df
Komut sadece dizin bulunduğu bir bölme disk alanı kullanımı hakkında bilgi verir. Dizin boyutunu kontrol etmek için, du
aşağıda açıklandığı gibi Linux komutunu kullanın .İnsan tarafından okunabilir biçimde dosya boyutu hakkında bilgi almak için, yukarıdaki uzun
ls
komutu -l
(uzun listeleme) ve -h
(insan tarafından okunabilir) seçeneklerle ve söz konusu dosyanın tam veya göreli yolunun birleşimi ile kullanabiliriz . Örneğin, aşağıdaki ls
komut swapfile
kök dizinde bulunan adlı dosyanın boyutunu döndürür /
:$ ls -lh /swapfileBir dosya boyutunu kontrol etmekle aynı şekilde
du
dizin boyutunu kontrol etmek için komutu kullanabiliriz . du
Dizin parametresi ile birlikte sağlandığında , komut varsayılan olarak aşağıdakilerdeki tüm dizinlerin boyutunu görüntüler:$ du -h /home/Tek bir dizinin toplam boyut özetini elde etmek için
-s
seçeneği kullanın. Bir kez daha, bu bölümdeki tüm yukarıdaki örneklerde olduğu gibi, insan tarafından okunabilir çıktıyla ilgileniyoruz, bu nedenle şu -h
seçeneği kullanıyoruz :$ du -sh /home/

du
boyutunu kontrol etmek için Linux komutunu kullanma örneği /home
.
man ls
Tüm olası ls
komut seçeneklerine hızlı bir genel bakış için komutu çalıştırın . ls
Tüm dizinleri disk boyutlarına göre sıralanmış bir dosyayı azalan sırada listelemek için bu komutu nasıl kullanacağınızı bulabilir misiniz ?
Dosya ve dizin sıkıştırma
Bu bölümde, GNU / Linux sistemindeki dosyaları sıkıştırmanın ve sıkıştırmasını açmanın birkaç yolunu ele alacağız. Öğreneceğiniz ilk araçlartar
ve gzip
komutlarıdır. tar
Komut çoğunlukla tek bir dosya haline dizinin tamamını birleştirmek ve gerekirse isteğe süreçte sıkıştırma uygulayarak için kullanılır.Aşağıdaki
tar
komut örneği, tüm dizini my_dir
tek bir dosyada birleştirir my_dir.tar
:$ tar cf my_dir.tar my_dirOrtaya çıkan dosyayı daha da sıkıştırmak için şu
gzip
komutu kullanarak sıkıştırılmış bir dosya üretebiliriz my_dir.tar.gz
:$ gzip my_dir.tarBununla birlikte, çoğu zaman dizini yine de sıkıştırmamız gerekir, bu nedenle yukarıdaki komutlara alternatif olarak hem
tar
ve gzip
araçları birleştiren dizini sıkıştırmak mümkündür :$ tar cxf my_dir.tar my_dir
tar
Ve gzip
komutlarının birleşimi ile üretilen dosyalara gzip tarballs veya sadece tarballs denir .Herhangi bir tarball'ı açmak için işlemi geri alabiliriz, ancak bunun yerine komutu
gzip
kullanacağız gunzip
. Örneğin, gzip tarball'ı açmak my_dir.tar.gz
için şu gunzip
komutu kullanabiliriz :$ gunzip my_dir.tar.gzYukarıdaki komut dizini
my_dir.tar
içeren orijinal dosyamızı üretecektir my_dir
. tar
Komutu kullanarak, orijinal my_dir
dizini almak için bu tarball'ı paketinden çıkarabiliriz :$ tar xf my_dir.tar

tar
, gzip
Ve gunzip
Linux komutlarını kullanarak dosya ve dizin sıkıştırma ve açma açma örneği .Kapatma ve yeniden başlatma
GNU / Linux işletim sisteminin kapatılması ve yeniden başlatılması söz konusu olduğunda, yeniden başlatmayı ve kapatmayı gerektiren tek bir komut öğrenmeniz gerekir. Bu komut sezgisel olarak adlandırılırshutdown
.Evet, örneğin
init 6
veya reboot
komutu ile sisteminizi yeniden başlatabileceğiniz doğrudur , ancak shutdown
komutu öğrenmek size daha fazla güç ve seçenek sunar. Aşağıda shutdown
komutun birkaç örneği vardır .İlk
shutdown
komut örneği sisteminizi bir dakika içinde yeniden başlatır:$ sudo shutdown -rGNU / Linux sisteminizi yeniden başlatmak için hemen çalıştırın:
$ sudo shutdown -r now
shutdown
Komutu kullanarak sisteminizi kapatmak , yukarıdaki yeniden başlatma komutlarında gösterilenle aynı prensibi izler. Aşağıdaki iki örnek, sistemin bir dakika içinde, hemen ve 1,5 saat (90 dakika) gecikmeyle nasıl kapatılacağını gösterir:$ sudo shutdown $ sudo shutdown now $ sudo shutdown +90Gecikmeli sistem kapatma işlemini gerçekleştirdiyseniz kapatma işlemini şu yollarla iptal edebilirsiniz:
$ sudo shutdown -c
Gelişmiş Linux Komutları
İnternet / Ağ bağlantısında sorun giderme
Bu bölüm size bazı temel ağ oluşturma becerilerini tanıtacaktır. Özellikle, uygun bir İnternet bağlantısı kurmak için gereken hizmetlerin IP adresini nasıl elde edeceğinizi ve ağ bağlantısı ile Internet bağlantısı sorunlarını nasıl gidereceğinizi öğreneceksiniz. Komutukullanarak yerel IP adresimizi alarak başlayalım
ip
. ip
Komut dahil bir dizi seçeneği vardır address
ya a
seçeneğini kullanılabilir ve etkin ağ arayüzleri tüm atanmış IP adreslerini görüntülemek için kısa:$ ip aYukarıdaki komut sistem tarafından kullanılmakta olan IP adresini gösterir. Lütfen ağ arayüzü adınızın farklı olabileceğini unutmayın. Bir sonraki örnekte, ağ geçidinizin IP adresini alıyoruz.
ip
Komutu bir kez daha kullanıyoruz ancak bu sefer r
(route) seçeneğiyle:$ ip rBulmacanın bir sonraki parçası DNS (alan adı sunucusu) IP adresidir. Ana bilgisayar adlarını IP adresine çözümlemek için sisteminizin hangi DNS sunucusunun kullanıldığını kontrol etmek için , daha önce açıklandığı gibi komutu
/etc/resolv.conf
kullanarak dosyanın içeriğini kontrol edin cat
:$ cat /etc/resolv.conf

ping
komuttur. Komutukullanarak
ping
herhangi bir IP adresine veya ana bilgisayara bağlantıyı test edebiliriz. ping
Komut istenilen ana bilgisayar veya IP adresine bir paket göndermek ve bize sonucu hakkında bilgi verecektir. Varsayılan olarak, ping
komut seçilen IP adresine veya ana bilgisayara sonsuz bir ping gönderir. Sürekli kesmek ping
için CTRL+C
tuş bileşimine basın . Alternatif olarak, -c
seçeneği, göndermek istediğiniz paket sayısını gösteren sayının birleşimi ile birlikte kullanın . Örneğin:$ ping linuxconfig.org PING linuxconfig.org (104.24.11.18) 56(84) bytes of data. 64 bytes from 104.24.11.18 (104.24.11.18): icmp_seq=1 ttl=57 time=9.83 ms 64 bytes from 104.24.11.18 (104.24.11.18): icmp_seq=2 ttl=57 time=10.0 ms 64 bytes from 104.24.11.18 (104.24.11.18): icmp_seq=3 ttl=57 time=9.95 ms --- linuxconfig.org ping statistics --- 3 packets transmitted, 3 received, 0% packet loss, time 2002ms rtt min/avg/max/mdev = 9.833/9.933/10.008/0.073 ms $ ping -c 2 8.8.4.4 PING 8.8.4.4 (8.8.4.4) 56(84) bytes of data. 64 bytes from 8.8.4.4: icmp_seq=1 ttl=121 time=10.3 ms 64 bytes from 8.8.4.4: icmp_seq=2 ttl=121 time=10.4 ms --- 8.8.4.4 ping statistics --- 2 packets transmitted, 2 received, 0% packet loss, time 1001ms rtt min/avg/max/mdev = 10.340/10.412/10.485/0.125 msHerhangi bir İnternet bağlantısı sorunu yaşıyorsanız, yerel IP adresinizden veya herhangi bir ortak ana bilgisayardan başlayarak yukarıdaki IP adreslerinin tümüne ping uygulayarak ağ bağlantılarında sorun giderebilirsiniz. Bu stratejiyi kullanmak, aşağıda gösterildiği gibi ağ bağlantısı sorunlarınıza neden olan olası sorunu daraltmanıza yardımcı olacaktır.

ping
Linux komutunu kullanarak İnternet bağlantısında sorun giderme .İzinleri ve sahipliği değiştirme
GNU / Linux dosya sistemindeki her dosya veya dizine, farklı kullanıcılar ve çeşitli kullanıcı grupları ait olabilir. Ayrıca, her dosya veya dizin okuma, yazma ve yürütme gibi bir veya daha fazla izne uyacak şekilde ayarlanabilir. Dosya veya dizin izinleri veya sahipliği ile ilgili konu küçük bir kitabı kapsayabilir. Temel konularla ilgilendiğimiz için, başlamanıza yardımcı olacak bazı ipuçları.Dosya veya dizin izinleriyle ilgili gerçek bilgileri elde ederek başlayalım. Bunu yapmak için , parametre olarak önceden öğrenilmiş
ls
komutu -l
ve bir dosya veya dizin adı ile yürütün . Örneğin:$ ls -l dir/Çıktı hakkında ayrıntılı bilgi aşağıdaki resimde gösterilmiştir. Lütfen ilerlemeden önce bilgileri sindirmek için biraz zaman ayırın:

ls
Komut tarafından alınan ayrıntılı dosya veya dizin bilgileri ve -l
uzun listeleme seçeneği.Yukarıdaki görüntüde zaten belirtildiği gibi, okuma , yazma ve yürütme olmak üzere üç izin türü vardır . Aşağıdaki tabloda sembolik ve sekizli gösterimleriyle birlikte tüm izin türleri listelenmiştir:
İzin Türü | Sekizli Temsil | Sembolik temsil |
---|---|---|
Okuma | 4 | r |
Yazmak | 2 | w |
gerçekleştirmek | 1 | x |
GNU / Linux dosya sistemindeki dosya veya dizin izinlerini değiştirme aracıdır
chmod
. chmod
Komutu kullanarak dosya veya dizin izinlerini değiştirmenin iki yolu vardır , yani sekizli veya sembolik gösterimle. Bu ikisinden en iyi yaklaşım, hatırlaması ve kullanması en kolay olanıdır.Aşağıdaki örnek, dizin izinlerini aşağıdaki
chmod
şekilde değiştirmek için komutun hem sekizli hem de sembolik gösterimle nasıl kullanılacağını gösterir dir
:Hedef | gereklilik | Sekizli Temsil | Sembolik temsil |
---|---|---|---|
Kullanıcı (sahip) | Okuma, Yazma ve Yürütme | 7 inç (4 + 2 + 1) | u = rwx |
grup | Oku ve yaz | 6 inç (4 + 2) | g = rw |
Diğerleri | izin yokmu | 0 | o = |
chmod
Sekizli ve sembolik izinler temsilini kullanan aşağıdaki iki linux komutu birbiriyle değiştirilebilir ve dir
dizin izinlerini yukarıdaki gereksinimlere göre değiştirir:OCTAL: $ chmod 760 dir SYMBOLIC: $ chmod u=rwx,g=rw,o= dirBu bölümde ele alınacak son araç
chown
komuttur. chown
Komut kullanıcı dosya veya dizin sahipliğini değiştirmek için izin verir. Her dosya veya dizinin iki tür sahipliği vardır. Yani, bunlar kullanıcı ve grup sahipliği.chown
Komutu kullanarak sahipliği değiştirmek oldukça basit bir işlemdir. Dosya veya dizin sahipliğini değiştirmenin genel kuralı, chown
komuta iki parametre sağlamaktır. Sağlanan ilk parametre, bu dosya veya dizinin kendisine ait olmasını istediğimiz kullanıcı adını ve grup adını .
ve söz konusu dosya veya dizin adını temsil eden ikinci parametreyi içerir.Aşağıdaki
chown
Linux komut örneği file.txt
, kullanıcının lubos
ve gruba ait tüm kullanıcıların sahip olduğu adlı dosyayı değiştirir linuxconfig
:$ chown lubos.linuxconfig file.txt
chown
Linux komutuyla dosya veya dizin sahipliğini başarıyla değiştirmek için aşağıdaki iki kural geçerlidir. Birincisi, kullanıcı ve grubun var olması ve ikincisi, root
kullanıcının veya grubun sahipliğini veya grubunu sahipliğini değiştirmek için yönetici izinleri gerekir. Daha sudo
fazla bilgi için yukarıdaki komut açıklamasına bakın .
chmod
Ve chown
Linux örnek kullanımlarını emreder.
chmod
Linux komutunun farklı izin varyasyonlarını deneyin . Bir dosyaya veya dizine aynı izin kümesinin uygulanmasının nasıl farklı olduğunu açıklayabilir misiniz?
Sistemin çekirdek sürümünü kontrol edin
GNU / Linux kutunuzda sorun gidermeniz gereken zamanlar vardır, bu nedenle şu anda çalışan çekirdeğiniz, yani Linux hakkında bilgi edinmeniz gerekir. Komutu bir kombinasyonuylakullanmak, çekirdek sürümünüz ve mimariniz hakkında ayrıntılı bilgi verir:
uname
-a
$ uname -a

Linux gerçek işletim sisteminin komutları dayanmaktadır oysa gerçekte, sadece sistemin çekirdeğine karşılık gelir anahtar kelimeye GNU dolayısıyla olarak tüm işletim sistemini çağırarak özgür yazılım ikili , GNU / Linux veya Lignux sadece ona atıfta karşıtı olarak daha uygun ve teknik olarak doğru olarak Linux .
Sonuç
Hepsi bu kadar millet! Ancak, öğrenilecek başka bir şey olmadığını düşünmek için sizi kandırmak için bu makalenin uzunluğunu elde etmeyin. Aksine, bu makale yüzeyi zorlukla çizer, çünkü amaç okuyucuyu sadece bazı temel GNU / Linux komut satırı tekniklerine tanıtmaktı.Bu makaleyi geliştirmeme yardımcı olmak için lütfen aşağıda geri bildirim sağlayın. Başka sorunuz varsa veya ek yardıma ihtiyacınız varsa, lütfen LinuxConfig forumunu ziyaret edin .
Bundan sonra ne öğrenmelisin? Temel bilgileri denemeye devam edin ve her gün repertuarınıza yeni Linux komutları eklemeye çalışın. Pratik yapmak mükemmelleştirir!
Temel Linux komutlarından memnun olduğunuzda, Bash Scripting Eğiticimi düşünün yeni başlayanlar için Linux komutlarını kullanarak kabuk komut dosyası oluşturma kombinasyonunu kullanarak görevleri otomatikleştirmeyi keşfederler.