এক্সকোড / ম্যাক ওএস-এ কোনও প্রশাসকবিহীন বিকাশকারীকে অনুমোদন দিন


109

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

"বিকাশকারী সরঞ্জামসমূহ" গোষ্ঠীতে কোনও ব্যবহারকারীর নাম এবং পাসওয়ার্ড টাইপ করুন বিকাশকারী সরঞ্জামগুলিকে পরিবর্তন করার অনুমতি দিতে "

আমি অ্যাডমিনের ব্যবহারকারীর নাম / পাসওয়ার্ডটি জানার পরে এটি বিরক্তিকর (যদিও লগইন প্রতি কেবল একবার প্রয়োজন)।

বিকাশকারী সরঞ্জামগুলির অ্যাক্সেস অ্যাপ্লিকেশন gdb-i386-আপেল-ডারউইন থেকে "system.privilege.taskport.debug" এর অধিকার চেয়েছে।

এই কাছাকাছি সেরা উপায় কি?

উত্তর:


134

আপনাকে এই _developerগ্রুপে আপনার ওএস এক্স ব্যবহারকারীর নাম যুক্ত করতে হবে । আরও তথ্যের জন্য এই থ্রেডের পোস্টগুলি দেখুন । নিম্নলিখিত কমান্ডটি কৌশলটি করা উচিত:

sudo dscl . append /Groups/_developer GroupMembership <username>

1
এই সমাধানটি আমার জন্য প্রায় 10 মিনিটের জন্য কাজ করে এবং তারপরে কোনও কারণে এটি আবার আমার ব্যবহারকারীর নাম / পাসওয়ার্ড জিজ্ঞাসা করতে শুরু করে। আমি আবার এটি টার্মিনালে টাইপ করার চেষ্টা করেছি, তবে এটি আর সাড়া দেয় না।
জুই

এটি আমার পক্ষে কাজ করে এবং এখন অবধি আমার কোনও সমস্যা নেই। কেবল রেফারেন্সের জন্য প্রখ্যাত।
eonil

9
আমি -u <name-of-account-with-root-access>বিকল্পগুলি যোগ না করা পর্যন্ত এই সমাধানটি আমার পক্ষে কার্যকর হয়নি । সুতরাং আমার সম্পূর্ণ কমান্ডটি ছিলdscl -u <root-account> . append /Groups/_developer GroupMembership <my-account>
dsjoerg

1
আপনি যদি ধারাবাহিক ইন্টিগ্রেশন স্ক্রিপ্টে এই লাইনটি যুক্ত করেন তবে 'সংযোজন' পরিবর্তে 'সংযোজন' ব্যবহার করা উচিত। এটি ইতিমধ্যে বিদ্যমান থাকলে মার্জ এটি যুক্ত করবে না। আরও তথ্যের জন্য 'ম্যান ডিএসসিএল' দেখুন।
রাশ ভ্যান বার্ট

1
এটি আমাকে গ্রুপে যুক্ত করার জন্য কাজ করেছিল তবে আমি @ খালদারের পরামর্শটি প্রথমে কোনও রুট অ্যাকাউন্টে মামলা করার পরে ব্যবহার করেছি।
বি01

24

অবশেষে, আমি DevToolsSecurity -enableটার্মিনাল ব্যবহার করে এ থেকে মুক্তি পেতে সক্ষম হয়েছি । @ জোয়ার_আট_কর্মকে ধন্যবাদ !

এফওয়াইআই : আমি এক্সকোড ৪.৩ এ আছি এবং প্রথমবারের মতো চালু হওয়ার সময় অক্ষম বোতামটি টিপলাম, কেন জিজ্ঞাসা করবেন না, কেবল আমার কুকুরটি আমাকে এটি করতে বাধ্য করল না :)


2
ডেভটুলসিকিউরিটির উল্লেখ করার জন্য +1। আমার এমন ধারণা ছিল না যে এ জাতীয় সরঞ্জাম উপস্থিত রয়েছে। আমার বিপরীত সমস্যা ছিল, আমি আবার এটি অক্ষম করতে চেয়েছিলাম এবং এই সরঞ্জামটির জন্য আমি অবশেষে সক্ষম হয়েছি :) কেবলমাত্র এটির -enableসাথে প্রতিস্থাপন করা হয়েছিল -disableএবং এটি প্রত্যাশার সাথে কাজ করে!
মেকি

1
এই আদেশের কোনও প্রভাব নেই বলে মনে হচ্ছে। এক্সকোড ৪.৩ এর জন্য এখনও-ডিবেবলার গ্রুপের কারও কাছ থেকে প্রমাণীকরণের প্রয়োজন - নির্বিশেষযোগ্য--সক্ষমযোগ্য ব্যবহারযোগ্য কিনা।
wcochran

