Linux’da Chown Komutu Nedir ve Nasıl Kullanılır?

Linux işletim sistemlerinde her dosya bir grup sahipliği ve bir sahiple ilişkilendirilir. Bir Linux chown komutu “sahip değiştirme”nin kısaltmasıdır. Süper kullanıcı tarafından herhangi Unix gibi herhangi bir sistemde kullanılabilir. Bu rehberde chown komutu nedir ve nasıl kullanılır öğreneceksiniz.

Chown seçenekleriyle dosyaların, dizinlerin ve bağlantıların sahipliğini değiştirebilirsiniz. Eğer normal bir kullanıcı bir dosyaya değişiklik yapmak isterse bir süper kullanıcı sahipliği değiştirmek ve onlara izin vermek için chown komutlarını kullanabilir.

Sahiplik Bilgilerini Görüntüleme

İlk olarak SSH kullanarak VPS’inize giriş yapmanız gerekecek. Eğer nasıl yapılacağını bilmiyorsanız, bilmeniz gereken her şeyi bu rehberimizi okuyarak öğrenebilirsiniz.

Chown komutunu kullanmadan önce kullanıcıyı ve grup bilgisini doğrulamanız gerekir.

Önrneğin eğer dosyanın dizini /tmp/TestUnix ise bu dizine bu komutu kullanarak gidebilirsiniz:

cd /tmp/TestUnix

Aşağıdaki komut ile dizindeki dosyaları listeleyebilirsiniz:

ls -l

Bu rehber için dizinde chownOrnegi.txt adında bir dosya oluşturduk. Yukarıdaki komutun çıktısı böyle olacaktır:

-rw-r--r-- 1 root root 0 Jul 29 17:35 chownOrnegi.txt

İlk kısım -rw-r–r–  dosya izinlerini temsil eder. İlk kök ise sahiplik bilgisini ve ikinci kök ise grup bilgisini temsil eder. Yukarıdaki örnekte chownOrnegi.txt kök sahipliğini sahiptir ve kökse kök grubuna aittir.

Dosyalar için Chown

Bir dosyanın sahipliğini değiştirmek için temel komut:

chown kullanici dosyaadi

Aynı dosya chownOrnegi.txt içinse sahipliği kökten balinalar adlı başka bir kullanıcıya değiştirmenize izin verir. Bu komutun bir örneği aşağıdaki gibidir:

chown balinalar chownOrnegi.txt

Sahiplik değişikliğini onaylamak için yine ls -l komutunu kullanabilirsiniz. Bu aşağıdaki çıktıyı verecektir:

-rw-r--r-- 1 balinalar root 0 Jul 29 17:45 chownOrnegi.txt

Komut grubu değiştirmek için düzenlenebilir. Sahipliği ve grubu değiştirmek için temel formatsa:

chown kullanici[:grup] dosyaadi

Eğer aynı dosyayı chownOrnegi.txt balinalar adlı sahibe ve deniz adlı grupla değiştirmek istersek o zaman komut da böyle olacaktır:

chown balinalar:deniz chownOrnegi.txt

Sahiplik ve grup değişikliğini onaylamak için ls -l komutunu kullanabilirsiniz. Bu komutun çıktısı ise:

-rw-r--r-- 1 balinalar deniz 0 Jul 29 17:50 chownOrnegi.txt

Eğer yalnızca grup değiştirilecekse sahipliği atlayabilirsiniz. Örnek olarak komut satırına bu komutu girin:

chown :deniz chownOrnegi.txt

Chown, sahip bilgisi girilmediğinde chgrp komutuna benzer şekilde çalışır. Bu komut ayrıca çoklu seçeneklerle de kullanılabilir.

Chown komutunun seçeneklerle jenerik yapısı böyle olacaktır:

chown [SECENEKLER] [KULLANICI] [:GRUP] filename(s)

Dizinler için Chown

Chown ayrıca dizinler için kullanılabilir. Bu sadece dosyaları veya sadece dizinleri veya ikisini de içerebilir.

Diyelim ki TestUnix adında bir dizininiz var. İzinleri görmek için ls -l komutunu kullanabilirsiniz. Bu komutun çıktısı böyle olabilir:

drwxr-xr-x 2 root root 4096 Jul 29 17:35 TestUnix

İlk kısım drwxr-xr-x klasörün iznini temsil eder. İlk kök ise sahiplik bilgisini, ikinci kök ise grup bilgisini temsil eder. Bu örnekte TestUnix kök sahipliğine ve kök grubuna sahiptir.

