Quantcast
Channel: ÇözümPark
Viewing all articles
Browse latest Browse all 4130

Linux Sistemlerde Kullanıcı ve Grup Disk Kotaları – Bölüm 8

$
0
0

Sistemdeki disk alanlarını kolayca yönetmek ve kısıtlı bölgeler,projeler,işler için bölümlenmiş alanlarda kullanıcılara ve gruplara belirli yerler verebilmek için disk kotalarını kullanırız. Böylece sistemi yöneten kişi disk üstündeki bölümlendirmeleri ve FS’leri tam dolmadan öğrenebileceği gibi kullanıcıyı da bu konudan haberdar ederek sınırlamalara dikkatini çeker.


Kotayı kullanıcı ve grup hesapları üstünde genel disk kullanımı bazında ayarlayabiliriz. quota RPM paketinin sistemde yüklü olması gerekir. quota paketinin sistemimizde yüklü olup olmadığını şu şekilde kontrol edebiliriz.

 

[root@artemis ~]# rpm -qa|grep quota

quota-3.13-5.el5

[root@artemis ~]#

 


Ardından bir File System(FS) üstünde kota işlemlerini uygulamamız için şu adımları izlememiz gerekli;

 

 

1.       /etc/fstab dosyasını editleyerek Kota kullanacağımız FS parçasında usrquota ve grpquota ifadelerini eklememiz gerekiyor. (ACL’de eklediğimiz gibi 4. Kolona ekliyoruz bu ifadeleri.)
  1. File System’i tekrar mount etmemiz gerekiyor (remount). Umount/mount FS_ismi veya mount –o remount FS_ismi
  2. Kota database’i oluşturup disk kullanım tablosunu çıkartmamız gerekiyor. quotacheck –cug FS_ismi, quotacheck -avug
  3. Kota kurallarını (policy) sisteme eklememiz gerekiyor. Kullanıcıya kota uygulayacaksak Edquota –u kullanıcı_ismi, Gruba kota uygulayacaksak Edquota –u grup_ismi
  4. quotaon [FS_ismi]– FS üstünde kotayı aktif hale getirmemiz gerekiyor.
    (quotaoff [FS_ismi]- FS üstünde kotayı pasif hale getirmek isterseniz.)

 

Vi editöründe /etc/fstab dosyasını açarak yine elimizde bulunan boş /myfs’i kota işlemlerinde kullanacağımız için ,onun bulunduğu satırı aşağıdaki şekilde düzelttik.

 

[root@artemis ~]# cat /etc/fstab

/dev/VolGroup00/LogVol00 /                       ext3    defaults        1 1

LABEL=/boot             /boot                   ext3    defaults        1 2

tmpfs                   /dev/shm                tmpfs   defaults        0 0

devpts                  /dev/pts                devpts  gid=5,mode=620  0 0

sysfs                   /sys                    sysfs   defaults        0 0

proc                    /proc                   proc    defaults        0 0

/dev/VolGroup00/LogVol01 swap                    swap    defaults        0 0

/dev/sdb5 swap swap defaults 0 0

/dev/sdb1 /myfs ext3 defaults,usrquota,grpquota 0 0

[root@artemis ~]#

 

 

/myfs File Sistemi üzerinde fstab dosyasına eklediğimiz değişikliklerin etkili olabilmesi için sistemden /myfs FS’ini umount edip tekrar mount etmemiz gerekiyor.

Bunu iki türlü yolla yapabiliriz. İstersek umount,mount komutlarını arka arkaya ya da sadece mount komutunu –remount seçeneği ile koşarak halledebiliriz.

 

 

//*********** birinci yol**************//

[root@artemis ~]#

[root@artemis ~]# umount /myfs

[root@artemis ~]# mount /myfs

[root@artemis ~]#

//*********** ikinci yol**************//

[root@artemis ~]# mount -o remount /myfs

 

Şimdi FS’ imizi sistemde kota için kullanacağımız hale getirmiş olduk ama birde bunu açıkça sistemin kendisine iletmemiz gerekiyor.Bunun için kota uygulayacağımız FS üstünde
Kota database’i oluşturmamız gerekiyor.  Bunun için quotacheck komutunu kullanacağız.

 

