0 - en to fa-IR translation catalogue (165 entries)

en: Binary package
fa-IR: بسته باینری

en: Source package
fa-IR: بسته منبع

en: dependencies
fa-IR: وابستگی‌ها

en: conflict
fa-IR: تداخل

en: Packaging System: Tools and Fundamental Principles
fa-IR: سیستم بسته‌بندی: اصول و ابزارهای بنیادین

en: As a Debian system administrator, you will routinely handle <filename>.deb</filename> packages, since they contain consistent functional units (applications, documentation, etc.), whose installation and maintenance they facilitate. It is therefore a good idea to know what they are and how to use them.
fa-IR: به عنوان یک مدیر سیستم دبیان، شما به طور مداوم با بسته‌های <filename>.deb</filename> سروکار خواهید داشت، چراکه دارای کاربردهای گوناگونی هستند (برنامه‌ها، مستندات و ...) و شامل عملیات نصب و نگهداری می‌شوند. بنابراین ایده خوبی است که از چگونگی و نحوه کارکرد آن‌ها اطلاع داشته باشید.

en: Structure of a Binary Package
fa-IR: ساختار یک بسته باینری

en: <emphasis>TOOLS</emphasis> <command>dpkg</command>, <command>APT</command> and <command>ar</command>
fa-IR: <emphasis>ابزار</emphasis> <command>dpkg</command>، <command>APT</command> و <command>ar</command>

en: <primary>unpacking</primary><secondary>binary package</secondary>
fa-IR: <primary>خروج از حالت فشرده</primary><secondary>بسته باینری</secondary>

en: <emphasis>BACK TO BASICS</emphasis> Man page notation
fa-IR: <emphasis>بازگشت به مقدمات</emphasis> صفحه راهنما و توضیحات آن

en: It can be confusing for beginners to find references to “<citerefentry><refentrytitle>ar</refentrytitle><manvolnum>1</manvolnum></citerefentry>” in the literature. This is generally a convenient means of referring to the man page entitled <literal>ar</literal> in section 1.
fa-IR: ممکن است برای تازه‌کاران دسترسی به “<citerefentry><refentrytitle>ar</refentrytitle><manvolnum>1</manvolnum></citerefentry>” دشوار باشد. این در حقیقت شیوه‌ای برای دسترسی به قسمت ۱ صفحه راهنمای <literal>ar</literal> است.

en: Sometimes this notation is also used to remove ambiguities, for example to distinguish between the <command>printf</command> command that can also be indicated by <citerefentry><refentrytitle>printf</refentrytitle><manvolnum>1</manvolnum></citerefentry> and the <function>printf</function> function in the C programming language, which can also be referred to as <citerefentry><refentrytitle>printf</refentrytitle><manvolnum>3</manvolnum></citerefentry>.
fa-IR: گاهی اوقات این شیوه علامت‌گذاری برای رفع ابهام بکار می‌رود. برای نمونه، بین دستور <command>printf</command> که توسط <citerefentry><refentrytitle>printf</refentrytitle><manvolnum>1</manvolnum></citerefentry> مشخص می‌گردد و تابع <function>printf</function> که توسط <citerefentry><refentrytitle>printf</refentrytitle><manvolnum>3</manvolnum></citerefentry> مشخص می‌گردد و در زبان برنامه‌نویسی C موجود است، تفاوت وجود دارد.

en: <xref linkend="solving-problems" /> discusses manual pages in further detail (see <xref linkend="sect.manual-pages" />).
fa-IR: <xref linkend="solving-problems" /> درباره صفحات راهنمای با جزییات بیشتری بحث می‌کند (قسمت <xref linkend="sect.manual-pages" /> را مشاهده کنید).

en: Have a look at the content of a <filename>.deb</filename> file:
fa-IR: بیایید نگاهی به محتوای درون فایل <filename>.deb</filename> بیندازیم:

en: As you can see, the <command>ar</command> archive of a Debian package is comprised of three files:
fa-IR: همانطور که مشاهده می‌کنید، آرشیو <command>ar</command> یک بسته دبیان از سه فایل تشکیل شده است:

en: Package Meta-Information
fa-IR: اطلاعات-جانبی بسته

en: <primary>package</primary><secondary>meta-information</secondary>
fa-IR: <primary>بسته</primary><secondary>اطلاعات-جانبی</secondary>

en: Description: the <filename>control</filename> File
fa-IR: توضیح: فایل <filename>control</filename>

en: <primary>package meta-information</primary>
fa-IR: <primary>اطلاعات-جانبی بسته</primary>

en: <emphasis>BACK TO BASICS</emphasis> RFC — Internet standards
fa-IR: <emphasis>بازگشت به مقدمات</emphasis> استانداردهای اینترنت - RFC

en: RFC 2026 defines the process for standardization of Internet protocols. <ulink type="block" url="http://www.faqs.org/rfcs/rfc2026.html" />
fa-IR: RFC 2026 فرآیند استانداردسازی پروتکل‌های اینترنتی را تعریف می‌کند. <ulink type="block" url="http://www.faqs.org/rfcs/rfc2026.html" />

en: Dependencies: the <literal>Depends</literal> Field
fa-IR: وابستگی‌ها: فیلد <literal>Depends</literal>

en: <primary>dependency</primary>
fa-IR: <primary>وابستگی</primary>

en: <primary>package</primary><secondary>dependency</secondary>
fa-IR: <primary>بسته</primary><secondary>وابستگی</secondary>

en: <command>&lt;&lt;</command>: less than;
fa-IR: <command>&lt;&lt;</command>: کوچکتر از;

en: <command>&lt;=</command>: less than or equal to;
fa-IR: <command>&lt;=</command>: کوچکتر یا مساوی;

en: <command>=</command>: equal to (note that “<literal>2.6.1</literal>” is not equal to “<literal>2.6.1-1</literal>”);
fa-IR: <command>=</command>: مساوی;

en: <command>&gt;=</command>: greater than or equal to;
fa-IR: <command>&gt;=</command>: بزرگتر یا مساوی;

en: <command>&gt;&gt;</command>: greater than.
fa-IR: <command>&gt;&gt;</command>: بزرگتر از.

en: <emphasis>DEBIAN POLICY</emphasis> <literal>Recommends</literal>, <literal>Suggests</literal>, and <literal>Enhances</literal> fields
fa-IR: <emphasis>خط‌مشی دبیان</emphasis> فیلدهای <literal>Recommends</literal>، <literal>Suggests</literal> و <literal>Enhances</literal>

en: The <literal>Recommends</literal> and <literal>Suggests</literal> fields describe dependencies that are not compulsory. The “recommended” dependencies, the most important, considerably improve the functionality offered by the package but are not indispensable to its operation. The “suggested” dependencies, of secondary importance, indicate that certain packages may complement and increase their respective utility, but it is perfectly reasonable to install one without the others.
fa-IR: فیلدهای <literal>Recommends</literal> و <literal>Suggests</literal> بسته‌های مکمل را توضیح می‌دهند. فیلد “recommended”، که مهم‌ترین آن‌ها است، عملکرد کلی بسته را افزایش می‌دهد اما تاثیری رو عملیات موجود روی آن ندارد. فیلد “suggested”، که در درجه دوم اهمیت قرار دارد، بیان می‌کند برخی بسته‌ها می‌توانند عملکرد یکدیگر را بهبود ببخشند، اما بهتر آن است که تنها یکی از آن‌ها نصب گردد.

en: The <literal>Enhances</literal> field also describes a suggestion, but in a different context. It is indeed located in the suggested package, and not in the package that benefits from the suggestion. Its interest lies in that it is possible to add a suggestion without having to modify the package that is concerned. Thus, all add-ons, plug-ins, and other extensions of a program can then appear in the list of suggestions related to the software. Although it has existed for several years, this last field is still largely ignored by programs such as <command>apt</command> or <command>synaptic</command>. Its purpose is for a suggestion made by the <literal>Enhances</literal> field to appear to the user in addition to the traditional suggestions — found in the <literal>Suggests</literal> field.
fa-IR: فیلد <literal>Enhances</literal> نیز به پیشنهاد بسته‌ها می‌پردازد اما در یک حوزه متفاوت. در واقع درون بسته‌های پیشنهادی قرار دارد و نه بسته‌ای که از آن بهره می‌برد. نکته جالب اینجاست که امکان اضافه‌کردن یک بسته پیشنهادی بدون تغییر روی بسته اصلی وجود دارد. بنابراین، تمام add-ons، plug-ins و extension یک برنامه می‌توانند در این فهرست قرار گیرند. با اینکه سالیان طولانی از وجود این فیلد می‌گذرد، اما برنامه‌های <command>apt</command> و <command>synaptic</command> از آن استفاده می‌کنند. هدف از آن پیشنهاد قابلیت‌های جداگانه نسبت به فیلد <literal>Suggests</literal> است که کاربر می‌تواند از بین آن‌ها انتخاب کند.

en: <emphasis>DEBIAN POLICY</emphasis> <literal>Pre-Depends</literal>, a more demanding <literal>Depends</literal>
fa-IR: <emphasis>خط‌مشی دبیان</emphasis> <literal>Pre-Depends</literal>، نوعی دیگر از <literal>Depends</literal>

