ম্যাক ওএস এক্সে কনফিগার ফাইলটি "/ etc / উত্তর /" তে খুঁজে পাচ্ছেন না


15

আমি ম্যাক ওএস এক্স এ এবং জবাবদিহি নতুন । আমি কীভাবে এটি ইনস্টল করেছি তা আমি ভুলে গেছি। আমি মনে করি এর মাধ্যমে pip:

$ pip freeze
altgraph==0.12
ansible==1.9.2

যে কোনও হারে, আমি যা পড়ছি সেখান থেকে একটি কনফিগার ফাইল থাকা উচিত /etc/ansible/, তবে সেই ডিরেক্টরিটির সামগ্রীটি কেবল:

$ ls -a /etc/ansible/
.       ..      .hosts.swp  hosts       roles

দেখে মনে হচ্ছে না পরিবেশের পরিবর্তনশীল সংজ্ঞায়িত হয়েছে:

$ echo $ANSIBLE_CONFIG
# blank line

উত্তরযোগ্য যতদূর আমি বলতে পারি (স্থানীয় ছাড়া ansible.cfg, এবং ansibleব্যবহারকারীর ডায়ারে ফোল্ডারে কিছুই নেই ) তবে আমি বিভ্রান্ত হয়ে পড়েছি।

আমি এখানে কী পাচ্ছি না কেউ দয়া করে ব্যাখ্যা করতে পারেন?

উত্তর:


14

আমি যা জানি, সেখান থেকে উত্তরীয় কনফিগারেশন ফাইল ( ansible.cfg) ব্যবহারকারী-স্তরের কনফিগারেশন সেটিংসের জন্য এখানে অবস্থিত হতে পারে:

~/.ansible.cfg

পাশাপাশি সিস্টেম-ওয়াইড কনফিগারেশন এখানে অবস্থিত; যেখানে আপনি বলেছেন যে এই জাতীয় কোনও ফাইল আপনি খুঁজে পাবেন না:

 /etc/ansible/ansible.cfg

যদি কোনওভাবে আপনার সিস্টেমে একাধিক ব্যবহারকারী থাকে, সম্ভবত ~/.ansible.cfgতাদের ভুলে যাওয়া তাদের ব্যবহারকারীর ডিরেক্টরিতে কোনও ভাসমান রয়েছে?

আপনি রাষ্ট্র আপনি এটি ব্যবহার ইনস্টল করা আছে পারে pip, কিন্তু টিক চিহ্ন দেওয়ার Ansible জন্য Homebrew সূত্র , এটা ছিল শুধুমাত্র সম্প্রতি সংস্করণ 1.9.2 থেকে 1.9.3 থেকে আগামী 4 ঠা সেপ্টেম্বর bumped । সুতরাং সম্ভবত আপনি Homebrew মাধ্যমে এটি ইনস্টল?

এবং আপনার প্রধান উদ্বেগ মনে হয় যে এটি ansible.cfgপ্রয়োজনীয় কিনা :

উত্তরযোগ্য যতদূর আমি বলতে পারি (স্থানীয় ছাড়া ansible.cfg, এবং ansibleব্যবহারকারীর ডায়ারে ফোল্ডারে কিছুই নেই ) তবে আমি বিভ্রান্ত হয়ে পড়েছি।

আমি এখানে কী পাচ্ছি না কেউ দয়া করে ব্যাখ্যা করতে পারেন?

হ্যাঁ, এটি কোনও কনফিগারেশন ছাড়াই কাজ করা উচিত। বেশিরভাগ সফ্টওয়্যারটির জন্য সমস্ত কনফিগার ফাইলই মূল সিস্টেম ডিফল্টকে ওভাররাইড করে। সুতরাং যদি ansible.cfgঅনুপস্থিত থাকে তবে উত্তরযোগ্য এখনও কাজ করতে পারে তবে কেবলমাত্র মূল সিস্টেমের ডিফল্ট ব্যবহার করবে। উত্তরীয়ের অফিসিয়াল ডকুমেন্টেশনে যেমন ব্যাখ্যা করা হয়েছে :

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

