مخزن Pkg خود را با Poudriere بسازید

از نسخه 9.2 ، FreeBSD ابزاری جدید را برای جایگزینی دستورات قدیمی pkg _ * - معرفی کرده است pkg، همچنین با عنوان شناخته می شود pkgng. این بسیار شبیه به دبیان aptیا فدورا است yumاما از ویژگی های بسیار جالبی برخوردار است. یکی از این موارد امکان استفاده آسان از مخازن خصوصی و بسته های شما است.

چرا می خواهید این کار را انجام دهید؟ مخازن رسمی pkg از درختان بنادر FreeBSD با مجموعه ای از گزینه های بسیار محدود ساخته شده است. به عنوان مثال ، بسته رسمی برای PHP فاقد پشتیبانی از MySQL است. دلیل دیگر ممکن است این باشد که شما می خواهید دو مخزن ، یکی با X11 را فعال کنید - برای دسک تاپ شما - و دیگری با X11 غیرفعال - برای سرورهای خود داشته باشید. گزینه ها و امکانات زیادی وجود دارد و این آموزش نحوه ساخت مخزن شخصی خود را با Poudriere ، ابزاری برای بسته های انبوه سازی نشان می دهد.

تصور می کنم که شما یک VPS تازه با FreeBSD 10 x64 نصب کرده اید. اول از همه ، شما به درخت بنادر در سیستم خود نیاز دارید:

cd /usr
portsnap fetch extract

سپس ، باید Poudriere را از منبع نصب کنید (گزینه های پیش فرض خوب هستند!):

cd /usr/ports/ports-mgmt/poudriere
make install clean

بعد ، یک فایل پیکربندی اساسی ایجاد کنید:

cp /usr/local/etc/poudriere.conf.sample /usr/local/etc/poudriere.conf

... و متناسب با نیاز خود آنرا ویرایش کنید. موارد زیر شروع خوبی است:

FREEBSD_HOST=http://ftp.freebsd.org
RESOLV_CONF=/etc/resolv.conf
BASEFS=/usr/local/poudriere
POUDRIERE_DATA=$/data
USE_PORTLINT=no
USE_TMPFS=yes
DISTFILES_CACHE=/usr/ports/distfiles
CHECK_CHANGED_DEPS=yes
# Edit this according to your VPS' CPU.
PARALLEL_JOBS=1
NOLINUX=yes

به جای استفاده از سبد منظم سیستم شما ، Poudriere از نسخه مخصوص خود استفاده می کند. شما باید آن را با دستور زیر بدست آورید:

poudriere ports -c

اکنون ، یک زندان برای سازنده ایجاد کنید تا در آن اجرا شود:

poudriere jail -c -j testjail -v 10.0-RELEASE -a amd64

قبل از شروع ساخت بسته ها ، در واقع مجبور خواهید بود که به Poudriere بگویید که باید چه چیزی بسازد. ویرایشگر متن مورد علاقه خود را باز کنید و برخی از بسته ها را اضافه کنید:

www/firefox
im/pidgin
sysutils/tmux
editors/vim

... و پرونده را در زیر ذخیره کنید /usr/local/etc/buildlist. اگر گزینه های پیش فرض را نمی خواهید ، می توانید گزینه های هر بسته را در آن پرونده پیکربندی کنید. این کار با صدور دستور زیر انجام می شود:

poudriere options -cf /usr/local/etc/buildlist

در غیر این صورت ، می توانید شروع به ساختن کنید:

poudriere bulk -f /usr/local/etc/buildlist -j testjail

مدت زمان انجام این عمل براساس سرعت CPU از VPS شما متفاوت خواهد بود. پس از اتمام فرآیند ، بسته های تازه شما ، مرتب سازی بر اساس ساخت زندان ، در کشور یافت می شوند /usr/local/poudriere/data/packages/.

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

cd /usr/ports/www/nginx
make install clean

پس از اتمام مراحل نصب ، شما نیاز به پیکربندی Nginx دارید تا در فهرست دایرکتوری ها قرار بگیرید. برای انجام این کار ، /usr/local/etc/nginx/nginx.confبا ویرایشگر متن مورد علاقه خود ویرایش کنید:

server {
    listen       80;
    server_name  localhost;
    root /usr/local/poudriere/data/packages/testjail-default;
    location / {
            autoindex on;
    }
}

در آخر ، اطمینان حاصل کنید که وب سرور از بوت شروع می شود:

echo "nginx_enable=YES" >> /etc/rc.conf

... و سرور را شروع کنید:

/usr/local/etc/rc.d/nginx start

