'ইনস্টল' কমান্ডের উদ্দেশ্য কী?


49

আমি installকমান্ডটি অনেক মেকফাইলগুলিতে ব্যবহার করেছি এবং এর অস্তিত্ব এবং ব্যবহার একধরণের বিভ্রান্তিকর। ম্যানেজগুলি থেকে, এটি cpকম বৈশিষ্ট্যযুক্ত একটি নকআফের মতো মনে হয় , তবে আমি ধরে নিয়েছি এটির কোনও সুবিধা না হলে এটি ব্যবহৃত হত না cp। চুক্তিটি কি ছিল?

উত্তর:


50

installকেবল ফাইলগুলি অনুলিপি করে না তবে এর মালিকানা এবং অনুমতিগুলিও পরিবর্তন করে এবং এক্সিকিউটেবলের থেকে ডিবাগিং প্রতীকগুলি অপসারণ করে। এটি একত্রিত cpকরে chown, chmodএবং strip। এটি প্রাথমিক কাজের একটি সাধারণ ক্রম সাধন করার জন্য এটি একটি সুবিধাজনক উচ্চ-স্তরের সরঞ্জাম।

একটি সুবিধা installওভার cpএক্সেকিউটেবল ইনস্টল করার জন্য যে যদি লক্ষ্য আগে থেকেই আছে, এটা লক্ষ্য ফাইল সরিয়ে ফেলা হবে এবং একটি নতুন সৃষ্টি করে। এটি অ্যাক্সেস নিয়ন্ত্রণ তালিকাগুলি এবং ক্ষমতাগুলির মতো যে কোনও বর্তমান বৈশিষ্ট্যগুলি থেকে মুক্তি পেয়ে যায়, যা উভয়টিকে একটি উত্সাহ হিসাবে এবং একটি খারাপ দিক হিসাবে দেখা যায়। এক্সিকিউটেবলকে আপডেট করার সময়, যদি এই এক্সিকিউটেবলের চলমান দৃষ্টান্তগুলি থাকে তবে তারা অকার্যকরভাবে চলমান রাখে। বিপরীতে, cpযদি ফাইল থাকে তবে সেখানে আপডেট করুন। বেশিরভাগ ইউনিক্স ভেরিয়েন্টে, এটি EBUSY¹ ত্রুটিটি দিয়ে ব্যর্থ হয় যদি লক্ষ্যটি চালানো কার্যকর হয়; কিছুতে এটি লক্ষ্যটিকে ক্র্যাশ করতে পারে কারণ এটি কোড বিভাগগুলি গতিশীলভাবে লোড করে এবং ফাইলটি পরিবর্তন করে অযৌক্তিক কোড লোড হওয়ার কারণ ঘটায়।

installএটি একটি বিএসডি কমান্ড ( ৪.২ বিবিএসডি যুক্ত , অর্থাৎ ১৯৮০ এর দশকের গোড়ার দিকে)। এটি পসিক্স গ্রহণ করে নি।

"পাঠ্য ফাইল ব্যস্ত"। এই প্রসঙ্গে, "পাঠ্য ফাইল" এর অর্থ অস্পষ্ট inaryতিহাসিক কারণে "বাইনারি এক্সিকিউটেবল ফাইল" ।


গুরুত্বপূর্ণ নোট (যতদূর আমি এটা বুঝতে পারেন) যে এটি সম্মিলন rmসহ cp। এর অর্থ এটি rmপ্রথমে লিঙ্কযুক্ত ( ) এর লিঙ্কে ব্যবহৃত ফাইলগুলি ওভাররাইট করতে পারে । cpএকা একটি ত্রুটি দিতে হবে।
Code_fodder

10

এটি কোনও একক কমান্ডে ফাইল অনুলিপি করার সময় বা ডিরেক্টরি তৈরি করার সময় কোনও ফাইলের ডিরেক্টরিতে বা ডিরেক্টরিতে মালিকানা এবং অনুমতিগুলি চালিত করার একটি প্রমিত পদ্ধতি সরবরাহ করে।