UYARI-1!: quotacheck komutu kullanılan(mounted halde ve kullanıcılar veya  uygulamalar tarafından üstünden işlem yapılan FS’ler) bir Fs üstünde koşmanızı resmiyette Redhat firması tavsiye etmiyor. Onun için kota oluşturmayı düşündüğünüz FS’i hemen oluşturduktan sonra,kullanılmaya başlamadan önce kota bilgilerini eklerseniz sizin için daha iyi olur. Eğer illaki mounted ve kullanılan Fs üstünde bu komutu çalıştırmak istiyorsak şu adımları izleyiniz.

 

quotaoff /fs_ismi
mount –o ro,remount /fs_ismi
quotacheck –options /fs_simi

 

 

Seçenekler

Açıklama

-c

Var olan kota dosyalarını okuma,yeni bir işlem varsa disk üstüne kaydet yani Kota hesabı aktif hale getirilmek istenen FS üstünde kota bilgilerini tutan dosyaları oluştur demek.

-u

Kullanıcı kotalarını tutan aquota.user dosyasını oluştur.

-g

Grup kotalarını tutan aquota.group dosyasını oluştur.

-v

Verbose mode,kullanıcıya ne olup bittiğini bilgisini göster.

-d

Debugging Mode, eğer bir şeyler ters gidiyorsa –d seçeneği ile daha detaylı olup bitene bakabilirsiniz.

-i

Interaktif mod.

 

 

Dolayısıyla ilk başta bu komutu –cug diye bütün seçenekleriyle koşmamız gerekiyor.

 

[root@artemis ~]# quotacheck -cug /myfs -- > /myfs için kota dosyalarını oluşturmuş olduk.

[root@artemis ~]#

[root@artemis ~]#

[root@artemis ~]# ls -al /myfs   -- > gördüğünüz gibi /myfs altında kota bilgilerini tutacak aquota.user ve aquota.group dosyaları oluştu.

total 48

drwxrwxr-x  3 root yonetici  4096 Oct 10 00:22 .

drwxr-xr-x 24 root root      4096 Oct  9 16:38 ..

-rwxrwx---  1 root root        45 Oct  9 21:50 acl_ornek

-rw-------  1 root root      7168 Oct 10 00:22 aquota.group

-rw-------  1 root root      6144 Oct 10 00:22 aquota.user

drwx------  2 root root     16384 Sep 10 15:03 lost+found

 

 

[root@artemis ~]# quotacheck –avug  -- > FS’i kota için kullanmaya başlamadan öncede komple kontrol yaptırıyoruz.

quotacheck: Scanning /dev/sdb1 [/myfs] done

quotacheck: Checked 3 directories and 5 files

 

 

edquota ; Şimdi de kullanıcı veya gruba kota ekleme kısmına geldik. Bunun içinde edquota komutunu kullanacağız.edquota komutuna –u seçeneği ile user bilgisini vereceğiz ve karşımıza bir text editör çıkacak. Bu text editörde değerleri değiştireceğiz.

[root@artemis ~]# edquota –u bilgipark  -- > bilgipark kullanıcısına kota ekleyeceğiz,karşımıza text editor gelecek, vi gibi kullanarak bilgileri giriyoruz.

Disk quotas for user bilgipark (uid 501):

  Filesystem                   blocks       soft       hard     inodes     soft     hard

  /dev/sdb1                         0             0              0          0                 0        0

 

~

Bilgileri girerken bu tabloyu gözden geçirebilirsiniz. Nereye ne girmeniz gerektiği bilgisi yer alıyor.

 

 

Filesystem

Blocks

inodes

Soft Limit

Hard Limit

Kota uygulanan FS

Kullanıcının şu an kullandığı 1K boyutlu block sayısı. 100 blocks demek 100K demek aslında.Not: Bu değerleri değiştirmeyin. Bunlar size referans olarak gösterilen şu anki değerlerdir.

Kullanıcıya ait olan inodes sayısı. Not: Bu değerleri değiştirmeyin. Bunlar size referans olarak gösterilen şu anki değerlerdir.

Soft Limit maksimum kullanılabilecek değeri ifade eder. Ama bu değer aşılabilir. Belli bir uyarı verilir.Grace period denilen uyarı periyoduna sahiptir.Grace period da biterse kullanıcının erişimi yasaklanır.

