আমি মাত্র একটি chmod -x chmod করেছি did


27

তাই আমি একটি chmod -x chmod। আমি কীভাবে এই সমস্যার সমাধান করতে পারি? আমি কীভাবে chmod এ এক্সিকিউটড রাইটস দেব?


10
আপনি দুর্ঘটনাক্রমে পুরো chmod!
— থানাটোস

উত্তর:


43

লিনাক্সে:

/lib/ld-linux.so.2 /bin/chmod +x /bin/chmod

http://www.slideshare.net/cog/chmod-x-chmod


তবে, আমি একই লিঙ্কটি পোস্ট করতে চলেছিলাম :-) তবে আমি ইউনিক্স / লিনাক্স স্টাফে নতুন থাকায় নিজেকে পড়ছিলাম !!!
— রিহাতুম

2
একটি 64-বিট ডিস্ট্রোতে, আপনাকে /lib64/ld-linux-x86-64.so.2পরিবর্তে এটি ব্যবহার করতে হতে পারে । ldd /bin/chmodকোন লিঙ্কার চালাতে হবে তার ঠিক তালিকা দেওয়া উচিত।
— গোল্ডপিউডো

আমি একটি ন্যূনতম প্রোগ্রাম লিখব যা chmod (2) ব্যবহার করে তবে এটি শীতল
— অ্যাডামো

1
@ স্টেফান: থেকে man ld-linux.so: "ld.so [এবং ld-linux.so] একটি প্রোগ্রামের জন্য প্রয়োজনীয় ভাগ করা লাইব্রেরিগুলি লোড করে, প্রোগ্রামটি চালানোর জন্য প্রস্তুত করে, এবং তারপরে এটি চালায়।" ( ld.soজন্য a.outবিন্যাস চালু করা এবং ld-linux.soELF বিন্যাস জন্য।)
— পরবর্তী ঘোষণা না হওয়া পর্যন্ত বিরাম দেওয়া।

1
@ স্টেফান: কার্নেলটি কীভাবে ডায়নামিকালি-লিংকড এক্সিকিউটেবলগুলি লোড করতে এবং চালিত করতে পারে তা সত্যই জানে না, কারণ এটি অত্যন্ত জটিল এবং কার্নেল নয়, গ্লিবসি অনুসরণ করে। ld-linux.soক্রম নির্বাহযোগ্য / গ্রন্থাগার হাইব্রিড, স্থিতিযুক্তভাবে সংযুক্ত, সাজানো-এর ব্যবহারকারীর স্পেসে চালিত হয় এবং গতিশীল-সংযুক্ত এক্সিকিউটেবল এবং তাদের সমস্ত নির্ভরতা লোড করার জন্য দায়বদ্ধ, তারপরে সেগুলি চালনা করে।
— জুলিয়ানো


18

এটি নির্ভর করে যে কোনও গন্তব্য ফাইলের অনুলিপিগুলি অনুলিপি করার সময় উত্স ফাইলের চেয়ে সংরক্ষণ করা হয়। আমরা এর অনুমতিগুলি "ধার" করছি ls:

cp /bin/ls /tmp/chmod.tmp
cp /bin/chmod /tmp/chmod.tmp
mv /tmp/chmod.tmp /bin/chmod

আমি মনে করি যে আপনার প্রথমটি cp-p পতাকাটি চালু রাখা উচিত
— রিকিং

@ রিকিং: এই উদ্দেশ্যে এটি প্রয়োজনীয় নয়।
— পরবর্তী বিজ্ঞপ্তি না দেওয়া পর্যন্ত বিরতি দেওয়া হয়েছে।

এটি যে সমাধানটি আমি নিয়ে এসেছি তার অনুরূপ, তবে cpএক্সিকিউটেবলকে আইএনਗ করার পরে , আমি কেবল টেম্প ফাইলের catবিষয়বস্তু চাই না chmod।
— বানান



5

এটি অদ্ভুত ... আমি কিছুদিন আগে কারও টুইটের মাধ্যমে এরকম কিছু দেখেছি ...

http://www.slideshare.net/cog/chmod-x-chmod


অন্য সাইটে লিঙ্কগুলি সহায়ক নয় কারণ লিঙ্কটি কোনও এক সময় ভাঙা হবে। এটি কাউকে উত্তর গুগল বলার মতো।
— ফিল হ্যানেন্ট

@ ফিল হ্যানেন্ট: আমি এই স্লাইডশোটিও মাত্র তিন দিন আগে দেখেছি, তাই ওপিকে যদি সেখানে আবেদনকারীদের মধ্যে একজন হত তবে এটি আমার প্রথম চিন্তা ছিল।
— বোল্ডউইন

একই, কিছুদিন আগে
— সবেমাত্র রেডডিতে

4

আপনি কি এমন কোনও সিস্টেমে থাকা উচিত যেখানে /bin/chmodডায়নামিক লিঙ্কার দ্বারা লোড করা যায় না:

# /bin/mv /bin/chmod /bin/chmod.tmp
# install -p -m 755 /bin/chmod.tmp /bin/chmod

এটি আমার ম্যাকোস এক্স সিস্টেমে কাজ করে।


2

/ উদ্ধার / chmod 555 / বিন / chmod

আমি মনে করি আপনি mtree ব্যবহার করতে পারে।


এটি আমার প্রিয় সমাধান হবে। দুর্ভাগ্যক্রমে এটি লিনাক্সের সাথে কাজ করে না।

2

আমি সন্দেহ করি যে এটি আসল প্রশ্ন নয়: http://www.slideshare.net/cog/chmod-x-chmod

  • পুনরায় ইনস্টল করুন: সিউডো ইনস্টল করুন - পুনরায় ইনস্টল করুন কোরিউটিলগুলি
  • perl -e 'chmod 0755, "chmod"'
  • স্লাইডে আরও উদাহরণ

1

একটি নতুন chmod তৈরি করুন এবং এটি আসলটির জন্য ব্যবহার করুন

umask 000
cat chmod > ~/my-chmod
~/my-chmod a+x chmod

000 এর একটি উমাস্ক সেট করা যখন কোনও ফাইল তৈরি হয় তখন তা কার্যকর করার অনুমতি দেয় না। এটি সর্বোত্তমভাবে rw-rw-rw- অনুমতি পাবে।
— ব্যারি ব্রাউন

2
@ ব্যারি: এটি আসলে ক্রিয়েট (2) / ওপেন (2) / এমকেডির (2) / ইত্যাদিতে পাস মোডের উপর নির্ভর করে। যদি উমাস্ক == 0 এবং ফাইলটি তৈরি করে এমন সিস্টেমে মোডের জন্য 0777 দেওয়া হয় তবে ফাইলটিতে এক্সিকিউট বিট চালু করা হবে। উদাহরণস্বরূপ, "এক্সিকিউটেবল ফাইল" লেখার সময় লিকার / সংকলকগণ 0777 পাস করে (যেমন mode 777 মোড সহ (umask 000;gcc -o foo foo.c)একটি উত্পাদন করবে foo)। যাইহোক, অনেকগুলি (সর্বাধিক?) শেলগুলি পুনঃনির্দেশের জন্য ফাইলগুলি খুলতে / তৈরি করার সময় 0666 পাস করে, যার অর্থ এই উত্তরটি অনেক শেলের নীচে কাজ করে না।
— ক্রিস জনসেন
আমাদের সাইট ব্যবহার করে, আপনি স্বীকার করেছেন যে আপনি আমাদের কুকি নীতি এবং গোপনীয়তা নীতিটি পড়েছেন এবং বুঝতে পেরেছেন ।
Licensed under cc by-sa 3.0 with attribution required.