en: <primary>pre-dependency</primary>
fa-IR: <primary>پیش-وابستگی</primary>

en: “Pre-dependencies”, which are listed in the “<literal>Pre-Depends</literal>” field in the package headers, complete the normal dependencies; their syntax is identical. A normal dependency indicates that the package in question must be unpacked and configured before configuration of the package declaring the dependency. A pre-dependency stipulates that the package in question must be unpacked and configured before execution of the pre-installation script of the package declaring the pre-dependency, that is before its installation.
fa-IR: “Pre-dependencies”، که در فیلد “<literal>Pre-Depends</literal>” واقع در سرآیند بسته فهرست شده‌اند، وابستگی‌های عادی را کامل می‌کنند؛ نحو آن‌ها یکسان است. یک وابستگی عادی بیان می‌کند که بسته مورد نیاز باید قبل از بسته درخواست‌کننده وابستگی، پیکربندی شود. یک پیش-وابستگی بیان می‌کند که بسته مورد نیاز باید قبل از اجرای اسکریپت pre-installation بسته درخواست‌کننده وابستگی، پیکربندی شود که این مرحله درست قبل از نصب بسته صورت می‌گیرد.

en: Conflicts: the <literal>Conflicts</literal> field
fa-IR: تداخل‌ها: فیلد <literal>Conflicts</literal>

en: <command>dpkg</command> will refuse to install a package if it triggers a conflict with an already installed package, except if the new package specifies that it will “replace” the installed package, in which case <command>dpkg</command> will choose to replace the old package with the new one. <command>apt</command> always follows your instructions: if you choose to install a new package, it will automatically offer to uninstall the package that poses a problem.
fa-IR: <command>dpkg</command> در صورتی که بسته مورد نظر با بسته دیگری تداخل داشته باشد، اقدام به نصب آن نمی‌کند بجز حالتی که بسته جدید جایگزین نسخه قبلی آن شود که در این صورت <command>dpkg</command> بسته قدیمی را با جدید جایگزین خواهد کرد. <command>apt</command> همیشه از دستورالعمل‌های شما پیروی می‌کند: اگر انتخاب کنید که بسته جدیدی نصب گردد، به صورت خودکار پیشنهاد حذف بسته‌های دردسرساز را به شما می‌دهد.

en: Incompatibilities: the <literal>Breaks</literal> Field
fa-IR: ناسازگاری‌ها: فیلد <literal>Breaks</literal>

en: <primary>incompatibilities</primary>
fa-IR: <primary>ناسازگاری‌ها</primary>

en: The <literal>Breaks</literal> field has an effect similar to that of the <literal>Conflicts</literal> field, but with a special meaning. It signals that the installation of a package will “break” another package (or particular versions of it). In general, this incompatibility between two packages is transitory, and the <literal>Breaks</literal> relationship specifically refers to the incompatible versions.
fa-IR: فیلد <literal>Breaks</literal> تاثیر مشابه مانند فیلد <literal>Conflicts</literal> دارد، اما به طور متفاوتی. نشان می‌دهد که نصب یک بسته، بسته دیگری را “break” می‌کند (یا نسخه مشخصی از آن را). به طور کلی، این عدم سازگاری بین دو بسته، موقتی است و رابطه <literal>Breaks</literal> به صورت خاص اشاره به نسخه‌های ناسازگار از آن‌ها دارد.

en: <command>dpkg</command> will refuse to install a package that breaks an already installed package, and <command>apt</command> will try to resolve the problem by updating the package that would be broken to a newer version (which is assumed to be fixed and, thus, compatible again).
fa-IR: <command>dpkg</command> از نصب برنامه‌ای که با سایر بسته‌ها ناسازگاری داشته و موجب خرابی آن‌ها می‌شود، جلوگیری کرده و <command>apt</command> با بروزرسانی بسته خراب به نسخه جدیدتر (که این ناسازگاری را رفع کرده است) تلاش برای حل این مساله می‌کند.

en: This type of situation may occur in the case of updates without backwards compatibility: this is the case if the new version no longer functions with the older version, and causes a malfunction in another program without making special provisions. The <literal>Breaks</literal> field prevents the user from running into these problems.
fa-IR: این گونه شرایط ممکن است در حالتی رخ دهد که بروزرسانی بدون توجه به سازگاری با نسخه‌های قدیمی‌تر اجرا شده باشد: مانند حالتی که نسخه جدید با نسخه قدیم دیگر سازگاری نداشته باشد و باعث خرابی در برنامه دیگری شود بدون آنکه هیچ اطلاعی راجع به آن کسب کند. فیلد <literal>Breaks</literal> کاربر را در ورود به چنین شرایطی آگاه می‌سازد.

en: Provided Items: the <literal>Provides</literal> Field
fa-IR: گزینه‌های فراهم‌شده: فیلد <literal>Provides</literal>

en: This field introduces the very interesting concept of a “virtual package”. It has many roles, but two are of particular importance. The first role consists in using a virtual package to associate a generic service with it (the package “provides” the service). The second indicates that a package completely replaces another, and that for this purpose it can also satisfy the dependencies that the other would satisfy. It is thus possible to create a substitution package without having to use the same package name.
fa-IR: این فیلد، مفهوم بسیار جالب “بسته مجازی” را معرفی می‌کند. این بسته‌ها نقش‌های متفاوتی ایفا می‌کنند، اما دو نقش آن از اهمیت خاصی برخوردار هستند. نقش اول شامل کاربرد یک بسته مجازی برای انطباق با یک سرویس عمومی است (بسته، سرویس را “فراهم” می‌کند). نقش دوم نشان می‌دهد که یک بسته جایگزین دیگری می‌شود، و با تمام وابستگی‌های بسته قدیم سازگار خواهد بود. بنابراین این امکان وجود دارد که بدون بکاربردن نام  واقعی یک بسته، جایگزینی برای آن تعریف کرد.

en: <emphasis>VOCABULARY</emphasis> Meta-package and virtual package
fa-IR: <emphasis>واژگان</emphasis> تفاوت بین بسته‌های meta و virtual

en: <primary>virtual package</primary>
fa-IR: <primary>بسته مجازی</primary>

en: It is essential to clearly distinguish meta-packages from virtual packages. The former are real packages (including real <filename>.deb</filename> files), whose only purpose is to express dependencies.
fa-IR: ضروری است که بین دو بسته meta و virtual تفاوت قائل شویم. اولی شامل بسته‌ای واقعی (به همراه فایل‌های <filename>.deb</filename>) است که هدفش بیان وابستگی‌های مربوط به آن بسته است.

en: Virtual packages, however, do not exist physically; they are only a means of identifying real packages based on common, logical criteria (service provided, compatibility with a standard program or a pre-existing package, etc.).
fa-IR: از طرف دیگر، بسته‌های مجازی به صورت فیزیکی وجود ندارند؛ بلکه روشی هستند برای شناسایی بسته‌های حقیقی بر اساس یک سری شرایط خاص و منطقی (سرویس فراهم‌آورده، سازگاری با یک برنامه استاندارد یا یک بسته از پیش موجود).

en: Providing a “Service”
fa-IR: فراهم‌آوردن یک “سرویس”

en: Let us discuss the first case in greater detail with an example: all mail servers, such as <emphasis role="pkg">postfix</emphasis> or <emphasis role="pkg">sendmail</emphasis> are said to “provide” the <emphasis role="pkg">mail-transport-agent</emphasis> virtual package. Thus, any package that needs this service to be functional (e.g. a mailing list manager, such as <emphasis role="pkg">smartlist</emphasis> or <emphasis role="pkg">sympa</emphasis>) simply states in its dependencies that it requires a <emphasis role="pkg">mail-transport-agent</emphasis> instead of specifying a large yet incomplete list of possible solutions (e.g. <command>postfix | sendmail | exim4 | …</command>). Furthermore, it is useless to install two mail servers on the same machine, which is why each of these packages declares a conflict with the <emphasis role="pkg">mail-transport-agent</emphasis> virtual package. A conflict between a package and itself is ignored by the system, but this technique will prohibit the installation of two mail servers side by side.
fa-IR: بیاید در مورد اول با جزئیات بیشتری به همراه یک مثال بحث کنیم: گفته می‌شود که تمام سرورهای ایمیل مانند <emphasis role="pkg">postfix</emphasis> یا <emphasis role="pkg">sendmail</emphasis> بسته مجازی <emphasis role="pkg">mail-transport-agent</emphasis> را “فراهم می‌آورد”. بنابراین، هر بسته‌ای که به این سرویس نیاز داشته باشد (مانند میلینگ‌لیست <emphasis role="pkg">smartlist</emphasis> یا <emphasis role="pkg">sympa</emphasis>) به سادگی وابستگی‌های خود را در قالب بسته مجازی <emphasis role="pkg">mail-transport-agent</emphasis> بیان می‌کند تا اینکه بخواهد به فهرست بلندبالا و ناسازگاری از راهکارهای موجود اشاره کند (مانند <command>postfix | sendmail | exim4 | …</command>). علاوه بر این، نصب دو سرور ایمیل روی یک ماشین کار بیهوده‌ای است که به همین دلیل هر کدام از این بسته‌ها، ناسازگاری خود را با بسته مجازی <emphasis role="pkg">mail-transport-agent</emphasis> نشان می‌دهد. مغایرت یک بسته با خودش از طرف سیستم نادیده گرفته می‌شود، اما این تکنیک از نصب دو سرور ایمیل در کنار یکدیگر جلوگیری بعمل می‌آورد.