Kullanıcının kesinlikle aşamayacağı sınırdır. Kullanıcı hiçbir şekilde bu limitin ötesine geçemez.

 

 

Editörde soft limit için 100,hard limit için 150 girdik. Yani /myfs altında bilgipark kullanıcısı 100K alan kullanırsa soft limite gelecek.150K’dan sonrasını kesinlikle kullanamayacak.

 

//***********root kullanıcısının shell’i********************************//

[root@artemis myfs]# edquota -u bilgipark   -- > editör gelecek ve aşağıdaki değerleri gireceğiz.

 Disk quotas for user bilgipark (uid 501):

  Filesystem                   blocks       soft       hard     inodes     soft     hard

  /dev/sdb1                       0               100        150          1        0        0

~
~
[root@artemis myfs]# quotaon –avug  -- > kota uygulamasını aktif hale getirdik

 

//***********paralelde bilgipark kullanıcısının shell’i********************************//

[bilgipark@artemis myfs]$ dd if=/dev/zero of=/myfs/kota_ornek bs=100K count=1   -- > şimdi dd komutu yardımıyla dummy bir dosya oluşturuyoruz 100k’lık.ve soft limite eriştiğimiz için uyarı alıyoruz.

sdb1: warning, user block quota exceeded.

1+0 records in

1+0 records out

102400 bytes (102 kB) copied, 0.00055392 seconds, 185 MB/s

[bilgipark@artemis myfs]$

[bilgipark@artemis myfs]$

[bilgipark@artemis myfs]$ ls -lrht

total 140K

drwx------ 2 root      bilgipark  16K Sep 10 15:03 lost+found

-rwxrwx--- 1 root      bilgipark   45 Oct  9 21:50 acl_ornek

-rw------- 1 root      root      7.0K Oct 10 01:03 aquota.group

-rw------- 1 root      root      7.0K Oct 10 01:11 aquota.user

-rw-rw-r-- 1 bilgipark bilgipark 100K Oct 10 01:11 kota_ornek

 

 

[root@artemis myfs]# quota bilgipark  -- > soft limit erişimi sonrası bilgipark kullanıcısının kota bilgilerini kontrol ediyoruz.

Disk quotas for user bilgipark (uid 501):

     Filesystem  blocks   quota   limit   grace   files   quota   limit   grace

      /dev/sdb1     104*    100     150   6days       1       0       0       

 

 

[bilgipark@artemis myfs]$ dd if=/dev/zero of=/myfs/kota_ornek bs=150K count=1  şimdi  de dd komutu yardımıyla soft limiti geçip hard limite yanaşacak bir dummy dosya oluşturuyoruz.

sdb1: warning, user block quota exceeded.   -- > 100K civarında soft limiti geçtik ve bu uyarıyı aldık

sdb1: write failed, user block limit reached. -- > 150K civarında ise hard limite yaklaşınca yazma işi hata aldı ve kesti.

