@Hwjp पर आधारित एक अन्य समाधान, यदि आप उन्हें स्थानांतरित करने के लिए किसी अन्य ड्राइव वॉल्यूम का उपयोग नहीं कर सकते हैं, तो आप वर्चुअल वॉल्यूम वॉल्यूम को किसी अन्य वॉल्यूम में बना सकते हैं, जिसके पास अधिक स्थान उपलब्ध है (जो मेरा मामला है):
वर्चुअल वॉल्यूम बनाएं:
ए) करते हैं: sudo dd if=/dev/zero of=VHD-log.img bs=1M count=1200
- यदि = / dev / शून्य: इनपुट फ़ाइल डेटा संग्रहण को शुरू करने के लिए एक चरित्र स्ट्रीम प्रदान करने के लिए
- of = VHD.img: /volumeofyourchoice पर स्टोरेज वॉल्यूम के रूप में बनाई जाने वाली छवि फ़ाइल
- bs = 1M: एक समय में 1M तक पढ़ें और लिखें
- count = 1200: प्रतियां केवल 1200M (1GB) इनपुट ब्लॉक
बी) करते हैं: sudo mkfs -t ext4 /thevolumeofyourchoice/VHD-log.img
वीएचडी-लॉग छवि फ़ाइल में EXT4 फ़ाइल सिस्टम प्रकार को mkfs उपयोगिता के साथ प्रारूपित करें।
सी) करो: sudo mkdir /thevolumeofyourchoice/vlog
माउंट वीएचडी-एक निर्देशिका में प्रवेश करें (माउंट पॉइंट)
डी) करते हैं: sudo mount -t auto -o loop /thevolumeofyourchoice/VHD-log.img /thevolumeofyourchoice/vlog
D1) सिस्टम बूट पर VHD- लॉग को अंतिम निर्देशिका में माउंट करने के लिए, इस प्रविष्टि को / etc / fstab फ़ाइल में जोड़ें।
/thevolumeofyourchoice/VHD-log.img /var/log/ ext4 defaults 0 0
पुरानी लॉग फ़ाइलें ले जाएँ:
ई) करते हैं:
service rsyslog stop
lsof | grep /var/log
/ var / लॉग में खुली फ़ाइलों को सूचीबद्ध करता है और आवश्यक डेमॉन को बंद कर देता है (apach2, freshclam in my case)
cp -rp /var/log/* /thevolumeofyourchoice/vlog
(cp -p same के रूप में --preserve = मोड, स्वामित्व, टाइमस्टैम्प)
एफ) करते हैं:
sudo umount /thevolumeofyourchoice/vlog
sudo mv /var/log /var/log-old
sudo mkdir /var/log
sudo chgrp syslog /var/log
sudo mount -t auto -o loop /thevolumeofyourchoice/VHD-log.img /var/log
जी) करते हैं: service rsyslog start
और आपके द्वारा रोकी गई अन्य सेवाओं को पुनरारंभ करें
अंत में डबल चेक:
आप ca / a करते हैं - lsof | grep /var/log
खुली फाइलों को / var / log में सूचीबद्ध करते हैं और सत्यापित करते हैं कि वे / var / log और नहीं / var / log-old हैं
आप सब ठीक होने के बाद mv, बैकअप या डिलीट / var / log-old कर सकते हैं।