en: <emphasis>DEBIAN POLICY</emphasis> List of virtual packages
fa-IR: <emphasis>خط‌مشی دبیان</emphasis> فهرستی از بسته‌های مجازی

en: For virtual packages to be useful, everyone must agree on their name. This is why they are standardized in the Debian Policy. The list includes among others <emphasis role="pkg">mail-transport-agent</emphasis> for mail servers, <emphasis role="pkg">c-compiler</emphasis> for C programming language compilers, <emphasis role="pkg">www-browser</emphasis> for web browsers, <emphasis role="pkg">httpd</emphasis> for web servers, <emphasis role="pkg">ftp-server</emphasis> for FTP servers, <emphasis role="pkg">x-terminal-emulator</emphasis> for terminal emulators in graphical mode (<command>xterm</command>), and <emphasis role="pkg">x-window-manager</emphasis> for window managers.
fa-IR: برای آنکه بسته‌های مجازی کاربردی شوند، همه باید روی نامشان توافق داشته باشند. به همین دلیل است که برای نامگذاری آن‌ها در خط‌مشی دبیان استانداردی وجود دارد. این فهرست شامل <emphasis role="pkg">mail-transport-agent</emphasis> برای سرورهای ایمیل، <emphasis role="pkg">c-compiler</emphasis> برای کامپایلرهای زبان برنامه‌نویسی C، <emphasis role="pkg">www-browser</emphasis> برای مرورگرهای وب، <emphasis role="pkg">httpd</emphasis> برای سرورهای وب، <emphasis role="pkg">ftp-server</emphasis> برای سرورهای FTP، <emphasis role="pkg">x-terminal-emulator</emphasis> برای شبیه‌سازی ترمینال در محیط گرافیکی (<command>xterm</command>) و <emphasis role="pkg">x-window-manager</emphasis> برای مدیر پنجره‌ها.

en: Interchangeability with Another Package
fa-IR: قابلیت تعویض با بسته‌ای دیگر

en: Use of a <literal>Provides</literal> field in order to not break dependencies
fa-IR: کاربرد فیلد <literal>Provides</literal> بصورتی که وابستگی‌های را خراب نکند

en: This feature is very useful, since it is never possible to anticipate the vagaries of development, and it is necessary to be able to adjust to renaming, and other automatic replacement, of obsolete software.
fa-IR: این ویژگی بسیار کاربردی است، چراکه امکان پیشبینی توسعه خیالی وجود نخواهد داشت و توانایی نحوه نامگزاری ضروری است و سایر جایگزین‌های خودکار از نرم‌افزارهای منسوخ.

en: <emphasis>BACK TO BASICS</emphasis> Perl, a programming language
fa-IR: <emphasis>بازگشت به مقدمات</emphasis> زبان برنامه‌نویسی Perl

en: Since it is an interpreted language, a program written in Perl does not require compilation prior to execution. This is why they are called “Perl scripts”.
fa-IR: از آنجایی که یک زبان تفسیری بحساب می‌آید، برنامه‌ای که به زبان Perl نوشته می‌شود قبل از اجرا نیازی به کامپایل شدن ندارد. به همین دلیل به برنامه‌های آن “Perl Scripts” گفته می‌شود.

en: Past Limitations
fa-IR: محدودیت‌های سابق

en: Replacing Files: The <literal>Replaces</literal> Field
fa-IR: فایل‌های جایگزین شده: فیلد <literal>Replaces</literal>

en: <primary>replacement</primary>
fa-IR: <primary>جایگزینی</primary>

en: The use of this field is justified when package names change or when a package is included in another. This also happens when the maintainer decides to distribute files differently among various binary packages produced from the same source package: a replaced file no longer belongs to the old package, but only to the new one.
fa-IR: استفاده از این فیلد در صورت تغییر نام بسته یا بکاررفتن آن در بسته دیگری، توجیه پذیر است. همچنین در شرایطی که نگهدارنده بسته تصمیم می‌گیرد فایل‌های جداگانه‌ای در کنار بسته‌های باینری تولید شده از بسته سورس قرار دهد: یک فایل جایگزین شده دیگر متعلق به بسته قدیم نیست، بلکه تنها به بسته جدید تعلق دارد.

en: If all of the files in an installed package have been replaced, the package is considered to be removed. Finally, this field also encourages <command>dpkg</command> to remove the replaced package where there is a conflict.
fa-IR: اگر تمام فایل‌های یک بسته موجود تغییر کنند، بسته در شرایط حذف قرار می‌گیرد. در نهایت، این فیلد به <command>dpkg</command> کمک می‌کند در شرایط بروز تداخل با سایر بسته‌ها، آن را حذف کند.

en: <emphasis>GOING FURTHER</emphasis> The <literal>Tag</literal> field
fa-IR: <emphasis>مطالعه بیشتر</emphasis> فیلد <literal>Tag</literal>

en: Configuration Scripts
fa-IR: اسکریپت‌های پیکربندی

en: <emphasis>GOING FURTHER</emphasis> <command>dpkg</command>'s database
fa-IR: <emphasis>مطالعه بیشتر</emphasis> پایگاه‌داده <command>dpkg</command>

en: <primary>dpkg</primary><secondary>database</secondary>
fa-IR: <primary>dpkg</primary><secondary>پایگاه‌داده</secondary>

en: All of the configuration scripts for installed packages are stored in the <filename>/var/lib/dpkg/info/</filename> directory, in the form of a file prefixed with the package's name. This directory also includes a file with the <filename>.list</filename> extension for each package, containing the list of files that belong to that package.
fa-IR: تمام اسکریپت‌های پیکربندی برای بسته‌های نصب شده در دایرکتوری <filename>/var/lib/dpkg/info/</filename> قرار می‌گیرند، به شکل فایلی که با نام بسته‌اش پیشوند شده باشد. این دایرکتوری همچنین شامل فایلی با فرمت <filename>.list</filename> است که فهرستی از فایل‌های مرتبط با هر بسته را نمایش می‌دهد.

en: The <filename>/var/lib/dpkg/status</filename> file contains a series of data blocks (in the format of the famous mail headers, RFC 2822) describing the status of each package. The information from the <filename>control</filename> file of the installed packages is also replicated there.
fa-IR: فایل <filename>/var/lib/dpkg/status</filename> شامل مجموعه‌ای از بلوک‌های داده است (در قالب استاندارد معروف ایمیل، RFC 2822) که وضعیت هر بسته را گزارش می‌دهد. اطلاعات مربوط به فایل <filename>control</filename> هر بسته در زمان نصب به این فایل منتقل می‌شود.

en: <emphasis>CAUTION</emphasis> Symbolic names of the scripts
fa-IR: <emphasis>احتیاط</emphasis> نام‌های نمادین اسکریپت‌ها

en: The sequences described in this section call configuration scripts by specific names, such as <command>old-prerm</command> or <command>new-postinst</command>. They are, respectively, the <command>prerm</command> script contained in the old version of the package (installed before the update) and the <command>postinst</command> script contained in the new version (installed by the update).
fa-IR: ترتیبی که در این قسمت به بررسی آن می‌پردازیم اسکریپت‌ها را بر اساس نام خاصی فراخوانی می‌کند، مانند <command>old-prerm</command> یا <command>new-postinst</command>. این‌ها معادل با اسکریپت <command>prerm</command> موجود در بسته قدیم (نصب شده قبل از بروزرسانی) و اسکریپت <command>postinst</command> موجود در بسته جدید (نصب شده توسط بروزرسانی) هستند.

en: <emphasis>TIP</emphasis> State diagrams
fa-IR: <emphasis>نکته</emphasis> نمودار حالت

en: Installation and Upgrade
fa-IR: نصب و بروزرسانی

en: <primary><command>dpkg</command></primary><secondary>internal operation</secondary>
fa-IR: <primary><command>dpkg</command></primary><secondary>عملیات داخلی</secondary>

en: <primary>package</primary><secondary>installation</secondary>
fa-IR: <primary>بسته</primary><secondary>نصب</secondary>

en: The new package files are then unpacked. If a file already exists, it is replaced, but a backup copy is temporarily made.
fa-IR: فایل‌های بسته جدید از حالت فشرده خارج می‌شوند. اگر فایلی موجود باشد، جایگزین می‌گردد اما در همین حالت یک نسخه پشتیبان از آن گرفته می‌شود.