dd: writing `/myfs/kota_ornek': Disk quota exceeded

1+0 records in

0+0 records out

147456 bytes (147 kB) copied, 0.00204268 seconds, 72.2 MB/s

 

 

[root@artemis myfs]# quota bilgipark -- > soft limit erişimi sonrası bilgipark kullanıcısının kota bilgilerini kontrol ediyoruz.

 

 

Disk quotas for user bilgipark (uid 501):

     Filesystem  blocks   quota   limit   grace   files   quota   limit   grace

      /dev/sdb1     148*    100     150   7days       1       0       0       

[root@artemis myfs]#

 

 

Gruplara kota uygulamak; Eğer bir grup adına kota uygulaması yapmak istiyorsak edquota komutunu –g seçeneği ile koşmamız gerekiyor.

 

Mesela yonetici grubuna kota uygulayacaksak edquota –g yonetici denilip gelen text editörde değerleri girmemiz yeterli.

 

Kullanıcı kotaları ile aynı olduğu için örnek vermiyoruz.

 

 

Grace Period ve edquota –t komutu; Diskte Blocks alanında veya Inode sayısında Soft Limit aşılırsa o soft limit aşımına ne kadar süreyle izin verileceğini belirtmek için kullanılır.Kullanıcı soft limiti aştıktan sonra grace period işlemeye başlar.Eğer kullanıcı kendi limitlerine yani soft limitin altına düşmezse belirtilen gün sonunda erişimi yasaklanır. Bu grace periyodu hem block alanı hem inode sayısı için ortaktır ve “edquouta –t “ komutu ile editlenir.değerler seconds, minutes, hours, days, weeks, months cinsinden olabilir,sayı ile birimler bitişik gösterilmelidir. 7 gün grace periyodu “7days” şeklinde olmalıdır.

 

 

[root@artemis myfs]# edquota –t

 

 

Grace period before enforcing soft limits for users:

Time units may be: days, hours, minutes, or seconds

  Filesystem             Block grace period     Inode grace period

  /dev/sdb1                     7days                  7days

~

~

~

 

 

Kotaların aktif ve pasif hale getirilmesi; quoutaon ve quoutaoff komutları sırasıyla sistem üstündeki belirlenen FS’teki kotaları aktif ve pasif hale getirmek için kullanılır.

 

 
Sistemdeki bütün kota uygulanan FS’lerdeki(a) kullanıcı(u) ve grup(g) kotalarını PASIF hale çekmek için;
 
quotaoff –vaug 
 
Sistemdeki bütün kota uygulanan FS’lerdeki(a) kullanıcı(u) ve grup(g) kotalarını AKTIF hale çekmek için;
 
quotaon –vaug
 
Sistemdeki sadece /home FS’ine uygulana kullanıcı(u) ve grup(g) kotalarını pasif hale çekmek için;
 
quotaon -vug /home
 

 

[root@artemis ~]# quotaon -avug

/dev/sdb1 [/myfs]: group quotas turned on

/dev/sdb1 [/myfs]: user quotas turned on

[root@artemis ~]#

[root@artemis ~]#

[root@artemis ~]# quotaoff -avug

/dev/sdb1 [/myfs]: group quotas turned off

/dev/sdb1 [/myfs]: user quotas turned off

 

 

Kota durumunu görmek; Genel olarak sistemde var olan kotaları ve kotaların son durumlarını görmek istiyorsak repquouta komutunu kullanacağız.

 

Kota uygulanan bütün FS’leri görmek için  repquouta –a ,sadece belirli bir FS’i görmek için repquouta FS_ismi

 

 

[root@artemis ~]# repquota -a

*** Report for user quotas on device /dev/sdb1

Block grace time: 7days; Inode grace time: 7days

                        Block limits                File limits

User            used    soft    hard  grace    used  soft  hard  grace

----------------------------------------------------------------------

root      --   17696       0       0              5     0     0      

bilgipark +-     148     100     150  6days       1     0     0      

 

 

Bu çıktıda isimden sonra iki – işaretini göreceksiniz,bu çizgiler eğer + ise soft limitin aşıldığını gösterir. İlk çizgi blocks için olan soft limiti,ikinci çizgi ise inode için olan soft limitin aşıldığını gösterir.

 

 

Bir makalenin daha sonuna geldik, umarım faydalı bir makale olmuştur. Bir sonraki makalemizde görüşmek üzere


Viewing all articles
Browse latest Browse all 4130

Trending Articles


Ahiyyen ya hayy şerahiyyen ya kayyum


Cinli kişinin üzerinden cini almak icin


Ayetel Kürsi'nin Daveti


Kasemi Mübelliğa


Fetih Suresi ve Esması


Muhabbet Ve Cimaya Kuvvet


Salavatı Şemsiyye


Hayy zikriyle herşey yaptırılabilir gibi bir şeyler okudum tecrübe edenler


Yasin suresinin 9 ayeti hurufu mukatta


ZİLHİCCE Ayında Okunacak Zikirler


Kalp gözünü açan vird - gavsul azam seyyid abdulkadir geylani hz.’nin - ikindi v


Kulak daveti


Ve huvel kaviyyul azîz


erbaini idrisiye arapça + icabet duası


Düşmana Cin Musallat etme


korku ve iç huzursuzluğu


Rızık için Vakıa süresi


SCCM 2012 Client Installation issue


Zilhicce Ayının Namaz Duası ÖNEMLİ


Süfli Hadim-Cin Daveti