Skip to main content

Linux Disk quota.. Problem of disk quota exceeded

Sometimes.. when i run some commands, I see that the command quits withe error: "Disk quota exceeded".
But when i check the disk utilization using "df -h" i have pretty much space left to use.
Whats the point of disk quota here.

Linux administrators can set quota.. a limit for each user on how much he can fill that File system.
The quota limitation if for two aspects:

  1. Total space used by user.
  2. Total number of files created by user.
Lets take an example of user limits are 100GB and 10000 files. 
Now for the first point, if user creates 11 files of 10 GB each, then his disk quota is exceeded. 
for the second point, if user creates 12000 files of 10KB each, then total space is 120MB, but the limitation of file quota is exceeded, in this case also the disk quota is exceeded.

To get user quota on different disk storages: use this command
$> quota

XXX.XXX.XXX.XXX:/local/------
                243220716  17179869180 17179869180          803381  4294967295 4294967295

In this output, the total blocks used by the user are 243220716 and maximum blocks is 17179869180 
The total number of files used by user are 803381  and maximum user can create is 17179869180

To get the number of blocks used by a folder use this command:
$> du -s <FOLDER>

Comments

Popular posts from this blog

Verdi Uses - I

COVERAGE While going through some of the blog posts, i found that the Verdi supports even coverage right out of the box, but from the 2014 Version. Well till now, we relied on the URG reports and the DVE to review the coverage and apply waivers and create exclusion files. Looks verdi supports all the features.. I did not get any hands on the features of this option, soon i will find some time to play around with this option of coverage in Verdi. How to launch the verdi with coverage. $> verdi -cov -covdir <PATH_TO_TB>.simv.vdb -covdir <PATH_TO_TEST1>.simv.vdb -covdir <PATH_TO_TEST2>.simv.vdb...  You can pass multiple covdirs, where in all the results will be merged. References: SYNOPSYS SITE Think Verification  

Sequence Layering in UVM

What is Sequence Layering? Sequence layering is refered to as running sequences inside sequences.  So whats the big deal. There are virtual sequences we will use to run multiple sequences. A generic example of sequence layering. you have two sequences  Interrupt sequence register read write sequence. Generally when you have interrupt, we generally enter into interrupt service routine, which can be implemented as an interrupt sequence. So when you run an interrupt sequence, you might end up running register read /write sequence like polling or clearing interrupts. Well thats easy, just run one sequence in another. class top_seq extends uvm_sequence#(txn_item); //Two sequencers say.. sub sequences. sub_seq1 seq1; sub_seq2 seq2; ... task body(); seq1.start(some_seqr); seq2.start(some_seqr2); endtask endclass Killing sequences: That was great you are running nested sequences. But how to kill them when needed. UVM provides method cal

SystemVerilog: Mailboxes and Queues

Mailboxes and queues are couple of basic data constructs of system verilog language. Lets get to the definition of them: Queue: A Queue in system verilog function as the name suggests. But with a twist. Queue in system verilog is a list of similar elements. Queue is built on top of an array. Delcaration of a queue. < TYPE > < que_name >[ $ ]; Default Behaviour: The default size of the queue in system verilog is " Infinite ". The above declaration will create a que of infinite length. You can add elements to the que until your simulator crashes :) What if you want to create a queue of finite length. Just look at the declaration below: < TYPE > < que_name >[ $ :< LIMIT >]; The above declaration will create a queue of size " LIMIT+1 " Initializing queue with elements Accessing elements of a queue Methods in queue Inserting elements into queue Reoving elements from queue http://www.project-veripage.com/queue_1.ph