en: <command>dpkg</command> updates all of the internal data (file list, configuration scripts, etc.) and removes the backups of the replaced files. This is the point of no return: <command>dpkg</command> no longer has access to all of the elements necessary to return to the previous state.
fa-IR: <command>dpkg</command> تمام داده‌های داخلی (فهرست فایل‌ها، اسکریپت‌های پیکربندی و ...) را بروزرسانی و فایل‌های پشتیبان از نسخه‌های موجود را حذف می‌کند. این نقطه‌ای است که دیگر بازگشتی وجود ندارد: <command>dpkg</command> دیگر به تمام اجرای ضروری جهت بازگشت به حالت قبلی دسترسی نخواهد داشت.

en: <command>dpkg</command> will update the configuration files, asking the user to decide if it is unable to automatically manage this task. The details of this procedure are discussed in <xref linkend="sect.conffiles" />.
fa-IR: <command>dpkg</command> فایل‌های پیکربندی را بروزرسانی می‌کند و در صورت عدم اجرای خودکار این فرآیند، از کاربر پرسش‌هایی را می‌پرسد. جزئیات این رویه در قسمت <xref linkend="sect.conffiles" /> آمده است.

en: Package Removal
fa-IR: حذف بسته

en: <primary>package</primary><secondary>removal</secondary>
fa-IR: <primary>بسته</primary><secondary>حذف</secondary>

en: <emphasis>VOCABULARY</emphasis> Purge, a complete removal
fa-IR: <emphasis>واژگان</emphasis> Purge, حذف کامل بسته

en: <primary>purging a package</primary>
fa-IR: <primary>پاکسازی یک بسته</primary>

en: <primary>package</primary><secondary>purge</secondary>
fa-IR: <primary>بسته</primary><secondary>پاکسازی</secondary>

en: When a Debian package is removed, the configuration files are retained in order to facilitate possible re-installation. Likewise, the data generated by a daemon (such as the content of an LDAP server directory, or the content of a database for an SQL server) are usually retained.
fa-IR: زمانی که یک بسته دبیان حذف می‌شود، فایل‌های پیکربندی به منظور تسهیل در فرآیند بازنصب احتمالی، نگاه داشته می‌شوند. به همین صورت، داده‌هایی که توسط فرآیند پیش‌زمینه (مانند محتوای یک دایرکتوری سرور LDAP یا محتوای یک پایگاه‌داده سرور SQL) تولید می‌شوند، معمولاً حفظ می‌گردند.

en: To remove all data associated with a package, it is necessary to “purge” the package with the command, <command>dpkg -P <replaceable>package</replaceable></command>, <command>apt-get remove --purge <replaceable>package</replaceable></command> or <command>aptitude purge <replaceable>package</replaceable></command>.
fa-IR: برای حذف تمام داده‌های مربوط به یک بسته، ضروری است که از دستورات <command>dpkg -P <replaceable>package</replaceable></command>، <command>apt-get remove --purge <replaceable>package</replaceable></command> یا <command>aptitude purge <replaceable>package</replaceable></command> استفاده گردد.

en: Given the definitive nature of such data removals, a purge should not be taken lightly.
fa-IR: با توجه به ماهیت حذف چنین داده‌هایی، باید از purge با دقت بیشتری استفاده کرد.

en: The four scripts detailed above are complemented by a <filename>config</filename> script, provided by packages using <command>debconf</command> to acquire information from the user for configuration. During installation, this script defines in detail the questions asked by <command>debconf</command>. The responses are recorded in the <command>debconf</command> database for future reference. The script is generally executed by <command>apt</command> prior to installing packages one by one in order to group all the questions and ask them all to the user at the beginning of the process. The pre- and post-installation scripts can then use this information to operate according to the user's wishes.
fa-IR: چهار اسکریپتی که در بالا به توضیحشان پرداختیم توسط اسکریپت <filename>config</filename> کامل می‌شوند، که توسط بسته‌های مورد استفاده <command>debconf</command> جهت جمع‌آوری اطلاعات پیکربندی از کاربر گرفته می‌شود. در زمان نصب، این اسکریپت پرسش‌های مورد نیاز توسط <command>debconf</command> را تعریف می‌کند. پاسخ‌ها نیز در پایگاه‌داده <command>debconf</command> برای ارجاع بعدی ذخیره می‌گردند. اسکریپت معمولاً توسط <command>apt</command> اجرا می‌گردد و درست قبل از نصب بسته‌ها به صورت ترتیبی و یک به یک پرسش‌ها مطرح می‌شود. اسکریپت‌های پیش و پس از نصب می‌توانند از این اطلاعات جهت شخصی‌سازی تنظیمات کاربر استفاده کنند.

en: <emphasis>TOOL</emphasis> <command>debconf</command>
fa-IR: <emphasis>ابزار</emphasis> <command>debconf</command>

en: <command>debconf</command> was created to resolve a recurring problem in Debian. All Debian packages unable to function without a minimum of configuration used to ask questions with calls to the <command>echo</command> and <command>read</command> commands in <filename>postinst</filename> shell scripts (and other similar scripts). But this also means that during a large installation or update the user must stay with their computer to respond to various questions that may arise at any time. These manual interactions have now been almost entirely dispensed with, thanks to the <command>debconf</command> tool.
fa-IR: <command>debconf</command> برای حل یک مشکل تکرارشدنی در دبیان بوجود آمده است. تمام بسته‌های دبیان بدون وجود پیکربندی‌هایی که توسط دستورات <command>read</command> و <command>echo</command> در اسکریپت‌های <filename>postinst</filename> (و سایر اسکریپت‌های مشابه) گردآوری می‌شوند، قادر به اجرا نخواهند بود. این بدان معنی نیز هست که کاربر در حین نصب یا بروزرسانی سیستم باید منتظر این پرسش‌ها بماند تا به آن‌ها در هر لحظه پاسخ دهد. این شیوه تعامل دستی، حال به لطف ابزار <command>debconf</command> جای خود را به فرآیند خودکار داده است.

en: <command>debconf</command> has many interesting features: it requires the developer to specify user interaction; it allows localization of all the strings displayed to users (all translations are stored in the <filename>templates</filename> file describing the interactions); it has different frontends to display the questions to the user (text mode, graphical mode, non-interactive); and it allows creation of a central database of responses to share the same configuration with several computers... but the most important is that it is now possible to present all of the questions in a row to the user, prior to starting a long installation or update process. The user can go about their business while the system handles the installation on its own, without having to stay there staring at the screen waiting for questions.
fa-IR: <command>debconf</command> قابلیت‌های بسیاری دارد: مشخص کردن شیوه تعامل را برای توسعه‌دهنده ضروری می‌کند؛ امکان بومی‌سازی تمام رشته‌های موجود در صفحه را فراهم می‌سازد (تمام ترجمه‌ها در فایل <filename>templates</filename> هر تعامل قرار می‌گیرند)؛ رابط‌های متفاوتی برای نمایش پرسش‌ها به کاربر دارد (متنی، گرافیکی، غیر-تعاملی) و همچنین امکان پیاده‌سازی یک پایگاه‌داده متمرکز از پاسخ‌ها را می‌دهد تا بتوان روی رایانه‌های دیگر از آن استفاده کرد... اما مهم‌ترین قابلیت آن امکان نمایش تمام پرسش‌ها در یک سطر به کاربر است، قبل از اینکه یک فرآیند طولانی نصب یا بروزرسانی آغاز گردد. کاربر در اینجا می‌تواند به سایر کارهای خود برسد بدون آنکه نیازی به پاسخ دادن به پرسش‌های متعدد در زمان نصب یا بروزرسانی وجود داشته باشد.

en: In effect, in this situation, <command>dpkg</command> behaves as intelligently as possible: if the standard configuration file has not changed between the two versions, it does nothing. If, however, the file has changed, it will try to update this file. Two cases are possible: either the administrator has not touched this configuration file, in which case <command>dpkg</command> automatically installs the new version; or the file has been modified, in which case <command>dpkg</command> asks the administrator which version they wish to use (the old one with modifications, or the new one provided with the package). To assist in making this decision, <command>dpkg</command> offers to display a “<command>diff</command>” that shows the difference between the two versions. If the user chooses to retain the old version, the new one will be stored in the same location in a file with the <filename>.dpkg-dist</filename> suffix. If the user chooses the new version, the old one is retained in a file with the <filename>.dpkg-old</filename> suffix. Another available action consists of momentarily interrupting <command>dpkg</command> to edit the file and attempt to re-instate the relevant modifications (previously identified with <command>diff</command>).
fa-IR: در این وضعیت، <command>dpkg</command> به صورت هوشمندانه عمل می‌کند: اگر فایل پیکربندی استاندارد بین دو نسخه تغییری نکرده باشد، کاری انجام نمی‌دهد. اگر، در هر صورت، فایل تغییر کرده باشد، تلاش می‌کند تا آن را بروز نماید. دو حالت ممکن پیش می‌آید: یا مدیرسیستم اقدام به تغییر آن نکرده است که در این حالت <command>dpkg</command> به صورت خودکار نسخه جدید را نصب می‌کند؛ یا فایل تغییر کرده است، که در این حالت <command>dpkg</command> از مدیرسیستم می‌پرسد کدام نسخه را می‌خواهد نگهداری کند (نسخه قدیم با تغییرات یا نسخه جدید همراه با بسته). برای راهنمایی در اتخاذ این تصمیم، <command>dpkg</command> پیشنهاد می‌کند که یک “<command>diff</command>” از اختلاف بین دو فایل نمایش داده شود. اگر کاربر اقدام به حفظ نسخه قدیم کند، نسخه جدید در همان مسیر با پسوند <filename>.dpkg-dist</filename> ذخیره می‌گردد. اگر کاربر نسخه جدید را انتخاب کند، نسخه قدیم با پسوند <filename>.dpkg-old</filename> در همان مسیر ذخیره می‌گردد. یک اقدام دیگر این است که با توقف فعالیت <command>dpkg</command> اقدام به ویرایش فایل در آن لحظه کرده و سپس عملیات مرتبط با فراخوانی اختلاف بین دو فایل (که توسط <command>diff</command> مشخص گردید) را اجرا کنیم.

