डिस्क कोटा विंडोज़ प्रशासकों को सर्वर और वर्कस्टेशन के फाइल सिस्टम पर उपयोगकर्ताओं द्वारा उपयोग किए जाने वाले डिस्क स्थान की मात्रा को नियंत्रित और सीमित करने की अनुमति देता है। विंडोज़ सर्वर दो प्रकार के डिस्क कोटा का समर्थन करता है: फाइल सर्वर रिसोर्स मैनेजर (FSRM) कोटा और NTFS कोटा। हालांकि FSRM कोटा अधिक लचीले और सुविधाजनक होते हैं, कुछ मामलों में NTFS कोटा का कुशलतापूर्वक उपयोग किया जा सकता है। उदाहरण के लिए, रोमिंग प्रोफाइल फोल्डर्स (लेकिन यूजर प्रोफाइल डिस्क नहीं) और RDS होस्ट पर रीडायरेक्टेड होम फोल्डर्स, FTP सर्वर और IIS साइट्स पर व्यक्तिगत उपयोगकर्ता निर्देशिकाओं का आकार सीमित करने के लिए। इस लेख में, हम आपको विंडोज़ उपयोगकर्ताओं के लिए NTFS डिस्क कोटा कॉन्फ़िगर करने की प्रक्रिया के बारे में बताएंगे।
विंडोज़ में NTFS डिस्क कोटा को समझना
आप प्रत्येक उपयोगकर्ता के लिए फ़ाइलों और फ़ोल्डरों के अधिकतम आकार को सीमित करने के लिए विंडोज़ डिस्क कोटा का उपयोग कर सकते हैं ताकि वे अपने डेटा के साथ सभी डिस्क स्थान का उपभोग न करें। डिस्क कोटा सर्वर और डेस्कटॉप दोनों विंडोज़ संस्करणों में उपलब्ध हैं।
NTFS कोटा की मुख्य विशेषताएं और सीमाएं:
- कोटा केवल संपूर्ण NTFS-फॉर्मेटेड वॉल्यूम (पार्टीशन) पर लागू किए जा सकते हैं। यह कोटा प्रकार ReFS ड्राइव पर काम नहीं करेगा;
- कोटा उन सभी उपयोगकर्ताओं पर लागू होते हैं जो इस पार्टीशन पर अपना डेटा संग्रहीत करते हैं। आप उपयोगकर्ताओं के समूह या किसी अलग फ़ोल्डर पर कोटा लागू नहीं कर सकते। इस मामले में FSRM का उपयोग करना बेहतर है;
- फ़ाइल और फ़ोल्डर स्वामित्व NTFS सुरक्षा वर्णनकर्ता में स्वामी रिकॉर्ड की जांच करके निर्धारित किया जाता है;
- डिफ़ॉल्ट रूप से, विंडोज़ डिस्क कोटा सक्षम होने पर एक पार्टीशन को स्कैन करता है और प्रत्येक उपयोगकर्ता के कुल फ़ाइल आकार की गणना घंटे में एक बार करता है;
- NTFS संपीड़न का उपयोग करते समय, मूल फ़ाइल आकार (संपीड़न से पहले) को ध्यान में रखा जाता है।
NTFS डिस्क कोटा का उपयोग करने के लिए निम्नलिखित परिदृश्य हैं:
- डिस्क उपयोग की निगरानी — सर्वर पर उपयोगकर्ताओं के डिस्क स्थान उपयोग के आंकड़े देखना;
- निगरानी और सूचना — पहले परिदृश्य के अलावा, जब कोटा पार हो जाता है, तो इवेंट व्यूअर में उपयोगकर्ता नाम और कोटा उपयोग के बारे में जानकारी के साथ एक इवेंट दर्ज किया जाता है;
- डिस्क उपयोग का नियंत्रण — यदि कोटा पार हो जाता है, तो उपयोगकर्ता नई फ़ाइलों को सहेज नहीं सकता।
विंडोज 10/विंडोज सर्वर 2016 पर डिस्क कोटा सक्षम करना
आइए विंडोज सर्वर 2016 पर उपयोगकर्ता डेटा वाले डिस्क पर NTFS कोटा कॉन्फ़िगर करने के मामले पर विचार करें। विंडोज के सभी पिछले संस्करणों (विंडोज 2003 से शुरू) में, NTFS डिस्क कोटा को उसी तरह कॉन्फ़िगर किया जाता है।
उस डिस्क के गुण विंडो को खोलें जिस पर आप कोटा सक्षम करना चाहते हैं, कोटा टैब पर जाएं। फिर कोटा सेटिंग्स दिखाएं पर क्लिक करें:

इस वॉल्यूम के लिए कोटा सक्षम करने के लिए, कोटा प्रबंधन सक्षम करें को चेक करें।
कोटा उपयोग के परिदृश्य के आधार पर निम्नलिखित विकल्प चेक किए जा सकते हैं:
- कोटा सीमा पार करने वाले उपयोगकर्ताओं को डिस्क स्थान अस्वीकार करें – कोटा सीमा पार करने वाले उपयोगकर्ताओं को डिस्क पर लिखने से रोकें;
- डिस्क स्थान सीमित करें — एक उपयोगकर्ता के लिए फ़ाइलों के कुल आकार पर सीमा निर्धारित करें;
- उपयोगकर्ता द्वारा कोटा सीमा पार करने पर इवेंट लॉग करें – यदि कोई उपयोगकर्ता कोटा सीमा पार करता है तो इवेंट व्यूअर में एक इवेंट लॉग करता है;
- उपयोगकर्ता द्वारा चेतावनी स्तर पार करने पर इवेंट लॉग करें – जब कोटा सीमा तक पहुंच जाता है तो एक इवेंट लॉग करता है।
एक साथ विकल्प "कोटा सीमा पार करने वाले उपयोगकर्ताओं को डिस्क स्थान अस्वीकार करें" को सक्षम करने की अनुशंसा नहीं की जाती है। अपने उपयोगकर्ताओं द्वारा डिस्क स्थान के वर्तमान उपयोग का अनुमान लगाना बेहतर है। हमारे उदाहरण में, हम सर्वर पर प्रत्येक उपयोगकर्ता को 1 जीबी डिस्क स्थान तक सीमित करना चाहते हैं।

परिवर्तन सहेजें (लागू करें)। कुछ समय बाद (डिस्क आकार और फ़ाइलों की संख्या के आधार पर), विंडोज़ प्रत्येक उपयोगकर्ता द्वारा डिस्क स्थान के कुल उपयोग की गणना करेगा।
कोटा प्रविष्टियाँ बटन पर क्लिक करें। आपको एक परिणाम तालिका दिखाई देगी जो कोटा और प्रत्येक उपयोगकर्ता द्वारा उपयोग किए गए स्थान का वर्तमान आकार दिखाती है (जिनकी फ़ाइलें फाइल सिस्टम पर पाई जाती हैं)। यहां आप देख सकते हैं कि किन उपयोगकर्ताओं ने पहले ही अपने डिस्क कोटा को पार कर लिया है।

डिफ़ॉल्ट रूप से, सभी उपयोगकर्ताओं के लिए समान कोटा सेट किए जाते हैं। कोटा प्रविष्टि विंडो से, आप किसी विशेष उपयोगकर्ता के लिए कस्टम कोटा सेटिंग्स बना सकते हैं, बढ़ा सकते हैं या अक्षम कर सकते हैं।
किसी विशिष्ट उपयोगकर्ता खाते के लिए NTFS डिस्क कोटा अक्षम करने के लिए, कोटा तालिका में प्रविष्टि के गुण (गुण) खोलें और "डिस्क उपयोग सीमित न करें" चेक करें।
महत्वपूर्ण. आपको सिस्टम खातों NT Service\TrustedInstaller और NT AUTHORITY\SYSTEM के लिए कोटा अक्षम करना होगा, अन्यथा विंडोज़ सही ढंग से काम नहीं कर सकता है।

कोटा सूची विंडो से, आप अपनी कोटा सेटिंग्स निर्यात कर सकते हैं और फिर उन्हें किसी अन्य डिस्क या कंप्यूटर पर आयात और लागू कर सकते हैं।
यदि आप किसी विशिष्ट उपयोगकर्ता की कोटा में गिनी जाने वाली फ़ाइलों की सूची प्रदर्शित करना चाहते हैं, तो आपको हटाएं मेनू आइटम का चयन करना होगा।

यह संवाद बॉक्स किसी विशिष्ट फ़ाइल के स्वामी को बदलने (स्वामित्व लें), हटाने या स्थानांतरित करने की अनुमति देता है।
ऑडिट मोड में अपने सॉफ्ट कोटा की व्यवस्था करने के बाद, आप कोटा सीमा पार करने वाले उपयोगकर्ताओं को डिस्क स्थान अस्वीकार करें विकल्प सक्षम कर सकते हैं। यह हार्ड डिस्क कोटा मोड सक्षम करेगा। अब उपयोगकर्ता अपने आवंटित डिस्क स्थान से अधिक नहीं कर पाएंगे। कृपया ध्यान दें कि उपयोगकर्ता सत्र में डिस्क का आकार अब मौजूदा डिस्क कोटा के अनुसार प्रदर्शित होता है। इस उदाहरण में, C:\ ड्राइव पर मेरे खाते के लिए 1 जीबी कोटा में से 876 एमबी खाली है।

यदि कोटा सीमा पार हो जाती है, तो उपयोगकर्ता को निम्न संदेश प्राप्त होता है:
... पर पर्याप्त स्थान नहीं है। xx एमबी इस आइटम को कॉपी करने के लिए आवश्यक है। फ़ाइलों को हटाएं या स्थानांतरित करें ताकि आपके पास पर्याप्त स्थान हो।

