در توسینسو تدریس کنید

و

با دانش خود درآمد کسب کنید

Package چیست و منظور از Package Management System چیست ؟ قسمت 1

شاید تا به حال دقت کرده باشید که در مقالاتی که در خصوص معرفی توزیع های مختلف سیستم عامل لینوکس در انجمن تخصصی فناوری اطلاعات ایران نوشتیم ، برخی اوقات اشاره می کردیم که فلان توزیع لینوکس از Package Manager ای به نام RPM و دیگر توزیع لینوکس از Package Manager ای به نام urpmi استفاده می کند. اما ممکن است برای دوستان این سئوال پیش بیاید که اصلا Package Manager چیست و چرا ما از چنین سیستم مدیریتی برای نرم افزارهای خود در سیستم عامل ها استفاده می کنیم ؟

یک Package Manager یا Package Management system در واقع مجموعه ای از ابزارهای نرم افزاری ( Software Tools ) است که فرآیند نصب ، بروز رسانی ، پیکربندی و حذف بسته های نرم افزاری یا Software Package ها بر روی سیستم عامل های ما را بر عهده دارد. یکی از مهمترین کارهایی که یک Package Manager انجام می دهد این است که یک پایگاه داده از وابستگی های یک نرم افزار و همچنین اطلاعاتی در خصوص نسخه های مختلف یک نرم افزار را در خود نگهداری می کند و با این روش از به وجود آمدن ناهماهنگی ها و مشکلات ناشی از نصب نشدن پیشنیازهای یک نرم افزار جلوگیری می کند.

Package Manager چیست و چه کاربردی دارد ؟

Package Manager چیست ؟

اگر بخواهیم یک Package را بصورت ساده تعریف کنیم می گوییم که یک Package در واقع یک نرم افزار ، یک Application یا حداقل یک داده اطلاعاتی است. Package علاوه بر اینها درون خود اطلاعاتی به نام Metadata نیز دارند ، Metadata به اطلاعاتی از قبیل اسم نرم افزار ، توضیحات نحوه استفاده و یا هدف از توزیع نرم افزار ، شماره Version نرم افزار ، شرکت تولید کننده نرم افزار و لیستی از وابستگی های ضروری برای اجرا درست نرم افزار می باشد.

در واقع Metadata اطلاعاتی است که بصورت جانبی برای تکمیل کردن اطلاعات در خصوص نرم افزار ارائه می شود و به تنهایی چیزی از خود نرم افزار نیستند.هدف از طراحی Package Manager ها بهره برداری درست از زمان و سرمایه سازمان ها است ، شما با استفاده از یک Package Manager بصورت ریموت می توانید تمامی فرآیند های مربوط به توزیع و نصب درست نرم افزارها را مدیریت کنید و دیگر نیازی به انجام فرآیند های سخت و دشوار نصب دستی و بروز رسانی دستی در کار خود نخواهید داشت.اینکار بهترین گزینه برای سازمان ها و شرکت های بزرگی است که از سیستم عامل های لینوکس و Unix استفاده می کنند و شاید مجموعه ای از هزاران بسته نرم افزاری داشته باشند که با استفاده از ساختار Package Manager مدیریت و نگهداری آنها بسیار ساده خواهد شد.

چرا باید Package ها را Manage یا مدیریت کنیم ؟

برای پاسخ به این سئوال اول باید دقیقا درک کنیم که مفهوم بسته نرم افزاری یا Software Package چیست ، در پاراگراف های قبلی کمی توضیح در این خصوص دادیم اما بهتر است دید ساده ترین به این موضوع داشته باشیم .خوب بیایید با هم کمی ساده فکر کنیم ، کامپیوترها برای پردازش اطلاعات ساخته شده اند ، برای انجام اینکار یک سری پیشنیازها وجود دارد که از آن جمله می توان به یک کامپیوتر سخت افزاری ( قاعدتا باید باشه با توهم پردازش انجام نمیشه D: ) .

یک سری اطلاعات برای پردازش و در نهایت یک برنامه که عملیات پردازشی را انجام دهد اشاره کرد. اما فقط با در کنار هم قرار گرفتن این سه عنصر نمی توان گفت که دیگر می توان همه پردازش های لازم در یک کامپیوتر را به درستی انجام داد ، در واقع با داشتن این سه عنصر ما هوش پردازشی لازم برای انجام فرآیند های پردازشی را اماده سازی کرده ایم ، اما هر کدام از این سه عنصر برای خودشان یک سری پیشنیازها دارند تا بتوانند به درستی کار کنند و نیازهای ما را برآورده کنند.