শুধু নির্মল, এই পদক্ষেপ হল, কিছু ক্ষেত্রে অন্তত ছাড়াও ব্যবহারকারীর সাথে _developer দলে যোগ করার জন্যdscl -u <root-account> . append /Groups/_developer GroupMembership <my-account>
Marmoy

XCode 7.3 দিয়ে ম্যাকস "এল ক্যাপ্টেন" তে কাজ করছে বলে মনে হচ্ছে না। @ খেলাদার সমাধান আমার পক্ষে কাজ করেছে।
ল্যারিক্স ডেসিডুয়া

9
$ dseditgroup -o edit -u <adminusername> -t user -a <developerusername> _developer

5
আমার নম্র মতামত অনুসারে, এই উত্তরটি এটি কী করে তা আরও কিছুটা ব্যাখ্যা করে সত্যই উপকৃত হতে পারে। এটি এমন নয় যে আমি আমার সিস্টেমে sudo rm -rf / টাইপ করতে পছন্দ করি না তবে আপনি আমার বক্তব্যটি পেয়ে যান। : ডি
খেলদার

8

আপনার নিজেকে বিকাশকারী সরঞ্জাম গোষ্ঠীতে যুক্ত করা উচিত। ওএস এক্সের একটি গোষ্ঠীতে ব্যবহারকারী যুক্ত করার জন্য সাধারণ বাক্য গঠনটি নিম্নরূপ:

sudo dscl . append /Groups/<group> GroupMembership <username>

আমি বিশ্বাস করি দেবটুলস গ্রুপের নাম _developer


3

নেদ Deily এর সমাধান প্রদান করা আপনার ব্যবহারকারী অনুমোদিত হয়, পুরোপুরি কাজ করে জরিমানা sudo

যদি তিনি না suহন তবে আপনি কোনও প্রশাসকের অ্যাকাউন্টে যেতে পারেন , তারপরে তার ব্যবহার করুন dscl . append /Groups/_developer GroupMembership $user, যেখানে $ ব্যবহারকারীর নাম ব্যবহারকারীর নাম।

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

সুতরাং, এই আদেশটি প্রবেশ করার পরে, আপনার এটির প্রুফ-চেক করা উচিত। এটি will ব্যবহারকারী $ গ্রুপে রয়েছে কিনা তা পরীক্ষা করে দেখাবে, যেখানে ভেরিয়েবলগুলি যথাক্রমে ব্যবহারকারীর নাম এবং গোষ্ঠীর নাম উপস্থাপন করে।

dsmemberutil checkmembership -U $user -G $group

এই কমান্ডটি হয় বার্তাটি মুদ্রণ করবে user is not a member of the groupবা user is a member of the group


2
ধন্যবাদ! এটি আমার পক্ষে কাজ করেছিল! ওএস এক্স ম্যাভেরিক্সের জন্য যে কমান্ডগুলি কাজ করেছিল dscl . append /Groups/_developer GroupMembership username dsmemberutil checkmembership -U "username goes here" -G "group goes here"
সেগুলি

2

উত্তর @ স্টেসি সিম্পসন দ্বারা প্রস্তাবিত:

আমরা এই থ্রেডগুলিতে বর্ণিত সমস্যাটির সাথে লড়াই করছি এবং রেজুলেশনের কোনওটিই কাজ করছে বলে মনে হচ্ছে না:

আমি যেমন নতুন তেমন, আমি কোনও থ্রেডে পোস্ট করতে পারি না। (প্রথমটি আসলে বন্ধ হয়ে গেছে এবং আমি স্থানীয়করণের যুক্তিতে একমত নই ...)

যাইহোক, আমরা অ্যাপলস্ক্রিপ্ট ব্যবহার করে এমন একটি কাজ তৈরি করেছি যাতে ভাবেন লোকেরা এতে আগ্রহী হতে পারে below

osascript <script name> <password> &

লিপিটি এখানে:

on run argv
    # Delay for 10 seconds as this script runs asynchronously to the automation process and is kicked off first.
    delay 10

    # Inspect all running processes
    tell application "System Events"
        set ProcessList to name of every process
        # Determine if authentication is being requested
        if "SecurityAgent" is in ProcessList then
            # Bring this dialogue to the front
            tell application "SecurityAgent" to activate
            # Enter provided password
            keystroke item 1 of argv
            keystroke return
        end if
    end tell
end run

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

আশা করি, উত্তর পোস্ট করার জন্য আমি পর্যাপ্ত পয়েন্ট পেতে পারি; বা, কেউ এই প্রশ্নটি অরক্ষিত করতে পারে। শুভেচ্ছা।


2