साथ ही, इवेंट आईडी 37 और स्रोत Ntfs के साथ एक इवेंट इवेंट व्यूअर में लॉग किया जाता है:
एक उपयोगकर्ता ने वॉल्यूम C: पर अपनी कोटा सीमा पार कर ली है।

समूह नीति सेटिंग्स के साथ डिस्क कोटा कॉन्फ़िगर करना
आप डोमेन में कंप्यूटर और सर्वर पर डिस्क कोटा सेटिंग्स को समूह नीतियों का उपयोग करके प्रबंधित कर सकते हैं। कोटा सेटिंग्स GPO अनुभाग के अंतर्गत स्थित हैं: कंप्यूटर कॉन्फ़िगरेशन -> प्रशासनिक टेम्पलेट्स -> सिस्टम -> डिस्क कोटा। ऊपर चर्चा किए गए समान डिस्क कोटा सक्षम करने के लिए, अपने GPO में निम्नलिखित सेटिंग्स सेट करें:
- डिस्क कोटा सक्षम करें:
सक्षम - डिस्क कोटा सीमा लागू करें:
सक्षम - डिफ़ॉल्ट कोटा सीमा और चेतावनी स्तर:
सक्षम(डिफ़ॉल्ट कोटा सीमा/चेतावनी स्तर:1 जीबी) - कोटा सीमा पार होने पर इवेंट लॉग करें:
सक्षम - हटाने योग्य मीडिया पर नीति लागू करें:
सक्षम(यदि आपको USB फ्लैश ड्राइव सहित हटाने योग्य मीडिया के लिए कोटा लागू करने की आवश्यकता है)

इस GPO को कंप्यूटर/सर्वर वाले OU को असाइन करना बाकी है जिन पर आपको डिस्क कोटा लागू करने की आवश्यकता है और समूह नीति सेटिंग के अपडेट की प्रतीक्षा करें।
GPO के माध्यम से कॉन्फ़िगर किए गए डिस्क कोटा कंप्यूटर के सभी डिस्क पर लागू होते हैं। आप विशिष्ट उपयोगकर्ताओं के लिए बहिष्करण कॉन्फ़िगर नहीं कर सकते।
कमांड प्रॉम्प्ट/पावरशेल का उपयोग करके डिस्क कोटा प्रबंधित करना
NTFS कोटा को कमांड प्रॉम्प्ट से भी प्रबंधित किया जा सकता है। इसके लिए कमांड fsutil quota का उपयोग किया जाता है।
डिस्क के लिए सॉफ्ट कोटा सक्षम करने के लिए, कमांड का उपयोग करें:
fsutil quota track E:
हार्ड NTFS कोटा सक्षम करने के लिए, चलाएं:
fsutil quota enforce E:
डिस्क कोटा को पूरी तरह से अक्षम करने के लिए, कमांड का उपयोग करें:
fsutil quota disable E:
निर्दिष्ट ड्राइव के लिए वर्तमान कोटा सेटिंग्स प्राप्त करने के लिए, चलाएं:
fsutil quota query e:

उन उपयोगकर्ताओं की सूची प्राप्त करें जिन्होंने पहले ही अपने डिस्क कोटा को पार कर लिया है:
fsutil quota violations
किसी विशिष्ट उपयोगकर्ता के लिए कोटा सीमा बदलने के लिए, कमांड का उपयोग करें:
fsutil quota modify E: 2000000000 100000000 corp\aabrams
कोटा आकार बाइट्स में निर्दिष्ट हैं (इस उदाहरण में 2 जीबी)। पहला मान डिस्क पर उपयोगकर्ता डेटा का अधिकतम आकार है (हार्ड कोटा), दूसरा वह सीमा है जिस पर चेतावनियाँ दिखाई देती हैं (चेतावनी स्तर)।
डिस्क कोटा अपडेट की आवृत्ति पता करें (सेकंड में):
fsutil behavior query quotanotify
डिफ़ॉल्ट रूप से, कोटा घंटे में एक बार अपडेट किए जाते हैं।

NTFS डिस्क कोटा प्रबंधित करने के लिए कोई अंतर्निहित पावरशेल cmdlets नहीं हैं। हालांकि, उन्हें Win32_DiskQuota WMI क्लास का उपयोग करके प्रबंधित किया जा सकता है। उदाहरण के लिए, निम्नलिखित पावरशेल स्क्रिप्ट वर्तमान उपयोगकर्ता कोटा के बारे में जानकारी प्रदर्शित करेगी।
$strCom = "."
$colItems = get-wmiobject -class "Win32_DiskQuota" -namespace "root\CIMV2" -computername $strCom
foreach ($objItem in $colItems) {
write-host "Quota usage: " $objItem.DiskSpaceUsed
write-host "Quota Hard Limit: " $objItem.Limit
write-host "Drive: " $objItem.QuotaVolume
write-host "Status: " $objItem.Status
write-host "Username: " $objItem.User
write-host "Quota Warning Limit: " $objItem.WarningLimit
}