همون هکر بدجنسه
همون هکر بدجنسه
خواندن ۶ دقیقه·۳ سال پیش

همه چیز درباره pacman

everything about (pacman)
everything about (pacman)

مدیر بسته (package manager) چیست ؟
اگه بخوام خیلی خیلی ساده بگم مدیر بسته (package manager) مجموعه ای از ابزار های نرم افزاری که فرایند نصب , آپدیت , پیکر بندی (configuring) و حذف نرم افزار را برای کامپیوتر شما به روش منسجم و یک پارچه انجام می دهد.
یه مدیر بسته (package manager) با بسته ها , توزیع های (distributions) نرم افزاری و دیتا در آرشیو فایل سر و کله میزند.

در اینجا فقط میخوام درباره مدیر بسته(package manager) pacman توضیح بدم.

pac man
pac man

ساختار همه ی دستورات پکمن به این شکل است:

pacman <operation> <options> <package(s)>

دستور پکمن رو وقتی نوشتیم , سه تا گزینه در مقابلش باید گذاشته بشه , اولی operation و دومی options ودر انتها نام پکیج (یا پکیج ها) نوشته شود.

نکته : ممکنه بعضی وقتا operation رو داشته باشی یا بعضی وقتا operation و options با هم داشته باشی یا در زمانی همه رو باهم داشته باشی.

شما میتونی برای این که بیشتر درکش کنی از دستور pacman -help استفاده کنی.

به عکس بالا توجه کن به جای operation , هشت تا دستور میتونیم بنویسیم:

pacman -USRQFDV

نکته کنکوری : همیشه یادت باشه operation با حرف بزرگ نوشته میشه.

  • دستور V- اول واژه version است و برای برسی ورژن ازش استفاده میشه.
  • دستور D- اول واژه database است برای کار های مربوط به دیتا بیست استفاده میشه.
  • دستور F- اول واژه files است برای کار با فایل استفاده میشه.
  • دستور Q- اول واژه query است به معنای جستجو است میشه با این دستور اصلاعات منحصر به فرد پکیج ها را جستجو کرد.
  • دستور R- اول واژه remove است برای پاک کردن پکیج ها ازش استفاده میشه.
  • دستور T- به معنای dependencies (deptest) است به معنای وابستگی هست لیست وابستگی ها را برسی میکند .
  • دستور U- اول واژه update است برای آپدیت کردن سیستم عامل و بسته ها مورد استفاده قرار میگیرد.
  • دستور S- اول واژه Synchronize است برای همگام سازی بسته ها مورد استفاده قرار میگیرد.

حالا تصور کن هر کدام از این دستورات بالا برای خودشون چندین تا option دارن یعنی مثلا D- برای خودش چند تا option داره.

نکته کنکوری : یادت باشه همیشه option ها به صورت حروف کوچک نوشته میشن.

برای دیدن آپشن ها کافیه فقط از هر operation , دستور help- رو بزنی , مثلا میخوام بدونم operation -S چند تا option داره به مثال زیر توجه کن:

pacman -S -help
pacman -S -help
pacman -S -help

خوب همون جوری که دیدی S operation- چندین تا option دارد مثل

-w -s -l ,.....

نکته کنکوری : هرکدام از این حروف بیانگر یه کلمه خاص هستن مثل -i, --info
نکته کنکوری : به دو صورت میشه نوشت کی به صورت اختصار یا اسم کامل مثل -g, --groups

‌تا اینجای کار فهمیدیم این دستورات چی هستن , بریم واسه ترکیب کردنشون

آپدیت کردن دیتا بیست
برای این که هر مدیر بسته ای به درستی کار کند , باید با سرور های اصلی هماهنگ باشه , pacman هم همین طوره , برای به روز رسانی پایکاه داده pacman میتونی از دستور زیر استفاده کنی

sudo pacman -Sy --------------------------- operation S option y pacman <operation> <options> <package(s)>
pacman -Sy
pacman -Sy

آپدیت کردن نرم افزارها

sudo pacman -Syu --------------------------- operation S option yu

میتونی با ترکیب option های مختلف چندین دستور رو در یه دستور خلاصه کنی.

میتونی با استفاده از pacman پکیج ها رو به اصلاح upgrade/downgrade کنی یعنی میتونی هم تغییر ورژن بدی یا به ورژن آپدیت تر ارتقا بدی یا به ورژه قدیمی تر برگردی.
برای مثال، اگر بسته "xyz-1.5" را رو سیستم خود نصب کرده اما "xyz-1.4.9" آخرین نسخه در سرور اصلی است، pacman به "xyz-1.4.9" تنزل می دهد.

sudo pacman -Syuu sudo pacman -Syyuu

همان طور که متوجه شدی این دو دستور برای یه کار خاص باهم combined شدن یا ترکبیب شدن

نصب پکیج

نصب پکیج با pacman خیلی سادس , به دستور زیر دقت کن:

sudo pacman -S <package_name_1> <package_name_2>

این فرایند تمام وابستگی هارو شناسایی و مدیریت میکند
بعضی وقتا بسته ها از الگو های مشابهی می آید, به جای تایپ نام یکسان از brackets به عنوان میانبرد استفاده کنید, lمثال زیر تمام بسته های پایتون را نصب میکند:

sudo pacman -S python-{pip,py,pytest,pytest-runner}