প্রকল্পটি সংকলন করার সময় ম্যাক ওএস এক্স এর আরও ভাল সমাধান
সিস্টেম কীচেন ব্যবহার করতে চায়

  1. কীচেন অ্যাক্সেস খুলুন।
  2. উপরের-বাম কোণে, কীচেনটি আনলক করুন (যদি এটি লক থাকে)।
  3. উপরের-বাম কোণ থেকে সিস্টেম কীচেনটি চয়ন করুন।
  4. আপনার বিতরণ শংসাপত্রটি আবিষ্কার করুন এবং প্রকাশের ত্রিভুজটি ক্লিক করুন।
  5. আপনার বিতরণ শংসাপত্রের অধীনে 'প্রাইভেট কী' তে ডাবল ক্লিক করুন।
  6. পপআপে, অ্যাক্সেস নিয়ন্ত্রণ ট্যাবে যান।
  7. 'সমস্ত অ্যাপ্লিকেশনকে এই আইটেমটি অ্যাক্সেস করার অনুমতি দিন' নির্বাচন করুন।
  8. পরিবর্তনগুলি সংরক্ষণ করুন।
  9. সমস্ত উইন্ডো বন্ধ করুন।
  10. অ্যাপ্লিকেশন চালান।

1

আমার জন্য, আমি নীচের সাহায্যে নিম্নলিখিত থ্রেডে পরামর্শটি পেয়েছি:

"বিকাশকারী সরঞ্জামগুলির অ্যাক্সেস বন্ধ করতে ডিবাগিং চালিয়ে যেতে অন্য প্রক্রিয়াটির নিয়ন্ত্রণ নেওয়া দরকার" সতর্কতা

এটি টার্মিনাল অ্যাপ্লিকেশনটিতে নিম্নলিখিত কমান্ডটি চালনার পরামর্শ দিয়েছে :

sudo /usr/sbin/DevToolsSecurity --enable

1

আমি স্নো চিতাবাঘে আছি এবং এটি আমার পক্ষে যথেষ্ট কাজ করে না। তবে নিম্নলিখিত পদ্ধতিটি কাজ করেছে:

  1. অ্যাকাউন্টগুলির অধীনে "ব্যবহারকারীকে এই কম্পিউটার পরিচালনার অনুমতি দিন" টিক দিয়ে প্রথমে প্রশাসকের সুবিধাসমূহের সাথে অন্য অ্যাকাউন্ট যুক্ত করা হয়েছে, উদাহরণস্বরূপ ব্যবহারকারীর নাম পরীক্ষার সাথে একটি অ্যাকাউন্ট
  2. লগ ইন পরীক্ষা অ্যাকাউন্ট
  3. এক্সকোড চালু করেছে, সংকলন করেছে এবং আমার আইফোন প্রকল্পটি চালাচ্ছে। ঠিক আছে, অনুমতি সম্পর্কিত কোনও ত্রুটি নিক্ষেপ করা হয়নি
  4. পরীক্ষার অ্যাকাউন্ট থেকে লগ আউট
  5. প্রশাসকের সুবিধার্থে অন্য অ্যাকাউন্টে লগ ইন
  6. অ্যাকাউন্টের অধীনে "ব্যবহারকারীকে এই কম্পিউটার পরিচালনার অনুমতি দিন" থেকে টিকটি সরিয়ে পরীক্ষার অ্যাকাউন্ট থেকে প্রশাসক প্রিভিলিজেসগুলি কেড়ে নিয়েছে
  7. পরীক্ষার অ্যাকাউন্টে আবার লগ ইন
  8. আইফোন প্রকল্প ডিরেক্টরি মুছে ফেলা হয়েছে এবং পুনরায় সংগ্রহস্থল থেকে চেক আউট করেছেন (আমার ক্ষেত্রে এসএনএন)
  9. এক্সকোড চালু করেছে, সংকলন করেছে এবং প্রকল্পটি চালাচ্ছে। আমি কোনও ত্রুটি পাই নি এবং আইফোন সিমুলেটরে অ্যাপ্লিকেশনটি ভালভাবে চলেছিল।

0

আপনি চালানোর পরে:

sudo dscl . append /Groups/_developer GroupMembership <username>

উপরের উত্তর অনুসারে, আপনাকে এখনও নিজের পাসওয়ার্ড দেওয়ার জন্য অনুরোধ করা যেতে পারে:

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

এটির অর্থ হ'ল যে কোনও ডেডোপভারার গ্রুপ মেম্বার ব্যবহারকারী তাই আপনার নন-অ্যাডমিন ব্যবহারকারী / পাসওয়ার্ডটি এখানে কাজ করবে তবে এটি সম্পূর্ণরূপে মুক্তি পেতে (পুনরায় বুট করার পরে কোনও অনুরোধ জানাবে না) আপনাকে চালাতে হবে:

sudo DevToolsSecurity -enable

(অ্যাডমিন ব্যবহারকারী হিসাবে এটি সুডো দিয়ে চালানো / মূল হিসাবে এটি তৈরি করবে যাতে আপনি গুই পাসওয়ার্ড প্রম্পট ছাড়াই দূরবর্তীভাবে এটি করতে পারেন)

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