কোন ফাইলগুলি একটি লিনাক্স ওয়েব সার্ভারে ৮০% স্থান গ্রহণ করছে তা কীভাবে খুঁজে পাবে?


15

ড্রাইভটি প্রতিনিয়ত পূরণ হচ্ছে। আপনি পারেন এমন সমস্ত অতিরিক্ত এবং এলোমেলো ফাইলগুলি শিকার করেছেন। করডাম্প ফাইলগুলির জন্য গ্রেপড এবং এমনকী কিছু অপ্রয়োজনীয় ব্যাকআপ সরিয়ে ফেলেছে ...

আপনার পরবর্তী পদক্ষেপ কি হবে?

প্রকৃত সার্ভারে 10 জিবি ওয়েবসাইট ফাইল রয়েছে এবং ওএস 10 জিবি এর বেশি কোনও গ্রহণ করা উচিত নয় তাই আপনি 50 জিবি (ভার্চুয়াল) ড্রাইভটি কীভাবে পূরণ করছেন তা কীভাবে ট্র্যাক করবেন?


উত্তর:


9

আমি এনসিডিউ ( http://dev.yorhel.nl/ncdu ) এর জন্য বেশ সহায়ক বলে মনে করি।


পারফেক্ট। উজ্জ্বল ইন্টারফেস এবং প্রোগ্রামের মধ্যে থেকেই ফাইলগুলি ম্যানিপুলেট করার ক্ষমতা। চিয়ার্স!
গ্যারেথ

23

অবশ্যই আরও বিস্তৃত উপায় আছে তবে আমি মনে রাখি is

ডু - ম্যাক্স-গভীরতা = 1-ঘন্টা /

এখন যে ডিরেক্টরিটি সর্বাধিক স্থান ব্যবহার করে সেগুলি নিন (du --max-depth=1 -h /yourdir)এবং যতক্ষণ না আপনি আপনার অপরাধীকে খুঁজে পান ততক্ষণ গভীর হয়ে যান।
যদি আপনার আউটপুট আকার অনুসারে বাছাই করতে চান এবং মানব-পঠনযোগ্য ফর্ম্যাটটির যত্ন না রাখেন তবে আপনি এটি করতেও পারেনdu --max-depth=1 /your_dir | sort -n


হ্যাঁ। আমি একই জিনিস "du -S | সাজানো-এন-আর | কম" করে চলেছি। আমি সত্যিই এমন একটি প্রোগ্রাম দেখতে পছন্দ করব যা হিট্পের মতো লাগছিল এবং মলোকোটের মতো করণীয় ছিল তবে রান করার সময় আপনাকে আপনার সিস্টেমে থাকা ফাইলগুলি সম্পর্কে সঠিক এবং সমসাময়িক তথ্য দিত।
গ্যারেথ

1
ওয়েবসার্ভার থেকে / চালু করার পরিবর্তে http_root থেকে শুরু করার চেষ্টা করুন। সেখানে যদি কোনও সাফল্য না থাকে তবে একজন '/' এর জন্য যেতে পারেন। '/' -র ডিরেক্টরি চলমান হতে অনেক সময় লাগবে।
সৌরভ বারজাতিয়া

4

আমি জিনোম প্রোগ্রাম বাওবাব ব্যবহার করি। আপনি এটি আপনার ডেস্কটপে চালাতে পারেন এবং টি এসএসএইচ এর মাধ্যমে সার্ভারের সাথে সংযোগ করতে পারবেন। এটি ডিস্ক স্থান ব্যবহারের গ্রাফিকাল মানচিত্রটি পড়তে সহজ দেখায়। এটি জিনোমের অধীনে "ডিস্ক ব্যবহার বিশ্লেষক" হিসাবে ইনস্টল করা আছে


3

দিন gt5 ব্যবহার করে দেখুন।


আমি এটি দ্বিতীয়, এটি ট্র্যাকিংয়ের জন্য দুর্দান্ত যেখানে স্থানটি চলেছে কারণ এটি ভিন্নতা দেখায়।
জোশ

বাহ। এটি সঠিক উত্তর হওয়া উচিত। কি সুপার খুঁজে। ধন্যবাদ।
পিকেহান্টর

2

df -k দেখায় কোন fs এর সমস্যা। তারপরে এটির জন্য শীর্ষ স্তরের সিডিতে সিডি করুন এবং ডু-এক্স্ক চালান সাজানো-এন | লেজ -25 এটি সূর্যের 9 বা পূর্বের জন্য সাজানো শীর্ষ 25 দির প্রদর্শন করবে, এক্সটিকে একটি ডি দিয়ে প্রতিস্থাপন করবে।


হ্যাঁ, আমি @ মেরি ফিশারের উত্তরে যা উল্লেখ করেছি তার সাথে সমান। কেন মানুষের জন্য -h এর পরিবর্তে -k (ব্লকের আকার) ব্যবহার করবেন?
গ্যারেথ

-কে ব্যবহার করা হয় যাতে সমস্ত আকারের কেবিতে রিপোর্ট করা হয়। এটি বাছাইয়ের জন্য দরকারী অন্যথায় বাছাই করার সময় 20 এমবি এর আগে 10 কেবি রাখবে।
সৌরভ বারজাতিয়া

1

মনে রাখবেন যে ফাইলগুলি লিখিত অবস্থায় মুছে ফেলা যায়, সুতরাং তাদের তৈরি প্রক্রিয়া চলাকালীন তারা ডিস্কস্পেস ব্যবহার করে, তবে কোনও ফাইলের নাম নেই।

এটি সাধারণ সরঞ্জামগুলির সাথে এটি অনিবার্য করে তোলে - কোন প্রসেসে খোলা ফাইল রয়েছে তা তদন্ত করতে আপনি lsof ব্যবহার করতে পারেন।


আমি /usr/sbin/lsof | grep deletedএটি পেতে ব্যবহার ।
কেভিন এম

0

আপনি যদি সিস্টেমে সফ্টওয়্যার চালনা করতে পারেন, তবে এক্সডিস্কুয়েজটি আপনাকে গ্রাফিকালি দেখায় যে কোন ডিরেক্টরি / ফাইলগুলি আপনার স্থান খায়। খুবই উপকারী.

আমি বিশ্বাস করি কে-ডি-তেও তেমন কিছু রয়েছে।

যদি এটি কেবলমাত্র পাঠ্য হয় এবং আপনি অতিরিক্ত সফ্টওয়্যার ইনস্টল করতে না পারেন তবে সৃজনশীল ব্যবহার duসম্ভবত আপনাকে সেখানে পেয়ে যাবে।


0
  1. ওয়েব সার্ভার হোম ডিরেক্টরিতে সিডি (অ্যাপাচের হোম ডিরেক্টরি)
  2. "du -a | মাথা -30 | সাজানো -nr" কমান্ডটি চালান
  3. এটি আপনাকে 30 টি বৃহত্তম ডিস্ক ব্যবহারকারী ফাইল / ডিরেক্টরি দেবে
  4. আপনি সেগুলি খুঁজে পেতে এবং মুছতে পারেন (যদি ব্যবহারযোগ্য না হয়)

যদি না আপনি ক্রম পরিবর্তন এই কাজটি যাচ্ছে না headএবং sort। এছাড়াও আপনার বিন্যাসের বৈশিষ্ট্যগুলি ব্যবহার করা উচিত।
ক্যাস্পার্ড

0

ফাইল বা ফোল্ডারগুলি কী বেশি জায়গা নিচ্ছে তা খুঁজে পেতে আপনি নিম্নলিখিত কমান্ডগুলি ব্যবহার করতে পারেন।

যেমন বর্তমান ফোল্ডারে সর্বোচ্চ 20 টি ডিরেক্টরি প্রদর্শন করতে, নিম্নলিখিত ওয়ান-লাইনারটি ব্যবহার করুন:

du -ah . | sort -rh | head -20

বা:

du -a . | sort -rn | head -20

বর্তমান ডিরেক্টরিতে শীর্ষ 20 টি ফাইলের জন্য (পুনরাবৃত্তভাবে):

ls -1Rs | sed -e "s/^ *//" | grep "^[0-9]" | sort -nr | head -n20

বা মানব পাঠযোগ্য আকার সহ:

ls -1Rhs | sed -e "s/^ *//" | grep "^[0-9]" | sort -hr | head -n20

ওএসএক্স / বাসদ কাজ সঠিকভাবে দ্বিতীয় কমান্ড (যেমন sortনেই -h), আপনি ইনস্টল করতে হবে sortথেকে coreutils। তারপরে আপনার বিন বাক্সটি যুক্ত করুন PATH

আপনি এই আদেশগুলি উপস্বাদ হিসাবে সংজ্ঞায়িত করতে পারেন (যেমন আপনার আরসি ফাইলগুলিতে যুক্ত করুন .bash_profile):

alias big='du -ah . | sort -rh | head -20'
alias big-files='ls -1Rhs | sed -e "s/^ *//" | grep "^[0-9]" | sort -hr | head -n20'

তারপরে আপনি যে ফোল্ডারগুলি মনে করেন সেগুলি চালান bigবা তার big-filesভিতরে রাখুন (যেমন /home)।


0

আমাদের ডাটাবেস সার্ভারগুলিতে কিছু দুর্বৃত্ত প্রক্রিয়াগুলি সন্ধান করতে আমি একসাথে আবদ্ধ এমন কিছু এখানে রয়েছে: রাবিটফাইন্ডার

#!/bin/sh
tree -s -f > /tmp/out1 && sleep 5 && tree -s -f > /tmp/out2; diff /tmp/out1 /tmp/out2 | egrep "\|--" | awk -F[ '{print $2}' | awk -F] '{print $2 }' | sort | uniq | xargs fuser -f | xargs ps -lFp

এটি কিন্ডেজ এবং খুব মজবুত নয়, তবে এটি কাজ করে:

  1. বর্তমান ডিরেক্টরিটির পুনরাবৃত্ত গাছের তালিকা তৈরি করুন
  2. 5 সেকেন্ড অপেক্ষা করুন
  3. অন্য তালিকা তৈরি করুন
  4. দুটি আউটপুট তুলনা করুন
  5. আকার এবং এর পরিবর্তিত ফাইলগুলিকে ফুসর করে
  6. ps -lFp প্রক্রিয়াগুলি তাদের মালিকানাধীন ফাইলগুলি প্রদর্শন করবে

    user@poseidon:~$ tree -s -f > /tmp/out1 && sleep 5 && tree -s -f > /tmp/out2; diff /tmp/out1 /tmp/out2 | egrep "\|--" | awk -F[ '{print $2}' | awk -F] '{print $2 }' | sort | uniq | xargs fuser -f | xargs ps -lFp
    ./tmp/output:       
    F S UID        PID  PPID  C PRI  NI ADDR SZ WCHAN    RSS PSR STIME TTY          TIME CMD
    0 R 1000     14310 14275 23  80   0 -  1072 -        748   1 22:19 pts/2    00:00:06 dd if /dev/zero of ./output bs 1024 count 10000000
    
আমাদের সাইট ব্যবহার করে, আপনি স্বীকার করেছেন যে আপনি আমাদের কুকি নীতি এবং গোপনীয়তা নীতিটি পড়েছেন এবং বুঝতে পেরেছেন ।
Licensed under cc by-sa 3.0 with attribution required.