ডেবিয়ান সিস্টেমে সংশোধিত কনফিগারেশন ফাইলগুলি কীভাবে পরীক্ষা করবেন?


62

ডিফল্ট থেকে পরিবর্তিত সমস্ত ডেবিয়ান পরিচালিত কনফিগারেশন ফাইল কীভাবে সন্ধান করবেন?


1
প্রশ্ন এখানে যায়। উত্তর নীচে যায়।
ডেনিস উইলিয়ামসন 22

আপনি প্রদত্ত উত্তরটি আপনার উত্তরে সরিয়ে নিয়েছি।
জোড়াদেচি

উত্তর:


78

ডিফল্ট থেকে পরিবর্তিত সমস্ত ডেবিয়ান পরিচালিত কনফিগারেশন ফাইলগুলি সন্ধান করার জন্য আপনি এটির মতো একটি আদেশ ব্যবহার করতে পারেন।

dpkg-query -W -f='${Conffiles}\n' '*' | awk 'OFS="  "{print $2,$1}' | md5sum -c 2>/dev/null | awk -F': ' '$2 !~ /OK/{print $1}'

সম্পাদনা (স্থানীয়করণ সিস্টেমের সাথে কাজ করে):

dpkg-query -W -f='${Conffiles}\n' '*' | awk 'OFS="  "{print $2,$1}' | LANG=C md5sum -c 2>/dev/null | awk -F': ' '$2 !~ /OK/{print $1}' | sort | less

সম্পাদনা করুন (ফাইলের নামের সাথে প্যাকেজগুলির সাথে কাজ করে):

dpkg-query -W -f='${Conffiles}\n' '*' | awk 'OFS="  "{print $2,$1}' | LANG=C md5sum -c 2>/dev/null | awk -F': ' '$2 !~ /OK$/{print $1}' | sort | less

উবুন্টু 10.4 তে মোহন করার মতো কাজ করে, আমি আপনাকে হাজার বার উপস্থাপন করব :-)
লুডভিগ ওয়েইঞ্জিয়ের

দুর্দান্ত কাজ করে আপনি md5sum --quietঠিক আছে ফাইলগুলি ফিল্টার এড়ানোর জন্য যদিও ব্যবহার করতে পারেন awk(এবং এভাবে স্থানীয়করণের সমস্যাগুলি?) যাইহোক: আপনি কীভাবে / ইত্যাদির মধ্যে আন-ল্যাক করা ফাইল অন্তর্ভুক্ত করবেন তা জানেন না? উদাহরণস্বরূপ / ইত্যাদি / অ্যাপাচি 2 / সাইটগুলিতে থাকাগুলির মতো?
sfussnegger

আমার উত্তরটি ( debsums -ec) আসলে কীভাবে কাজ করে তা জানতে আগ্রহী হবে কারণ এটি এর থেকে অনেক কম ফলাফল পাবে বলে মনে হয়।
naught101

এছাড়াও, কেবলমাত্র প্যাকেজ সংস্করণগুলির জন্য কেবল কনফ ফাইলগুলি যাচাই করা হয় সেগুলি হ'ল debsums -ec: যদি আমি এই পদ্ধতিটি প্যাকেজ সংস্করণগুলি পুনরায় ইনস্টল করতে ব্যবহার করি , তবে এই পদ্ধতির মাধ্যমে তালিকাভুক্ত কিছু ফাইল পরিবর্তন করা হয় না।
naught101

কোন কনফিগার পরিবর্তনগুলি মুলতুবি থেকে বা অপ্রচলিত থাকতে পারে তা দেখার জন্য অতিরিক্ত চেক হিসাবেfind /etc -type f \( -iname '*.ucf-dist' -o -iname '*.ucf-old' -o -iname '*.dpkg-old' -o -iname '*.dpkg-dist' \) -print | sort
স্পাক্কা

47

থেকে man debsums:

  debsums -ce
          List changed configuration files.

1
এটি এখন পর্যন্ত সবচেয়ে সহজ এবং সর্বোত্তম উত্তর।
mfisch

1
কেবলমাত্র ডেবসামগুলি ডিফল্টরূপে ইনস্টল করা হয় না এবং আপনি এটি ইনস্টল করতে নাও চাইতে পারেন।
অ্যালেক্সিস উইল্ক

1
@ অ্যালেক্সিসওয়িল্ক: এটি 218kb এবং এর ন্যূনতম নির্ভরতা রয়েছে ...
নট 101

11

নেক্রোকে দুঃখিত, তবে @ naught101 এর উত্তর পরিবর্তিত ফাইলগুলির জন্য সঠিক ছিল , এটি যুক্ত হওয়া ফাইলগুলির জন্য কোনও সহায়তা করেনি । @ গ্রিমের সমাধানটি দুর্দান্ত, তবে এটির উপর নির্ভর করে; আমি ফাইল সিস্টেমটি পরিবর্তন করতে চাই না।

find /etc -type f | grep -vFf <(debsums -e -r /etc | sed 's/[[:space:]]*OK$//')