Tıpkı dosyalar gibi dizinler için de sahipliği ve grubu değiştirebilirsiniz. Bu komutun bir örneği böyledir:

chown balinalar /TestUnix

Sadece grubu değiştirmek için bu komutu kullanabilirsiniz:

chown :deniz /TestUnix

Dosyanın sahibini ve grubunu değiştirmek içinse kullanabileceğiniz komut budur:

chown balinalar:deniz /TestUnix

Aynı komut ayrıca birden çok dosyaya veya dizine uygulamak için de kullanılabilir. Bu komutun formatı bu şekildedir:

chown [SEÇENEKLER] [KULLANICI][:GRUP] dosya1 dosya2

Bu komutun bir örneği ise:

chown balinalar:deniz /tmp/TestUnix/chownOrnegi.txt /tmp/TestUnix

Linkler için Chown

Aynı komut ayrıca sembolik veya soft linkler üzerinde de kullanılabilir. Sembolik bir bağlantı mevcut bir fiziksel dosyaya referanstır. ln komutu soft linkler oluşturmak için kullanılır. chownOrnegi.txt adlı dosya içinse aşağıdaki gibi bir sembolik link oluşturulabilir:

ln -s chownOrnegi.txt symlink

Sahiplik ve grup bilgisini onaylamak için ls -l komutunu kullanabilirsiniz. Bu komut ise aşağıdaki sonucu verecektir:

-rw-r--r--  1 root root  0 Jul 26 22:01 chownOrnegi.txt
lrwxr-xr-x  1 root root 5 Jul 26  7 22:01 symlink -> chownOrnegi.txt

Mevcut iki adet girdi bulunmaktadır. Biri fiziksel dosya için diğeriyse sembolik bağlantı içindir. Bunu yapmak için sahipliği aşağıdaki komutu kullanarak değiştirebilirsiniz:

chown balinalar symlink

Yukarıdaki komut chownOrnegi.txt adlı dosya için sahipliği değiştirecektir. Bunun için ls -l komutu sonucu aşağıdaki gibi olacaktır:

-rw-r--r--  1 balinalar root  0 Jul 26 22:01 chownOrnegi.txt
lrwxr-xr-x  1 root root 5 Jul 26  7 22:01 symlink -> chownOrnegi.txt

Eğer sembolik link için sahipliği değiştirmek isterseniz -h seçeneğini kullanmanız gerekir. Komut böyle olacaktır:

chown -h balinalar symlink

Eğer burada ls -l komutunu kullanırsanız sonuç aşağıdaki gibi olacak ve sembolik linkin sahipliği değişmiş olacaktır.

-rw-r--r--  1 balinalar root  0 Jul 26 22:01 chownOrnegi.txt
lrwxr-xr-x  1 balinalar root  5 Jul 26 7 22:01 symlink -> chownOrnegi.txt

Chown Komutunun Yinelemeli Kullanımı

Chown komutu dizinler üzerinde kullanılabilmektedir. Ancak eğer yinelemeli bir dizin yapısına sahipseniz, tüm dosyalar & dizinler için sahipliği değiştirmek istiyor olabilirsiniz.

Chown komutunun yinelemeli kullanımı tüm dizin ve alt dizinlerin sahipliğini veya grubunu kesin olarak değiştirir.

Yinelemeli bir kullanım içinse -R seçeneğini kullanmanız gerekir. İşte bu komutun bir örneği:

chown -R [KULLANICI][:GRUP] Dizin

Eğer TestUnix olarak çok alt dizinli bir dizine sahipseniz aşağıdaki komut bütün dizinlerin ve alt dizinlerin sahipliğini balinalar kullanıcısına verecektir.

chown -R balinalar /TestUnix

Sonuç

İşte bu kadar! Artık chown komutunun temellerini biliyorsunuz. Unix sistemleri her komut için kullanım kılavuzu sayfasına sahiptir. Böylelikle chown komutu kullanımında da uzmanlaşabilirsiniz. Kılavuza man chown komutunu çalıştırarak erişebilirsiniz. Umuyoruz ki bu rehberde öğrettiklerimiz VPS dosyalarınızı güvenli ve verimli biçimde yönetmenize yardımcı olacaktır. Mutlu geliştirmeler!

Author
Yazar

Gökhan O.

Gökhan Hostinger’da YouTube Takım Lideri olarak çalışmakta. WordPress hakkındaki tecrübe ve bilgisini bu blogda paylaşıyor. Hostinger’ın adını YouTube içeriği üzerinden duyurmayı kendine görev edinmiştir. Hobileri arasında oyun oynamak ve futbol maçları izlemek vardır.