en: <emphasis>GOING FURTHER</emphasis> Force dpkg to ask configuration file questions
fa-IR: <emphasis>مطالعه بیشتر</emphasis> وادارکردن dpkg به پرسیدن سوالات پیکربندی

en: <emphasis>GOING FURTHER</emphasis> Avoiding the configuration file questions
fa-IR: <emphasis>مطالعه بیشتر</emphasis> پیشگیری از پرسش‌های فایل پیکربندی

en: <command>dpkg</command> handles configuration file updates, but, while doing so, regularly interrupts its work to ask for input from the administrator. This makes it less than enjoyable for those who wish to run updates in a non-interactive manner. This is why this program offers options that allow the system to respond automatically according to the same logic: <command>--force-confold</command> retains the old version of the file; <command>--force-confnew</command> will use the new version of the file (these choices are respected, even if the file has not been changed by the administrator, which only rarely has the desired effect). Adding the <command>--force-confdef</command> option tells <command>dpkg</command> to decide by itself when possible (in other words, when the original configuration file has not been touched), and only uses <command>--force-confnew</command> or <command>--force-confold</command> for other cases.
fa-IR: <command>dpkg</command> بروزرسانی‌های فایل پیکربندی را مدیریت می‌کند، اما در هنگام اجرای این عملیات، از مدیرسیستم پرسش‌هایی را مطرح می‌کند. این فرآیند برای افرادی که دوست دارند بروزرسانی بدون دخالت انسان صورت گیرد، ناخوشایند بنظر می‌آید. این همان دلیلی است که برنامه امکان ارائه پاسخ‌های پیش‌فرض به پرسش‌ها را بر اساس یک قاعده مشخص فراهم می‌آورد: <command>--force-confold</command> نسخه قبلی از فایل را حفظ می‌کند؛ <command>--force-confnew</command> از نسخه جدید فایل استفاده می‌کند (این گزینه‌ها اختیاری هستند، حتی اگر فایل توسط مدیرسیستم تغییر نکرده باشد، که به ندرت پیش می‌آید تاثیر مطلوبی داشته باشد). اضافه‌کردن گزینه <command>--force-confdef</command> به <command>dpkg</command> می‌گوید هر طور صلاح می‌داند با آن برخورد کند (به عبارت دیگر، زمانی که فایل پیکربندی اصلی تغییر نکرده باشد) و تنها از <command>--force-confnew</command> یا <command>--force-confold</command> برای سایر حالت‌ها استفاده کند.

en: Including this option in the configuration file means that it will also be used in a graphical interface such as <command>aptitude</command>.
fa-IR: قرار دادن این گزینه‌ها در فایل پیکربندی به این معنی است که توسط رابط‌های گرافیکی مانند <command>aptitude</command> نیز قابل دسترسی هستند.

en: Structure of a Source Package
fa-IR: ساختار یک بسته سورس

en: <primary>package</primary><secondary>source package</secondary>
fa-IR: <primary>بسته</primary><secondary>بسته مبدا</secondary>

en: Format
fa-IR: قالب

en: <primary>DSC file</primary>
fa-IR: <primary>فایل DSC</primary>

en: The <filename>.dsc</filename> (Debian Source Control) file is a short text file containing an RFC 2822 header (just like the <filename>control</filename> file studied in <xref linkend="sect.control" />) which describes the source package and indicates which other files are part thereof. It is signed by its maintainer, which guarantees authenticity. See <xref linkend="sect.package-authentication" /> for further details on this subject.
fa-IR: فایل <filename>.dsc</filename> یا Debian Source Control فایل کوتاهی است مبتنی بر استاندارد RFC 2822 (درست مانند فایل <filename>control</filename> که در قسمت <xref linkend="sect.control" /> بررسی شد) که بسته سورس و محتویات آن را مشخص می‌نماید. این فایل توسط توسعه‌دهنده آن امضا شده است که صحت آن را نمایش می‌دهد. برای مطالعه بیشتر در این زمینه به <xref linkend="sect.package-authentication" /> مراجعه کنید.

en: A <filename>.dsc</filename> file
fa-IR: یک فایل <filename>.dsc</filename>

en: Note that the source package also has dependencies (<literal>Build-Depends</literal>) completely distinct from those of binary packages, since they indicate tools required to compile the software in question and construct its binary package.
fa-IR: نکته اینکه بسته‌های سورس نیز وابستگی‌های مربوط به خود را دارند (<literal>Build-Depends</literal>) که کاملاً با وابستگی‌های موجود در بسته‌های باینری تفاوت دارد، چرا که شامل ابزاری جهت کامپایل کردن نرم‌افزار مورد نظر و ایجاد فایل باینری آن هستند.

en: <emphasis>CAUTION</emphasis> Distinct namespaces
fa-IR: <emphasis>احتیاط</emphasis> فضای‌نامگذاری منحصربفرد

en: It is important to note here that there is no required correspondence between the name of the source package and that of the binary package(s) that it generates. It is easy enough to understand if you know that each source package may generate several binary packages. This is why the <filename>.dsc</filename> file has the <literal>Source</literal> and <literal>Binary</literal> fields to explicitly name the source package and store the list of binary packages that it generates.
fa-IR: نکته حائر اهمیت در اینجا این است که ممکن است هیچ انطباقی بین نام بسته سورس و بسته باینری آن وجود نداشته باشد. درک این نکته ساده است که بدانید هر بسته سورس می‌تواند چندین بسته باینری ایجاد کند. این همان دلیلی است که فایل <filename>.dsc</filename> فیلدهای جداگانه‌ای برای <literal>Source</literal> و <literal>Binary</literal> دارد که به ازای هر بسته سورس، نام بسته باینری آن را تعیین کند.

en: <emphasis>CULTURE</emphasis> Why divide into several packages
fa-IR: <emphasis>فرهنگ</emphasis> علت تقسیم به چند بسته

en: Quite frequently, a source package (for a given software) can generate several binary packages. The split is justified by the possibility to use (parts of) the software in different contexts. Consider a shared library, it may be installed to make an application work (for example, <emphasis role="pkg">libc6</emphasis>), or it can be installed to develop a new program (<emphasis role="pkg">libc6-dev</emphasis> will then be the correct package). We find the same logic for client/server services where we want to install the server part on one machine and the client part on others (this is the case, for example, of <emphasis role="pkg">openssh-server</emphasis> and <emphasis role="pkg">openssh-client</emphasis>).
fa-IR: تقریباً در اکثر اوقات، یک بسته سورس (برای یک نرم‌افزار مورد نظر) می‌تواند چندین بسته باینری ایجاد کند. این تقسیم‌بندی به منظور احتمال استفاده (قسمتی از) نرم‌افزار در شرایط گوناگون در نظر گرفته می‌شود. یک کتابخانه اشتراکی را در نظر بگیرید، ممکن است به منظور اجرای یک برنامه نصب شده باشد (برای نمونه <emphasis role="pkg">libc6</emphasis>) یا ممکن است به منظور ایجاد یک برنامه جدید نصب شده باشد (در این حالت <emphasis role="pkg">libc6-dev</emphasis> بسته مورد نظر خواهد بود). این منطق در سرویس‌های client/server نیز وجود دارد که می‌خواهیم قسمت server را در یک ماشین و قسمت client را در ماشین دیگر نصب کنیم (برای نمونه، <emphasis role="pkg">openssh-server</emphasis> و <emphasis role="pkg">openssh-client</emphasis> برای سرویس OpenSSH).

en: <emphasis>PERSPECTIVE</emphasis> Different source package formats
fa-IR: <emphasis>چشم‌انداز</emphasis> قالب‌های متفاوت بسته سورس

en: Originally there was only one source package format. This is the <literal>1.0</literal> format, which associates an <filename>.orig.tar.gz</filename> archive to a <filename>.diff.gz</filename> “debianization” patch (there is also a variant, consisting of a single <filename>.tar.gz</filename> archive, which is automatically used if no <filename>.orig.tar.gz</filename> is available).
fa-IR: در ابتدا تنها یک قالب برای بسته سورس وجود داشت. این قالب <literal>1.0</literal> است که ارتباط بین یک آرشیو <filename>.orig.tar.gz</filename> با <filename>.diff.gz</filename> که فایل پچ “مخصوص دبیان” است را برقرار می‌کند (همچنین یک نسخه <filename>.tar.gz</filename> وجود دارد در صورتی که فایل <filename>.orig.tar.gz</filename> موجود نباشد).