9
এটি পারমাণবিক নয়। পারমাণবিক অর্থ অন্যান্য প্রক্রিয়াগুলিতে দৃশ্যমান কোনও মধ্যবর্তী রাষ্ট্র নেই। installএকটি অনুলিপি chown এবং chmod অনুসরণ করে, সমস্ত পৃথক syscall, এবং জায়গায় নাম পরিবর্তন করে না (কমপক্ষে কোর্টিলস 8.13 হিসাবে GNU সংস্করণ না) ব্যবহার করে। আপনি যদি ধরে নেন যে এগুলি সবই পরমাণুভাবে ঘটে থাকে তবে আপনি একটি বাজে চমক পেতে পারেন।

3

সঙ্গে installকমান্ড আমরা ইচ্ছা অনুমতিসহ ফাইল অনুলিপি করতে পারেন

উদাহরণস্বরূপ যা বেশিরভাগ ldap সেট আপ করার সময় ব্যবহার করে

install -o ldap -g ldap /etc/openldap/DB_CONFIG_EXAMPLE  /var/lib/ldap/DB_CONFIG

এটি সংরক্ষণ আমাদের করছেন chown ldap. /var/lib/ldap/DB_CONFIG, যদি আপনি ব্যবহার অনুলিপি cpতাহলে আপনি প্রয়োজন chownএই দৃশ্যকল্প মধ্যে


1

ম্যান পৃষ্ঠাটি দেখুন install:

$ man install

উদ্ধৃতাংশ

SYNOPSIS
       install [OPTION]... [-T] SOURCE DEST
       install [OPTION]... SOURCE... DIRECTORY
       install [OPTION]... -t DIRECTORY SOURCE...
       install [OPTION]... -d DIRECTORY...


DESCRIPTION
       This  install  program  copies  files  (often just compiled) into 
       destination locations you choose.  If you want to download and
       install a ready-to-use package on a GNU/Linux system, you should instead 
       be using a package manager like yum(1) or apt-get(1).

       In the first three forms, copy SOURCE to DEST or multiple SOURCE(s) to 
       the existing DIRECTORY, while  setting  permission  modes and 
       owner/group.  In the 4th form, create all components of the given 
       DIRECTORY(ies).

       Mandatory arguments to long options are mandatory for short options too.

নির্দিষ্ট মালিকানা, অনুমতি, এবং মূল ফাইলগুলি টাইমস্ট্যাম্প সংরক্ষণ করে রাখার মতো অন্যান্য দরকারী জিনিসগুলিও ব্যবহারের মাধ্যমে অর্জন করা যেতে পারে install

   -g, --group=GROUP
          set group ownership, instead of process' current group

   -m, --mode=MODE
          set permission mode (as in chmod), instead of rwxr-xr-x

   -o, --owner=OWNER
          set ownership (super-user only)

   -p, --preserve-timestamps
          apply access/modification times of SOURCE files to corresponding 
          destination files

তথ্যসূত্র


4
আমি যেমন প্রশ্নে বলেছি, আমি মূল পৃষ্ঠাটি পড়েছি; এটি সিপির কার্যকারিতাটিতে কী যুক্ত করে তা আমাকে অশিক্ষিত রেখেছিল।
আজার্নিক

এসএমএল সুনির্দিষ্ট কার্যকারিতা হাইলাইট করে যা দুটি আলাদা করে দেয়: আপনি installকেবলমাত্র বিদ্যমান অনুমতিগুলি সংরক্ষণের পরিবর্তে গন্তব্য ফাইলটির জন্য নির্দিষ্ট মালিক, গোষ্ঠী এবং মোড সেট করতে পারেনcp
জোশুয়া মিলার
আমাদের সাইট ব্যবহার করে, আপনি স্বীকার করেছেন যে আপনি আমাদের কুকি নীতি এবং গোপনীয়তা নীতিটি পড়েছেন এবং বুঝতে পেরেছেন ।
Licensed under cc by-sa 3.0 with attribution required.