برای مثال کامپیوتر یا همان سخت افزار کامپیوتر را در نظر بگیرید ، کامپیوتر برای اینکه بتواند به درستی کار کند به الکتریسیته و فضای خشک و خنک برای کار کردن نیاز دارد تا بتواند ساده ترین کار خود یعنی روشن شدن و فعالیت کردن را انجام دهد ، علاوه بر اینها کامپیوتر باید بتواند با دو عنصر دیگری که گفتیم یعنی اطلاعات و برنامه ها نیز ارتباط داشته باشد و برای انجام این کار باید اطلاعات و برنامه هایی که می خواهیم بر روی کامپیوتر اجرا شود باید بر روی آن قرار بگیرد که ما آنها را بر روی فضای ذخیره سازی کامپیوتر که معمولا هارد دیسک آن است قرار می دهیم.

قرار دادن برنامه ها و اطلاعات بر روی هارد دیسک به معنی ذخیره سازی انها به شکل فایل بر روی سیستم است ، البته فراموش نکنید که بیشتر صحبت های ما در خصوص Package Manager ها مربوط به سیستم عامل لینوکس و Unix است و تقریبا همه چیز در این سیستم عامل ها در قالب فایل دیده می شود. خوب تا اینجای کار کارمان با کامپیوتر تمام شد و نیازهای آن را برطرف کردیم.

مرحله بعدی باید به اطلاعات نگاه کنیم ، آیا اطلاعات نیز دارای یک سری نیاز است ؟ خوب البته که اطلاعات نیاز به فضای ذخیره سازی مناسب بر روی هارد دیسک شما می باشد اما مهمتر از آن ، اطلاعات باید دارای قالب قابل قبولی باشد که برنامه بتواند آن را پردازش کند. این هم از نیاز اطلاعات که داشتن قالب مناسب برای اجرا شدن است اما در نهایت آیا برنامه یا Program نیز دارای نیاز است ؟ برنامه به چه چیزی نیاز دارد ؟ مشابه اطلاعات ، برنام ها نیز به فضای ذخیره سازی مناسب بر روی هارد دیسک شما نیاز دارند اما برنامه ها برای خودشان نیازهای زیادی دارند که از آن جمله می توانیم به موارد زیر اشاره کنیم :

  1. برنامه به اطلاعات برای پردازش نیاز دارد ، اطلاعاتی که دارای قالب مناسب ، نامگذاری مناسب و محل مناسب در سیستم باشند.
  2. برنامه به یک سری فایل پیکربندی یا configuration file نیز نیاز دارد. این فایل ها رفتار برنامه را کنترل می کنند و در ضمن امکان دلخواه سازی برنامه را نیز به ما می دهند. مشابه اطلاعات ، این فایل ها نیز بایستی دارای قالب مناسب و تعریف شده باشند ، نامگذاری مناسب و تعریف شده داشته باشند و بر روی محل مناسبی بر روی دیسک ذخیره شده باشند. ما در انجمن تخصصی فناوری اطلاعات ایران به اختصار به اینگونه فایل ها config file می گوییم.
  3. خود برنامه نیز از این موارد خارج نیست ، برنامه باید بر روی دیسک سیستم قرار گرفته باشد و ساختار نامگذاری مناسبی داشته باشد.حتی برنامه برای اینکه درست اجرا شود ممکن است به سایر برنامه ها به عنوان پیشنیاز ، نیاز داشته باشد.

منظور از Package در سیستم عامل لینوکس چیست