en: The <filename>.orig.tar.gz</filename> file is an archive containing the source code as provided by the original developer. Debian package maintainers are asked to not modify this archive in order to be able to easily check the origin and integrity of the file (by simple comparison with a checksum) and to respect the wishes of some authors.
fa-IR: فایل <filename>.orig.tar.gz</filename> آرشیو شامل سورس کد از توسعه‌دهنده اصلی برنامه است. از توسعه‌دهندگان بسته در دبیان تقاضا می‌شود که این فایل را به منظور سازگاری هر چه بیشتر با فایل اصلی برنامه، تغییر ندهند (که این کار توسط یک عملیات مقایسه‌ای انجام می‌شود) و به نقظه نظرات نویسنده اصلی احترام بگذارند.

en: <emphasis>TOOL</emphasis> Decompressing a source package
fa-IR: <emphasis>ابزار</emphasis> خارج‌سازی بسته از حالت فشرده

en: <primary>decompressing, source package</primary>
fa-IR: <primary>decompress کردن بسته سورس</primary>

en: <primary>uncompressing, source package</primary>
fa-IR: <primary>uncompress کردن بسته سورس</primary>

en: <primary>unpacking</primary><secondary>source package</secondary>
fa-IR: <primary>unpack کردن</primary><secondary>بسته سورس</secondary>

en: If you have a source package, you can use the <command>dpkg-source</command> command (from the <emphasis role="pkg">dpkg-dev</emphasis> package) to decompress it:
fa-IR: اگر بسته سورسی دارید، می‌تواند با استفاده از دستور <command>dpkg-source</command> (از بسته <emphasis role="pkg">dpkg-dev</emphasis>) آن را از حالت فشرده خارج سازید:

en: Usage within Debian
fa-IR: کاربرد در دبیان

en: Manipulating Packages with <command>dpkg</command>
fa-IR: مدیریت بسته‌ها با استفاده از <command>dpkg</command>

en: <emphasis>NOTE</emphasis> <command>dpkg</command> or <command>apt</command>?
fa-IR: <emphasis>یادداشت</emphasis> <command>dpkg</command> یا <command>apt</command>؟

en: <command>dpkg</command> should be seen as a system tool (backend), and <command>apt</command> as a tool closer to the user, which overcomes the limitations of the former. These tools work together, each one with its particularities, suited to specific tasks.
fa-IR: <command>dpkg</command> باید به عنوان یک ابزار سیستمی (backend) و <command>apt</command> به عنوان یک ابزار سمت کاربر دیده شوند، که به محدودیت‌های اولی غلبه می‌کند. این ابزارها در کنار یکدیگر کار می‌کنند و هر یک ویژگی‌های خاص خود را دارند که برای فعالیت‌های مختلفی در نظر گرفته شده‌اند.

en: Installing Packages
fa-IR: نصب بسته‌ها

en: <primary>installation</primary><secondary>package installation</secondary>
fa-IR: <primary>نصب</primary><secondary>نصب بسته</secondary>

en: <command>dpkg</command> is, above all, the tool for installing an already available Debian package (because it does not download anything). To do this, we use its <literal>-i</literal> or <literal>--install</literal> option.
fa-IR: <command>dpkg</command>، فراتر از همه، ابزار مورد نیاز جهت نصب یک بسته دبیان موجود می‌باشد (چرا که خود نمی‌تواند دانلود کند). برای اینکار، از گزینه <literal>-i</literal> یا <literal>--install</literal> آن استفاده می‌کنیم.

en: Installation of a package with <command>dpkg</command>
fa-IR: نصب یک بسته با استفاده از <command>dpkg</command>

en: Separate unpacking and configuration
fa-IR: از حالت فشرده خارج کردن و پیکربندی به صورت جداگانه

en: <primary>package</primary><secondary>unpacking</secondary>
fa-IR: <primary>بسته</primary><secondary>خروج از حالت فشرده</secondary>

en: Sometimes <command>dpkg</command> will fail to install a package and return an error; if the user orders it to ignore this, it will only issue a warning; it is for this reason that we have the different <literal>--force-*</literal> options. The <command>dpkg --force-help</command> command, or documentation of this command, will give a complete list of these options. The most frequent error, which you are bound to encounter sooner or later, is a file collision. When a package contains a file that is already installed by another package, <command>dpkg</command> will refuse to install it. The following messages will then appear:
fa-IR: گاهی اوقات <command>dpkg</command> موفق به نصب یک بسته نمی‌شود و پیام خطایی باز می‌گرداند؛ اگر کاربر نخواهد این پیام را ببیند، تنها یک اخطار صادر می‌شود؛ به همین دلیل است که از نسخه‌های متفاوت گزینه <literal>--force-*</literal> استفاده می‌کنیم. دستور <command>dpkg --force-help</command> یا مستندات مربوط به آن، فهرستی از تمام گزینه‌های موجود را نمایش می‌دهد. متداول‌ترین خطا، که دیر یا زود با آن مواجه خواهید شد، وجود فایل مورد نظر روی سیستم است. زمانی که بسته شامل فایلی است که از قبل توسط بسته دیگری نصب شده است، <command>dpkg</command> از نصب آن خودداری می‌کند. آنگاه پیام‌های زیر صادر می‌شوند:

en: In this case, if you think that replacing this file is not a significant risk to the stability of your system (which is usually the case), you can use the option <literal>--force-overwrite</literal>, which tells <command>dpkg</command> to ignore this error and overwrite the file.
fa-IR: در این مورد، اگر فکر می‌کنید که جایگزین کردن فایل تاثیر بسزایی روی سیستم نخواهد گذاشت (که معمولا می‌گذارد)، می‌توانید از گزینه <literal>--force-overwrite</literal> استفاده کنید که به <command>dpkg</command> می‌گوید فایل جدید را جایگزین قبلی کند و از این خطا جلوگیری نماید.

en: <emphasis>CAUTION</emphasis> Effective use of <literal>--force-*</literal>
fa-IR: <emphasis>احتیاط</emphasis> کاربرد موثر <literal>--force-*</literal>

en: <primary>broken dependency</primary>
fa-IR: <primary>وابستگی از میان رفته</primary>

en: If you are not careful, the use of an option <literal>--force-*</literal> can lead to a system where the APT family of commands will refuse to function. In effect, some of these options allow installation of a package when a dependency is not met, or when there is a conflict. The result is an inconsistent system from the point of view of dependencies, and the APT commands will refuse to execute any action except those that will bring the system back to a consistent state (this often consists of installing the missing dependency or removing a problematic package). This often results in a message like this one, obtained after installing a new version of <emphasis role="pkg">rdesktop</emphasis> while ignoring its dependency on a newer version of the <emphasis role="pkg">libc6</emphasis>:
fa-IR: اگر در استفاده از گزینه‌های <literal>--force-*</literal> احتیاط نکنید، سیستم شما به حالتی می‌رود که هیچ یک از ابزار خانواده APT دیگر قادر به ادامه فعالیت خود نخواهند بود. در حقیقت، برخی از این گزینه‌ها با حالت‌هایی سروکار دارند که یک وابستگی رعایت نشده یا تداخلی در آن موجود باشد و به شما اجازه نصب را می‌دهند. نتیجه یک سیستم ناپایدار خواهد بود از نقطه نظر وابستگی‌ها و دستورات APT از اجرای هر فرمان جدید خودداری می‌کنند مگر آن دسته فرامین که به پایداری مجدد سیستم کمک کند (این گزینه شامل نصب وابستگی گم شده یا حذف بسته دردسرساز می‌باشد). پس از نصب نسخه جدید <emphasis role="pkg">rdesktop</emphasis> بدون در نظر گرفتن وابستگی جدید آن به <emphasis role="pkg">libc6</emphasis>، پیام‌های زیر صادر می‌شوند:

en: A courageous administrator who is certain of the correctness of their analysis may choose to ignore a dependency or conflict and use the corresponding <literal>--force-*</literal> option. In this case, if they want to be able to continue to use <command>apt</command> or <command>aptitude</command>, they must edit <filename>/var/lib/dpkg/status</filename> to delete/modify the dependency, or conflict, that they chose to override.
fa-IR: یک مدیرسیستم شجاع که نسبت به تحلیل وضعیت سیستم خود آگاهی دارد می‌تواند یک وابستگی را در نظر نگیرد یا از تداخل بسته‌ها بیمی نداشته باشد و از گزینه <literal>--force-*</literal> استفاده نماید. در این مورد، اگر بخواهد در ادامه از <command>apt</command> یا <command>apt</command> استفاده کند، باید فایل <filename>/var/lib/dpkg/status</filename> را ویرایش کرده و وابستگی یا تداخل مورد نظر را حذف/تغییر دهد.

