pg_config প্রশংসা তথ্যের জন্য, এক্সটেনশন এবং ক্লায়েন্ট প্রোগ্রামগুলিকে সংকলন করতে এবং PostgreSQL এর সাথে লিঙ্ক করতে সহায়তা করে। এটি মেশিনে সক্রিয় পোস্টগ্রিজ এসকিউএল উদাহরণ (গুলি) সম্পর্কে কিছুই জানে না, কেবল বাইনারি।
pg_hba.conf Pg ইনস্টল করা হয়েছে তার উপর নির্ভর করে আরও অনেক জায়গায় উপস্থিত হতে পারে। স্ট্যান্ডার্ড অবস্থানটি ডাটাবেসের ডেটা-ডিরেক্টরিতে (যা / home, / var / lib / pgsql, / var / lib / postgresql / [সংস্করণ] /, / অপ্ট / পোস্টগ্রিস / ইত্যাদি ইত্যাদি) এর মধ্যে pg_hba.conf) তবে ব্যবহারকারী এবং প্যাকেজকারীরা যেখানে খুশি সেখানে এটি রাখতে পারেন। দুর্ভাগ্যবশত।
Pg_hba.conf সন্ধানের একমাত্র বৈধ উপায় হ'ল চলমান PostgreSQL উদাহরণটি জিজ্ঞাসা করা যেখানে এটি pg_hba.conf, বা সিসাদাদিনকে এটি কোথায় তা জিজ্ঞাসা করুন। আপনি ডেটাডির কোথায় আছেন জিজ্ঞাসা করে এবং পোস্টগ্রেএসএলএল.কোনফ পার্স করার উপর নির্ভর করতে পারবেন না কারণ পিজি শুরু করার সাথে সাথে কোনও সি-স্ক্রিপ্ট -c hba_file = / কিছু / অন্য / পাথের মতো পারম পাস করতে পারে।
আপনি যা করতে চান তা পোস্টগ্রাইএসকিউএলকে জিজ্ঞাসা করুন:
SHOW hba_file;
এই কমান্ডটি অবশ্যই একটি সুপারসুজার সেশনে চালানো উচিত, সুতরাং শেল স্ক্রিপ্টিংয়ের জন্য আপনি এমন কিছু লিখতে পারেন:
psql -t -P format=unaligned -c 'show hba_file';
এবং সংযোগটি সঠিক কিনা তা নিশ্চিত করতে পরিবেশের ভেরিয়েবলগুলি PGUSER, PGDATABASE, ইত্যাদি সেট করুন।
হ্যাঁ, এটি কিছুটা মুরগি-ও ডিমের সমস্যা, এর মধ্যে যদি ব্যবহারকারী সংযোগ স্থাপন করতে না পারে (বলুন, pg_hba.conf সম্পাদনা করার পরে) আপনি এটি ঠিক করার জন্য pg_hba.conf খুঁজে পাবেন না।
আরেকটি বিকল্প হ'ল পিএস কমান্ডের আউটপুটটি দেখে এবং সেখানে পোস্টমাস্টার ডেটা ডিরেক্টরি ডিরেক্টরি আর্গুমেন্ট -D উপস্থিত রয়েছে কিনা, যেমন
ps aux | grep 'postgres *-D'
যেহেতু pg_hba.conf ডেটা ডিরেক্টরিতে থাকবে (যদি না আপনি দেবিয়ান / উবুন্টু বা কিছু ডেরাইভেটিভ এবং তাদের প্যাকেজ ব্যবহার না করেন)।
আপনি যদি ডেবিয়ান / উবুন্টু প্যাকেজগুলি থেকে ইনস্টল করা পোস্টগ্র্রেএসকিউএল দ্বারা উবুন্টু সিস্টেমগুলিকে নির্দিষ্ট করে লক্ষ্য করে থাকেন তবে এটি কিছুটা সহজ হয়ে যায়। হ্যান্ড-সংকলিত-উত্স পিজির সাথে আপনাকে কারও কারও কারও মুখোমুখি হওয়ার দরকার নেই যে যে কেউ তার বাড়ির দির জন্য কোনও ডেটাডির চালু করেছিলেন, বা কোনও এন্টারপ্রাইজডিবি পিজি ইন / অপ্ট ইন ইত্যাদি ইনস্টল করতে পারেন আপনি pg_wrapper, দেবিয়ান / উবুন্টু মাল্টিকে জিজ্ঞাসা করতে পারেন -version Pg পরিচালক, যেখানে PostgreSQL pg_wrapper থেকে pg_lsclusters কমান্ড ব্যবহার করছে।
আপনি যদি সংযোগ করতে না পারেন (পিজি চলছে না, বা সংযোগের জন্য আপনাকে pg_hba.conf সম্পাদনা করতে হবে) আপনাকে pg_hba.conf ফাইলগুলির জন্য সিস্টেমটি অনুসন্ধান করতে হবে। ম্যাক এবং লিনাক্সে sudo সন্ধান / -প্রকারের f -name pg_hba.conf এর মতো কিছু করবে। তারপরে একই ডিরেক্টরিতে PG_VERSION ফাইলটি পরীক্ষা করে দেখুন এটি ঠিক পোস্টগ্রিএসকিউএল সংস্করণ আপনার যদি একাধিক থাকে তবে তা সঠিক। (Pg_hba.conf যদি / etc / এ থাকে তবে এটিকে অগ্রাহ্য করুন, পরিবর্তে এটির মূল নাম)। একই পোস্টগ্রাইএসকিউএল সংস্করণের জন্য যদি আপনার একাধিক ডেটা ডিরেক্টরি থাকে তবে আপনাকে ডাটাবেস আকারটি দেখতে হবে, পিএস থেকে চলমান পোস্টগ্রাসের কমান্ড লাইনটি পরীক্ষা করে দেখুন এটি ডেটা ডিরেক্টরি-ডি যুক্তি যেখানে আপনি সম্পাদনা করছেন সেখানে মেলে কিনা matches ।
https://askubuntu.com প্রশ্নগুলি / 256534/how-do-i-find-the-path-to-pg-hba-conf-from-the-hell/256711