امکانات با پودریایر بسیار زیاد است. با خواندن مدخل Manpage می توانید در مورد Poudriere اطلاعات بیشتری کسب کنید. اگر قصد دارید از یک تنظیم مانند این در یک محیط تولید استفاده کنید ، به نفع شماست که در مورد امضای بسته نیز بخوانید ، و در نظر بگیرید که با TLS اتصال به سرور خود را تضمین کنید. اما در حال حاضر ، شما آماده صخره کردن هستید!

برای فعال کردن مخزن روی مشتری ، این دستورات را روی دستگاه مشتری اجرا کنید:

mkdir -p /usr/local/etc/repos
vi /usr/local/etc/repos/myrepo.conf

myrepo.confبا محتوای زیر جمعیت کنید. می توانید با استفاده از .confپسوند در هر پرونده ، از هر نامی استفاده کنید .

poudriere: {
  url: "http://yoururl"
  mirror_type: "http",
  enabled: yes
}

بعد ، پایگاه داده بسته را با دستور به روز کنید:

pkg update

اکنون می توانید بسته هایی را از مخزن جدید خود نصب کنید!



Leave a Comment

نحوه نصب بستر سبد خرید LiteCart در اوبونتو 16.04

نحوه نصب بستر سبد خرید LiteCart در اوبونتو 16.04

LiteCart یک بستر سبد خرید آزاد و منبع باز است که به زبان های PHP ، jQuery و HTML 5 نوشته شده است. این نرم افزار ساده ، سبک و با کاربرد آسان است.

نحوه نصب Anchor CMS بر روی یک VPS Fedora 26 LAMP

نحوه نصب Anchor CMS بر روی یک VPS Fedora 26 LAMP

با استفاده از یک سیستم متفاوت؟ Anchor CMS یک سیستم مدیریت محتوا (CMS) بسیار ساده و بسیار سبک ، بسیار آزاد و آزاد است.

اشتراک NFS را در Debian تنظیم کنید

اشتراک NFS را در Debian تنظیم کنید

NFS یک سیستم فایل مبتنی بر شبکه است که به رایانه ها اجازه می دهد تا از طریق شبکه رایانه ای به فایلها دسترسی پیدا کنند. این راهنما توضیح می دهد که چگونه می توانید پوشه ها را روی NF قرار دهید

نحوه بروزرسانی CentOS 7 ، Ubuntu 16.04 و Debian 8

نحوه بروزرسانی CentOS 7 ، Ubuntu 16.04 و Debian 8

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

نحوه نصب Matomo Analytics در Fedora 28

نحوه نصب Matomo Analytics در Fedora 28

با استفاده از یک سیستم متفاوت؟ Matomo (سابقا پیویک) یک بستر تحلیلی منبع باز است ، یک جایگزین باز برای Google Analytics. منبع Matomo میزبان o

یک سرور TeamTalk را در لینوکس تنظیم کنید

یک سرور TeamTalk را در لینوکس تنظیم کنید

TeamTalk یک سیستم کنفرانس است که به کاربران امکان می دهد مکالمات صوتی / تصویری با کیفیت بالا ، چت متنی ، انتقال فایل ها و صفحه های به اشتراک بگذارند. من

با استفاده از کلید SSH خود برای ورود به کاربران غیر ریشه استفاده کنید

با استفاده از کلید SSH خود برای ورود به کاربران غیر ریشه استفاده کنید

Vultr یک ویژگی را فراهم می کند که به شما امکان می دهد با ایجاد یک نمونه جدید ، کلیدهای SSH را از قبل نصب کنید. این اجازه می دهد تا به کاربر root دسترسی داشته باشید ، با این حال ، th

نحوه نصب انجمن NodeBB در FreeBSD 12

نحوه نصب انجمن NodeBB در FreeBSD 12

با استفاده از یک سیستم متفاوت؟ NodeBB یک نرم افزار انجمن مبتنی بر Node.js است. از سوکت های وب برای تعامل فوری و اعلامیه های زمان واقعی استفاده می کند. NodeB

نصب و راه اندازی ZNC در اوبونتو

نصب و راه اندازی ZNC در اوبونتو

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

نحوه نصب Ranger Terminal File Manager در لینوکس

نحوه نصب Ranger Terminal File Manager در لینوکس

رنجر یک مدیر فایل مبتنی بر خط فرمان است که دارای کلیدهای اتصال VI است. این برنامه یک رابط لعنتی مینیمالیستی و زیبا با نمای سلسله مراتب فهرست ارائه می دهد