بسته به نوع نرم افزار برخی از نرم افزارها در کنارشان یک سری فایل به عنوان فایل مستندات یا راهنما دارند که همراه برنامه ارائه می شود.این فایل ها به افرادی که قصد استفاده از نرم افزار را دارند بسیار کمک می کنند تا براحتی بتوانند از برنامه های خود استفاده کنند، همانطور که متوجه شده اید اینکار می تواند کمی پیچیدگی ایجاد کند ، این اصلا بد نیست که همه چیز به درستی پیکربندی شود و کار کند اما واقعا برای اولین بار اگر بخواهیم همه این کارها را با هم برای برنامه های مختلف انجام دهیم ، اینکار چگونه انجام می شود ؟ در این خصوص دو احتمال وجود دارد :

  • 1-بعد از اینکه شما مستندات برنامه های مورد نظرتان را مطالعه کردید و می خواهید از آنها استفاده کنید شما فایل نرم افزارها به همراه مستندات و config file های آنها را بر روی کامپیوتر خود کپی می کنید و مطمئن می شوید که همه آنها به درستی نامگذاری شده اند و در محل درستی در سیستم ذخیره سازی شده اند و فضای ذخیره سازی مناسبی هم برای نگهداری از آنها بر روی سیستم وجود دارد. حالا شما تغییرات مد نظرتان بر روی config file ها را انجام می دهید و در نهایت برنامه نصب یا setup برنامه مورد نظرتان را اجرا می کنید و این امکان را می دهید که هر اطلاعاتی که می خواهند از سیستم برای نصب کردن نرم افزار دریافت کنند ، شما در واقع در این حالت به کامپیوتر اجازه می دهید که خودش همه این کارها را انجام دهد.

به نظر می رسد گزینه اول چندان هم بد نباشد ، اما تصور کنید که در این فرآیند دستی شما قرار است چه تعداد فایل را همیشه زیر نظر داشته باشید . در یک سیستم عامل لینوکس معمولی احتمال وجود بیشتر از 20 هزار فایل وجود دارد. با وجود این همه فایل طبیعتا شما نیز باید مستندات بسیار زیادی را مطالعه کنید ، فایل های زیادی را کپی کنید و پیکربندی های زیادی را انجام دهید،اما چه اتفاقی می افتد اگر یک نسخه جدید از یک برنامه معرفی شود ؟ تازه نسخه جدید از همان نرم افزاری که قبلا بر روی سیستم نصب کرده اید ! برخی افراد در اینجاست که به این نتیجه می رسند که از گزینه دوم به نام Package Manager باید استفاده کنند.

  • 2-خوب در گزینه اول شما مجبور بودید همه آن 20 هزار فایل را بصورت دستی تحلیل کنید اما اگر شما به کامپیوتر خود در زمینه پردازش اطلاعات اطمینان دارید و می دانید که کامپیوترها برای انجام پردازش های سنگین و البته نگهداری حجم عظیمی از اطلاعات ساخته شده اند ، می توانید براحتی مدیریت کردن و نظارت کردن بر روی این 20 هزار فایل را به عهده کامپیوتر خود بگذارید و خیالتان راحت باشد که کامپیوتر در این زمینه به درستی کار خود را انجام خواهد داد. این دقیقا همان کاری است که یک سیستم به نام Package Manager انجام می دهد. یعنی مدیریت این همه فایلی که در سیستم عامل وجود دارد ، همه و همه بر عهده Package Manager خواهد بود. اما بیایید کمی ساده تر Package را تعریف کنیم . ادامه دارد ... ITPRO باشید

نویسنده : محمد نصیری

منبع : جزیره لینوکس وب سایت توسینسو

هرگونه نشر و کپی برداری بدون ذکر منبع و نام نویسنده دارای اشکال اخلاقی می باشد

#انواع_توزیع_های_لینوکس #rpm_چیست #package_manager_چیست #ویرایش_package_های_apk #deb_چیست #منظور_از_package_manager_در_لینوکس #پسوند_rmp_و_deb #معرفی_package_manager_های_لینوکس #package_چیست #software_package_چیست
عنوان
1 Package چیست و منظور از Package Management System چیست ؟ قسمت 1 رایگان
2 Package چیست و منظور از Package Management System چیست ؟ قسمت 2 رایگان
زمان و قیمت کل 0″ 0
0 نظر

هیچ نظری ارسال نشده است! اولین نظر برای این مطلب را شما ارسال کنید...

نظر شما
برای ارسال نظر باید وارد شوید.
از سرتاسر توسینسو
تنظیمات حریم خصوصی
تائید صرفنظر
×

تو می تونی بهترین نتیجه رو تضمینی با بهترین های ایران بدست بیاری ، پس مقایسه کن و بعد خرید کن : فقط توی جشنواره پاییزه می تونی امروز ارزونتر از فردا خرید کنی ....