- Konum
- BERTUNA
-
- Üyelik Tarihi
- 2 Haz 2020
-
- Mesajlar
- 5,275
-
- MFC Puanı
- 15,970
Merhabalar
Linux izinleri, her kullanıcının kendisini geliştirmesinin ilk aşamalarında yakından aşina olduğu bir kavramdır. Sistemleri etkili bir şekilde yönetmek için komut dosyalarını yürütmemiz, dosyaları değiştirmemiz ve süreçleri çalıştırmamız gerekir, ancak İzin reddedildiğini gördüğümüzde ne olur ? Bu mesajı neden gördüğümüzü biliyor musunuz? Sorunun nedenini biliyorsanız, çözümü nasıl uygulayacağınızı biliyor musunuz?
Sembolik yöntem
Sembolik yöntem aşağıdaki sözdizimini kullanır:
WhoWhatWhich anlamı sırası ile....
Kim - kimlikleri temsil eder: u, g, o, a (kullanıcı, grup, diğer, tümü)
Ne - eylemleri temsil eder: +, -, = (ekleme, kaldırma, tam olarak ayarlama)
Hangi - erişim seviyelerini temsil eder: r, w, x (okuma, yazma, yürütme)
Örnek olarak aşağıdaki hayali sözdizgesine bakın.
Sayısal yöntem
Sayısal yöntem, deneyimlerime göre, izinleri öğrenmenin ve uygulamanın en iyi yoludur. Aşağıdaki söz dizimine dayanmaktadır:
Burada, soldan sağa, # karakteri bir erişim seviyesini temsil eder. Üç erişim seviyesi vardır - kullanıcı, grup ve diğerleri. Her basamağın ne olduğunu belirlemek için aşağıdakileri kullanırız:
0'dan başla
Eğer okuma izni ayarlanmalıdır eklemek 4 (r)
Eğer yazma izni ayarlanmalıdır eklemek 2 (w)
Eğer yürütme izni ayarlanmalıdır ekleyin 1 (x)
Bu, erişim düzeyine göre hesaplanır. Bu izin örneğini yorumlayalım:
-rw-r-x--- ifadesinin sayısal izin numarası 650 olarak temsil edilir . Bu 650 sayısına nasıl ulaştık?
Kullanıcının izinleri: rw- veya 4 + 2 = 6 (r = 4 + w=2 + -=0)
Grubun izinleri: rx veya 4 + 1 = 5 (r =4 + -=0 + x=1 )
Diğerlerinin izinleri: --- veya 0 (- =0 + - =0 + -=0)
Bunu komut sözdizimindeki hali , aşağıdaki gibi görünür:
Artık Linux'ta izin hesaplamasının temellerini anladığınıza göre , işletim sistemindeki özel izinlere bakalım .
Özel izinler, kullanıcı , grup ve diğerlerine ek olarak dördüncü bir erişim düzeyini oluşturur . Özel izinler, standart izin setleri üzerinde (adından da anlaşılacağı gibi) ek ayrıcalıklara izin verir. Daha önce tartışılan her erişim seviyesi için özel bir izin seçeneği vardır. Set UID ile başlayarak her birine ayrı ayrı bakalım:
kullanıcı + s (özel) (SUID)
Yaygın olarak SUID olarak belirtilen , kullanıcı erişim düzeyi için özel iznin tek bir işlevi vardır: SUID'li bir dosya, komutu geçen kullanıcıdan bağımsız olarak her zaman dosyanın sahibi olan kullanıcı olarak yürütülür. Dosya sahibinin yürütme izinleri yoksa, burada büyük harf S kullanılır. .
Şimdi, bunu pratik bir örnekte görmek için, /usr/bin/passwdkomuta bakalım . Bu komut varsayılan olarak SUID izin setine sahiptir:
s harfi, X kullanıcısının izinlerini yürütmek için gereklidir.
grup + s (özel) (SGID)
Genellikle SGID olarak belirtilen bu özel iznin birkaç işlevi vardır:
Bir dosya üzerinde ayarlanırsa, dosyanın, dosyanın sahibi olan grup olarak yürütülmesine izin verir (SUID'e benzer).Bir dizinde ayarlanmışsa, dizinde oluşturulan tüm dosyaların grup sahipliği, dizin sahibinin sahipliğine ayarlanır.
LINUX adında bir dizine sahip olduğumuz farzı misal sayalım
Bu izin kümesi bir küçük harf tarafından belirtilmektedir . Ayrıca, bir grubun üyeleri arasındaki işbirliği çabalarında sıklıkla kullanılan dizinler için özellikle yararlıdır. Grubun herhangi bir üyesi herhangi bir yeni dosyaya erişebilir. Bu, dosyaların yürütülmesi için de geçerlidir. Doğru kullanıldığında SGID çok güçlüdür.SUID için daha önce belirtildiği gibi , sahip grubun yürütme izinleri yoksa, büyük harf S kullanılır.
diğer + t (yapışkan)
Son özel izin "yapışkan bit" olarak adlandırılmıştır. Bu izin, tek tek dosyaları etkilemez. Bununla birlikte, dizin düzeyinde, dosya silinmesini kısıtlar. Bir dosyanın yalnızca sahibi (ve kökü ) o dizindeki dosyayı kaldırabilir. Bunun yaygın bir örneği /tmp dizindir:
İzin seti küçük t harfiyle belirtilir , burada x normalde yürütme ayrıcalığını gösterir.
Şimdi konuyu toparlama zamanı (altın vuruş....!)
LINUX'DA İLERİ SEVİYE DOSYA/DİZİN ÖZEL İZİN SEVİYESİNİ BELİRLEYEBİLME....
Bir dosya veya dizinde özel izinler ayarlamak için, yukarıda standart izinler için belirtilen iki yöntemden birini kullanabilirsiniz: Sembolik veya sayısal.
Dizin üzerinde SGID ayarlamak istediğimizi varsayalım (LINUX klasörü)
Bunu sembolik yöntemi kullanarak yapmak için aşağıdakileri yapıyoruz:
Sayısal yöntemi kullanarak, chmod komutuna dördüncü, önceki bir rakamı geçmemiz gerekir. Kullanılan rakam, standart izin rakamlarına benzer şekilde hesaplanır:
0'dan başla
SUID = 4
SGID = 2
Yapışkan = 1
Sözdizimi şöyledir:
$ chmod X### file | directory
X'in özel izinleri içeren rakamdır. (0.............9' a kadar)
Komutsal SGID üzerinde LINUX dizini sayısal yöntem kullanarak:
Sonuçta;
chmod komutunu kullanarak izinleri belirlemenin tanımlanmış iki yolu vardır : Sembolik ve sayısal. Her iki yöntem için gerekli söz dizimini ve hesaplamaları yukarıda irdeledik. Özel izinleri ve sistemdeki rollerini de değerlendirdik. Artık izinleri ve temel kavramları anladığınıza göre, işinizi engellemeye çalışan sistemin, sürekli sinir bozucu hal alan, İzin reddedildi hatasını çözebilirsiniz .
Linux izinleri, her kullanıcının kendisini geliştirmesinin ilk aşamalarında yakından aşina olduğu bir kavramdır. Sistemleri etkili bir şekilde yönetmek için komut dosyalarını yürütmemiz, dosyaları değiştirmemiz ve süreçleri çalıştırmamız gerekir, ancak İzin reddedildiğini gördüğümüzde ne olur ? Bu mesajı neden gördüğümüzü biliyor musunuz? Sorunun nedenini biliyorsanız, çözümü nasıl uygulayacağınızı biliyor musunuz?
Sembolik yöntem
Sembolik yöntem aşağıdaki sözdizimini kullanır:
Kod:
$ chmod WhoWhatWhich file | directory
WhoWhatWhich anlamı sırası ile....
Kim - kimlikleri temsil eder: u, g, o, a (kullanıcı, grup, diğer, tümü)
Ne - eylemleri temsil eder: +, -, = (ekleme, kaldırma, tam olarak ayarlama)
Hangi - erişim seviyelerini temsil eder: r, w, x (okuma, yazma, yürütme)
Örnek olarak aşağıdaki hayali sözdizgesine bakın.
Kod:
$ chmod ug+rw linux'da özel izinlerin ayarlanması.pdf
Sayısal yöntem
Sayısal yöntem, deneyimlerime göre, izinleri öğrenmenin ve uygulamanın en iyi yoludur. Aşağıdaki söz dizimine dayanmaktadır:
Kod:
$ chmod ### file | directory
Burada, soldan sağa, # karakteri bir erişim seviyesini temsil eder. Üç erişim seviyesi vardır - kullanıcı, grup ve diğerleri. Her basamağın ne olduğunu belirlemek için aşağıdakileri kullanırız:
0'dan başla
Eğer okuma izni ayarlanmalıdır eklemek 4 (r)
Eğer yazma izni ayarlanmalıdır eklemek 2 (w)
Eğer yürütme izni ayarlanmalıdır ekleyin 1 (x)
Bu, erişim düzeyine göre hesaplanır. Bu izin örneğini yorumlayalım:
-rw-r-x--- ifadesinin sayısal izin numarası 650 olarak temsil edilir . Bu 650 sayısına nasıl ulaştık?
Kullanıcının izinleri: rw- veya 4 + 2 = 6 (r = 4 + w=2 + -=0)
Grubun izinleri: rx veya 4 + 1 = 5 (r =4 + -=0 + x=1 )
Diğerlerinin izinleri: --- veya 0 (- =0 + - =0 + -=0)
Bunu komut sözdizimindeki hali , aşağıdaki gibi görünür:
Kod:
$ chmod 650 linux'da özel izinlerin ayarlanması.pdf
Artık Linux'ta izin hesaplamasının temellerini anladığınıza göre , işletim sistemindeki özel izinlere bakalım .
Özel izinler, kullanıcı , grup ve diğerlerine ek olarak dördüncü bir erişim düzeyini oluşturur . Özel izinler, standart izin setleri üzerinde (adından da anlaşılacağı gibi) ek ayrıcalıklara izin verir. Daha önce tartışılan her erişim seviyesi için özel bir izin seçeneği vardır. Set UID ile başlayarak her birine ayrı ayrı bakalım:
kullanıcı + s (özel) (SUID)
Yaygın olarak SUID olarak belirtilen , kullanıcı erişim düzeyi için özel iznin tek bir işlevi vardır: SUID'li bir dosya, komutu geçen kullanıcıdan bağımsız olarak her zaman dosyanın sahibi olan kullanıcı olarak yürütülür. Dosya sahibinin yürütme izinleri yoksa, burada büyük harf S kullanılır. .
Şimdi, bunu pratik bir örnekte görmek için, /usr/bin/passwdkomuta bakalım . Bu komut varsayılan olarak SUID izin setine sahiptir:
Kod:
$ ls -l /usr/bin/passwd
-rwsr-xr-x 1 root root 62024 Mar 22 2019 /usr/bin/passwd
s harfi, X kullanıcısının izinlerini yürütmek için gereklidir.
grup + s (özel) (SGID)
Genellikle SGID olarak belirtilen bu özel iznin birkaç işlevi vardır:
Bir dosya üzerinde ayarlanırsa, dosyanın, dosyanın sahibi olan grup olarak yürütülmesine izin verir (SUID'e benzer).Bir dizinde ayarlanmışsa, dizinde oluşturulan tüm dosyaların grup sahipliği, dizin sahibinin sahipliğine ayarlanır.
LINUX adında bir dizine sahip olduğumuz farzı misal sayalım
Kod:
$ ls -l
total 0
drwxrws---. 2 ayamutura ayamutura 81 Eki 7 11:31 LINUX
Bu izin kümesi bir küçük harf tarafından belirtilmektedir . Ayrıca, bir grubun üyeleri arasındaki işbirliği çabalarında sıklıkla kullanılan dizinler için özellikle yararlıdır. Grubun herhangi bir üyesi herhangi bir yeni dosyaya erişebilir. Bu, dosyaların yürütülmesi için de geçerlidir. Doğru kullanıldığında SGID çok güçlüdür.SUID için daha önce belirtildiği gibi , sahip grubun yürütme izinleri yoksa, büyük harf S kullanılır.
diğer + t (yapışkan)
Son özel izin "yapışkan bit" olarak adlandırılmıştır. Bu izin, tek tek dosyaları etkilemez. Bununla birlikte, dizin düzeyinde, dosya silinmesini kısıtlar. Bir dosyanın yalnızca sahibi (ve kökü ) o dizindeki dosyayı kaldırabilir. Bunun yaygın bir örneği /tmp dizindir:
Kod:
~$ ls -ld /tmp/
drwxrwxrwt 20 root root 4096 Eki 28 23:42 /tmp/
İzin seti küçük t harfiyle belirtilir , burada x normalde yürütme ayrıcalığını gösterir.
Şimdi konuyu toparlama zamanı (altın vuruş....!)
LINUX'DA İLERİ SEVİYE DOSYA/DİZİN ÖZEL İZİN SEVİYESİNİ BELİRLEYEBİLME....
Bir dosya veya dizinde özel izinler ayarlamak için, yukarıda standart izinler için belirtilen iki yöntemden birini kullanabilirsiniz: Sembolik veya sayısal.
Dizin üzerinde SGID ayarlamak istediğimizi varsayalım (LINUX klasörü)
Bunu sembolik yöntemi kullanarak yapmak için aşağıdakileri yapıyoruz:
Kod:
$ chmod g+s LINUX\
Sayısal yöntemi kullanarak, chmod komutuna dördüncü, önceki bir rakamı geçmemiz gerekir. Kullanılan rakam, standart izin rakamlarına benzer şekilde hesaplanır:
0'dan başla
SUID = 4
SGID = 2
Yapışkan = 1
Sözdizimi şöyledir:
$ chmod X### file | directory
X'in özel izinleri içeren rakamdır. (0.............9' a kadar)
Komutsal SGID üzerinde LINUX dizini sayısal yöntem kullanarak:
Kod:
$ chmod 2770 LINUX/
$ ls -ld LINUX/
drwxrws---. 2 ayamutura ayamutura 113 Ekim 28 01:32 LINUX/
Sonuçta;
chmod komutunu kullanarak izinleri belirlemenin tanımlanmış iki yolu vardır : Sembolik ve sayısal. Her iki yöntem için gerekli söz dizimini ve hesaplamaları yukarıda irdeledik. Özel izinleri ve sistemdeki rollerini de değerlendirdik. Artık izinleri ve temel kavramları anladığınıza göre, işinizi engellemeye çalışan sistemin, sürekli sinir bozucu hal alan, İzin reddedildi hatasını çözebilirsiniz .