আমি একটি স্ক্রিপ্ট ডাউনলোড করতে চাই: http://dl.roidbox.com/u/11210438/flockonus-stack.sh থেকে এবং এটি সম্পাদন করুন। আমার অনুমান, এটির নামকরণ করে উইজেট ব্যবহার করা, এটি chmod করুন এবং চালিত করুন।
উবুন্টুতে এটি করার জন্য আদেশগুলি কী কী?
আমি একটি স্ক্রিপ্ট ডাউনলোড করতে চাই: http://dl.roidbox.com/u/11210438/flockonus-stack.sh থেকে এবং এটি সম্পাদন করুন। আমার অনুমান, এটির নামকরণ করে উইজেট ব্যবহার করা, এটি chmod করুন এবং চালিত করুন।
উবুন্টুতে এটি করার জন্য আদেশগুলি কী কী?
উত্তর:
সাবধান
স্ক্রিপ্টটি চালানোর আগে, আপনি যে এটি লিখেছেন তার উপর কি বিশ্বাস রাখেন?
উদাহরণস্বরূপ, আপনি কি স্ক্রিপ্টটি এটি ধারণ করবে বলে আশা করেছিলেন?
echo "brain1" > /etc/hostname
এটি আপনার হোস্টের নাম পরিবর্তন করার চেষ্টা করবে।
ভবিষ্যতের রেফারেন্সের জন্য, স্ক্রিপ্টটি যাচাই করার পরে যদি সঠিক হয় এবং দূষিত না হয় তবে আপনি এটি একটি লাইনে এটি চালাতে পারেন:
wget -O - http://dl.dropbox.com/u/11210438/flockonus-stack.sh | bash
তবে এটি আলাদাভাবে ডাউনলোড করুন এবং এটি প্রথমবার চালানোর আগে পড়ুন।
এছাড়াও নোট করুন যে ডাউনলোড করা স্ক্রিপ্টের অভ্যন্তরে ইন্টারেক্টিভ প্রম্পটগুলি এই পদ্ধতিটি ব্যবহার করে সঠিকভাবে কাজ করতে পারে না।
apt-get install
লাইন? যদি apt-get
কোনও অতিরিক্ত নির্ভরতা ইনস্টল করা হয় তবে এটি আপনাকে জিজ্ঞাসা করবে এবং এটি না পারলে এটি নিরাপদ হয়ে প্রস্থান করবে। হয় কমান্ড লাইন আর্গুমেন্টে সমস্ত নির্ভরযোগ্য প্যাকেজ যুক্ত করুন -y
, বা যুক্ত করার কথা বিবেচনা করুন , যেমনapt-get -y install...
অ-ইন্টারেক্টিভ স্ক্রিপ্টগুলি
wget -O - http://website.com/my-script.sh | bash
নোট করুন যে এই পদ্ধতিটি ব্যবহার করার সময়, ইন্টারেক্টিভ স্ক্রিপ্টগুলি কাজ করবে না।
ইন্টারেক্টিভ স্ক্রিপ্টস
ইন্টারেক্টিভ স্ক্রিপ্টগুলি কাজ করার জন্য, আপনি এটি ব্যবহার করতে পারেন:
bash <(wget -qO- http://website.com/my-script.sh)
ইন্টারেক্টিভ স্ক্রিপ্টগুলি যেগুলি রুট হিসাবে চালানো দরকার
সতর্কতা: এটি অত্যন্ত বিপজ্জনক। প্রস্তাবিত নয়।
sudo su -c "bash <(wget -qO- http://website.com/my-script.sh)" root
নোট করুন যেহেতু আপনি সাধারণ ব্যবহার করতে পারবেন না sudo bash
যেহেতু ব্যবহারটি <(...)
ভার্চুয়াল ফাইল তৈরি করবে এবং এর ফাইল বর্ণনাকারী রুট ব্যাশের উদাহরণ থেকে অ্যাক্সেসযোগ্য হবে না। এটি ভার্চুয়াল ফাইলটি পড়ার প্রয়োজন একই ব্যবহারকারীর উপর কার্যকর করা উচিত, সুতরাং এটি রুট ব্যবহারকারীদের শেলের মধ্যে এটির নিজস্ব কমান্ড হিসাবে প্রেরণ করতে হবে।
এই স্ক্রিপ্টটি আমার কাছ থেকে, এটি নিরাপদ .. ওয়ান-লাইনার পছন্দ করেছে, তবে, এর কিছু ইন্টারেক্টিভ লাইন রয়েছে যা চলেনি .. ডুনো কেন?
যখন dpkg চালায়, অ্যাপ্ট-গেট দ্বারা কল করা হয়, এটি স্টিডিনকে ফ্লাশ করে। আপনি যদি কোনও কমান্ড ব্যবহার করেন curl blah | bash
তবে মূলত আপনি পৃষ্ঠার বিষয়বস্তুগুলি STDIN এর মাধ্যমে ব্যাশে পাঠাচ্ছেন। যদি আপনার কমান্ডগুলির কোনও একটি প্রস্তুত হয়, তবে রান করুন, অন্য সমস্ত কিছুই সমাপ্ত হবে।
কৌশলটি হ'ল এইভাবে একটি কমান্ড ব্যবহার করা apt-get install --yes denyhosts </dev/null
। এটি এপটি-গেটকে অন্য একটি ইনপুট দেয় এবং এটি আপনার স্ক্রিপ্টের বাকী পরিবর্তে কেবল / ডিভ / নালকে ফ্লাশ করে।
আপনি যদি রিমোট স্ক্রিপ্টের মাধ্যমে কিছু ইনস্টল করার সম্পূর্ণ উদাহরণ দেখতে চান তবে অস্বীকারকারীদের স্থাপনের জন্য আপনি এই স্ক্রিপ্টটি দেখতে চাইতে পারেন
রেকর্ডের জন্য, আমি এর জন্য উইজেটের চেয়ে কার্ল পছন্দ করি তবে উইজেটটিও ঠিক থাকতে হবে।
এই সমস্ত উদাহরণ একটি মোটামুটি গুরুত্বপূর্ণ পয়েন্ট অনুপস্থিত। আপনি যদি ইউআরএল ব্যবহার করেন http://dl.dropbox.com/u/11210438/flockonus-stack.sh
তবে প্রতিবার এটি ডাউনলোড করার সময় আপনাকে স্ক্রিপ্টটি নিরীক্ষণ করতে হবে কারণ এটি আপনার এবং ড্রপবক্সের মধ্যে নেটওয়ার্কের পথে থাকা যে কোনও ব্যক্তির দ্বারা সংশোধন করা যেতে পারে। আপনি যদি http s : //dl.roidbox.com/u/11210438/flockonus-stack.sh এ স্যুইচ করেন তবে আপনার কাছে নিরাপত্তাহীনতার উত্স থাকবে না।
(ড্রপবক্স HTTP URL টি https এ পুনর্নির্দেশের চেষ্টা করে তবে কোনও নেটওয়ার্ক আক্রমণের ক্ষেত্রে উইজেট কখনই আসল ড্রপবক্সের সাথে কথা বলতে পারে না এবং পুনর্নির্দেশটি কখনই দেখতে পাবে না)
আপনি যেমন উইজেটের সাথে নির্দিষ্ট করেছেন ঠিক তেমন ডাউনলোড করার চেষ্টা করুন এবং তারপরে এটি সরাসরি চালিত করুন। আপনি যে স্ক্রিপ্ট ইত্যাদি ডাউনলোড করতে চান তার জন্য আপনি অভিনবতা পেতে পারেন এবং ভেরিয়েবলগুলি ব্যবহার করতে পারেন, তবে এটি কৌশলটি করবে
উদাহরণ স্বরূপ:
!#/bin/bash
#Change to temp directory
cd /tmp
#Download file using wget
wget http://dl.dropbox.com/u/11210438/flockonus-stack.sh
#Execute the file
sh flockonus-stack.sh
echo "brain1" > /etc/hostname
ঠিক হিসাবে সহজে হতে পারেrm -rf /
।