পরিবর্তনগুলি একটি কনফিগারেশন ফাইলে তৈরি এবং ব্যবহার করা যায় যা নিম্নলিখিত ক্রমে প্রক্রিয়া করা হবে:

* ANSIBLE_CONFIG (an environment variable)
* ansible.cfg (in the current directory)
* .ansible.cfg (in the home directory)
* /etc/ansible/ansible.cfg

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

ভাল কল. এটি হোমব্রিউয়ের মাধ্যমে ইনস্টল করা হয়নি, তবে এটি সংস্করণটি ছিল 1.9.2। এই মুহুর্তে
পাইপের

এখন ১.৯.৩ এ তবে এখনও উপরের যে কোনও একটিতে কনফিগারেশন ডিরেক্টরি খুঁজে পাচ্ছেন না। আছে ~/.ansible/cpএবং /etc/ansible/একই বিষয়বস্তু সহ।
মাইকিএলএল

ধন্যবাদ। বোধ হয়। আমি কেবল নিশ্চিত ছিলাম না যে স্টক কনফিগারেশন সাধারণত রেফারেন্সযুক্ত ansible.cfgফাইলগুলির মধ্যে একটিতে সঞ্চয় করা হয় ।
মাইকিএলএল

1
@ মাইকেলএল নাহ, এটি নিয়ে চিন্তা করবেন না। আমার শেষ সম্পাদনাটি যখন আমি অবশেষে আপনার উদ্বেগগুলি বুঝতে পেরেছিলাম। আমি সত্যই এমন একটি সফটওয়্যারটির টুকরো সম্পর্কে ভাবতে পারি না যা "আমার মূল খেলাপি থাকবে, তবে যদি আমি কোনও ব্যবহারকারী কনফিগারেশন ফাইল পাই যা ডিফল্টগুলিকে ওভাররাইড করবে will" যখন আপনার পুরো সিস্টেমটি কোনও বাহ্যিক কনফিগারেশন ফাইলের উপর নির্ভর করে তখন আপনি যে বড় সুরক্ষা / স্থিতিশীলতার ঝুঁকি নিতে পারেন তা যদি সেই ফাইলটি চলে যায় তবে পুরো সিস্টেমটি ধসে পড়ে? ভাল পরিকল্পনা নয়। খুশি আপনি এখন বুঝতে পারেন যে যদি কনফিগারেশন ফাইলটি অনুপস্থিত থাকে তবে খারাপ কিছু হয় না।
জ্যাকগল্ড

13

homebrewসূত্র স্ট্রিং প্রতিস্থাপন /etc/ansibleমধ্যে constants.pyদিয়ে /usr/local/etc/ansible। আমার কাছে খারাপ জুজুর মতো মনে হচ্ছে।

আমার /usr/local/etc/ansibleপরে ছিল না brew install ansible। তবে, আমি নিশ্চিত করেছিলাম যে আপনি যদি ansible.cfgসেখানে কোনও বৈধতা রাখেন তবে এটি সম্মানিত হবে (আপাতত)।

আমার সুপারিশ:

  1. brewইনস্টল করতে ব্যবহার করবেন না Ansible
  2. আপনার কনফিগারেশন সম্পর্কে সুস্পষ্ট থাকুন যেমন সিস্টেম এনভায়রনমেন্ট গ্লোবালগুলির উপর নির্ভর করে না /etc/ansible/ansible.cfg

কোড রেফার্স:

ব্রিউ উত্তরসূচক ফর্মুলা প্রতিস্থাপন # 475: https://github.com/Homebrew/homebrew/blob/master/Library/Formula/ansible.rb#L475

উত্তরীয় কনস্ট্যান্টস.পি # 61: https://github.com/ansible/ansible/blob/v1.9.3-1/lib/ansible/constants.py#L61