en: Removal and purge of the <emphasis role="pkg">debian-cd</emphasis> package
fa-IR: حذف و پاکسازی بسته <emphasis role="pkg">debian-cd</emphasis>

en: Querying <command>dpkg</command>'s Database and Inspecting <filename>.deb</filename> Files
fa-IR: فراخوانی پایگاه‌داده <command>dpkg</command> و جستجوی فایل‌های <filename>.deb</filename>

en: <primary>package</primary><secondary>status</secondary>
fa-IR: <primary>بسته</primary><secondary>وضعیت</secondary>

en: <primary>package</primary><secondary>file list</secondary>
fa-IR: <primary>بسته</primary><secondary>فهرست فایل</secondary>

en: <primary>package</primary><secondary>content inspection</secondary>
fa-IR: <primary>بسته</primary><secondary>کاوش محتوا</secondary>

en: <emphasis>BACK TO BASICS</emphasis> Option syntax
fa-IR: <emphasis>بازگشت به مقدمات</emphasis> شیوه نحوه گزینه‌های جانبی

en: Most options are available in a “long” version (one or more relevant words, preceded by a double dash) and a “short” version (a single letter, often the initial of one word from the long version, and preceded by a single dash). This convention is so common that it is a POSIX standard.
fa-IR: اکثر گزینه‌ها به صورت نسخه “بلند” (یک یا چند کلمه مرتبط، بعد از کاراکتر --) و یک نسخه “کوتاه” (یک کاراکتر، معمولا حرف اول نسخه کامل کلمه، بعد از کاراکتر -) هستند. این قاعده به عنوان یک استاندارد POSIX به حساب می‌آید.

en: Various queries with <command>dpkg</command>
fa-IR: پرس و جوهای گوناگون با استفاده از <command>dpkg</command>

en: <emphasis>GOING FURTHER</emphasis> Comparison of versions
fa-IR: <emphasis>مطالعه بیشتر</emphasis> مقایسه نسخه‌ها

en: <primary>version, comparison</primary>
fa-IR: <primary>نسخه، مقایسه</primary>

en: <primary>comparison of versions</primary>
fa-IR: <primary>مقایسه نسخه‌ها</primary>

en: Since <command>dpkg</command> is the program for handling Debian packages, it also provides the reference implementation of the logic of comparing version numbers. This is why it has a <literal>--compare-versions</literal> option, usable by external programs (especially configuration scripts executed by <command>dpkg</command> itself). This option requires three parameters: a version number, a comparison operator, and a second version number. The different possible operators are <literal>lt</literal> (strictly less than), <literal>le</literal> (less than or equal to), <literal>eq</literal> (equal), <literal>ne</literal> (not equal), <literal>ge</literal> (greater than or equal to), and <literal>gt</literal> (strictly greater than). If the comparison is correct, <command>dpkg</command> returns 0 (success); if not, it gives a non-zero return value (indicating failure).
fa-IR: از آنجایی که <command>dpkg</command> برنامه اصلی برای سر و کار داشتن با بسته‌های دبیان است، همچنین امکان مقایسه منطقی بین نسخه‌های مختلف از یک برنامه را فراهم می‌آورد. به همین دلیل است که گزینه <literal>--compare-versions</literal> موجود می‌باشد، که اغلب توسط برنامه‌های دیگر مانند اسکریپت‌های پیکربندی (که توسط خود <command>dpkg</command> اجرا می‌شوند) مورد استفاده قرار می‌گیرد. این گزینه به سه پارامتر نیاز دارد: نسخه اول، عملگر و نسخه دوم. عملگرهای متفاوت عبارتند: از <literal>lt</literal> (کوچکتر)، <literal>le</literal> (کوچکتر یا مساوی)، <literal>eq</literal> (مساوی)، <literal>ne</literal> (نامساوی)، <literal>ge</literal> (بزرگتر یا مساوی) و gt (بزرگتر). اگر مقایسه صحیح باشد، <command>dpkg</command> عدد ۰ را باز می‌گرداند (موفقیت)؛ در غیر اینصورت، یک مقدار غیر صفر را نمایش می‌دهد (نشانه شکست).

en: Note the unexpected failure of the last comparison: for <command>dpkg</command>, <literal>pre</literal>, usually denoting a pre-release, has no particular meaning, and this program compares the alphabetic characters in the same way as the numbers (a &lt; b &lt; c ...), in alphabetical order. This is why it considers “<literal>0pre3</literal>” to be greater than “<literal>0</literal>”. When we want a package's version number to indicate that it is a pre-release, we use the tilde character, “<literal>~</literal>”:
fa-IR: به شسکت غیرمنتظره از آخرین مقایسه توجه کنید: برای <command>dpkg</command>، عبارت <literal>pre</literal>، که به معنی pre-release است، هیچ معنای خاصی ندارد و این برنامه عمل مقایسه روی کاراکترهای الفبایی را مانند اعداد (a &lt; b &lt; c) انجام می‌دهد، به ترتیب الفبایی. به همین دلیل است که تشخیص داد “<literal>0pre3</literal>” از “<literal>0</literal>” بزرگتر است. اگر بخواهیم نشان دهیم که نسخه یک بسته نشان‌دهنده یک pre-release است از کاراکتر “<literal>~</literal>” استفاده می‌کنیم:

en: <command>dpkg</command>'s Log File
fa-IR: فایل لاگ <command>dpkg</command>

en: <command>dpkg</command> keeps a log of all of its actions in <filename>/var/log/dpkg.log</filename>. This log is extremely verbose, since it details every one of the stages through which packages handled by <command>dpkg</command> go. In addition to offering a way to track dpkg's behavior, it helps, above all, to keep a history of the development of the system: one can find the exact moment when each package has been installed or updated, and this information can be extremely useful in understanding a recent change in behavior. Additionally, all versions being recorded, it is easy to cross-check the information with the <filename>changelog.Debian.gz</filename> for packages in question, or even with online bug reports.
fa-IR: <command>dpkg</command> مجموعه تمام رخدادهای خود را درون فایل <filename>/var/log/dpkg.log</filename> ذخیره می‌کند. این فایل تمام عملیات انجام شده توسط <command>dpkg</command> را به همراه جزئیات نمایش می‌دهد. در کنار ایجاد روشی جهت ردیابی عملکرد dpkg، این فایل تاریخچه‌ای از عملیات انجام شده روی سیستم را ذخیره می‌کند: به راحتی می‌توان تشخیص داد در هر لحظه چه بسته‌ای اضافه یا حذف شده است و این اطلاعات به درک و بررسی اتفاقات اخیر روی سیستم کمک شایانی می‌کند. به علاوه، تمام نسخه‌ها نیز نگهداری می‌شوند که این امر فرآیند بررسی اطلاعات موجود را با فایل <filename>changelog.Debian.gz</filename> برای بسته مورد نظر یا حتی گزارش‌های آنلاین باگ، تسهیل می‌نماید.

en: Multi-Arch Support
fa-IR: پشتیبانی از چند-معماری

en: <primary>Multi-Arch</primary>
fa-IR: <primary>چند-معماری</primary>

en: <primary>architecture</primary><secondary>multi-arch support</secondary>
fa-IR: <primary>معماری</primary><secondary>پشتیبانی از چند-معماری</secondary>

en: All Debian packages have an <literal>Architecture</literal> field in their control information. This field can contain either “<literal>all</literal>” (for packages that are architecture independent) or the name of the architecture that it targets (like “amd64”, “armhf”, …). In the latter case, by default, <command>dpkg</command> will only accept to install the package if its architecture matches the host's architecture as returned by <command>dpkg --print-architecture</command>.
fa-IR: تمام بسته‌های دبیان دارای یک فیلد <literal>Architecture</literal> در فایل کنترلی خود هستند. این فیلد می‌تواند شامل “<literal>all</literal>” (برای بسته‌های مستقل از یک معماری خاص) یا نام معماری‌های مورد نظر (مانند “armhf”، “amd64” و ...) باشد. در مورد آخر، <command>dpkg</command> تنها در صورتی اقدام به نصب بسته می‌کند که معماری آن با معماری سیستم موجود که توسط دستور <command>dpkg --print-architecture</command> مشخص می‌شود، یکسان باشد.

en: This restriction ensures that users do not end up with binaries compiled for an incorrect architecture. Everything would be perfect except that (some) computers can run binaries for multiple architectures, either natively (an “amd64“ system can run “i386” binaries) or through emulators.
fa-IR: این محدودیت تضمین می‌کند که کاربران به اشتباه از یک باینری معماری دیگر استفاده نکنند. همه چیز خوب پیش می‌رود به جز (برخی) رایانه‌هایی که قادر به اجرای باینری‌های معماری‌های متفاوت هستند، خواه به صورت پیش‌فرض (یک سیستم “amd64“ می‌تواند باینری‌های “i386“ را اجرا کند) یا با استفاده از شبیه‌سازها.

en: Enabling Multi-Arch
fa-IR: فعال‌سازی چند-معماری