/ ইত্যাদি / তে ফাইলগুলি সন্ধান করুন যা বৈধ হিসাবে প্রতিবেদন debsumsকরে না । এর অর্থ হ'ল অন্যাক্র্যাক করা ফাইল বা ফাইলগুলি যা "ওকে" নয় (হ্যাশগুলি মেলে না)।


debsums --list-missingএক বা একাধিক প্যাকেজ অন্তর্ভুক্ত ফাইলগুলির চেকসাম অনুপস্থিত রয়েছে কিনা তা পরীক্ষা করার জন্যও চালানো উচিত । আজকাল আউটপুট খালি থাকা উচিত।
মিক্কো রেন্টালাইনেন

8

আমি সাধারণত খুব শীঘ্রই সিস্টেমে অ্যাডকিপার সেটআপ করতে চাই। এন্ডকিপারের মতো কিছু দিয়ে আমি কেবল ফাইলটি আলাদা করতে পারি না, তবে এটি কীভাবে আলাদা তা হ'ল আমি আসলে একটি ভিন্নতা পেতে পারি।

দেখা:


5

বা ডাবসামস -e | গ্রেপ ফেইলড যা সমস্ত অনুপস্থিত কনফিলগুলিও প্রদর্শন করবে

(ডিবেসস প্যাকেজ থেকে)


2

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

http://devstructure.com/blueprint/

ব্লুপ্রিন্ট একটি সাধারণ কনফিগারেশন পরিচালন সরঞ্জাম যা ইঞ্জিনিয়ার্স সার্ভারগুলিকে বিপরীত করে। আপনি ম্যানুয়ালি কী করেছেন তা চিত্রিত করে, এটি স্থানীয়ভাবে একটি গিট সংগ্রহস্থলে সংরক্ষণ করে, আপনার প্রচেষ্টা পুনরায় তৈরি করতে সক্ষম এমন কোড তৈরি করে এবং আপনাকে সেই পরিবর্তনগুলিকে উত্পাদনে মোতায়েন করতে সহায়তা করে।


পাইথন -3 সমর্থিত থাকলে তাদের হোমপৃষ্ঠা থেকে (কিছুটা পুরানো দেখায়) পরিষ্কার নয়। কেউ চেষ্টা করেছে?
স্পহক্কা

গিটহাব রেপো থেকে শেষ পর্যন্ত বেশ কয়েক বছর আগে সক্রিয় থাকাকালীন বিচার করা আমি বাক্সের বাইরে পাইথন 3 এ কাজ করার জন্য খুব বেশি টাকা বাজি ধরব না, তবে এটি বেশ ভাল লেখা আছে বলে মনে হচ্ছে, তাই পাইথন 3 এ যোগ করার জন্য বিশাল পরিমাণ প্রচেষ্টা নাও হতে পারে সমর্থন।
ড্রাগন 788

1

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

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

ধারণাটি হ'ল এমন সমস্ত কমিটের একটি তালিকা পাওয়া যাবে যা স্বয়ংক্রিয়ভাবে তৈরি হয় না এবং রান চালায়। তারপরে সকলের মধ্যে পরিবর্তিত ফাইলগুলির তালিকা করুন তবে প্রথম প্রতিশ্রুতিবদ্ধ:

filter_sed="/committing changes in \/etc after apt run\$/d"

etckeeper vcs log --oneline |
  sed "$filter_sed; \$d; s/ .*//" |
  xargs etckeeper vcs show --name-only --format=format: |
  sort |
  uniq |
  sed "/^\$/d"

যদি ধারাবাহিকভাবে নামকরণ করা হয় তবে অন্যান্য কমিটগুলি অন্তর্ভুক্ত করতে ফিল্টার স্ট্রিংটিও বাড়ানো যেতে পারে। সরাসরি কোনও ডেবি ফাইল থেকে বা উত্স কোড থেকে ইনস্টলের জন্য ভাল হতে পারে।

এটি আমার কাছে তুলে ধরার একটি উল্লেখযোগ্য ফাইল হ'ল xorg.conf- আপনার যদি প্রয়োজন হয় তবে বর্তমানে আপনার নিজের এটিকে / etc / X11 এ যুক্ত করতে হবে। এছাড়াও আমার default/grubপরিবর্তনগুলি বাছাই করা হয়েছে, মনে হয় এটি কোনও প্যাকেজের অংশ হিসাবে তালিকাভুক্ত হওয়ার পরিবর্তে কোনও পোস্ট ইনস্টল স্ক্রিপ্ট দ্বারা / usr / শেয়ার থেকে অনুলিপি করা হয়েছে। যদি কোনও ফাইলে এর মতো পরিবর্তন করা হয় তবে dpkg সম্পর্কিত পদ্ধতিগুলি এটি প্রকাশ করে না।


1
এফওয়াইআই, এর git logএখন একটি --invert-grepবিকল্প রয়েছে যা ব্যবহার ছাড়াই আগ্রহী কমিটিকে ফিল্টারিং করতে দেয় sed
নিল মেহেহে
আমাদের সাইট ব্যবহার করে, আপনি স্বীকার করেছেন যে আপনি আমাদের কুকি নীতি এবং গোপনীয়তা নীতিটি পড়েছেন এবং বুঝতে পেরেছেন ।
Licensed under cc by-sa 3.0 with attribution required.