ইউজার স্পেসে হোমব্রিউ কাজ করে তাই অ্যাথথিংগুলি / ইউএসআর / স্থানীয়ের অধীনে থাকে। এটা ঠিকাসে.
গাগারিন

3

ওএসএক্স-এ, আমি পাইপ ব্যবহার করে জবাবদিহিতা ইনস্টল করেছিলাম এবং দেখেছি যে উত্তরযোগ্য সিএফজি / ইত্যাদি / উত্তরযোগ্য বা আমার হোম ডিরেক্টরিতে উপস্থিত নেই।

সূত্র: https://github.com/ansible/ansible/issues/18512

পাইপ সাধারণত কনফিগারেশন ফাইল ইনস্টল করে না এবং উত্তরীয় সহ পাইপ আলাদা নয়। আপনি যদি কেবল উত্তরযোগ্য চেষ্টা করতে চান তবে এটি সাধারণত একটি উত্তরযোগ্য সিএফজি ফাইল ছাড়াই কাজ করে। (আপনার কিছু তালিকা নির্দিষ্ট করতে হবে তবে আপনি চাইলে কোনও ফাইলের চেয়ে কমান্ড লাইনে এটি করতে পারেন)। আপনি যদি মানিয়ে নিতে কোনও নমুনা কনফিগারেশন ফাইল পেতে চান তবে আপনি এটি টার্বল বা উত্স সংগ্রহস্থল থেকে এখানে পেতে পারেন: https://github.com/ansible/ansible/blob/devel/example/ansible.cfg

ইনভেন্টরি ফাইলগুলি এখানে ব্যাখ্যা করা হয়েছে: http://docs.ansible.com/ansible/intro_inventory.html কমান্ড লাইনে ইনভেন্টরির জন্য হোস্টগুলি নির্দিষ্ট করার পরিবর্তে এই জাতীয় কিছু করুন:

ansible -i 'host1,host2,host3'  all -m command -a 'hostname'

আপনি যদি কমান্ড লাইনের মাধ্যমে কোনও একক হোস্টকে নির্দিষ্ট করতে চান তবে ইনভেন্টরি স্ট্রিংয়ে একটি ট্রেলিং কমা ব্যবহার করুন:

ansible -i 'host1,' all -m command -a 'hostname'

2

আমি খুঁজে পেয়েছি যে হোমব্রিউ একটি /etc/ansibleডিরেক্টরি তৈরি করবে না , এটি কোনও কনফিগারেশন বা হোস্ট ফাইলও তৈরি করবে না। তবে আপনি যদি /etc/ansibleডিরেক্টরিটি তৈরি করেন এবং গিথুব সংগ্রহস্থল থেকে কনফিগারেশনটি ডিরেক্টরিতে অনুলিপি করেন তবে এটি কনফিগারেশন /etc/ansibleহিসাবে স্বীকৃত হবে।

আপনি সেই কনফিগারেশনে যেতে চান এবং লাইনটি অসুবিধা করতে পারেন যা আবিষ্কারের অবস্থানটিও নির্দিষ্ট করে:

ইনভেন্টরি = / ইত্যাদি / উত্তরযোগ্য / হোস্ট

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


/ usr / স্থানীয় / ইত্যাদি / স্বীকৃত ছিল না। / ইত্যাদি / উত্তরযোগ্য / ডিরেক্টরি তৈরি করার চেষ্টা করেছে এবং হোস্টগুলি সরিয়ে নিয়েছে এবং উত্তরযোগ্য সিএফজি ভাল কাজ করেছে!
aelkz
আমাদের সাইট ব্যবহার করে, আপনি স্বীকার করেছেন যে আপনি আমাদের কুকি নীতি এবং গোপনীয়তা নীতিটি পড়েছেন এবং বুঝতে পেরেছেন ।
Licensed under cc by-sa 3.0 with attribution required.