en: <command>dpkg</command>'s multi-arch support allows users to define “foreign architectures” that can be installed on the current system. This is simply done with <command>dpkg --add-architecture</command> like in the example below. There is a corresponding <command>dpkg --remove-architecture</command> to drop support of a foreign architecture, but it can only be used when no packages of this architecture remain.
fa-IR: قابلیت پشتیبانی از چند معماری در <command>dpkg</command> به کاربران امکان تعریف “معماری‌های خارجی” که می‌توانند روی سیستم نصب شوند را می‌دهد. اینکار به راحتی با دستور <command>dpkg--add-architecture</command> که در ادامه می‌بینیم، انجام می‌شود. همچنین دستور متناظر با آن <command>dpkg--remove-architecture</command> است که پشتیبانی از یک معماری خارجی را متوقف می‌سازد، اما تنها زمانی قابل استفاده است که هیچ بسته‌ای از این معماری روی سیستم نصب نباشد.

en: <emphasis>NOTE</emphasis> APT's multi-arch support
fa-IR: <emphasis>یادداشت</emphasis> پشتیبانی از چند-معماری در APT

en: Foreign packages can then be installed with <command>apt install <replaceable>package</replaceable>:<replaceable>architecture</replaceable></command>.
fa-IR: بسته‌های خارجی می‌توانند با استفاده از دستور <command>apt install <replaceable>package</replaceable>:<replaceable>architecture</replaceable></command> نصب گردند.

en: <emphasis>IN PRACTICE</emphasis> Using proprietary i386 binaries on amd64
fa-IR: <emphasis>در عمل</emphasis> استفاده از باینری‌های اختصاصی i386 در amd64

en: Multi-Arch Related Changes
fa-IR: تغییرات مربوط به چند-معماری

en: It is worth noting that <literal>Multi-Arch: same</literal> packages must have their names qualified with their architecture to be unambiguously identifiable. They also have the possibility to share files with other instances of the same package; <command>dpkg</command> ensures that all packages have bit-for-bit identical files when they are shared. Last but not least, all instances of a package must have the same version. They must thus be upgraded together.
fa-IR: شایان ذکر است که بسته‌های <literal>Multi-Arch: same</literal> باید در انتهای نام خود، معماری را ذکر کنند تا به تنهایی قابل تشخیص از سایر بسته‌ها گردند. همچنین احتمال به اشتراک‌گذاری فایل‌ها از یک نمونه دیگر از آن بسته وجود دارد؛ <command>dpkg</command> اطمینان می‌یابد که تمام بسته‌ها زمانی که به اشتراک گذاشته می‌شوند فایل‌های یکسان و بیت به بیت دارند. در انتها، تمام نمونه‌های یک بسته باید از یک نسخه تبعیت کنند. همچنین باید با یکدیگر بروزرسانی گردند.

en: Multi-Arch support also brings some interesting challenges in the way dependencies are handled. Satisfying a dependency requires either a package marked “<literal>Multi-Arch: foreign</literal>” or a package whose architecture matches the one of the package declaring the dependency (in this dependency resolution process, architecture-independent packages are assumed to be of the same architecture than the host). A dependency can also be weakened to allow any architecture to fulfill it, with the <literal><replaceable>package</replaceable>:any</literal> syntax, but foreign packages can only satisfy such a dependency if they are marked “<literal>Multi-Arch: allowed</literal>”.
fa-IR: پشتیبانی از چند-معماری همراه با چالش‌های جالبی در رابطه با شیوه مدیریت وابستگی‌ها است. رعایت یک وابستگی نیازمند این است که یا بسته به عنوان “<literal>Multi-Arch: foreign</literal>” نشانه‌گذاری شده باشد یا معماری آن با معماری وابستگی‌اش یکسان باشد (در این فرآیند، بسته‌هایی که مستقل از یک معماری هستند به عنوان بسته‌های سازگار با معماری سیستم در نظر گرفته می‌شوند). همچنین یک وابستگی می‌تواند به منظور اجرا در سیستم، ضعیف گردد، با استفاده از <literal><replaceable>package</replaceable>:any</literal>، اما بسته‌های خارجی تنها در حالتی می‌توانند این وابستگی را رعایت کنند که به عنوان “<literal>Multi-Arch: allowed</literal>” نشانه‌گذاری شده باشند.

en: Coexistence with Other Packaging Systems
fa-IR: همزیستی با سایر سیستم‌های بسته‌بندی

en: Debian packages are not the only software packages used in the free software world. The main competitor is the RPM format of the Red Hat Linux distribution and its many derivatives. Red Hat is a very popular, commercial distribution. It is thus common for software provided by third parties to be offered as RPM packages rather than Debian.
fa-IR: بسته‌های دبیان تنها بسته‌های نرم‌افزاری موجود در دنیای نرم‌افزار آزاد نیستند. رقیب اصلی آن‌ها قالب RPM از توزیع ردهت و مشتقات آن می‌باشد. ردهت یک توزیع بسیار محبوب و تجاری است. به همین دلیل طبیعی است که نرم‌افزارهای شخص ثالث، در قالب بسته‌های ردهت ارائه شوند تا دبیان.

en: In this case, you should know that the program <command>rpm</command>, which handles RPM packages, is available as a Debian package, so it is possible to use this package format on Debian. Care should be taken, however, to limit these manipulations to extract the information from a package or to verify its integrity. It is, in truth, unreasonable to use <command>rpm</command> to install an RPM on a Debian system; RPM uses its own database, separate from those of native software (such as <command>dpkg</command>). This is why it is not possible to ensure a stable coexistence of two packaging systems.
fa-IR: در این مورد، باید بدانید برنامه <command>rpm</command>، که بسته‌های RPM را مدیریت می‌کند، خود به عنوان یک بسته دبیان موجود است، بنابراین امکان استفاده از آن در دبیان وجود دارد. اگرچه، احتیاط شرط عقل است و هنگام استخراج اطلاعات از یک بسته یا بررسی جامعیت آن، باید دقت لازم را داشته باشید. در حقیقت، استفاده از <command>rpm</command> به منظور نصب یک بسته RPM در دبیان غیرمنطقی به نظر می‌رسد؛ RPM از پایگاه‌داده خود استفاده می‌کند، که جدای از پایگاه‌داده <command>dpkg</command> است. به همین دلیل امکان تضمین همزیستی مسالمت‌آمیز بین این دو سیستم وجود ندارد.

en: On the other hand, the <emphasis role="pkg">alien</emphasis> utility can convert RPM packages into Debian packages, and vice versa.
fa-IR: از طرف دیگر، برنامه <emphasis role="pkg">alien</emphasis> قابلیت تبدیل بسته‌های RPM به دبیان و برعکس را دارد.

en: <emphasis>COMMUNITY</emphasis> Encouraging the adoption of <filename>.deb</filename>
fa-IR: <emphasis>جامعه کاربری</emphasis> تشویق به قبول <filename>.deb</filename>

en: You will find that this process is extremely simple. You must know, however, that the package generated does not have any dependency information, since the dependencies in the two packaging formats don't have systematic correspondence. The administrator must thus manually ensure that the converted package will function correctly, and this is why Debian packages thus generated should be avoided as much as possible. Fortunately, Debian has the largest collection of software packages of all distributions, and it is likely that whatever you seek is already in there.
fa-IR: متوجه می‌شوید که این فرآیند بسیار ساده است. اگرچه، باید بدانید که بسته تولید شده اطلاعاتی درباره وابستگی‌های مورد نیازش ندارد، چرا که وابستگی‌های در دو سیستم کاملا جداگانه تعریف شده و با یکدیگر سازگاری مشخصی ندارند. مدیرسیستم خود باید تضمین کند که بسته تبدیل شده به درستی کار خواهد کرد، این دلیلی است که بسته‌های دبیان که به این روش تولید می‌شوند تا آنجا که ممکن است نباید استفاده گردند. خوشبختانه، دبیان دارای بزرگترین مجموعه از بسته‌های نرم‌افزاری در بین تمام توزیع‌ها است و به احتمال زیاد هر آنچه شما بخواهید در آن وجود دارد.

en: Looking at the man page for the <command>alien</command> command, you will also note that this program handles other packaging formats, especially the one used by the Slackware distribution (it is made of a simple <filename>tar.gz</filename> archive).
fa-IR: با نگاه به صفحه راهنمای <command>alien</command> متوجه می‌شوید که این برنامه از سایر قالب‌های بسته‌بندی نیز پشتیبانی می‌کند، به خصوص قالب مورد استفاده در توزیع Slackware (که از یک آرشیو ساده <filename>tar.gz</filename> تشکیل شده است).

en: The stability of the software deployed using the <command>dpkg</command> tool contributes to Debian's fame. The APT suite of tools, described in the following chapter, preserves this advantage, while relieving the administrator from managing the status of packages, a necessary but difficult task.
fa-IR: پایداری نرم‌افزار توزیع شده توسط ابزار <command>dpkg</command> به شهرت دبیان افزوده است. مجموعه ابزار APT، که در فصل بعد بررسی می‌کنیم، از این برتری استفاده می‌کند، به صورتی که مدیرسیستم دیگر نگرانی درباره نحوه مدیریت وضعیت یک بسته نخواهد داشت، یک وظیفه لازم اما دشوار.
