Örneklerle Linux'ta chmod Komutu
chmod Linux/UNIX'teki (mod değiştir) komutu, dosya ve dizin izinlerini ayarlamak veya değiştirmek için kullanılır. Linux'taki her dosyanın bir sahibi, bir grubu ve dosyayı kimin okuyabileceğini veya kimin çalıştırabileceğini belirleyen ilgili izinleri vardır. Kullanma chmod Yöneticiler ve kullanıcılar, uygun erişim ve güvenliği sağlamak için bu izinleri kontrol edebilir. Örneği ele alalım
745 iznini vererek chmod komutunu kullanın.
Emretmek:
chmod 745 newfile.txtÇıkış:
![]()
Dağılımı
-rwxr--r-x:
- Mal sahibi (
7):rwx>oku yaz çalıştır - Grup (
4):r--> salt okunur - Diğerleri (
5):r-x> oku ve çalıştır
İşte dosya:
- Sahibi tarafından tamamen erişilebilir (okuma/yazma/yürütme)
- Grup için salt okunur
- Başkaları için okuma + yürütme
Chmod komutunun sözdizimi
chmod [options] [mode] [File_name]Burada
- Seçenekler: Davranışını değiştiren isteğe bağlı bayraklar
chmodemretmek. - Mod: Ayarlanacak izinler, üç basamaklı sekizlik sayı veya sembolik gösterimle temsil edilir (ör. u=rwgo=rx).
- Dosya adı: İzinlerinin değiştirileceği dosya veya dizinin adı.
Chmod Command Linux'ta Mevcut Seçenekler
İşte Bazı Yararlı Seçenekler chmod Linux'ta komut
| Mod | Mal sahibi | Grup | Diğerleri | Komut dosyalarının tipik kullanımı |
|---|---|---|---|---|
| 700 | rwx | --- | --- | Özel komut dosyası (yalnızca siz çalıştırabilir/düzenleyebilirsiniz). |
| 711 | rwx | --X | --X | Yalnızca yürütülebilir/geçiş; içerik okunamıyor. |
| 744 | rwx | R-- | R-- | Siz düzenleyin ve çalıştırın; diğerleri okuyabilir (yürütemez). |
| 750 | rwx | r-x | --- | Yalnızca ekip tarafından yürütülebilir; başkalarından gizlenmiştir. |
| 754 | rwx | r-x | R-- | Grup için Exec, diğerleri için salt okunurdur. |
| 755 | rwx | r-x | r-x | Yaygın: Herkes yalnızca siz düzenleyebilir çalıştırabilir. |
| 775 | rwx | rwx | r-x | Bir grup içinde paylaşılır (hem sahip hem de grup düzenleyebilir/çalıştırabilir). |
Not: 'Cchmod'daki seçenekler temel olarak toplu değişiklik yapmak ve birden fazla dosya veya dizin üzerindeki izinleri aynı anda değiştirmek için kullanılır.
Anahtar İzin Türleri:
Linux'ta izinler Bir dosya veya dizin üzerinde kimin denetime sahip olduğunu belirleyin. Bu izinler, kullanıcı rollerine göre bir dosyayı kimin okuyabileceğini (erişebileceğini), yazabileceğini (düzenleyebileceğini veya silebileceğini) veya yürütebileceğini (çalıştırabileceğini) belirtir: sahip grubu ve diğerleri.
- Okumak (
r): Dosya içeriğinin görüntülenmesini sağlar. - Yazmak (
w): Dosya veya dizini değiştirmeye izin verir. - Uygulamak (
x): Dosyanın program olarak çalıştırılmasına veya dizine girilmesine olanak sağlar.
Sekizli modu kullanma örnekleri:
Sahibi dosyasına okuma ve yazma izni verdiğimizi varsayalım. Gruba okuma yazma ve yürütülebilir izin. Diğerine salt okuma izni. Bizim emrimiz onlardı.
chmod 674 [file_name]Burada.
- 6 dosya Sahibinin iznini temsil eder; (rw-).
- 7 Grubun iznini temsil eden (rwx).
- 4 Diğerinin iznini temsil eder ki bu (R--).
Not: Sahip Grubu ve Diğerleri (Genel) için bir dosyaya kimin okuma yazma (silme veya değiştirme) erişebileceği veya yürütebileceği gibi dosya izinlerini görüntüleyebilir ve hesaplayabilirsiniz. chmod hesap makinesi.
Burada izinleri görüntülemek için bir hesap makinesi kullanıyoruz. Örneğin, dosya sahibi okuma yazma ve yürütme izinlerine sahipken, grup ve diğerleri (genel) yalnızca okuma ve yazma izinlerine sahiptir ancak dosyayı yürütemezler.
Eşdeğer Sayısal İzin:
Sözdizimi:
chmod 766 filenameMasa:
| Kullanıcı Türü | İzinler | İkili | Değer |
|---|---|---|---|
| Mal sahibi | rwx | 111 | 7 |
| Grup | rw- | 110 | 6 |
| Diğerleri | rw- | 110 | 6 |
Linux'ta 'chmod' Komutu Tarafından Yapılan Değişiklikleri Geri Alma Örneği
Linux'ta 'chmod' komutuyla yapılan değişiklikleri geri almak veya geri almak için şunu kullanabiliriz: 'chmod' Tekrar komut verelim ama bu sefer istediğimiz doğru izni belirtmeliyiz.
Değişiklikleri geri alma veya geri alma adımları şunlardır:
- İstediğiniz doğru izni belirleyin ve tekrar chmod komutunu kullanın.
Örneğin: Değişiklikleri 'rw-r--r--' (grup ve diğerleri için sahibin salt okunur izni için okuma ve yazma izni) olarak geri döndürmek istersek, sekizlik değerimiz '644' olur (okuma = 4 yazma=2). - Şimdi dizini açın ve verilen komutu yazın:
chmod 644 [file_or_directory_name]Burada '[dosya_veya_dizin_adı]' yerine dosya veya dizin adınızı kullanın.
Dosya adımızın 'a.txt' olduğunu varsayalım
Değişiklikleri geri almadan veya geri almadan önce:
ls -l a.txt (a.txt'nin sahip olduğu tüm izinleri görüntülemek için kullanılır)
Değişiklikleri geri aldıktan veya geri aldıktan sonra:
Burada değişikliklerin yapıldığını görebiliriz
Linux'ta Komut Dosyasının Çalıştırılabilir Hale Getirilmesinin Pratik Uygulaması
Linux'ta komut dosyaları genellikle Bash Python veya Perl gibi dillerde yazılır. Komut dosyasının içeriği çok önemli olsa da, yürütülebilir izinlere sahip olmasını sağlamak da aynı derecede önemlidir. Yürütme izinleri olmadan Linux betiğin çalışmasına izin vermez.
Adım 1: Komut Dosyasının Dizinine gidin
Terminali açın ve kullanın
cdKomut dosyanızın bulunduğu dizine gitmek için komut.Örneğin:
cd /path/to/your/script2. Adım: Mevcut İzinleri Kontrol Edin
' seçeneğini kullanın
ls`' ile komut-l`Dizindeki dosyaları izinleriyle birlikte listeleme seçeneği. Bu adım, komut dosyanızın mevcut izinlerini tanımlamanıza yardımcı olur:ls -lmevcut izin kontrol ediliyor
3. Adım: Komut Dosyasını Çalıştırılabilir Hale Getirin
Bir betiği çalıştırılabilir hale getirmek için '
chmod`emretmek. Komut dosyanızın adının `örnek' olduğunu varsayarsak.sh`aşağıdaki komutla çalıştırılabilir hale getirebilirsiniz:chmod +x example.shBu komut, betiğe yürütme (+x) iznini ekler.
4. Adım: Değişiklikleri Doğrulayın
`'ı çalıştırın
ls -l`Komut dosyasının artık yürütme izinlerine sahip olduğunu doğrulamak için komutu tekrar girin. Komut dosyasının izin alanında bir 'x' görmelisiniz:ls -lbetiği çalıştırılabilir hale getirdikten sonra değişiklikleri doğrulama
Adım 5: Komut Dosyasını Çalıştırın
Artık betiğinizin yürütülebilir izinleri olduğuna göre, onu kullanarak çalıştırabilirsiniz.
./`gösterimi ve ardından betiğin adı. Örneğin:./example.shbetiği çalıştır
Bu gösterim Linux'a geçerli dizine bakmasını söyler (
Önerilen Test Testi Düzenle 5 Soru.) adlı komut dosyası içinexample.sh.Hangi sayısal izin, yalnızca dosya sahibinin okuyup yazabilmesini, grup ve diğerlerinin ise dosyayı yalnızca okuyabilmesini sağlar?
- A
chmod 777 dosyası.txt
- B
chmod 664 dosyası.txt
- C
chmod 644 dosyası.txt
- D
chmod 600 dosyası.txt
644 > sahip: rw- grubu: r-- diğerleri: r--.
Hangi sembolik mod komutu yürütme iznini iptal eder? yalnızca diğerleri sahip veya grup izinlerine dokunmadan mı?
- A
chmod a-x script.sh
- B
chmod o-x script.sh
- C
chmod go-x script.sh
- D
chmod u-x script.sh
o-x yalnızca 'diğerlerinin' yürütme haklarını kaldırır.
Hangi chmod yapılandırması, sahibinin tam operasyonel yetkiye sahip olduğu, grubun yalnızca çağrı yeteneğine sahip olduğu ve diğerlerinin değişiklik yapmadan yalnızca denetleyebildiği bir izin şemasını doğru şekilde kodlar?
- A
chmod 751 uygulaması.sh
- B
chmod 754 uygulaması.sh
- C
chmod 715 uygulaması.sh
- D
chmod 571 uygulaması.sh
751 > sahip: rwx grubu: r-x diğerleri: --x (yalnızca yürütme).
Hangi komut, bir dizinde oluşturulan her dosyanın, kullanıcının sahipliğine bakılmaksızın otomatik olarak dizinin grubunu devralmasını sağlayan bir izin modeli uygular?
- A
chmod +t paylaşılan_dir/
- B
chmod g+s paylaşılan_dir/
- C
chmod u+s paylaşılan_dir/
- D
chmod 777 paylaşılan_dir/
g+s (setgid), yeni dosyaları dizinin grubunu devralmaya zorlar.
Bir komut dosyası, yalnızca sahibi tarafından değiştirilebilen tüm kullanıcılar için yürütülebilir olmalı ve dizin, dosyanın gerçek sahibi dışında herhangi birinin dosyaları silmesini veya yeniden adlandırmasını engellemelidir. Hangi komut çifti bu güvenlik modelini karşılıyor?
- A
chmod 777 konuşlandırma.sh ; chmod +t /var/scripts
- B
chmod 755 konuşlandırma.sh; chmod +t /var/scripts
- C
chmod 700 konuşlandırma.sh ; chmod g+s /var/scripts
- D
chmod 755 konuşlandırma.sh; chmod 777 /var/scripts
755 > sahibi tümünün yürütülebileceğini yazıyor; +t dosya silme işlemini dosya sahipleriyle sınırlandırır.
Sınav Başarıyla Tamamlandı Puanınız : 2 /5 Kesinlik : %0 Açıklamayı Görmek İçin Giriş Yapın 1 /5 1 /5 < Previous Sonraki >
ls -l a.txt (a.txt'nin sahip olduğu tüm izinleri görüntülemek için kullanılır)
Burada değişikliklerin yapıldığını görebiliriz
mevcut izin kontrol ediliyor
betiği çalıştırılabilir hale getirdikten sonra değişiklikleri doğrulama
betiği çalıştır