Add new chapters' translations
Obtained from: FreeBSD Mongolian Documentation project
This commit is contained in:
parent
1a04b60e4f
commit
b0bb8078c9
Notes:
svn2git
2020-12-08 03:00:23 +00:00
svn path=/head/; revision=32982
6 changed files with 1549 additions and 0 deletions
18
mn_MN.UTF-8/books/handbook/dtrace/Makefile
Normal file
18
mn_MN.UTF-8/books/handbook/dtrace/Makefile
Normal file
|
@ -0,0 +1,18 @@
|
|||
#
|
||||
# The FreeBSD Mongolian Documentation Project
|
||||
#
|
||||
# Original revision 1.1
|
||||
#
|
||||
# Build the Handbook with just the content from this chapter.
|
||||
#
|
||||
# $FreeBSD$
|
||||
|
||||
CHAPTERS= dtrace/chapter.sgml
|
||||
|
||||
VPATH= ..
|
||||
|
||||
MASTERDOC= ${.CURDIR}/../${DOC}.${DOCBOOKSUFFIX}
|
||||
|
||||
DOC_PREFIX?= ${.CURDIR}/../../../..
|
||||
|
||||
.include "../Makefile"
|
377
mn_MN.UTF-8/books/handbook/dtrace/chapter.sgml
Normal file
377
mn_MN.UTF-8/books/handbook/dtrace/chapter.sgml
Normal file
|
@ -0,0 +1,377 @@
|
|||
<!--
|
||||
The FreeBSD Mongolian Documentation Project
|
||||
|
||||
Original revision 1.1
|
||||
|
||||
$FreeBSD$
|
||||
-->
|
||||
|
||||
<chapter id="dtrace">
|
||||
<chapterinfo>
|
||||
<authorgroup>
|
||||
<author>
|
||||
<firstname>Том</firstname>
|
||||
<surname>Рөүдс</surname>
|
||||
<contrib>Бичсэн </contrib>
|
||||
</author>
|
||||
</authorgroup>
|
||||
</chapterinfo>
|
||||
|
||||
<title>DTrace</title>
|
||||
|
||||
<para>DTrace буюу Dynamic Tracing (Динамик Мөрдөлт) нь
|
||||
үйлдвэрлэлд ашиглаж байгаа болон ашиглахын өмнөх системүүдэд
|
||||
үйл ажиллагааны саад тотгоруудыг олоход зориулагдсан &sun;-с
|
||||
хөгжүүлсэн хэрэгсэл юм. Энэ нь ямар ч тохиолдолд дибаг хийгч хэрэгсэл
|
||||
биш боловч үйл ажиллагаа болон бусад асуудлуудыг цаг тухайд нь олох
|
||||
системийн анализ хийхэд зориулагдсан хэрэгсэл юм.</para>
|
||||
|
||||
<para>DTrace нь системийн асуудлуудыг оношлоход зориулагдсан
|
||||
сэтгэл хөдлөм боломжуудтай гайхамшигтай профиль хийгч хэрэгсэл юм.
|
||||
Энэ нь өөрийн боломжуудыг ашиглахын тулд өмнө нь бичигдсэн скриптүүдийг
|
||||
ажиллуулж бас болдог. Хэрэглэгчид нь тусгай зориулалтаар өөрсдийн профиль
|
||||
хийлтийг өөрчлөх боломжтой DTrace D хэлийг ашиглан бүр өөрсдийн
|
||||
хэрэгслүүдийг зохиож болох юм.</para>
|
||||
|
||||
<sect1 id="dtrace-synopsis">
|
||||
<title>Ерөнхий агуулга</title>
|
||||
|
||||
<indexterm><primary>DTrace</primary></indexterm>
|
||||
<indexterm>
|
||||
<primary>DTrace support</primary>
|
||||
<see>DTrace</see>
|
||||
</indexterm>
|
||||
|
||||
<para>Энэ бүлгийг уншсаны дараа, та дараах зүйлсийг мэдэх болно:</para>
|
||||
|
||||
<itemizedlist>
|
||||
<listitem>
|
||||
<para>DTrace гэж юу болох ямар ямар боломжуудаар хангадаг талаар.</para>
|
||||
</listitem>
|
||||
|
||||
<listitem>
|
||||
<para>&solaris;-ийн DTrace шийдэл болон &os;-д байгаа хоёрын хоорондын
|
||||
ялгаанууд.</para>
|
||||
</listitem>
|
||||
|
||||
<listitem>
|
||||
<para>&os; дээр DTrace-ийг хэрхэн идэвхжүүлж ашиглах талаар.</para>
|
||||
</listitem>
|
||||
</itemizedlist>
|
||||
|
||||
<para>Энэ бүлгийг уншихаасаа өмнө та дараах зүйлсийг гүйцэтгэх хэрэгтэй:</para>
|
||||
|
||||
<itemizedlist>
|
||||
<listitem>
|
||||
<para>&unix; болон &os;-ийн үндсүүдийг
|
||||
(<xref linkend="basics">) ойлгох.</para>
|
||||
</listitem>
|
||||
|
||||
<listitem>
|
||||
<para>Цөмийн тохиргоо/эмхэтгэлтийн
|
||||
(<xref linkend="kernelconfig">) үндсийг мэддэг байх.</para>
|
||||
</listitem>
|
||||
|
||||
<listitem>
|
||||
<para>Аюулгүй байдлын талаар болон энэ нь &os;-д хэрхэн хамааралтай
|
||||
байх талаар зарим ойлголттой байх (<xref linkend="security">).</para>
|
||||
</listitem>
|
||||
|
||||
<listitem>
|
||||
<para>&os; эхийг хэрхэн авч дахин бүтээх талаар ойлгох
|
||||
(<xref linkend="cutting-edge">).</para>
|
||||
</listitem>
|
||||
</itemizedlist>
|
||||
|
||||
<!--
|
||||
Temporary warning to avoid listing experimental versions
|
||||
and production versions of FreeBSD with this technology.
|
||||
-->
|
||||
<warning>
|
||||
<para>Энэ боломж нь туршилтын гэж тооцогддог. Зарим тохиргоонууд
|
||||
ажиллагааны хувьд дутуу, зарим хэсэг нь ерөөсөө ажиллахгүй
|
||||
байж болох юм. Цагийн явцад энэ боломж нь үйлдвэрлэлд ашиглагдахад
|
||||
бэлэн гэж тооцогдох бөгөөд энэ баримт нь тэр тохиолдолд таарахаар
|
||||
өөрчлөгдөх болно.</para>
|
||||
</warning>
|
||||
</sect1>
|
||||
|
||||
<sect1 id="dtrace-implementation">
|
||||
<title>Шийдлийн ялгаанууд</title>
|
||||
|
||||
<para>&os; дээрх DTrace нь &solaris;-д байдагтай маш төстэй
|
||||
боловч цааш үргэлжлүүлэхээсээ өмнө тайлбарлах ёстой ялгаанууд
|
||||
байдаг. Хэрэглэгчдийн мэдрэх үндсэн ялгаа нь &os; дээр DTrace нь
|
||||
тусгайлан идэвхжүүлэх ёстой байдаг. DTrace нь зөв ажиллахын
|
||||
тулд идэвхжүүлсэн байх ёстой цөмийн тохиргоонууд болон модулиуд
|
||||
байдаг. Эдгээрийг дараа тайлбарлах болно.</para>
|
||||
|
||||
<para><acronym>CTF</acronym> өгөгдлийг цөмийн модуль болон цөмөөс
|
||||
өөрөөс нь дуудахад зориулсан дэмжлэгийг идэвхжүүлэх цөмийн
|
||||
<literal>DDB_CTF</literal> тохиргоо байдаг.
|
||||
<acronym>CTF</acronym> нь &solaris;-ийн Compressed C Type
|
||||
буюу Шахсан C Төрөл бөгөөд <acronym>DWARF</acronym> болон
|
||||
venerable stab-уудтай (хүндтэй хатгалтууд) адил дибаг мэдээллийн
|
||||
багасгасан хэлбэрийг агуулдаг. Энэ <acronym>CTF</acronym> өгөгдөл нь
|
||||
<command>ctfconvert</command> болон <command>ctfmerge</command>
|
||||
гэсэн бүтээх хэрэгслүүдээр хоёртын файлуудад нэмэгддэг.
|
||||
<command>ctfconvert</command> хэрэгсэл нь эмхэтгэгчийн үүсгэсэн
|
||||
<acronym>DWARF</acronym> дибаг <acronym>ELF</acronym> хэсгүүдийг
|
||||
задлан ялгаж <command>ctfmerge</command> нь обьектуудын
|
||||
<acronym>CTF</acronym> <acronym>ELF</acronym> хэсгүүдийг
|
||||
ажилладаг файлууд юм уу эсвэл хуваалцсан сангууд руу нийлүүлдэг.
|
||||
Цөм болон &os; бүтээлтэд зориулж үүнийг хэрхэн идэвхжүүлэх талаар
|
||||
дэлгэрэнгүй тайлбар удахгүй бичигдэх болно.</para>
|
||||
|
||||
<para>&solaris;-д байдгаас өөр хангагчид &os;-д байдаг.
|
||||
Хамгийн алдартай нь <literal>dtmalloc</literal> хангагч бөгөөд
|
||||
&os; цөмд <function>malloc()</function>-ийг төрлөөр нь мөрдөх
|
||||
боломжийг бүрдүүлдэг.</para>
|
||||
|
||||
<para>Зөвхөн <username>root</username> DTrace-ийг &os; дээр ашиглаж болно.
|
||||
Энэ нь аюулгүй байдлын ялгаатай холбоотой бөгөөд &os;-д байдаггүй хэдэн
|
||||
доод түвшний аюулгүй байдлын шалгалтууд &solaris;-д байдаг. Тийм болохоор
|
||||
<devicename>/dev/dtrace/dtrace</devicename> нь зөвхөн
|
||||
<username>root</username> хэрэглэгчээр хатуу хязгаарлагдсан байдаг.</para>
|
||||
|
||||
<para>Төгсгөлд нь DTrace програм хангамж нь &sun;-ий <acronym>CDDL</acronym>
|
||||
лицензийн доор байдаг. <literal>Common Development
|
||||
and Distribution License</literal> буюу Нийтлэг Хөгжүүлэлт ба Түгээлтийн
|
||||
Лиценз нь &os;-тэй цуг ирдэг бөгөөд
|
||||
<filename>/usr/src/cddl/contrib/opensolaris/OPENSOLARIS.LICENSE</filename>
|
||||
юм уу эсвэл онлайн хэлбэрээр
|
||||
<ulink url="http://www.opensolaris.org/os/licensing">
|
||||
http://www.opensolaris.org/os/licensing</ulink> хаягаас харж болно.</para>
|
||||
|
||||
<para>Энэ лиценз нь DTrace тохиргоотой &os; цөм нь <acronym>BSD</acronym>
|
||||
лицензтэй хэвээр гэсэн үг боловч модулиуд нь хоёртын хэлбэрээр түгээгдэх үед
|
||||
юм уу эсвэл хоёртын файлууд дуудагдсан үед <acronym>CDDL</acronym> нь
|
||||
хүчин төгөлдөр болдог.</para>
|
||||
</sect1>
|
||||
|
||||
<sect1 id="dtrace-enable">
|
||||
<title>DTrace дэмжлэгийг идэвхжүүлэх</title>
|
||||
|
||||
<para>DTrace-д зориулсан дэмжлэгийг идэвхжүүлэхийн
|
||||
тулд дараах мөрүүдийг цөмийн тохиргооны файлд нэмнэ:</para>
|
||||
|
||||
<programlisting>options KDTRACE_HOOKS
|
||||
options DDB_CTF</programlisting>
|
||||
|
||||
<note>
|
||||
<para>AMD64 архитектурын хэрэглэгчид өөрсдийн цөмийн тохиргооны
|
||||
файлдаа дараах мөрийг нэмэхийг хүсэх болно:</para>
|
||||
|
||||
<programlisting>options KDTRACE_FRAME</programlisting>
|
||||
|
||||
<para>Энэ тохиргоо нь <acronym>FBT</acronym> боломжид зориулсан
|
||||
дэмжлэгийг хангадаг. DTrace нь энэ тохиргоогүйгээр ажилладаг боловч
|
||||
функцийн хязгаарын мөрдөлтөд зориулсан дэмжлэг хязгаарлагдмал байх болно.</para>
|
||||
</note>
|
||||
|
||||
<para>Бүх эх CTF тохиргоонуудтай дахин бүтээгдэж суулгагдсан байх ёстой.
|
||||
Ингэхийн тул &os;-ийн эхийг доорх тушаалуудыг ашиглан дахин бүтээнэ:</para>
|
||||
|
||||
<screen>&prompt.root; <userinput>cd /usr/src</userinput>
|
||||
&prompt.root; <userinput>make WITH_CTF=1 buildworld</userinput>
|
||||
&prompt.root; <userinput>make WITH_CFT=1 kernel</userinput>
|
||||
&prompt.root; <userinput>make WITH_CFT=1 installworld</userinput>
|
||||
&prompt.root; <userinput>mergemaster -Ui</userinput></screen>
|
||||
|
||||
<para>Системийг дахин ачаалах хэрэгтэй.</para>
|
||||
|
||||
<para>Дахин ачаалж шинэ цөмийг санах ойд дуудагдсаны дараа Korn бүрхүүлийн
|
||||
дэмжлэгийг нэмэх хэрэгтэй. DTrace хэрэгслүүд нь <command>ksh</command>
|
||||
дээр бичигдсэн хэд хэдэн хэрэгслүүдтэй болохоор энэ нь хэрэгтэй юм.
|
||||
<filename role="package">shells/ksh93</filename>-г суулгах хэрэгтэй.
|
||||
Эдгээр хэрэгслүүдийг <filename role="package">shells/pdksh</filename> эсвэл
|
||||
<filename role="package">shells/mksh</filename> дээр
|
||||
ажиллуулж бас болно.</para>
|
||||
|
||||
<para>Төгсгөлд нь одоогийн DTrace хэрэгслүүдийг олж авах хэрэгтэй. Одоогийн
|
||||
хувилбар нь <ulink url="http://www.opensolaris.org/os/community/dtrace/dtracetoolkit/">
|
||||
http://www.opensolaris.org/os/community/dtrace/dtracetoolkit/</ulink> хаягт
|
||||
байрладаг. Суулгах арга зам цуг байдаг боловч суулгалт нь багцалсан хэрэгслүүдийг
|
||||
ашиглахыг шаарддаггүй.</para>
|
||||
</sect1>
|
||||
|
||||
<sect1 id="dtrace-using">
|
||||
<title>DTrace-г ашиглах</title>
|
||||
|
||||
<para>DTrace боломжийг ашиглахаас өмнө DTrace төхөөрөмж байх хэрэгтэй.
|
||||
Төхөөрөмжийг дуудахын тулд дараах тушаалыг ажиллуулна:</para>
|
||||
|
||||
<screen>&prompt.root; <userinput>kldload dtraceall</userinput></screen>
|
||||
|
||||
<para>DTrace дэмжлэг одоо боломжтой болсон байх ёстой. Бүх шалгалтыг
|
||||
харахын тулд администратор дараах тушаалыг одоо ажиллуулж болно:</para>
|
||||
|
||||
<screen>&prompt.root; <userinput>dtrace -l | more</userinput></screen>
|
||||
|
||||
<para>Дэлгэцийн буфферийг түргэн дүүргэх болохоор бүх гаралтыг
|
||||
<command>more</command> хэрэгсэл рүү дамжуулдаг. Энд хүрэхэд
|
||||
DTrace-ийг ажиллаж байна гэж үзнэ. Одоо уг хэрэгслийг шалгаж үзэх
|
||||
цаг боллоо.</para>
|
||||
|
||||
<para>Уг хэрэгсэл нь системийн мэдээллийг цуглуулахын тулд DTrace-тэй цуг
|
||||
ажиллуулж болох ашиглахад бэлэн скриптүүдийн цуглуулга юм. Нээлттэй
|
||||
файлууд, санах ой,<acronym>CPU</acronym>-ийн хэрэглээ болон өөр олон
|
||||
зүйлсийг шалгах скриптүүд байдаг. Скриптүүдийг дараах тушаалаар
|
||||
задалж болно:</para>
|
||||
|
||||
<screen>&prompt.root; <userinput>gunzip -c DTraceToolkit* | tar xvf -</userinput></screen>
|
||||
|
||||
<para><command>cd</command> ашиглан тэр сан руу өөрчилж жижиг үсгээр бичигдсэн
|
||||
нэртэй бүх файлууд дээр ажиллуулах зөвшөөрлүүдийг <literal>755</literal>
|
||||
руу өөрчлөх хэрэгтэй.</para>
|
||||
|
||||
<para>Эдгээр бүх скриптүүдийн агуулгад өөрчлөлт хийх хэрэгтэй
|
||||
болно. <filename>/usr/bin/ksh</filename> гэснийг
|
||||
<filename>/usr/local/bin/ksh</filename> болгох ёстой
|
||||
бөгөөд <filename>/usr/bin/sh</filename>-ийг
|
||||
<filename>/bin/sh</filename> болгон ашиглахаар, төгсгөлд нь
|
||||
<filename>/usr/bin/perl</filename>-г
|
||||
<filename>/usr/local/bin/perl</filename> болгон
|
||||
ашиглахаар болгож өөрчлөх хэрэгтэй.</para>
|
||||
|
||||
<important>
|
||||
<para>&os; дээрх DTrace дэмжлэг нь <emphasis>бүрэн бус</emphasis>
|
||||
бөгөөд <emphasis>туршилтын</emphasis> гэдгийг уншигчид
|
||||
сануулах нь ухаалаг болох юм. Эдгээр скриптүүдийн олонхи нь
|
||||
ажиллахгүй бөгөөд тэдгээр нь хэтэрхий &solaris;-д тусгайлан
|
||||
зориулсан эсвэл одоо дэмжигдээгүй байгаа шалгалтуудыг
|
||||
ашигладаг.</para>
|
||||
</important>
|
||||
|
||||
<para>Үүнийг бичиж байх үед DTrace хэрэгслийн зөвхөн хоёр скрипт
|
||||
&os; дээр бүрэн дэмжигдсэн: эдгээр нь <filename>hotkernel</filename>
|
||||
болон <filename>procsystime</filename> скриптүүд юм.
|
||||
Эдгээр хоёрыг бид энэ бүлгийн дараагийн хэсгүүдэд авч үзэх
|
||||
болно.</para>
|
||||
|
||||
<para><filename>hotkernel</filename> нь аль функц цөмийн ихэнх хугацааг
|
||||
ашиглаж байгааг илрүүлэхээр хийгдсэн. Хэвийнээр ажиллуулахад
|
||||
энэ нь дараахтай төстэй гаралтыг харуулах болно:</para>
|
||||
|
||||
<screen>&prompt.root; <userinput>./hotkernel</userinput>
|
||||
localhost# ./hotkernel
|
||||
Sampling... Hit Ctrl-C to end.</screen>
|
||||
|
||||
<para>Системийн администратор процессийг зогсоохын тулд
|
||||
<keycombo action="simul"><keycap>Ctrl</keycap><keycap>C</keycap>
|
||||
</keycombo> товчлуурын хослолыг ашиглах ёстой. Зогсоосны дараа скрипт нь
|
||||
цөмийн функцуудын жагсаалт болон хугацааны мэдээллийг харуулах бөгөөд
|
||||
гаралтыг хугацааны ихэссэн дарааллаар эрэмбэлж харуулна:</para>
|
||||
|
||||
<screen>kernel`_thread_lock_flags 2 0.0%
|
||||
0xc1097063 2 0.0%
|
||||
kernel`sched_userret 2 0.0%
|
||||
kernel`kern_select 2 0.0%
|
||||
kernel`generic_copyin 3 0.0%
|
||||
kernel`_mtx_assert 3 0.0%
|
||||
kernel`vm_fault 3 0.0%
|
||||
kernel`sopoll_generic 3 0.0%
|
||||
kernel`fixup_filename 4 0.0%
|
||||
kernel`_isitmyx 4 0.0%
|
||||
kernel`find_instance 4 0.0%
|
||||
kernel`_mtx_unlock_flags 5 0.0%
|
||||
kernel`syscall 5 0.0%
|
||||
kernel`DELAY 5 0.0%
|
||||
0xc108a253 6 0.0%
|
||||
kernel`witness_lock 7 0.0%
|
||||
kernel`read_aux_data_no_wait 7 0.0%
|
||||
kernel`Xint0x80_syscall 7 0.0%
|
||||
kernel`witness_checkorder 7 0.0%
|
||||
kernel`sse2_pagezero 8 0.0%
|
||||
kernel`strncmp 9 0.0%
|
||||
kernel`spinlock_exit 10 0.0%
|
||||
kernel`_mtx_lock_flags 11 0.0%
|
||||
kernel`witness_unlock 15 0.0%
|
||||
kernel`sched_idletd 137 0.3%
|
||||
0xc10981a5 42139 99.3%</screen>
|
||||
|
||||
<!-- XXXTR: I attempted to use objdump and nm on /boot/kernel/kernel
|
||||
to find 0xc10981a5, but to no avail. It would be nice to know
|
||||
how we should look that up. -->
|
||||
|
||||
<para>Энэ скрипт нь цөмийн модулиудтай бас ажилладаг. Энэ боломжийг
|
||||
ашиглахын тулд скриптийг <option>-m</option> өгөгдөлтэй ажиллуулах хэрэгтэй:</para>
|
||||
|
||||
<screen>&prompt.root; <userinput>./hotkernel -m</userinput></screen>
|
||||
|
||||
<screen>localhost# <userinput>./hotkernel -m</userinput>
|
||||
Sampling... Hit Ctrl-C to end.
|
||||
^C
|
||||
MODULE COUNT PCNT
|
||||
0xc107882e 1 0.0%
|
||||
0xc10e6aa4 1 0.0%
|
||||
0xc1076983 1 0.0%
|
||||
0xc109708a 1 0.0%
|
||||
0xc1075a5d 1 0.0%
|
||||
0xc1077325 1 0.0%
|
||||
0xc108a245 1 0.0%
|
||||
0xc107730d 1 0.0%
|
||||
0xc1097063 2 0.0%
|
||||
0xc108a253 73 0.0%
|
||||
kernel 874 0.4%
|
||||
0xc10981a5 213781 99.6%</screen>
|
||||
|
||||
<!-- XXXTR: I was unable to match these up with output from
|
||||
kldstat and kldstat -v and grep. Maybe I'm missing something
|
||||
seriously obvious. It is 5AM btw. -->
|
||||
|
||||
<para><filename>procsystime</filename> скрипт нь өгөгдсөн
|
||||
<acronym>PID</acronym> эсвэл процессийн хувьд системийн дуудлагын
|
||||
цагийн хэрэглээг авч хэвлэн харуулдаг. Дараах жишээн дээр
|
||||
<filename>/bin/csh</filename>-ийн шинэ хуулбар ажиллуулсан.
|
||||
<filename>procsystime</filename>-ийг ажиллуулсан бөгөөд
|
||||
өөр нэг <command>csh</command> дээр цөөн хэдэн тушаалыг бичтэл
|
||||
энэ нь хүлээх горимд орсон. Энэ тестийн үр дүн энд байна:</para>
|
||||
|
||||
<screen>&prompt.root; <userinput>./procsystime -n csh</userinput>
|
||||
Tracing... Hit Ctrl-C to end...
|
||||
^C
|
||||
|
||||
Elapsed Times for processes csh,
|
||||
|
||||
SYSCALL TIME (ns)
|
||||
getpid 6131
|
||||
sigreturn 8121
|
||||
close 19127
|
||||
fcntl 19959
|
||||
dup 26955
|
||||
setpgid 28070
|
||||
stat 31899
|
||||
setitimer 40938
|
||||
wait4 62717
|
||||
sigaction 67372
|
||||
sigprocmask 119091
|
||||
gettimeofday 183710
|
||||
write 263242
|
||||
execve 492547
|
||||
ioctl 770073
|
||||
vfork 3258923
|
||||
sigsuspend 6985124
|
||||
read 3988049784</screen>
|
||||
|
||||
<para>Энд үзүүлснээр read системийн дуудлага ихэнх цагийг,
|
||||
<function>getpid()</function> системийн дуудлага хамгийн
|
||||
бага хугацааг ашигласныг наносекундаар харуулж байна.</para>
|
||||
</sect1>
|
||||
|
||||
<sect1 id="dtrace-language">
|
||||
<title>D хэл</title>
|
||||
|
||||
<para>DTrace хэрэгсэл нь DTrace-ийн тусгай хэл дээр байдаг олон скриптүүдийг
|
||||
агуулдаг. Энэ хэл нь &sun;-ийн баримтаар <quote>D хэл</quote> гэгддэг
|
||||
бөгөөд C++ хэлтэй тун төстэй юм. Энэ хэлний талаарх гүнзгий хэлэлцүүлэг нь
|
||||
энэ баримтаас хүрээнээс гадна юм. Энэ нь
|
||||
<ulink url="http://wikis.sun.com/display/DTrace/Documentation"></ulink>
|
||||
хаяг дээр дэлгэрэнгүй хэлэлцэгдсэн байдаг.</para>
|
||||
</sect1>
|
||||
</chapter>
|
||||
|
||||
<!-- XXXTR: Should probably put links and resources here. I'm
|
||||
nervous about this chapter as it may require a partial
|
||||
re-write and large modification once DTrace is complete, but
|
||||
at least we can get everyone started ... -->
|
17
mn_MN.UTF-8/books/handbook/filesystems/Makefile
Normal file
17
mn_MN.UTF-8/books/handbook/filesystems/Makefile
Normal file
|
@ -0,0 +1,17 @@
|
|||
# The FreeBSD Mongolian Documentation Project
|
||||
#
|
||||
# Original revision 1.1
|
||||
#
|
||||
# Build the Handbook with just the content from this chapter.
|
||||
#
|
||||
# $FreeBSD$
|
||||
|
||||
CHAPTERS= filesystems/chapter.sgml
|
||||
|
||||
VPATH= ..
|
||||
|
||||
MASTERDOC= ${.CURDIR}/../${DOC}.${DOCBOOKSUFFIX}
|
||||
|
||||
DOC_PREFIX?= ${.CURDIR}/../../../..
|
||||
|
||||
.include "../Makefile"
|
611
mn_MN.UTF-8/books/handbook/filesystems/chapter.sgml
Normal file
611
mn_MN.UTF-8/books/handbook/filesystems/chapter.sgml
Normal file
|
@ -0,0 +1,611 @@
|
|||
<!--
|
||||
The FreeBSD Mongolian Documentation Project
|
||||
|
||||
Original revision 1.2
|
||||
|
||||
$FreeBSD$
|
||||
-->
|
||||
|
||||
<chapter id="filesystems">
|
||||
<chapterinfo>
|
||||
<authorgroup>
|
||||
<author>
|
||||
<firstname>Том</firstname>
|
||||
<surname>Рөүдс</surname>
|
||||
<contrib>Бичсэн </contrib>
|
||||
</author>
|
||||
</authorgroup>
|
||||
</chapterinfo>
|
||||
|
||||
<title>Файлын системийн дэмжлэг</title>
|
||||
|
||||
<sect1 id="filesystems-synopsis">
|
||||
<title>Ерөнхий агуулга</title>
|
||||
|
||||
<indexterm><primary>File Systems</primary></indexterm>
|
||||
<indexterm>
|
||||
<primary>File Systems Support</primary>
|
||||
<see>File Systems</see>
|
||||
</indexterm>
|
||||
|
||||
<para>Файлын системүүд нь үйлдлийн системийн бүрэлдэхүүн хэсэг юм.
|
||||
Тэдгээр нь хэрэглэгчдэд файл хуулж хадгалах, өгөгдөлд хандах боломжийг
|
||||
бүрдүүлэх, тэгээд мэдээж хатуу хөтчүүдийг ашигтай болгодог. Өөр өөр
|
||||
үйлдлийн системүүд нь нийтлэг нэг гол үзэлтэй бөгөөд тэр нь тэдгээрийн
|
||||
эх файлын систем юм. &os; дээр энэ файлын систем нь бас
|
||||
<acronym>UFS</acronym> гэгддэг эх Unix™ Файлын Систем дээр
|
||||
бүтээгдсэн Түргэн Файлын Систем буюу <acronym>FFS</acronym> юм.
|
||||
Энэ нь өгөгдөлд хандахад зориулж хатуу дискүүд дээр байрлуулагддаг
|
||||
&os; дээрх эх файлын систем юм.</para>
|
||||
|
||||
<para>&os; нь бас бусад үйлдлийн системийн өгөгдөлд өөр дээрээсээ
|
||||
өөрөөр хэлбэл холбогдсон <acronym>USB</acronym> хадгалалтын төхөөрөмжүүд,
|
||||
флэш хөтчүүд болон хатуу дискүүд дээр хадгалагдсан өгөгдөлд хандах боломжийг
|
||||
бүрдүүлэх зорилгоор төрөл бүрийн олон файлын системийг дэмждэг. Бас зарим эх бус
|
||||
файлын системүүдэд зориулсан дэмжлэг байдаг. Эдгээр нь &linux;-ийн Extended
|
||||
буюу Өргөтгөсөн Файлын Систем (<acronym>EXT</acronym>), болон &sun;-ий Z
|
||||
Файлын Систем (<acronym>ZFS</acronym>) зэрэг өөр үйлдлийн системүүд
|
||||
дээр хөгжүүлэгдсэн файлын системүүд юм.</para>
|
||||
|
||||
<para>&os; дээр төрөл бүрийн файлын системүүдэд зориулсан дэмжлэгийн
|
||||
янз бүрийн түвшингүүд байдаг. Зарим нь цөмийн модулийг дуудахыг
|
||||
шаарддаг бол зарим нь хэрэгслүүд суулгахыг шаардаж болох юм. Энэ бүлэг нь
|
||||
&os;-ийн хэрэглэгчдэд өөрийн систем дээрээ &sun;-ий Z файлын системээс эхлээд
|
||||
бусад файлын системүүдэд хандахад туслах зорилгоор хийгдсэн.</para>
|
||||
|
||||
<para>Энэ бүлгийг уншсаны дараа, та дараах зүйлсийг мэдэх болно:</para>
|
||||
|
||||
<itemizedlist>
|
||||
<listitem>
|
||||
<para>Эх болон дэмжигдсэн файлын системүүдийн ялгаа.</para>
|
||||
</listitem>
|
||||
|
||||
<listitem>
|
||||
<para>&os; дээр ямар файлын системүүд дэмжигдсэн талаар.</para>
|
||||
</listitem>
|
||||
|
||||
<listitem>
|
||||
<para>Эх бус файлын системүүдийг хэрхэн идэвхжүүлж, тохируулж
|
||||
хандан ашиглах талаар.</para>
|
||||
</listitem>
|
||||
</itemizedlist>
|
||||
|
||||
<para>Энэ бүлгийг уншихаасаа өмнө та дараах зүйлсийг гүйцэтгэх хэрэгтэй:</para>
|
||||
|
||||
<itemizedlist>
|
||||
<listitem>
|
||||
<para>&unix; болон &os;-ийн үндсүүдийг
|
||||
(<xref linkend="basics">) ойлгох.</para>
|
||||
</listitem>
|
||||
|
||||
<listitem>
|
||||
<para>Цөмийн тохиргоо/эмхэтгэлтийн
|
||||
(<xref linkend="kernelconfig">) үндсийг мэддэг байх.</para>
|
||||
</listitem>
|
||||
|
||||
<listitem>
|
||||
<para>&os; дээр гуравдагчдын програм хангамжийг суулгаж
|
||||
(<xref linkend="ports">) чаддаг байх.</para>
|
||||
</listitem>
|
||||
|
||||
<listitem>
|
||||
<para>&os; дээрх диск, хадгалалт болон төхөөрөмжийн нэрстэй
|
||||
танилцсан байх (<xref linkend="disks">).</para>
|
||||
</listitem>
|
||||
</itemizedlist>
|
||||
|
||||
<!--
|
||||
Temporary warning to avoid listing experimental versions
|
||||
and production versions of FreeBSD with this technology.
|
||||
-->
|
||||
<warning>
|
||||
<para><acronym>ZFS</acronym> боломж нь туршилтын гэж тооцогддог.
|
||||
Зарим тохиргоонууд ажиллагааны хувьд дутуу, зарим хэсэг нь ерөөсөө ажиллахгүй
|
||||
байж болох юм. Цагийн явцад энэ боломж нь үйлдвэрлэлд ашиглагдахад
|
||||
бэлэн гэж тооцогдох бөгөөд энэ баримт нь тэр тохиолдолд таарахаар
|
||||
өөрчлөгдөх болно.</para>
|
||||
</warning>
|
||||
</sect1>
|
||||
|
||||
<sect1 id="filesystems-zfs">
|
||||
<title>Z Файлын Систем</title>
|
||||
|
||||
<para>&sun;-ий хөгжүүлсэн Z файлын систем нь цөөрөм хэлбэрийн
|
||||
хадгалалтын аргыг ашиглахаар хийгдсэн шинэ технолог юм. Энэ нь
|
||||
зай зөвхөн өгөгдөл хадгалалтад хэрэгтэй нөхцөлд ашиглагдана гэсэн
|
||||
үг юм. Энэ нь өгөгдлийн хормын хувилбарууд, олон хуулбарууд, болон
|
||||
өгөгдлийн хяналтын нийлбэрийг дэмжин өгөгдлийн максимум бүрэн бүтэн
|
||||
байдалд зориулагдан бас хийгдсэн юм. <acronym>RAID</acronym>-Z
|
||||
гэгддэг өгөгдлийн шинэ хуулбарлах загвар нэмэгдсэн.
|
||||
<acronym>RAID</acronym>-Z загвар нь <acronym>RAID</acronym>5-тай
|
||||
төстэй боловч өгөгдлийн бичилтийн эвдрэлтээс хамгаалахаар
|
||||
хийгдсэн.</para>
|
||||
|
||||
<sect2>
|
||||
<title>ZFS тааруулалт</title>
|
||||
|
||||
<para><acronym>ZFS</acronym> дэд систем нь системийн эх үүсвэрүүдийн
|
||||
ихэнхийг хэрэглэгдэг учир өдөр тутмын хэрэглээнд максимум үр ашгийг
|
||||
хангахад шаардлагатай зарим нэг тааруулалт шаардлагатай байдаг. &os; дээр
|
||||
туршилтын боломж гэгдэж байгаа боловч энэ нь ойрын ирээдүйд өөрчлөгдөж
|
||||
болох юм. Гэхдээ одоогоор дараах алхмуудыг зөвлөдөг.</para>
|
||||
|
||||
<sect3>
|
||||
<title>Санах ой</title>
|
||||
|
||||
<para>Нийт системийн санах ой хамгийн багаа бодоход нэг гигабайт
|
||||
байх ёстой бөгөөд хоёр болон түүнээс дээшхийг зөвлөдөг. Энд байгаа
|
||||
бүх жишээнүүдэд систем нь нэг гигабайт санах ойтой, хэд хэдэн бусад
|
||||
тааруулах аргын хамтаар байх болно.</para>
|
||||
|
||||
<para>Зарим хүмүүс нэг гигабайт санах ойгоос бага санах ойг амжилттай ашиглаж
|
||||
чадсан боловч тийм хязгаарлагдмал физик санах ойтой систем ачаалал ихтэй
|
||||
үед &os; нь санах ойн шавхалтаас болж үймэх нь маш боломжийн байх
|
||||
болно.</para>
|
||||
</sect3>
|
||||
|
||||
<sect3>
|
||||
<title>Цөмийн тохиргоо</title>
|
||||
|
||||
<para>Хэрэгцээгүй драйверууд болон тохиргоонуудыг цөмийн тохиргооны
|
||||
файлаас устгахыг зөвлөдөг. Ихэнх төхөөрөмжүүд модуль хэлбэрээр
|
||||
байдаг болохоор тэдгээрийг <filename>/boot/loader.conf</filename>
|
||||
файлын тусламжтай дуудаж болно.</para>
|
||||
|
||||
<para>i386 архитектурын хэрэглэгчид өөрсдийн цөмийн тохиргооны файлдаа
|
||||
дараах тохиргоог нэмж цөмөө дахин бүтээж дахин ачаалах хэрэгтэй:</para>
|
||||
|
||||
<programlisting>options KVA_PAGES=512</programlisting>
|
||||
|
||||
<para>Энэ тохиргоо нь <varname>vm.kvm_size</varname> тохируулгыг
|
||||
одоо байгаа 1 GB (<acronym>PAE</acronym>-ийн хувьд 2 GB)
|
||||
хязгаарыг давах боломжийг бүрдүүлж цөмийн хаягийн талбарыг
|
||||
өргөтгөх болно. Энэ тохиргооны хувьд хамгийн тохиромжтой утгыг
|
||||
олохын тулд мегабайтаар хүссэн хаягийн талбараа дөрөвт (4) хуваана.
|
||||
Энэ тохиолдолд 2 GB-ийн хувьд <literal>512</literal>
|
||||
байна.</para>
|
||||
</sect3>
|
||||
|
||||
<sect3>
|
||||
<title>Дуудагчийн тохируулгууд</title>
|
||||
|
||||
<para><devicename>kmem</devicename> хаягийн талбарыг &os;-ийн бүх
|
||||
архитектур дээр ихэсгэх ёстой. Нэг гигабайт физик санах ойтой тест
|
||||
систем дээр <filename>/boot/loader.conf</filename> файлд хийсэн
|
||||
дараах тохируулгууд болон системийг дахин ачаалсны дараа амжилттай
|
||||
болсон:</para>
|
||||
|
||||
<programlisting>vm.kmem_slze="330M"
|
||||
vm.kmem_size_max="330M"
|
||||
vfs.zfs.arc_max="40M"
|
||||
vfs.zfs.vdev.cache.size="5M"</programlisting>
|
||||
|
||||
<para>ZFS-тэй холбоотой тохируулгуудын талаар илүү дэлгэрэнгүй
|
||||
зөвлөмжүүдийн жагсаалтыг
|
||||
<ulink url="http://wiki.freebsd.org/ZFSTuningGuide"></ulink> хаягаас үзнэ үү.</para>
|
||||
</sect3>
|
||||
</sect2>
|
||||
|
||||
<sect2>
|
||||
<title><acronym>ZFS</acronym>-г ашиглах нь</title>
|
||||
|
||||
<para><acronym>ZFS</acronym> цөөрмүүдийг систем эхлэх
|
||||
үед холбох боломжийг &os;-д олгох эхлүүлэх арга зам
|
||||
байдаг. Үүнийг тохируулахын тулд дараах тушаалуудыг
|
||||
ажиллуулна:</para>
|
||||
|
||||
<screen>&prompt.root; <userinput>echo 'zfs_enable="YES"' >> /etc/rc.conf</userinput>
|
||||
&prompt.root; <userinput>/etc/rc.d/zfs start</userinput></screen>
|
||||
|
||||
<para>Энэ баримтын үлдсэн хэсэг <acronym>SCSI</acronym> дискүүд байна
|
||||
гэж үзэх бөгөөд тэдгээр төхөөрөмжийн нэрс нь
|
||||
<devicename><replaceable>da0</replaceable></devicename>
|
||||
болон <devicename><replaceable>da1</replaceable></devicename>
|
||||
юм. <acronym>IDE</acronym> тоног төхөөрөмжийн хэрэглэгчид
|
||||
<acronym>SCSI</acronym>-ийн оронд
|
||||
<devicename><replaceable>ad</replaceable></devicename> төхөөрөмжүүдийг
|
||||
ашигладаг.</para>
|
||||
|
||||
<sect3>
|
||||
<title>Ганц дискийн цөөрөм</title>
|
||||
|
||||
<para>Ганц диск төхөөрөмж дээр <acronym>ZFS</acronym> үүсгэхийн
|
||||
тулд <command>zpool</command> тушаалыг ашиглана:</para>
|
||||
|
||||
<screen>&prompt.root; <userinput>zpool create example /dev/da0</userinput></screen>
|
||||
|
||||
<para>Шинэ цөөрмийг харахын тулд <command>df</command>
|
||||
тушаалын гаралтыг үзнэ:</para>
|
||||
|
||||
<screen>&prompt.root; <userinput>df</userinput>
|
||||
Filesystem 1K-blocks Used Avail Capacity Mounted on
|
||||
/dev/ad0s1a 2026030 235230 1628718 13% /
|
||||
devfs 1 1 0 100% /dev
|
||||
/dev/ad0s1d 54098308 1032846 48737598 2% /usr
|
||||
example 17547136 0 17547136 0% /example</screen>
|
||||
|
||||
<para>Энэ гаралт нь <literal>example</literal> цөөрөм
|
||||
зөвхөн үүсгэгдээд зогсохгүй бас <emphasis>холбогдсон</emphasis>
|
||||
гэдгийг тодорхой харуулж байна. Энэ нь энгийн файлын систем
|
||||
шиг хандах боломжтой, үүн дээр файлууд үүсгэж хэрэглэгчид
|
||||
дараах жишээн дээрх шиг үзэх боломжтой байна:</para>
|
||||
|
||||
<screen>&prompt.root <userinput>cd /example</userinput>
|
||||
&prompt.root; <userinput>ls</userinput>
|
||||
&prompt.root; <userinput>touch testfile</userinput>
|
||||
&prompt.root; <userinput>ls -al</userinput>
|
||||
total 4
|
||||
drwxr-xr-x 2 root wheel 3 Aug 29 23:15 .
|
||||
drwxr-xr-x 21 root wheel 512 Aug 29 23:12 ..
|
||||
-rw-r--r-- 1 root wheel 0 Aug 29 23:15 testfile</screen>
|
||||
|
||||
<para>Харамсалтай нь энэ цөөрөм <acronym>ZFS</acronym>-ийн
|
||||
боломжуудын давуу талыг ашиглахгүй байна. Файлын системийг
|
||||
энэ цөөрөм дээр үүсгэж түүн дээр шахалтыг идэвхжүүлнэ:</para>
|
||||
|
||||
<screen>&prompt.root; <userinput>zfs create example/compressed</userinput>
|
||||
&prompt.root; <userinput>zfs set compression=gzip example/compressed</userinput></screen>
|
||||
|
||||
<para><literal>example/compressed</literal> нь одоо
|
||||
<acronym>ZFS</acronym> шахагдсан файлын систем боллоо. Зарим нэг том файлуудыг
|
||||
<filename class="directory">/example/compressed</filename>
|
||||
хуулан түүн рүү хуулж үз.</para>
|
||||
|
||||
<para>Шахалтыг дараах тушаалаар болиулж болно:</para>
|
||||
|
||||
<screen>&prompt.root; <userinput>zfs set compression=off example/compressed</userinput></screen>
|
||||
|
||||
<para>Файлын системийг салгахын тулд дараах тушаалыг ажиллуулж
|
||||
<command>df</command> хэрэгслээр шалгана:</para>
|
||||
|
||||
<screen>&prompt.root; <userinput>zfs umount example/compressed</userinput>
|
||||
&prompt.root; <userinput>df</userinput>
|
||||
Filesystem 1K-blocks Used Avail Capacity Mounted on
|
||||
/dev/ad0s1a 2026030 235232 1628716 13% /
|
||||
devfs 1 1 0 100% /dev
|
||||
/dev/ad0s1d 54098308 1032864 48737580 2% /usr
|
||||
example 17547008 0 17547008 0% /example</screen>
|
||||
|
||||
<para>Файлын системийг дахин холбож дахин хандах боломжтой
|
||||
болгоод <command>df</command> тушаалаар шалгана:</para>
|
||||
|
||||
<screen>&prompt.root; <userinput>zfs mount example/compressed</userinput>
|
||||
&prompt.root; <userinput>df</userinput>
|
||||
Filesystem 1K-blocks Used Avail Capacity Mounted on
|
||||
/dev/ad0s1a 2026030 235234 1628714 13% /
|
||||
devfs 1 1 0 100% /dev
|
||||
/dev/ad0s1d 54098308 1032864 48737580 2% /usr
|
||||
example 17547008 0 17547008 0% /example
|
||||
example/compressed 17547008 0 17547008 0% /example/compressed</screen>
|
||||
|
||||
<para>Цөөрөм болон файлын системийг <command>mount</command>
|
||||
тушаалын гаралтыг шалган бас ажиглаж болно:</para>
|
||||
|
||||
<screen>&prompt.root; <userinput>mount</userinput>
|
||||
/dev/ad0s1a on / (ufs, local)
|
||||
devfs on /dev (devfs, local)
|
||||
/dev/ad0s1d on /usr (ufs, local, soft-updates)
|
||||
example on /example (zfs, local)
|
||||
example/data on /example/data (zfs, local)
|
||||
example/compressed on /example/compressed (zfs, local)</screen>
|
||||
|
||||
<para>Ажигласнаар <acronym>ZFS</acronym> файлын системүүд нь
|
||||
үүсгэгдсэнийхээ дараагаар жирийн файлын системүүд шигээр
|
||||
ашиглагдаж болно, гэхдээ өөр бусад олон боломжууд бас
|
||||
байдаг. Дараах жишээн дээр шинэ файлын систем <literal>data</literal>
|
||||
үүсгэгдэж байна. Чухал файлууд энд хадгалагдах учир файлын
|
||||
систем нь өгөгдлийн блок бүрийн хоёр хуулбарыг хадгалахаар
|
||||
тохируулагдсан:</para>
|
||||
|
||||
<screen>&prompt.root; <userinput>zfs create example/data</userinput>
|
||||
&prompt.root; <userinput>zfs set copies=2 example/data</userinput></screen>
|
||||
|
||||
<para>Одоо <command>df</command>-г дахин ажиллуулж
|
||||
өгөгдөл болон зайн хэрэглээг харах боломжтой:</para>
|
||||
|
||||
<screen>&prompt.root; <userinput>df</userinput>
|
||||
Filesystem 1K-blocks Used Avail Capacity Mounted on
|
||||
/dev/ad0s1a 2026030 235234 1628714 13% /
|
||||
devfs 1 1 0 100% /dev
|
||||
/dev/ad0s1d 54098308 1032864 48737580 2% /usr
|
||||
example 17547008 0 17547008 0% /example
|
||||
example/compressed 17547008 0 17547008 0% /example/compressed
|
||||
example/data 17547008 0 17547008 0% /example/data</screen>
|
||||
|
||||
<para>Цөөрөм дээрх файлын систем бүр ижил хэмжээтэй зайтай байгааг
|
||||
хараарай. Файлын системүүд нь зөвхөн хэрэгцээтэй зайгаа ашиглаж
|
||||
ижил цөөрмөөс авч байгааг харуулахын тулд <command>df</command> тушаалыг энэ
|
||||
жишээнүүд дээр ашигласан шалтгаантай юм. <acronym>ZFS</acronym>
|
||||
файлын систем нь эзлэхүүн болон хуваалтууд гэх мэт ойлголтуудаас
|
||||
ангид байж хэд хэдэн файлын систем нэг цөөрмийг эзлэхийг зөвшөөрдөг.
|
||||
Файлын системүүдийг устгаад дараа нь цөөрмийг хэрэгцээгүй болсон
|
||||
болохоор устгана:</para>
|
||||
|
||||
<screen>&prompt.root; <userinput>zfs destroy example/compressed</userinput>
|
||||
&prompt.root; <userinput>zfs destroy example/data</userinput>
|
||||
&prompt.root; <userinput>zpool destroy example</userinput></screen>
|
||||
|
||||
<para>Дискүүд муудаж эвдрэх нь тойрох боломжгүй нөхцөл юм. Энэ диск
|
||||
муудсан үед өгөгдөл алдагдах болно. Эвдэрсэн хатуу дискээс болоод
|
||||
өгөгдлийн алдагдлаас хамгаалах нэг арга нь <acronym>RAID</acronym>-г
|
||||
ашиглах явдал юм. <acronym>ZFS</acronym> нь энэ боломжийг
|
||||
дараагийн хэсэгт тайлбарлах өөрийн цөөрмийн дизайндаа дэмжсэн
|
||||
байдаг.</para>
|
||||
</sect3>
|
||||
|
||||
<sect3>
|
||||
<title><acronym>ZFS</acronym> RAID-Z</title>
|
||||
|
||||
<para>Өмнө хэлсэнчлэн энэ хэсэг нь хоёр
|
||||
<acronym>SCSI</acronym> байх бөгөөд
|
||||
<devicename>da0</devicename> болон
|
||||
<devicename>da1</devicename> гэж тооцно.
|
||||
<acronym>RAID</acronym>-Z цөөрөм үүсгэхийн тулд
|
||||
дараах тушаалыг өгнө:</para>
|
||||
|
||||
<screen>&prompt.root; <userinput>zpool create storage raidz da0 da1</userinput></screen>
|
||||
|
||||
<para><literal>storage</literal> zpool үүсгэгдсэн байх ёстой.
|
||||
Өмнөх шиг &man.mount.8; болон &man.df.1; тушаалуудыг ашиглан
|
||||
үүнийг шалгаж болно. Дээрх жагсаалтын төгсгөлд өөр илүү дискийн
|
||||
төхөөрөмжүүдийг нэмэн хуваарилж болно. Хэрэглэгчийн файлууд удахгүй
|
||||
байрлах <literal>home</literal> гэгдсэн шинэ файлын системийг
|
||||
цөөрөмд хийнэ:</para>
|
||||
|
||||
<screen>&prompt.root; <userinput>zfs create storage/home</userinput></screen>
|
||||
|
||||
<para>Одоо шахалтыг идэвхжүүлж хэрэглэгчийн гэрийн сангууд болон файлуудын
|
||||
илүү хуулбаруудыг хадгалах боломжтой. Үүнийг өмнөх шиг дараах тушаалуудыг
|
||||
ашиглан хийж болно:</para>
|
||||
|
||||
<screen>&prompt.root; <userinput>zfs set copies=2 storage/home</userinput>
|
||||
&prompt.root; <userinput>zfs set compression=gzip storage/home</userinput></screen>
|
||||
|
||||
<para>Үүнийг хэрэглэгчдийн шинэ гэрийн сан болгохын тулд
|
||||
хэрэглэгчийн өгөгдлийг энэ сан руу хуулж тохирох тэмдэгт
|
||||
холбоосуудыг үүсгэнэ:</para>
|
||||
|
||||
<screen>&prompt.root; <userinput>cp -rp /home/* /storage/home</userinput>
|
||||
&prompt.root; <userinput>rm -rf /home /usr/home</userinput>
|
||||
&prompt.root; <userinput>ln -s /storage/home /home</userinput>
|
||||
&prompt.root; <userinput>ln -s /storage/home /usr/home</userinput></screen>
|
||||
|
||||
<para>Одоо хэрэглэгчдийн хувьд шинээр үүсгэгдсэн
|
||||
<filename class="directory">/storage/home</filename> файлын
|
||||
систем дээр тэдний өгөгдөл хадгалагдсан байх болно. Шинэ хэрэглэгч
|
||||
нэмж тэр хэрэглэгчээр нэвтэрч үзээрэй.</para>
|
||||
|
||||
<para>Дараа нь буцааж болох хормын хувилбар үүсгэж үзээрэй:</para>
|
||||
|
||||
<screen>&prompt.root; <userinput>zfs snapshot storage/home@08-30-08</userinput></screen>
|
||||
|
||||
<para>Хормын хувилбар тохиргоо нь гэрийн сан ч биш эсвэл файл ч
|
||||
биш зөвхөн жинхэнэ файлын системийг авахыг анхаараарай.
|
||||
<literal>@</literal> тэмдэгт нь файлын системийн нэр эсвэл
|
||||
эзлэхүүний нэрийн хооронд ашиглагдсан зааглагч юм. Хэрэглэгчийн
|
||||
гэрийн сан устгагдах үед түүнийг доорх тушаалаар сэргээнэ:</para>
|
||||
|
||||
<screen>&prompt.root; <userinput>zfs rollback storage/home@08-30-08</userinput></screen>
|
||||
|
||||
<para>Байгаа хормын хувилбаруудын жагсаалтыг авахын тулд
|
||||
<command>ls</command>-г файлын системийн
|
||||
<filename class="directory">.zfs/snapshot</filename>
|
||||
сан дотор ажиллуулна. Жишээ нь өмнө нь авсан хормын хувилбарыг
|
||||
харахын тулд дараах тушаалыг гүйцэтгэнэ:</para>
|
||||
|
||||
<screen>&prompt.root; <userinput>ls /storage/home/.zfs/snapshot</userinput></screen>
|
||||
|
||||
<para>Хэрэглэгчийн өгөгдөл дээр сар бүрийн хормын хувилбар үүсгэх
|
||||
скрипт бичих боломжтой боловч хожим хормын хувилбарууд нь
|
||||
ихээхэн хэмжээний дискийн хэмжээ эзлэх болно. Түрүүчийн
|
||||
хормын хувилбарыг дараах тушаал ашиглан устгаж болно:</para>
|
||||
|
||||
<screen>&prompt.root; <userinput>zfs destroy storage/home@08-30-08</userinput></screen>
|
||||
|
||||
<para>Энэ бүх тестийн дараагаар
|
||||
<filename class="directory">/storage/home</filename>
|
||||
санг бид одоо байгаа төлөвт нь байлгаад байх шалтгаан байх
|
||||
ёсгүй юм. Үүнийг жинхэнэ
|
||||
<filename class="directory">/home</filename> файлын систем
|
||||
болгох хэрэгтэй:</para>
|
||||
|
||||
<screen>&prompt.root; <userinput>zfs set mountpoint=/home storage/home</userinput></screen>
|
||||
|
||||
<para><command>df</command> болон
|
||||
<command>mount</command> тушаалуудыг ажиллуулснаар систем бидний
|
||||
файлын системийг жинхэнэ <filename class="directory">/home</filename>
|
||||
сан гэж үзэж байгааг харуулна:</para>
|
||||
|
||||
<screen>&prompt.root; <userinput>mount</userinput>
|
||||
/dev/ad0s1a on / (ufs, local)
|
||||
devfs on /dev (devfs, local)
|
||||
/dev/ad0s1d on /usr (ufs, local, soft-updates)
|
||||
storage on /storage (zfs, local)
|
||||
storage/home on /home (zfs, local)
|
||||
&prompt.root; <userinput>df</userinput>
|
||||
Filesystem 1K-blocks Used Avail Capacity Mounted on
|
||||
/dev/ad0s1a 2026030 235240 1628708 13% /
|
||||
devfs 1 1 0 100% /dev
|
||||
/dev/ad0s1d 54098308 1032826 48737618 2% /usr
|
||||
storage 17547008 0 17547008 0% /storage
|
||||
storage/home 17547008 0 17547008 0% /home</screen>
|
||||
|
||||
<para>Ингэснээр <acronym>RAID</acronym>-Z тохиргоо дуусаж
|
||||
байна. Шөнө бүрийн &man.periodic.8; ажиллах үед үүссэн
|
||||
файлын системүүдийн талаар төлвийн шинэчлэлтүүдийг авахын тулд
|
||||
дараах тушаалыг ажиллуулна:</para>
|
||||
|
||||
<screen>&prompt.root; <userinput>echo 'daily_status_zfs_enable="YES"' >> /etc/periodic.conf</userinput></screen>
|
||||
</sect3>
|
||||
|
||||
<sect3>
|
||||
<title><acronym>RAID</acronym>-Z-г сэргээх нь</title>
|
||||
|
||||
<para>Програм хангамжийн <acronym>RAID</acronym> бүр
|
||||
өөрсдийн <literal>төлвийг</literal> хянах аргатай байдаг.
|
||||
<acronym>ZFS</acronym> нь ч мөн адил.
|
||||
<acronym>RAID</acronym>-Z төхөөрөмжүүдийн төлвийг дараах
|
||||
тушаалаар харж болно:</para>
|
||||
|
||||
<screen>&prompt.root; <userinput>zpool status -x</userinput></screen>
|
||||
|
||||
<para>Хэрэв бүх цөөрмүүд эрүүл ба бүгд хэвийн бол дараах
|
||||
мэдэгдэл гарна:</para>
|
||||
|
||||
<screen>all pools are healthy</screen>
|
||||
|
||||
<para>Хэрэв асуудал байвал магадгүй диск холболтгүй болчихвол
|
||||
цөөрмийн төлөв иймэрхүү харагдах болно:</para>
|
||||
|
||||
<screen> pool: storage
|
||||
state: DEGRADED
|
||||
status: One or more devices has been taken offline by the administrator.
|
||||
Sufficient replicas exist for the pool to continue functioning in a
|
||||
degraded state.
|
||||
action: Online the device using 'zpool online' or replace the device with
|
||||
'zpool replace'.
|
||||
scrub: none requested
|
||||
config:
|
||||
|
||||
NAME STATE READ WRITE CKSUM
|
||||
storage DEGRADED 0 0 0
|
||||
raidz1 DEGRADED 0 0 0
|
||||
da0 ONLINE 0 0 0
|
||||
da1 OFFLINE 0 0 0
|
||||
|
||||
errors: No known data errors</screen>
|
||||
|
||||
<para>Энэ нь төхөөрөмжийг администратор салгасан гэдгийг
|
||||
харуулж байна. Ялангуяа энэ жишээний хувьд энэ нь үнэн юм.
|
||||
Дискийг салгахын тулд дараах тушаалыг ашиглажээ:</para>
|
||||
|
||||
<screen>&prompt.root; <userinput>zpool offline storage da1</userinput></screen>
|
||||
|
||||
<para>Одоо системийг унтраасны дараа <devicename>da1</devicename>-г
|
||||
солих боломжтой. Систем буцаж ассаны дараа дараах тушаалыг ажиллуулж
|
||||
дискийг солино:</para>
|
||||
|
||||
<screen>&prompt.root; <userinput>zpool replace storage da1</userinput></screen>
|
||||
|
||||
<para>Эндээс төлвийг дахин шалгаж болох бөгөөд энэ удаад
|
||||
төлвийн мэдээллийг авахын тулд <option>-x</option> өгөгдөлгүйгээр
|
||||
үзнэ:</para>
|
||||
|
||||
<screen>&prompt.root; <userinput>zpool status storage</userinput>
|
||||
pool: storage
|
||||
state: ONLINE
|
||||
scrub: resilver completed with 0 errors on Sat Aug 30 19:44:11 2008
|
||||
config:
|
||||
|
||||
NAME STATE READ WRITE CKSUM
|
||||
storage ONLINE 0 0 0
|
||||
raidz1 ONLINE 0 0 0
|
||||
da0 ONLINE 0 0 0
|
||||
da1 ONLINE 0 0 0
|
||||
|
||||
errors: No known data errors</screen>
|
||||
|
||||
<para>Энэ жишээнээс харахад бүгд хэвийн харагдаж байна.</para>
|
||||
</sect3>
|
||||
|
||||
<sect3>
|
||||
<title>Өгөгдлийн шалгалт</title>
|
||||
|
||||
<para>Өмнө дурдсанчлан <acronym>ZFS</acronym> нь
|
||||
хадгалагдсан өгөгдлийн бүрэн бүтэн байдлыг шалгахдаа
|
||||
<literal>хяналтын нийлбэрийг</literal> ашигладаг.
|
||||
Тэдгээр нь файлын системүүдийг үүсгэхэд автоматаар
|
||||
идэвхждэг бөгөөд дараах тушаалыг ашиглан болиулж болно:</para>
|
||||
|
||||
<screen>&prompt.root; <userinput>zfs set checksum=off storage/home</userinput></screen>
|
||||
|
||||
<para>Энэ нь ухаалаг санаа биш боловч хяналтын нийлбэрүүд нь
|
||||
маш бага хадгалалтын зай эзэлдэг бөгөөд идэвжсэн байхдаа илүү
|
||||
ашигтай байдаг. Бас тэдгээрийг идэвхжүүлснээр мэдэгдэхээр зардал
|
||||
бас ажиглагддаггүй. Идэвхжсэн байх үед өгөгдлийн бүрэн бүтэн байдлыг
|
||||
хяналтын нийлбэрийн шалгалт ашиглан <acronym>ZFS</acronym>
|
||||
шалгах боломжтой байдаг. Энэ процессийг <quote>цэвэрлэх</quote>
|
||||
гэж хэлдэг. <literal>storage</literal> цөөрмийн өгөгдлийн
|
||||
бүрэн бүтэн байдлыг шалгахын тулд дараах тушаалыг ажиллуулна:</para>
|
||||
|
||||
<screen>&prompt.root; <userinput>zpool scrub storage</userinput></screen>
|
||||
|
||||
<para>Энэ процесс хадгалагдсан өгөгдлийн хэмжээнээс хамаарч
|
||||
ихээхэн хэмжээний хугацаа шаардаж болох юм. Энэ нь бас
|
||||
эдгээр үйлдлүүдийн зөвхөн нэг нь тухайн үед ажиллаж болохоор тийм
|
||||
ихээр <acronym>I/O</acronym>-г ашигладаг байна. Цэвэрлэлт
|
||||
дууссаны дараа төлөв шинэчлэгдэж төлвийн хүсэлтийг илгээн
|
||||
харж болно:</para>
|
||||
|
||||
<screen>&prompt.root; <userinput>zpool status storage</userinput>
|
||||
pool: storage
|
||||
state: ONLINE
|
||||
scrub: scrub completed with 0 errors on Sat Aug 30 19:57:37 2008
|
||||
config:
|
||||
|
||||
NAME STATE READ WRITE CKSUM
|
||||
storage ONLINE 0 0 0
|
||||
raidz1 ONLINE 0 0 0
|
||||
da0 ONLINE 0 0 0
|
||||
da1 ONLINE 0 0 0
|
||||
|
||||
errors: No known data errors</screen>
|
||||
|
||||
<para>Дууссан хугацаа энэ жишээн дээр цэврээр харуулагдаж байна.
|
||||
Энэ боломж нь өгөгдлийн бүрэн бүтэн байдлыг урт хугацааны
|
||||
турш хадгалахад баталгаа болж тусалдаг.</para>
|
||||
|
||||
<para>Z файлын системд зориулсан өөр олон тохиргоонууд
|
||||
байдаг бөгөөд &man.zfs.1; болон &man.zpool.1; гарын авлагын
|
||||
хуудсуудыг үзнэ үү.</para>
|
||||
</sect3>
|
||||
</sect2>
|
||||
</sect1>
|
||||
|
||||
|
||||
<!--
|
||||
XXXTR: stub sections (added later, as needed, as desire,
|
||||
after I get opinions from -doc people):
|
||||
|
||||
Still need to discuss native and foreign file systems.
|
||||
|
||||
<sect1>
|
||||
<title>Device File System</title>
|
||||
</sect1>
|
||||
|
||||
<sect1>
|
||||
<title>DOS and NTFS File Systems</title>
|
||||
<para>This is a good section for those who transfer files, using
|
||||
USB devices, from Windows to FreeBSD and vice-versa. My camera,
|
||||
and many other cameras I have seen default to using FAT16. There
|
||||
is (was?) a kde utility, I think called kamera, that could be used
|
||||
to access camera devices. A section on this would be useful.</para>
|
||||
|
||||
<para>XXXTR: Though! The disks chapter, covers a bit of this and
|
||||
devfs under it's USB devices. It leaves a lot to be desired though,
|
||||
see:
|
||||
http://www.freebsd.org/doc/en_US.ISO8859-1/books/handbook/usb-disks.html
|
||||
It may be better to flesh out that section a bit more. Add the
|
||||
word "camera" to it so that others can easily notice.</para>
|
||||
</sect1>
|
||||
|
||||
<sect1>
|
||||
<title>Linux EXT File System</title>
|
||||
|
||||
<para>Probably NOT as useful as the other two, but it requires
|
||||
knowledge of the existence of the tools. Which are hidden in
|
||||
the ports collection. Most Linux guys would probably only use
|
||||
Linux, BSD guys would be smarter and use NFS.</para>
|
||||
</sect1>
|
||||
|
||||
<sect1>
|
||||
<title>HFS</title>
|
||||
|
||||
<para>I think this is the file system used on Apple OSX. There are
|
||||
tools in the ports collection, and with Apple being a big
|
||||
FreeBSD supporter and user of our technologies, surely there
|
||||
is enough cross over to cover this?</para>
|
||||
</sect1>
|
||||
-->
|
||||
|
||||
</chapter>
|
17
mn_MN.UTF-8/books/handbook/updating/Makefile
Normal file
17
mn_MN.UTF-8/books/handbook/updating/Makefile
Normal file
|
@ -0,0 +1,17 @@
|
|||
# The FreeBSD Mongolian Documentation Project
|
||||
#
|
||||
# Original revision 1.1
|
||||
#
|
||||
# Build the Handbook with just the content from this chapter.
|
||||
#
|
||||
# $FreeBSD$
|
||||
|
||||
CHAPTERS= updating/chapter.sgml
|
||||
|
||||
VPATH= ..
|
||||
|
||||
MASTERDOC= ${.CURDIR}/../${DOC}.${DOCBOOKSUFFIX}
|
||||
|
||||
DOC_PREFIX?= ${.CURDIR}/../../../..
|
||||
|
||||
.include "../Makefile"
|
509
mn_MN.UTF-8/books/handbook/updating/chapter.sgml
Normal file
509
mn_MN.UTF-8/books/handbook/updating/chapter.sgml
Normal file
|
@ -0,0 +1,509 @@
|
|||
<!--
|
||||
The FreeBSD Mongolian Documentation Project
|
||||
|
||||
Original revision 1.1
|
||||
|
||||
$FreeBSD$
|
||||
-->
|
||||
|
||||
<chapter id="updating">
|
||||
<chapterinfo>
|
||||
<authorgroup>
|
||||
<author>
|
||||
<firstname>Том</firstname>
|
||||
<surname>Рөүдс</surname>
|
||||
<contrib>Бичсэн </contrib>
|
||||
</author>
|
||||
</authorgroup>
|
||||
<authorgroup>
|
||||
<author>
|
||||
<firstname>Колин</firstname>
|
||||
<surname>Персивал</surname>
|
||||
<contrib>Тэмдэглэгээ бичсэн </contrib>
|
||||
</author>
|
||||
</authorgroup>
|
||||
</chapterinfo>
|
||||
|
||||
<title>&os;-г шинэчлэх нь</title>
|
||||
|
||||
<sect1 id="updating-synopsis">
|
||||
<title>Ерөнхий агуулга</title>
|
||||
|
||||
<indexterm><primary>Updating FreeBSD</primary></indexterm>
|
||||
<indexterm>
|
||||
<primary>freebsd-update</primary>
|
||||
<see>Updating</see>
|
||||
</indexterm>
|
||||
|
||||
<para>Цаг хугацааны туршид &os; үйлдлийн системийн нэг үндсэн
|
||||
аспект өөрчлөгдөлгүй хэвээр үлджээ. Энэ нь програмууд болон
|
||||
хэрэгслүүдийг том болон бага системийн шинэчлэлтүүдийг авахдаа
|
||||
ашиглах шаардлага юм.</para>
|
||||
|
||||
<para>Олон жилийн турш өөрсдийн системийг шинэчлэх гэсэн хэрэглэгчид
|
||||
аюулгүй байдлын засваруудыг цуглуулж портын цуглуулгын аргуудыг
|
||||
эвдэлгүйгээр порт болон багцын шинэчлэлтүүдийг авахын тулд
|
||||
<application>CVSup</application> хэрэгслийг ашигладаг байсан.</para>
|
||||
|
||||
<para><application>CVSup</application>-ийн хэрэглээ дэмжигдэж жинхэнэ
|
||||
C хэлний хувилбар &os;-д нэмэгдсэн хэдий ч системийн шинэчлэлтүүдийг
|
||||
авах шинэ аргууд байдаг.</para>
|
||||
|
||||
<para>&man.portsnap.8;, болон &man.freebsd-update.8; зэрэг хэрэгслүүд
|
||||
шинэчлэлтийн процессийг шулуухан болгосон. Эдгээр шинэ аргууд нь
|
||||
бүтээмжийг дээшлүүлэхээс гадна илүү хялбар интерфэйсийг хэрэглэгчдэд
|
||||
олгодог. Системийн администраторын гар оролцоог багасгаж зарим шинэ
|
||||
хэрэгслүүдийг &man.cron.8;-с ажиллуулж болдог бөгөөд хэдэн зуун &os;
|
||||
машиныг хянадаг тэдний хувьд энэ нь ашигтай байдаг.</para>
|
||||
|
||||
<para>Энэ бүлэг эдгээр шинэ аргуудыг тайлбарлаж хэрэглэгчид болон
|
||||
системийн администраторууд зэрэг нь эдгээрийн практикийн болон
|
||||
хэрэглэхэд хялбар байдлаас хэрхэн ашиг олж болохыг тайлбарлах болно.</para>
|
||||
|
||||
<para>Энэ бүлгийг уншсаны дараа, та дараах зүйлсийг мэдэх болно:</para>
|
||||
|
||||
<itemizedlist>
|
||||
<listitem>
|
||||
<para>Систем болон портын цуглуулгыг шинэчлэхэд ямар хэрэгслүүд
|
||||
ашиглаж болох талаар.</para>
|
||||
</listitem>
|
||||
|
||||
<listitem>
|
||||
<para><command>freebsd-update</command>-г ашиглан
|
||||
аюулгүй байдлын засваруудыг хийж &os;-ийн том ба бага
|
||||
шинэчлэлтүүдийг хэрхэн хийх талаар.</para>
|
||||
</listitem>
|
||||
|
||||
<listitem>
|
||||
<para>Суулгагдсан системийн төлвийг нэртэй цэвэр хуулбартай
|
||||
харьцуулах талаар.</para>
|
||||
</listitem>
|
||||
</itemizedlist>
|
||||
|
||||
<para>Энэ бүлгийг уншихаасаа өмнө та дараах зүйлсийг гүйцэтгэх хэрэгтэй:</para>
|
||||
|
||||
<itemizedlist>
|
||||
<listitem>
|
||||
<para>&unix; болон &os;-ийн үндсүүдийг
|
||||
(<xref linkend="basics">) ойлгох.</para>
|
||||
</listitem>
|
||||
|
||||
<listitem>
|
||||
<para>Цөмийн тохиргоо/эмхэтгэлтийн
|
||||
(<xref linkend="kernelconfig">) үндсийг мэддэг байх.</para>
|
||||
</listitem>
|
||||
|
||||
<listitem>
|
||||
<para>Портын цуглуулга болон гуравдагчдын програм хангамжуудыг
|
||||
&os; дээр суулгах талаар ойлголттой байх
|
||||
(<xref linkend="ports">).</para>
|
||||
</listitem>
|
||||
|
||||
<listitem>
|
||||
<para>&os;-г бүтээдэг төрөл бүрийн эх бүрэлдэхүүн хэсгүүд болон
|
||||
&man.mergemaster.8; хэрэгслийг хэрхэн ашиглах талаар ойлголттой
|
||||
байх (<xref linkend="cutting-edge">).</para>
|
||||
</listitem>
|
||||
</itemizedlist>
|
||||
</sect1>
|
||||
|
||||
<sect1 id="updating-freebsdupdate">
|
||||
<title>FreeBSD-ийн шинэчлэлт</title>
|
||||
|
||||
<para>Аюулгүй байдлын засваруудыг хийнэ гэдэг компьютерийн програм
|
||||
хангамж ялангуяа үйлдлийн системийг арчлалтын чухал хэсгийн нэг юм.
|
||||
Удаан хугацааны туршид &os; дээр энэ процесс хялбар биш байлаа.
|
||||
Засваруудыг эх код руу хийж кодыг хоёртын хэлбэр рүү дахин бүтээж
|
||||
дараа нь хоёртын файлуудыг дахин суулгах шаардлагатай байлаа.</para>
|
||||
|
||||
<para>Энэ нь одоо тийм биш болсон бөгөөд &os; нь
|
||||
<command>freebsd-update</command> гэгддэг хэрэгслийг агуулдаг.
|
||||
Энэ хэрэгсэл нь хоёр тусдаа функцээр хангадаг. Нэгдүгээрт энэ нь
|
||||
бүтээлт болон суулгах шаардлагагүйгээр хоёртын аюулгүй байдал болон
|
||||
алдааны шинэчлэлтүүдийг &os;-ийн үндсэн системд оруулах боломжийг
|
||||
олгодог. Хоёрдугаарт уг хэрэгсэл бага болон том хувилбарын шинэчлэлтүүдийг
|
||||
дэмждэг.</para>
|
||||
|
||||
<note>
|
||||
<para>Аюулгүй байдлын багаар дэмжигдсэн бүх архитектур болон
|
||||
хувилбаруудын хувьд хоёртын шинэчлэлтүүд байдаг боловч &os; үйлдлийн
|
||||
системийн шинэчлэлтүүд зэрэг зарим нэг боломжууд нь &man.freebsd-update.8;-ийн
|
||||
хамгийн сүүлийн хувилбар болон &os; 6.3-г шаарддаг. Шинэ хувилбар
|
||||
руу шинэчлэхээс өмнө хүссэн хувилбарт чинь хамаатай чухал мэдээлэл байж
|
||||
болох учир одоогийн хувилбарын зарлалуудыг дахин үзэх хэрэгтэй. Тэдгээр
|
||||
зарлалуудыг дараах холбоосоос үзэж болно:
|
||||
<ulink url="http://www.FreeBSD.org/releases/"></ulink>.</para>
|
||||
</note>
|
||||
|
||||
<para>Хэрэв <command>crontab</command> нь <command>freebsd-update</command>-ийн
|
||||
боломжуудыг хэрэглэж байвал дараах үйлдлийг эхлэхээс өмнө түүнийг болиулах
|
||||
хэрэгтэй. <command>tar</command> болон <command>gzip</command> хийгдсэн
|
||||
багцыг дээрх <acronym>URL</acronym>-с татан авч
|
||||
<command>freebsd-update</command>-ийн хамгийн сүүлийн хувилбарыг
|
||||
суулгаж дараах тушаалуудыг ашиглан суулгаж болно:</para>
|
||||
|
||||
<screen>&prompt.root; <userinput>gunzip -c freebsd-update-upgrade.tgz | tar xvf -</userinput>
|
||||
&prompt.root; <userinput>mv freebsd-update.sh /usr/sbin/freebsd-update</userinput>
|
||||
&prompt.root; <userinput>mv freebsd-update.conf /etc</userinput></screen>
|
||||
|
||||
<para>Одоо байгаа бүх хувилбаруудын хувьд хамгийн сүүлийн хувилбарыг
|
||||
татаж авах шаардлагагүй юм.</para>
|
||||
|
||||
<sect2>
|
||||
<title>Тохиргооны файл</title>
|
||||
|
||||
<para>Процессийг илүү хянах боломжтой болгож зарим хэрэглэгчид
|
||||
тохиргооны файлыг өөрчлөхийг хүсэж болох юм. Тохиргоонууд нь
|
||||
маш сайн баримтжуулагдсан байдаг боловч дараах хэдэн зүйлийг
|
||||
арай илүү тайлбарлах шаардлагатай байж болох юм:</para>
|
||||
|
||||
<programlisting># Components of the base system which should be kept updated.
|
||||
Components src world kernel</programlisting>
|
||||
|
||||
<para>Энэ өгөгдөл нь &os;-ийн аль хэсгийг шинэчлэхийг хянадаг.
|
||||
Анхдагчаар эх код, үндсэн систем бүтнээрээ ба цөмийг шинэчлэх
|
||||
байдаг. Бүрэлдэхүүн хэсгүүд нь суулгах явцад байдагтай адил
|
||||
байдаг бөгөөд жишээ нь "world/games" гэдгийг энд нэмэхэд
|
||||
тоглоомын засваруудыг хийх боломжийг олгоно. "src/bin" гэдгийг
|
||||
ашиглах нь <filename class="directory">src/bin</filename>
|
||||
дахь эх кодыг шинэчлэх боломжийг олгодог.</para>
|
||||
|
||||
<para>Хамгийн сайн тохиргоо бол үүнийг анхдагчаар нь үлдээх бөгөөд
|
||||
тусгай зүйлс оруулж үүнийг өөрчилснөөр хэрэглэгчид өөрсдийн шинэчлэхийг
|
||||
хүссэн зүйл болгоноо жагсааж оруулах шаардлагатай болно. Ингэснээр
|
||||
эх код болон хоёртын файлуудын хоорондох уялдаа алдагдаж гамшгийн
|
||||
үр дагавар гарч болно.</para>
|
||||
|
||||
<programlisting># Paths which start with anything matching an entry in an IgnorePaths
|
||||
# statement will be ignored.
|
||||
IgnorePaths</programlisting>
|
||||
|
||||
<para><filename class="directory">/bin</filename> эсвэл
|
||||
<filename class="directory">/sbin</filename> зэрэг замуудыг
|
||||
нэмж эдгээр тусгай сангуудыг шинэчлэх процессийн явцад
|
||||
оролдохгүй орхиж болно. Энэ тохиргоо нь
|
||||
<command>freebsd-update</command> локал өөрчлөлтүүдийг
|
||||
дарж бичихээс хамгаалахад хэрэглэж болно.</para>
|
||||
|
||||
<programlisting># Paths which start with anything matching an entry in an UpdateIfUnmodified
|
||||
# statement will only be updated if the contents of the file have not been
|
||||
# modified by the user (unless changes are merged; see below).
|
||||
UpdateIfUnmodified /etc/ /var/ /root/ /.cshrc /.profile</programlisting>
|
||||
|
||||
<para>Заагдсан сангууд дахь тохиргооны файлууд өөрчлөгдөөгүй
|
||||
тохиолдолд шинэчилнэ. Хэрэглэгчийн хийсэн өөрчлөлтүүд эдгээр
|
||||
файлуудын автомат шинэчлэлтийг хүчингүй болгоно.
|
||||
<command>freebsd-update</command>-г нийлүүлэх явцад
|
||||
өөрчлөлтүүдийг хадгалахыг тушаах <literal>KeepModifiedMetadata</literal>
|
||||
гэсэн өөр нэг тохиргоо байдаг.</para>
|
||||
|
||||
<programlisting># When upgrading to a new &os; release, files which match MergeChanges
|
||||
# will have any local changes merged into the version from the new release.
|
||||
MergeChanges /etc/ /var/named/etc/</programlisting>
|
||||
|
||||
<para><command>freebsd-update</command>-ийн нийлүүлэхийг оролдох
|
||||
тохиргооны файлуудтай сангуудын жагсаалт. Файл нийлүүлэх процесс нь
|
||||
цөөн тохиргоотой &man.mergemaster.8;-тай төстэй &man.diff.1; засварууд
|
||||
бөгөөд нийлүүлэлтийг эсвэл хүлээн авах юм уу эсвэл засварлагч нээж эсвэл
|
||||
<command>freebsd-update</command> ажиллагаагаа зогсоох болно. Эргэлзэж
|
||||
байвал <filename class="directory">/etc</filename> санг нөөцөлж аваад
|
||||
нийлүүлэлтүүдийг хүлээн авах хэрэгтэй. <command>mergemaster</command> тушаалын
|
||||
талаар дэлгэрэнгүй мэдээллийг <xref linkend="cutting-edge">-с үзнэ үү.</para>
|
||||
|
||||
<programlisting># Directory in which to store downloaded updates and temporary
|
||||
# files used by &os; Update.
|
||||
# WorkDir /var/db/freebsd-update</programlisting>
|
||||
|
||||
<para>Энэ сан нь бүх засварууд болон түр зуурын файлууд байх сан
|
||||
юм. Хэрэглэгч хувилбар шинэчлэлт хийж байвал энэ байрлал нь хамгийн
|
||||
багаар бодоход гигабайт дискийн зайтай байх шаардлагатай.</para>
|
||||
|
||||
<programlisting># When upgrading between releases, should the list of Components be
|
||||
# read strictly (StrictComponents yes) or merely as a list of components
|
||||
# which *might* be installed of which &os; Update should figure out
|
||||
# which actually are installed and upgrade those (StrictComponents no)?
|
||||
# StrictComponents no</programlisting>
|
||||
|
||||
<para><literal>yes</literal> гэж тохируулсан үед
|
||||
<command>freebsd-update</command> нь <literal>Components</literal> буюу
|
||||
бүрэлдэхүүн хэсгүүдийн жагсаалт бүрэн гэж тооцох бөгөөд жагсаалтаас гадна өөрчлөлт
|
||||
хийхийг оролдохгүй. <command>freebsd-update</command> нь
|
||||
<literal>Components</literal>-ийн жагсаалтад хамаарах файл
|
||||
бүрийг шинэчлэхийг оролдох болно.</para>
|
||||
</sect2>
|
||||
|
||||
<sect2>
|
||||
<title>Аюулгүй байдлын засварууд</title>
|
||||
|
||||
<para>Аюулгүй байдлын засварууд нь алсын машин дээр хадгалагддаг
|
||||
бөгөөд дараах тушаал ашиглан татан авч суулгаж болно:</para>
|
||||
|
||||
<screen>&prompt.root; <userinput>freebsd-update fetch</userinput>
|
||||
&prompt.root; <userinput>freebsd-update install</userinput></screen>
|
||||
|
||||
<para>Хэрэв цөмийн ямар нэг засвар хийгдсэн бол системийг дахин
|
||||
ачаалах хэрэгтэй. Хэрэв бүгд зөв явагдсан бол систем нь засвар хийгдсэн
|
||||
байх ёстой бөгөөд <command>freebsd-update</command>-ийг
|
||||
&man.cron.8; ажлаас шөнө бүр ажиллуулж болно. Энэ ажлыг хийхэд
|
||||
дараах мөрийг <filename>/etc/crontab</filename>-д хийхэд
|
||||
хангалттай байх болно:</para>
|
||||
|
||||
<programlisting>@daily root freebsd-update cron</programlisting>
|
||||
|
||||
<para>Энэ мөр нь өдөр бүр <command>freebsd-update</command>-г
|
||||
ажиллуулахыг зааж байна. Ийм аргаар <option>cron</option>-ий нэмэлт
|
||||
өгөгдлийг ашиглан <command>freebsd-update</command> нь зөвхөн
|
||||
шинэчлэлт байгаа эсэхийг шалгах болно. Хэрэв засварууд байвал тэдгээрийг
|
||||
автоматаар диск рүү татаж авах бөгөөд гэхдээ засваруудыг хийхгүй.
|
||||
<username>root</username> хэрэглэгч рүү захиа илгээгдэх бөгөөд
|
||||
дараа нь тэд гараар суулгаж болох юм.</para>
|
||||
|
||||
<para>Хэрэв ямар нэг зүйл буруу болбол <command>freebsd-update</command> нь
|
||||
дараах тушаалаар сүүлийн өөрчлөлтүүдийг буцаах чадвартай байдаг:</para>
|
||||
|
||||
<screen>&prompt.root; <userinput>freebsd-update rollback</userinput></screen>
|
||||
|
||||
<para>Дууссаны дараа цөм эсвэл цөмийн модулиуд өөрчлөгдсөн бол
|
||||
системийг дахин эхлүүлэх хэрэгтэй. Энэ нь шинэ хоёртын файлуудыг санах
|
||||
ой руу дуудах боломжийг &os;-д олгоно.</para>
|
||||
|
||||
<note>
|
||||
<para><command>freebsd-update</command> тушаал нь зөвхөн
|
||||
<filename>GENERIC</filename> цөмтэй ажилладаг. Хэрэв ямар нэг
|
||||
өөрчлөлт <filename>GENERIC</filename>-д хийгдсэн эсвэл өөрчлөн
|
||||
тохируулсан цөм суулгагдсан бол <command>freebsd-update</command>
|
||||
эхний тохиолдолд амжилтгүй болж сүүлийн тохиолдолд алдаа гаргах болно.</para>
|
||||
</note>
|
||||
</sect2>
|
||||
|
||||
<sect2>
|
||||
<title>Major ба Minor буюу Том ба Бага шинэчлэлтүүд</title>
|
||||
|
||||
<para>Энэ процесс нь ихэнх гуравдагч талын прорамуудыг эвдэх
|
||||
хуучин обьект файлууд болон сангуудыг устгах болно.
|
||||
Бүх суулгагдсан портуудыг устгаж дахин суулгах эсвэл
|
||||
<filename role="package">ports-mgmt/portupgrade</filename>
|
||||
хэрэгсэл ашиглан сүүлд нь шинэчлэхийг зөвлөдөг. Дараах тушаалыг
|
||||
ашиглан ихэнх хэрэглэгчид тест бүтээлтийг ажиллуулахыг хүснэ:</para>
|
||||
|
||||
<screen>&prompt.root; <userinput>portupgrade -af</userinput></screen>
|
||||
|
||||
<para>Энэ нь бүгдийг зөв дахин суулгах баталгаа болох юм.
|
||||
<makevar>BATCH</makevar> орчны хувьсагчийг <literal>yes</literal>
|
||||
гэж тохируулснаар энэ процессийн явцад гарч ирэх хүлээх мөрөнд
|
||||
<literal>yes</literal> гэж хариулан бүтээх процессийн
|
||||
үед оролцох шаардлагыг үгүй болгоно.</para>
|
||||
|
||||
<para>Том ба бага хувилбарын шинэчлэлтүүдийг
|
||||
<command>freebsd-update</command> тушаалд хувилбарын дугаарыг өгч
|
||||
гүйцэтгэж болно, жишээ нь дараах тушаал &os; 6.3 руу
|
||||
шинэчилнэ:</para>
|
||||
|
||||
<screen>&prompt.root; <userinput>freebsd-update -r 6.3-RELEASE upgrade</userinput></screen>
|
||||
|
||||
<para>Тушаал хүлээн авсны дараа <command>freebsd-update</command>
|
||||
системийг шинэчлэхэд шаардлагатай мэдээллийг цуглуулахын тулд
|
||||
тохиргооны файл болон одоогийн системийг шалгана. Ямар бүрэлдэхүүн
|
||||
хэсгүүд илрүүлэгдсэн болон ямар бүрэлдэхүүн хэсгүүд илрүүлэгдээгүй
|
||||
гэдгийг дэлгэц дээр үзүүлнэ. Жишээ нь:</para>
|
||||
|
||||
<screen>Looking up update.FreeBSD.org mirrors... 1 mirrors found.
|
||||
Fetching metadata signature for 6.3-BETA1 from update1.FreeBSD.org... done.
|
||||
Fetching metadata index... done.
|
||||
Inspecting system... done.
|
||||
|
||||
The following components of FreeBSD seem to be installed:
|
||||
kernel/smp src/base src/bin src/contrib src/crypto src/etc src/games
|
||||
src/gnu src/include src/krb5 src/lib src/libexec src/release src/rescue
|
||||
src/sbin src/secure src/share src/sys src/tools src/ubin src/usbin
|
||||
world/base world/info world/lib32 world/manpages
|
||||
|
||||
The following components of FreeBSD do not seem to be installed:
|
||||
kernel/generic world/catpages world/dict world/doc world/games
|
||||
world/proflibs
|
||||
|
||||
Does this look reasonable (y/n)? y</screen>
|
||||
|
||||
<para>Энд хүрэхэд <command>freebsd-update</command> шинэчлэлтэд
|
||||
шаардлагатай бүх файлуудыг татан авахаар оролдох болно. Зарим
|
||||
тохиолдолд хэрэглэгчээс юу суулгах эсвэл хэрхэн цааш үргэлжлүүлэх
|
||||
талаар асуултууд асууж болох юм.</para>
|
||||
|
||||
<para>Бүх засварууд локал систем рүү татагдсаны дараа тэдгээрийг
|
||||
хийж өгөх болно. Машины хурд болон ачааллаас хамаарч энэ процесс нь
|
||||
хугацаа шаардаж болох юм. Тохиргооны файлуудыг нийлүүлэх болно.
|
||||
Файл нийлүүлэгдэх юм уу эсвэл гараар нийлүүлэхэд зориулж засварлагч
|
||||
дэлгэц дээр гарч ирч болох учир процессийн энэ хэсэг хэрэглэгчийн
|
||||
оролцоо шаардана. Амжилттай нийлүүлэлт болгоны үр дүн хэрэглэгчид
|
||||
харуулагдаж процесс үргэлжлэх болно. Амжилтгүй болсон эсвэл орхигдсон
|
||||
нийлүүлэлт нь процессийг зогсоох болно. Хэрэглэгчид нь
|
||||
<filename class="directory">/etc</filename> сангийн нөөцийг
|
||||
хийж <filename>master.passwd</filename> эсвэл
|
||||
<filename>group</filename> зэрэг чухал файлуудыг гараар сүүлд нь
|
||||
нийлүүлэхийг хүсэж болох юм.</para>
|
||||
|
||||
<note>
|
||||
<para>Систем нь өөрчлөгдөөгүй байгаа бөгөөд бүх засвар оруулалт
|
||||
болон нийлүүлэлт өөр сан дотор болж байгаа болно. Бүх засварууд
|
||||
амжилттай хийгдэж бүх тохиргооны файлууд нийлүүлэгдэж процесс
|
||||
тэгш явагдаж байгаа мэт санагдвал хэрэглэгч өөрчлөлтүүдийг хийх
|
||||
хэрэгтэй.</para>
|
||||
</note>
|
||||
|
||||
<para>Энэ процесс дууссаны дараа шинэчлэлтийг дараах тушаалыг ашиглан
|
||||
диск рүү хийж болно.</para>
|
||||
|
||||
<screen>&prompt.root; <userinput>freebsd-update install</userinput></screen>
|
||||
|
||||
<para>Цөм болон цөмийн модулиудад эхлээд засвар хийнэ. Энэ үед
|
||||
машиныг дахих ачаалах ёстой. Шинэ цөм санах ойд дуудагдсан
|
||||
байхын тулд дараах тушаалыг ажиллуулж машиныг дахин эхлүүлнэ:</para>
|
||||
|
||||
<screen>&prompt.root; <userinput>shutdown -r now</userinput></screen>
|
||||
|
||||
<para>Систем буцаж ассаны дараа <command>freebsd-update</command>-г
|
||||
дахин эхлүүлэх хэрэгтэй. Процессийн төлөв хадгалагдсан болохоор
|
||||
<command>freebsd-update</command> эхнээсээ эхлэхгүй бөгөөд бүх
|
||||
хуучин хуваалцсан сангууд болон обьект файлуудыг устгах болно.
|
||||
Энэ шатыг үргэлжлүүлэхийн тулд дараах тушаалыг ажиллуулна:</para>
|
||||
|
||||
<screen>&prompt.root; <userinput>freebsd-update install</userinput></screen>
|
||||
|
||||
<note>
|
||||
<para>Сангуудын хувилбарын тоо дээшилсэн эсэхээс хамаарч
|
||||
суулгах гурван шатны оронд хоёр шат байж болох юм.</para>
|
||||
</note>
|
||||
|
||||
<para>Бүх гуравдагч талын програм хангамжийг дахин бүтээж дахин суулгах
|
||||
хэрэгтэй. Суулгагдсан програм хангамж нь шинэчлэлтийн процессийн явцад
|
||||
устгагдсан сангуудаас хамаарч болох учраас энэ нь шаардлагатай юм.
|
||||
<filename role="package">ports-mgmt/portupgrade</filename> тушаалыг
|
||||
үүнийг автоматжуулахад ашиглаж болох юм. Энэ процессийг эхлүүлэхийн
|
||||
тулд дараах тушаалыг хэрэглэж болно:</para>
|
||||
|
||||
<screen>&prompt.root; <userinput>portupgrade -f ruby</userinput>
|
||||
&prompt.root; <userinput>rm /var/db/pkg/pkgdb.db</userinput>
|
||||
&prompt.root; <userinput>portupgrade -f ruby18-bdb</userinput>
|
||||
&prompt.root; <userinput>rm /var/db/pkg/pkgdb.db /usr/ports/INDEX-*.db</userinput>
|
||||
&prompt.root; <userinput>portupgrade -af</userinput></screen>
|
||||
|
||||
<para>Энэ нь дууссан бөгөөд шинэчлэлтийн процессийг
|
||||
<command>freebsd-update</command>-ийг сүүлийн удаа дуудаж
|
||||
төгсгөнө. Шинэчлэлтийн процессийн сул байгаа бүх зүйлсийг гүйцээхийн
|
||||
тулд дараах тушаалыг ажиллуулна:</para>
|
||||
|
||||
<screen>&prompt.root; <userinput>freebsd-update install</userinput></screen>
|
||||
|
||||
<para>Машинаа &os;-ийн шинэ хувилбар руу дахин ачаалах хэрэгтэй.
|
||||
Процесс дууслаа.</para>
|
||||
</sect2>
|
||||
|
||||
<sect2>
|
||||
<title>Системийн төлвийн харьцуулалт</title>
|
||||
|
||||
<para><command>freebsd-update</command> хэрэгслийг
|
||||
&os;-ийн суулгагдсан хувилбарын төлвийг байгаа зөв хуулбарын
|
||||
эсрэг тест хийхэд хэрэглэж болно. Энэ сонголт нь системийн хэрэгслүүд
|
||||
сангууд болон тохиргооны файлуудын одоогийн хувилбаруудыг шалгадаг.
|
||||
Харьцуулалтыг эхлүүлэхийн тулд дараах тушаалыг ажиллуулна:</para>
|
||||
|
||||
<screen>&prompt.root; <userinput>freebsd-update IDS >> outfile.ids</userinput></screen>
|
||||
|
||||
<warning>
|
||||
<para>Тушаалын нэр <acronym>IDS</acronym> боловч энэ нь
|
||||
ямар тохиолдолд <filename role="package">security/snort</filename> зэрэг
|
||||
халдлага илрүүлэгч системийг солих зориулалттай биш юм.
|
||||
<command>freebsd-update</command> нь өгөгдлийг диск дээр
|
||||
хадгалдаг бөгөөд түүнийг өөрчлөх боломж тодорхой юм.
|
||||
<varname>kern.securelevel</varname> тохиргоог ашиглах болон
|
||||
<command>freebsd-update</command>-ийн өгөгдлийг зөвхөн уншигдах файлын
|
||||
систем дээр ашиглагдаагүй тохиолдолд хадгалах нь энэ боломжийг
|
||||
багасгах боловч илүү сайн шийдэл нь системийг <acronym>DVD</acronym> эсвэл
|
||||
нууцлаг хадгалсан гадаад <acronym>USB</acronym> дискийн төхөөрөмж зэрэг
|
||||
нууцлаг дисктэй харьцуулах явдал юм.</para>
|
||||
</warning>
|
||||
|
||||
<para>Систем нь одоо шалгагдах бөгөөд файлууд нь өөрсдийн
|
||||
&man.sha256.1; утгуудын хамт, хувилбар дахь мэдэгдэж байгаа сайн утгууд болон
|
||||
одоо суугдсан байгаа утгууд зэрэг харьцуулагдан шалгагдана.
|
||||
Энэ нь яагаад гаралт <filename>outfile.ids</filename> файл руу
|
||||
илгээгдсэн шалтгаан юм. Үүнийг нүдээр шалгахад хэтэрхий хурдан дээш
|
||||
гүйж удалгүй консолын буфферийг дүүргэх болно.</para>
|
||||
|
||||
<para>Эдгээр мөрүүд нь бас хэтэрхий урт боловч гаралтын хэлбэрийг
|
||||
хялбараар задлан ялгаж болно. Жишээ нь хувилбарт байгаагаас ондоо
|
||||
бүх файлуудын жагсаалтыг авахын тулд дараах тушаалыг ажиллуулна:</para>
|
||||
|
||||
<screen>&prompt.root; <userinput>cat update.ids | awk '{ print $1 }' | more</userinput>
|
||||
/etc/master.passwd
|
||||
/etc/motd
|
||||
/etc/passwd
|
||||
/etc/pf.conf</screen>
|
||||
|
||||
<para>Энэ гаралт нь тайрагдсан бөгөөд олон файл байгаа болно.
|
||||
Эдгээр файлуудын зарим нь төрөлхийн өөрчлөлтүүдтэй байна, жишээ нь
|
||||
<filename>/etc/passwd</filename> нь хэрэглэгч системд нэмэгдсэн
|
||||
болохоор өөрчлөгдсөн байна. Зарим тохиолдолд
|
||||
<command>freebsd-update</command> нь шинэчилсэн байж болзошгүй учир
|
||||
цөмийн модулиуд зэрэг бусад файлууд өөр байж болох юм.
|
||||
Тусгай файлууд болон сангуудыг хасахын тулд тэдгээрийг
|
||||
<filename>/etc/freebsd-update.conf</filename> файлын
|
||||
<literal>IDSIgnorePaths</literal> тохиргоонд нэмж өгнө.</para>
|
||||
|
||||
<para>Өмнө хэлэлцсэн хувилбараас гадна нарийн нягт шинэчлэлтийн аргын
|
||||
хэсэг болгон энэ системийг ашиглаж болно.</para>
|
||||
</sect2>
|
||||
</sect1>
|
||||
|
||||
<sect1 id="updating-portsnap">
|
||||
<title>Portsnap: Портын цуглуулгын шинэчлэх хэрэгсэл</title>
|
||||
|
||||
<para>&os;-ийн үндсэн систем портын цуглуулгыг бас шинэчилдэг
|
||||
&man.portsnap.8; хэрэгслийг агуулдаг. Ажиллуулсны дараа энэ нь
|
||||
алсын сайт руу холбогдож нууц түлхүүрийг шалгаж портын цуглуулгын шинэ
|
||||
хуулбарыг татан авдаг. Түлхүүр нь бүх татаж авсан файлууд татагдаж байхдаа
|
||||
өөрчлөгдөөгүй эсэхийг хянан бүрэн бүтэн байдлыг шалгахад ашиглагддаг.
|
||||
Хамгийн сүүлийн үеийн портын цуглуулгыг татаж авахын тулд дараах
|
||||
тушаалыг ажиллуулна:</para>
|
||||
|
||||
<screen>&prompt.root; <userinput>portsnap fetch</userinput>
|
||||
Looking up portsnap.FreeBSD.org mirrors... 3 mirrors found.
|
||||
Fetching snapshot tag from portsnap1.FreeBSD.org... done.
|
||||
Fetching snapshot metadata... done.
|
||||
Updating from Wed Aug 6 18:00:22 EDT 2008 to Sat Aug 30 20:24:11 EDT 2008.
|
||||
Fetching 3 metadata patches.. done.
|
||||
Applying metadata patches... done.
|
||||
Fetching 3 metadata files... done.
|
||||
Fetching 90 patches.....10....20....30....40....50....60....70....80....90. done.
|
||||
Applying patches... done.
|
||||
Fetching 133 new ports or files... done.</screen>
|
||||
|
||||
<para>Энэ жишээ нь юу үзүүлж байна вэ гэхээр &man.portsnap.8;
|
||||
одоо байгаа портын өгөгдөлд хэд хэдэн засварууд байгааг олж шалгаж байна.
|
||||
Энэ нь бас уг хэрэгсэл өмнө нь ажилласныг харуулж байгаа бөгөөд
|
||||
хэрэв эхний удаа ажилласан бол цуглуулга татагдан авагдах байсан
|
||||
юм.</para>
|
||||
|
||||
<para>&man.portsnap.8; нь <command>fetch</command> үйлдлийг хийж
|
||||
дууссаны дараа локал систем дээр байгаа портын цуглуулга болон дараа дараагийн
|
||||
засваруудыг шалгалтад дамжуулна. Шинэчлэгдсэн файлуудыг дараахийг
|
||||
бичиж суулгаж болно:</para>
|
||||
|
||||
<screen>&prompt.root; <userinput>portsnap extract</userinput>
|
||||
/usr/ports/.cvsignore
|
||||
/usr/ports/CHANGES
|
||||
/usr/ports/COPYRIGHT
|
||||
/usr/ports/GIDs
|
||||
/usr/ports/KNOBS
|
||||
/usr/ports/LEGAL
|
||||
/usr/ports/MOVED
|
||||
/usr/ports/Makefile
|
||||
/usr/ports/Mk/bsd.apache.mk
|
||||
/usr/ports/Mk/bsd.autotools.mk
|
||||
/usr/ports/Mk/bsd.cmake.mk
|
||||
<replaceable>...</replaceable></screen>
|
||||
|
||||
<para>Процесс одоо дууссан бөгөөд портын цуглуулыг ашиглан
|
||||
програмуудыг суулгаж эсвэл шинэчилж болно.</para>
|
||||
</sect1>
|
||||
</chapter>
|
Loading…
Reference in a new issue