بعضی وقتا دوست داری پکیج دانلود بشه ولی عملیات نصب رو انجام نده صرفا دوست داری دانلود بشه
از سوییج Sw- استفاده کن

sudo pacman -Sw <package_name>

فقط pacman از دانلود پکیج به شما اطلاع میده ولی چیزی نصب نمیشه , بعد از این که فایل دانلود شد پکیج به این فرمت ذخیره میشه.

<package_name>.tar.xz

و در مسیر زیر قرار میگیرد.

/var/cache/pacman/pkg

برای نصب بسته های جدا دانلود شده از U- استفاده میکنیم.

sudo pacman -U <package_name>.tar.xz

تمام بسته هایی که pacman دانلود میکند همیشه وجود دارد میتونی از این مسیر پیداش کنی و اونا رو ببینی.

ls /var/cache/pacman/pkg

اگه دنبال یه بسته خواص میگردی grep میتونه خیلی کمکت کنه.

ls /var/cache/pacman/pkg | grep <package_name>

اگه یه زمان نیاز داشتی یه پکیجی رو install/upgrade/downgrade میتونی از این دستور استفاده کنی.

سرچ کردن

‌بعضی وقتا اسم پکیج رو فراموش میکنی باید تو pacman جستجو کنی.

pacman -Ss <search_term>

یکم خروجی دستور آزاردهندس برای این که خوانا تر بشه میتونی از این روش استفاده کنی.

قدم اول : کسانی که vim بلد نیستن میتونن از nano استفاده کنن.

sudo vim /etc/pacman.conf

کلمه color رو از کامند در میاری دقیقا به مثال بالا توجه کن
وبعد ذخیره میکنی (shift=WS)

حالا pacman خوانا شد میشه نوع ورژن رو با رنگ دیگه تشخیص داد.

من از دستور grep خیلی لذت میبرم , شما میتونی دستور grep رو با pacman ترکیب کنی و ازش برای فهرست کردن بسته های موجود استفاده کنی خروجی رو میتونی با grep به اصلاح pipeline کنی تا همه پکیج های مورد نیازت رو نشان دهد.

pacman -Ssq | grep python

آیا به flag دستور Ssq- توجه کردی؟ این ترکیب همه پکیج های pacman را یک به یک نشان میدهد.من آن را به grep دادم تا فقط بسته های python3 را نشان دهد, احتمالا شما توضیحات کوتاه پکیج را دریافت نمیکنید.

ابزار دیگری برای انجام جستجو ها وجود دارد: اسم این ابزار (pacsearch) است , این ابزار با قالب بندی مناسب و رنگ بندی جذاب خروجی تمیز تری ارائه می دهد.به احتمال زیاد قبلا روی توزیع Arch خودتون نصبه اما اگر نصب نیست میتونی از دستور زیر استفاده کنی

sudo pacman -S pacman-contrib

حالا مراحل بالا رو به با استفاده از pacsearch انجام میدهیم

pacsearch python
pacsearch python
pacsearch python

تازه قابل خواندن شد.

اطلاعات pacman

دستور زیر تمام بسته های نصب شده روی سیستم شما رو لیست می کند

pacman -Q

شاید برسی این همه پکیج برات گیج گننده باشه تو میتونی از grep استفاده کنی تا پیدا کردن پکیج ها برات آسان تر بشه.

pacman -Q | grep linux

بعضی وقتا احتیاج داری اطلاعات دقیقی در مورد یه پکیج خاص داشته باشی میتونی از Qi- استفاده کنی.

pacman -Qi <package_name>

دستور Q- تنها اطلاعات بسته نصب شده را نشان می دهد.اگه دنبال آخرین اطلاعات در مورد یک بسته هستی میتونی از Si- استفاده کنی.

pacman -Si <package_name>

حذف نصب

با استفاده از pacman میتونی پکج هایی که نصب کردی رو حذف نصب (uninstalling) کنی.

sudo pacman -R <package_name>

برای حذف یک پکیج همراه با تمام وابستگی هایش از ساختار زیر استفاده میکنیم.

نکته کنکوری : هیچ پکیج دیگری به آن وابستگی ها بستگی ندارد.

sudo pacman -Rs <package_name>

میتوان pacman را مجبور به حذف نصب کرد, مهم نیست که این پکیج وابستگی های دیگررا از بین میبرد یا نه.

نکته کنکوری کارشناسی ارشد: این کاره, خیلی خیلی خطر ناکیه اگه واقعا نمیدونی داری چیکار میکنی اصلا انجامش نده.

sudo pacman -Rdd <package_name>

سخن آخر

پکیج Pacman یک مدیریت بسته قدرتمند برای Arch Linux است.بدون آن هیچ پکیجی از آن عبور نمیکند.
حتی اگر پکیج هایی را از منابع دیگر مثل مخزن AUR بخوای نصب کنی باید قبلش از طریق pacman مراحل تکمیل نصب را کامل کنی. پس pacman یکی از اجزای جدا نشدنی اکوسیستم Arch است.

باید کم کم کار با terminal رو یاد بگیری و تا برات استفاده از لینوکس دل چسب تر بشه.

همه چیز دربارهpacmanآموزش pacmanآموزش arch linuxپکیج منیجر arch چیستنصب و حذف نصب در آرچ چگونه است
مسئولیت نوشته های من به گردن کودک درونم است?
شاید از این پست‌ها خوشتان بیاید