aboutsummaryrefslogtreecommitdiff
path: root/documentation/content/ru/books/handbook/kernelconfig/_index.po
blob: 227f9ed57d5792bf7981accc916ecbe37cc57bfd (plain) (blame)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
273
274
275
276
277
278
279
280
281
282
283
284
285
286
287
288
289
290
291
292
293
294
295
296
297
298
299
300
301
302
303
304
305
306
307
308
309
310
311
312
313
314
315
316
317
318
319
320
321
322
323
324
325
326
327
328
329
330
331
332
333
334
335
336
337
338
339
340
341
342
343
344
345
346
347
348
349
350
351
352
353
354
355
356
357
358
359
360
361
362
363
364
365
366
367
368
369
370
371
372
373
374
375
376
377
378
379
380
381
382
383
384
385
386
387
388
389
390
391
392
393
394
395
396
397
398
399
400
401
402
403
404
405
406
407
408
409
410
411
412
413
414
415
416
417
418
419
420
421
422
423
424
425
426
427
428
429
430
431
432
433
434
435
436
437
438
439
440
441
442
443
444
445
446
447
448
449
450
451
452
453
454
455
456
457
458
459
460
461
462
463
464
465
466
467
468
469
470
471
472
473
474
475
476
477
478
479
480
481
482
483
484
485
486
487
488
489
490
491
492
493
494
495
496
497
498
499
500
501
502
503
504
505
506
507
508
509
510
511
512
513
514
515
516
517
518
519
520
521
522
523
524
525
526
527
528
529
530
531
532
533
534
535
536
537
538
539
540
541
542
543
544
545
546
547
548
549
550
551
552
553
554
555
556
557
558
559
560
561
562
563
564
565
566
567
568
569
570
571
572
573
574
575
576
577
578
579
580
581
582
583
584
585
586
587
588
589
590
591
592
593
594
595
596
597
598
599
600
601
602
603
604
605
606
607
608
609
610
611
612
613
614
615
616
617
618
619
620
621
622
623
624
625
626
627
628
629
630
631
632
633
634
635
636
637
638
639
640
641
642
643
644
645
646
647
648
649
650
651
652
653
654
655
656
657
658
659
660
661
662
663
664
665
666
667
668
669
670
671
672
673
674
675
676
677
678
679
680
681
682
683
684
685
686
687
688
689
690
691
692
693
694
695
696
697
698
699
700
701
702
703
704
705
706
707
708
709
710
711
712
713
714
715
716
717
718
719
720
721
722
723
724
725
726
727
728
729
730
731
732
733
734
735
736
737
738
739
740
741
742
743
744
745
746
747
748
749
750
751
752
753
754
755
756
757
758
759
760
761
762
763
764
765
766
767
768
769
770
771
772
773
774
775
776
777
778
779
780
781
782
783
784
785
786
787
788
789
790
791
792
793
794
795
796
797
798
799
800
801
802
803
804
805
806
807
808
809
810
811
812
813
814
815
816
817
818
819
820
821
822
823
824
825
826
827
828
829
830
831
832
833
834
835
836
837
838
839
840
841
842
843
844
845
846
847
848
849
850
851
852
853
854
855
856
857
858
859
860
861
862
863
864
865
866
867
868
869
870
871
872
873
874
875
876
877
878
879
880
881
882
883
884
885
886
887
888
889
890
891
892
893
894
895
896
897
898
899
900
901
902
903
904
905
906
907
908
909
910
911
912
913
914
915
916
917
918
919
920
921
922
923
924
925
926
927
928
929
930
931
932
933
934
935
936
937
# SOME DESCRIPTIVE TITLE
# Copyright (C) YEAR The FreeBSD Project
# This file is distributed under the same license as the FreeBSD Documentation package.
# Vladlen Popolitov <vladlenpopolitov@list.ru>, 2025.
msgid ""
msgstr ""
"Project-Id-Version: FreeBSD Documentation VERSION\n"
"POT-Creation-Date: 2025-11-08 16:17+0000\n"
"PO-Revision-Date: 2025-11-12 04:45+0000\n"
"Last-Translator: Vladlen Popolitov <vladlenpopolitov@list.ru>\n"
"Language-Team: Russian <https://translate-dev.freebsd.org/projects/"
"documentation/bookshandbookkernelconfig_index/ru/>\n"
"Language: ru\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
"Plural-Forms: nplurals=3; plural=n%10==1 && n%100!=11 ? 0 : n%10>=2 && "
"n%10<=4 && (n%100<10 || n%100>=20) ? 1 : 2;\n"
"X-Generator: Weblate 4.17\n"

#. type: YAML Front Matter: description
#: documentation/content/en/books/handbook/kernelconfig/_index.adoc:1
#, no-wrap
msgid "This chapter covers how to configure the FreeBSD Kernel. When to build a custom kernel, how to take a hardware inventory, how to customize a kernel configuration file, etc"
msgstr "Эта глава рассказывает о настройке ядра FreeBSD. Когда стоит собирать собственное ядро, как провести инвентаризацию оборудования, как настроить конфигурационный файл ядра и т. д."

#. type: YAML Front Matter: part
#: documentation/content/en/books/handbook/kernelconfig/_index.adoc:1
#, no-wrap
msgid "Part II. Common Tasks"
msgstr "Часть II. Стандартные задачи"

#. type: YAML Front Matter: title
#: documentation/content/en/books/handbook/kernelconfig/_index.adoc:1
#, no-wrap
msgid "Chapter 10. Configuring the FreeBSD Kernel"
msgstr "Глава 10. Настройка ядра FreeBSD"

#. type: Title =
#: documentation/content/en/books/handbook/kernelconfig/_index.adoc:15
#, no-wrap
msgid "Configuring the FreeBSD Kernel"
msgstr "Настройка ядра FreeBSD"

#. type: Title ==
#: documentation/content/en/books/handbook/kernelconfig/_index.adoc:53
#, no-wrap
msgid "Synopsis"
msgstr "Обзор"

#. type: Plain text
#: documentation/content/en/books/handbook/kernelconfig/_index.adoc:58
msgid ""
"The kernel is the core of the FreeBSD operating system.  It is responsible "
"for managing memory, enforcing security controls, networking, disk access, "
"and much more.  While much of FreeBSD is dynamically configurable, some "
"users may wish to configure and compile a custom kernel."
msgstr ""
"Ядро — это основа операционной системы FreeBSD. Оно отвечает за управление "
"памятью, обеспечение контроля безопасности, работу с сетью, доступ к дискам "
"и многое другое. Хотя большая часть FreeBSD динамически настраивается, "
"некоторые пользователи могут захотеть настроить и скомпилировать собственное "
"ядро."

#. type: Plain text
#: documentation/content/en/books/handbook/kernelconfig/_index.adoc:60
msgid "Read this chapter to learn:"
msgstr "Прочитайте эту главу, чтобы узнать:"

#. type: Plain text
#: documentation/content/en/books/handbook/kernelconfig/_index.adoc:62
msgid "When to build a custom kernel."
msgstr "Когда следует собирать собственный ядро."

#. type: Plain text
#: documentation/content/en/books/handbook/kernelconfig/_index.adoc:63
msgid "How to take a hardware inventory."
msgstr "Как провести инвентаризацию оборудования."

#. type: Plain text
#: documentation/content/en/books/handbook/kernelconfig/_index.adoc:64
msgid "How to customize a kernel configuration file."
msgstr "Как настроить файл конфигурации ядра."

#. type: Plain text
#: documentation/content/en/books/handbook/kernelconfig/_index.adoc:65
msgid ""
"How to use the kernel configuration file to create and build a new kernel."
msgstr ""
"Как использовать файл конфигурации ядра для создания и сборки нового ядра."

#. type: Plain text
#: documentation/content/en/books/handbook/kernelconfig/_index.adoc:66
msgid "How to install the new kernel."
msgstr "Как установить новое ядро."

#. type: Plain text
#: documentation/content/en/books/handbook/kernelconfig/_index.adoc:67
msgid "How to troubleshoot if things go wrong."
msgstr "Как устранить неполадки, если что-то пойдет не так."

#. type: Plain text
#: documentation/content/en/books/handbook/kernelconfig/_index.adoc:69
msgid ""
"All of the commands listed in the examples in this chapter should be "
"executed as `root`."
msgstr ""
"Все команды, приведенные в примерах этой главы, должны выполняться от имени "
"пользователя `root`."

#. type: Title ==
#: documentation/content/en/books/handbook/kernelconfig/_index.adoc:71
#, no-wrap
msgid "Why Build a Custom Kernel?"
msgstr "Зачем собирать собственное ядро?"

#. type: Plain text
#: documentation/content/en/books/handbook/kernelconfig/_index.adoc:75
msgid ""
"Traditionally, FreeBSD used a monolithic kernel.  The kernel was one large "
"program, supported a fixed list of devices, and in order to change the "
"kernel's behavior, one had to compile and then reboot into a new kernel."
msgstr ""
"Традиционно FreeBSD использовала монолитное ядро. Ядро представляло собой "
"одну большую программу, поддерживало фиксированный список устройств, и для "
"изменения его поведения необходимо было скомпилировать новое ядро, а затем "
"перезагрузиться в него."

#. type: Plain text
#: documentation/content/en/books/handbook/kernelconfig/_index.adoc:79
msgid ""
"Today, most of the functionality in the FreeBSD kernel is contained in "
"modules which can be dynamically loaded and unloaded from the kernel as "
"necessary.  This allows the running kernel to adapt immediately to new "
"hardware and for new functionality to be brought into the kernel.  This is "
"known as a modular kernel."
msgstr ""
"Сегодня большая часть функциональности ядра FreeBSD содержится в модулях, "
"которые могут быть динамически загружены в ядро или выгружены из него по "
"мере необходимости. Это позволяет работающему ядру немедленно адаптироваться "
"к новому оборудованию и добавлять новую функциональность. Такое ядро "
"называется модульным."

#. type: Plain text
#: documentation/content/en/books/handbook/kernelconfig/_index.adoc:83
msgid ""
"Occasionally, it is still necessary to perform static kernel configuration.  "
"Sometimes the needed functionality is so tied to the kernel that it can not "
"be made dynamically loadable.  Some security environments prevent the "
"loading and unloading of kernel modules and require that only needed "
"functionality is statically compiled into the kernel."
msgstr ""
"Время от времени всё ещё требуется выполнять статическую настройку ядра. "
"Иногда необходимая функциональность настолько тесно связана с ядром, что её "
"невозможно сделать динамически загружаемой. В некоторых средах с повышенными "
"требованиями к безопасности запрещена загрузка и выгрузка модулей ядра, и "
"требуется, чтобы только необходимая функциональность была статически "
"скомпилирована в ядро."

#. type: Plain text
#: documentation/content/en/books/handbook/kernelconfig/_index.adoc:88
msgid ""
"Building a custom kernel is often a rite of passage for advanced BSD users.  "
"This process, while time consuming, can provide benefits to the FreeBSD "
"system.  Unlike the [.filename]#GENERIC# kernel, which must support a wide "
"range of hardware, a custom kernel can be stripped down to only provide "
"support for that computer's hardware.  This has a number of benefits, such "
"as:"
msgstr ""
"Сборка собственного ядра часто является своего рода обрядом посвящения для "
"опытных пользователей BSD. Этот процесс, хотя и отнимает много времени, "
"может принести пользу системе FreeBSD. В отличие от ядра [."
"filename]#GENERIC#, которое должно поддерживать широкий спектр оборудования, "
"собственное ядро можно сократить до поддержки только аппаратного обеспечения "
"данного компьютера. Это дает ряд преимуществ, таких как:"

#. type: Plain text
#: documentation/content/en/books/handbook/kernelconfig/_index.adoc:90
msgid ""
"Faster boot time. Since the kernel will only probe the hardware on the "
"system, the time it takes the system to boot can decrease."
msgstr ""
"Более быстрая загрузка. Поскольку ядро будет проверять только оборудование, "
"установленное в системе, время загрузки системы может сократиться."

#. type: Plain text
#: documentation/content/en/books/handbook/kernelconfig/_index.adoc:91
msgid ""
"Lower memory usage. A custom kernel often uses less memory than the [."
"filename]#GENERIC# kernel by omitting unused features and device drivers. "
"This is important because the kernel code remains resident in physical "
"memory at all times, preventing that memory from being used by applications. "
"For this reason, a custom kernel is useful on a system with a small amount "
"of RAM."
msgstr ""
"Снижение использования памяти. Собственное ядро часто потребляет меньше "
"памяти, чем ядро [.filename]#GENERIC#, за счёт исключения неиспользуемых "
"функций и драйверов устройств. Это важно, поскольку код ядра постоянно "
"находится в физической памяти, не позволяя использовать эту память "
"приложениям. По этой причине собственное ядро полезно на системах с "
"небольшим объёмом оперативной памяти."

#. type: Plain text
#: documentation/content/en/books/handbook/kernelconfig/_index.adoc:92
msgid ""
"Additional hardware support. A custom kernel can add support for devices "
"which are not present in the [.filename]#GENERIC# kernel."
msgstr ""
"Дополнительная поддержка оборудования. Собственное ядро может добавить "
"поддержку устройств, которые отсутствуют в ядре [.filename]#GENERIC#."

#. type: delimited block = 4
#: documentation/content/en/books/handbook/kernelconfig/_index.adoc:98
msgid ""
"When building a custom kernel, it is important to note that non-default "
"configurations are less thoroughly tested than the GENERIC configuration.  "
"While customizing the kernel can provide specific benefits it also increases "
"the risk of encountering build or runtime issues.  Custom kernel "
"configurations are recommended only for advanced users who have a specific "
"reason for making changes and are willing to engage in the debugging process "
"if necessary."
msgstr ""
"При сборке собственного ядра важно учитывать, что нестандартные конфигурации "
"тестируются менее тщательно, чем конфигурация GENERIC. Хотя настройка ядра "
"может дать определённые преимущества, она также увеличивает риск "
"возникновения проблем при сборке или во время работы. Пользовательские "
"конфигурации ядра рекомендуются только опытным пользователям, у которых есть "
"веская причина для внесения изменений и которые готовы при необходимости "
"участвовать в процессе отладки."

#. type: Plain text
#: documentation/content/en/books/handbook/kernelconfig/_index.adoc:102
msgid ""
"Before building a custom kernel, consider the reason for doing so.  If there "
"is a need for specific hardware support, it may already exist as a module."
msgstr ""
"Прежде чем собирать собственное ядро, стоит подумать о причине этого. Если "
"требуется поддержка определённого оборудования, она может уже существовать в "
"виде модуля."

#. type: Plain text
#: documentation/content/en/books/handbook/kernelconfig/_index.adoc:106
msgid ""
"Kernel modules exist in [.filename]#/boot/kernel# and may be dynamically "
"loaded into the running kernel using man:kldload[8].  Most kernel drivers "
"have a loadable module and manual page.  For example, the man:ath[4] "
"wireless network driver has the following information in its manual page:"
msgstr ""
"Модули ядра находятся в [.filename]#/boot/kernel# и могут быть динамически "
"загружены в работающее ядро с помощью man:kldload[8]. Большинство драйверов "
"ядра имеют загружаемый модуль и страницу руководства. Например, драйвер "
"беспроводной сети man:ath[4] содержит следующую информацию на своей странице "
"руководства:"

#. type: delimited block . 4
#: documentation/content/en/books/handbook/kernelconfig/_index.adoc:111
#, no-wrap
msgid ""
"Alternatively, to load the driver as a module at boot time, place the\n"
"following line in man:loader.conf[5]:\n"
msgstr ""
"В качестве альтернативы, для загрузки драйвера в виде модуля при старте системы,\n"
"поместите следующую строку в man:loader.conf[5]:\n"

#. type: delimited block . 4
#: documentation/content/en/books/handbook/kernelconfig/_index.adoc:113
#, no-wrap
msgid "    if_ath_load=\"YES\"\n"
msgstr "    if_ath_load=\"YES\"\n"

#. type: Plain text
#: documentation/content/en/books/handbook/kernelconfig/_index.adoc:116
msgid ""
"Adding `if_ath_load=\"YES\"` to [.filename]#/boot/loader.conf# will load "
"this module dynamically at boot time."
msgstr ""
"Добавление `if_ath_load=\"YES\"` в [.filename]#/boot/loader.conf# позволит "
"динамически загрузить этот модуль во время загрузки системы."

#. type: Plain text
#: documentation/content/en/books/handbook/kernelconfig/_index.adoc:119
msgid ""
"In some cases, there is no associated module in [.filename]#/boot/kernel#.  "
"This is mostly true for certain subsystems."
msgstr ""
"В некоторых случаях связанный модуль отсутствует в [.filename]#/boot/"
"kernel#. Это в основном относится к определенным подсистемам."

#. type: Title ==
#: documentation/content/en/books/handbook/kernelconfig/_index.adoc:121
#, no-wrap
msgid "Finding the System Hardware"
msgstr "Поиск информации об оборудовании системы"

#. type: Plain text
#: documentation/content/en/books/handbook/kernelconfig/_index.adoc:126
msgid ""
"Before editing the kernel configuration file, it is recommended to perform "
"an inventory of the machine's hardware.  On a dual-boot system, the "
"inventory can be created from the other operating system.  For example, "
"Microsoft(R)'s Device Manager contains information about installed devices."
msgstr ""
"Прежде чем редактировать файл конфигурации ядра, рекомендуется составить "
"перечень оборудования компьютера. На системе с двойной загрузкой этот "
"перечень можно создать из другой операционной системы. Например, Диспетчер "
"устройств Microsoft(R) содержит информацию об установленных устройствах."

#. type: delimited block = 4
#: documentation/content/en/books/handbook/kernelconfig/_index.adoc:130
msgid ""
"Some versions of Microsoft(R) Windows(R) have a System icon which can be "
"used to access Device Manager."
msgstr ""
"Некоторые версии Microsoft(R) Windows(R) имеют значок \"Система\", который "
"можно использовать для доступа к диспетчеру устройств."

#. type: Plain text
#: documentation/content/en/books/handbook/kernelconfig/_index.adoc:135
msgid ""
"If FreeBSD is the only installed operating system, use man:dmesg[8] to "
"determine the hardware that was found and listed during the boot probe.  "
"Most device drivers on FreeBSD have a manual page which lists the hardware "
"supported by that driver.  For example, the following lines indicate that "
"the man:psm[4] driver found a mouse:"
msgstr ""
"Если FreeBSD — единственная установленная операционная система, используйте "
"man:dmesg[8] для определения оборудования, обнаруженного и перечисленного во "
"время загрузки. Большинство драйверов устройств в FreeBSD имеют справочную "
"страницу, в которой перечислено поддерживаемое оборудование. Например, "
"следующие строки указывают, что драйвер man:psm[4] обнаружил мышь:"

#. type: delimited block . 4
#: documentation/content/en/books/handbook/kernelconfig/_index.adoc:142
#, no-wrap
msgid ""
"psm0: <PS/2 Mouse> irq 12 on atkbdc0\n"
"psm0: [GIANT-LOCKED]\n"
"psm0: [ITHREAD]\n"
"psm0: model Generic PS/2 mouse, device ID 0\n"
msgstr ""
"psm0: <PS/2 Mouse> irq 12 on atkbdc0\n"
"psm0: [GIANT-LOCKED]\n"
"psm0: [ITHREAD]\n"
"psm0: model Generic PS/2 mouse, device ID 0\n"

#. type: Plain text
#: documentation/content/en/books/handbook/kernelconfig/_index.adoc:145
msgid ""
"Since this hardware exists, this driver should not be removed from a custom "
"kernel configuration file."
msgstr ""
"Поскольку данное оборудование существует, этот драйвер не следует удалять из "
"файла конфигурации собственного ядра."

#. type: Plain text
#: documentation/content/en/books/handbook/kernelconfig/_index.adoc:147
msgid ""
"If the output of `dmesg` does not display the results of the boot probe "
"output, instead read the contents of [.filename]#/var/run/dmesg.boot#."
msgstr ""
"Если вывод команды `dmesg` не отображает результаты загрузочного probing, "
"вместо этого прочитайте содержимое файла [.filename]#/var/run/dmesg.boot#."

#. type: Plain text
#: documentation/content/en/books/handbook/kernelconfig/_index.adoc:150
msgid ""
"Another tool for finding hardware is man:pciconf[8], which provides more "
"verbose output.  For example:"
msgstr ""
"Еще один инструмент для поиска оборудования — это man:pciconf[8], который "
"предоставляет более подробный вывод. Например:"

#. type: delimited block . 4
#: documentation/content/en/books/handbook/kernelconfig/_index.adoc:159
#, no-wrap
msgid ""
"% pciconf -lv\n"
"ath0@pci0:3:0:0:        class=0x020000 card=0x058a1014 chip=0x1014168c rev=0x01 hdr=0x00\n"
"    vendor     = 'Atheros Communications Inc.'\n"
"    device     = 'AR5212 Atheros AR5212 802.11abg wireless'\n"
"    class      = network\n"
"    subclass   = ethernet\n"
msgstr ""
"% pciconf -lv\n"
"ath0@pci0:3:0:0:        class=0x020000 card=0x058a1014 chip=0x1014168c rev=0x01 hdr=0x00\n"
"    vendor     = 'Atheros Communications Inc.'\n"
"    device     = 'AR5212 Atheros AR5212 802.11abg wireless'\n"
"    class      = network\n"
"    subclass   = ethernet\n"

#. type: Plain text
#: documentation/content/en/books/handbook/kernelconfig/_index.adoc:162
msgid ""
"This output shows that the [.filename]#ath# driver located a wireless "
"Ethernet device."
msgstr ""
"Этот вывод показывает, что драйвер [.filename]#ath# обнаружил беспроводное "
"Ethernet-устройство."

#. type: Plain text
#: documentation/content/en/books/handbook/kernelconfig/_index.adoc:165
msgid ""
"The `-k` flag of man:man[1] can be used to provide useful information.  For "
"example, it can be used to display a list of manual pages which contain a "
"particular device brand or name:"
msgstr ""
"Флаг `-k` утилиты man:man[1] может быть полезен для получения информации. "
"Например, с его помощью можно вывести список страниц руководства, содержащих "
"определённое название или марку устройства:"

#. type: delimited block . 4
#: documentation/content/en/books/handbook/kernelconfig/_index.adoc:171
#, no-wrap
msgid ""
"# man -k Atheros\n"
"ath(4)                   - Atheros IEEE 802.11 wireless network driver\n"
"ath_hal(4)               - Atheros Hardware Access Layer (HAL)\n"
msgstr ""
"# man -k Atheros\n"
"ath(4)                   - Atheros IEEE 802.11 wireless network driver\n"
"ath_hal(4)               - Atheros Hardware Access Layer (HAL)\n"

#. type: Plain text
#: documentation/content/en/books/handbook/kernelconfig/_index.adoc:174
msgid ""
"Once the hardware inventory list is created, refer to it to ensure that "
"drivers for installed hardware are not removed as the custom kernel "
"configuration is edited."
msgstr ""
"После составления списка оборудования обратитесь к нему, чтобы убедиться, "
"что драйверы установленного оборудования не будут удалены при редактировании "
"конфигурации собственного ядра."

#. type: Title ==
#: documentation/content/en/books/handbook/kernelconfig/_index.adoc:176
#, no-wrap
msgid "The Configuration File"
msgstr "Файл конфигурации"

#. type: Plain text
#: documentation/content/en/books/handbook/kernelconfig/_index.adoc:179
msgid ""
"In order to create a custom kernel configuration file and build a custom "
"kernel, the full FreeBSD source tree must first be installed."
msgstr ""
"Для создания файла конфигурации собственного ядра и сборки кастомного ядра "
"необходимо сначала установить полное дерево исходных кодов FreeBSD."

#. type: Plain text
#: documentation/content/en/books/handbook/kernelconfig/_index.adoc:182
msgid ""
"If [.filename]#/usr/src/# does not exist or it is empty, source has not been "
"installed.  Source can be installed with Git using the instructions in "
"crossref:mirrors[git,“Using Git”]."
msgstr ""
"Если [.filename]#/usr/src/# не существует или пуст, исходный код не "
"установлен. Исходный код можно установить с помощью Git, следуя инструкциям "
"в crossref:mirrors[git,“Использование Git”]."

#. type: Plain text
#: documentation/content/en/books/handbook/kernelconfig/_index.adoc:187
msgid ""
"Once source is installed, review the contents of [.filename]#/usr/src/sys#.  "
"This directory contains a number of subdirectories, including those which "
"represent the following supported architectures: [.filename]#amd64#, [."
"filename]#i386#, [.filename]#powerpc#, and [.filename]#sparc64#.  Everything "
"inside a particular architecture's directory deals with that architecture "
"only and the rest of the code is machine independent code common to all "
"platforms.  Each supported architecture has a [.filename]#conf# subdirectory "
"which contains the [.filename]#GENERIC# kernel configuration file for that "
"architecture."
msgstr ""
"После установки исходного кода ознакомьтесь с содержимым каталога [."
"filename]#/usr/src/sys#. Этот каталог содержит несколько подкаталогов, "
"включая те, которые соответствуют следующим поддерживаемым архитектурам: [."
"filename]#amd64#, [.filename]#i386#, [.filename]#powerpc# и [."
"filename]#sparc64#. Всё содержимое каталога конкретной архитектуры относится "
"только к этой архитектуре, а остальной код является машинонезависимым и "
"общим для всех платформ. Каждая поддерживаемая архитектура имеет подкаталог "
"[.filename]#conf#, который содержит файл конфигурации ядра [."
"filename]#GENERIC# для данной архитектуры."

#. type: Plain text
#: documentation/content/en/books/handbook/kernelconfig/_index.adoc:193
msgid ""
"Do not make edits to [.filename]#GENERIC#.  Instead, copy the file to a "
"different name and make edits to the copy.  The convention is to use a name "
"with all capital letters.  When maintaining multiple FreeBSD machines with "
"different hardware, it is a good idea to name it after the machine's "
"hostname.  This example creates a copy, named [.filename]#MYKERNEL#, of the "
"[.filename]#GENERIC# configuration file for the `amd64` architecture:"
msgstr ""
"Не вносите изменения в файл [.filename]#GENERIC#. Вместо этого скопируйте "
"его под другим именем и редактируйте копию. По сложившейся практике имя "
"файла должно состоять из заглавных букв. Если вы обслуживаете несколько "
"машин FreeBSD с разным оборудованием, разумно назвать файл по имени хоста "
"соответствующей машины. В следующем примере создаётся копия файла "
"конфигурации [.filename]#GENERIC# для архитектуры `amd64` с именем [."
"filename]#MYKERNEL#:"

#. type: delimited block . 4
#: documentation/content/en/books/handbook/kernelconfig/_index.adoc:198
#, no-wrap
msgid ""
"# cd /usr/src/sys/amd64/conf\n"
"# cp GENERIC MYKERNEL\n"
msgstr ""
"# cd /usr/src/sys/amd64/conf\n"
"# cp GENERIC MYKERNEL\n"

#. type: Plain text
#: documentation/content/en/books/handbook/kernelconfig/_index.adoc:202
msgid ""
"[.filename]#MYKERNEL# can now be customized with any `ASCII` text editor.  "
"The default editor is vi, though an easier editor for beginners, called ee, "
"is also installed with FreeBSD."
msgstr ""
"[.filename]#MYKERNEL# теперь можно настроить с помощью любого текстового "
"редактора, поддерживающего `ASCII`. Редактор по умолчанию — vi, но для "
"новичков также установлен более простой редактор под названием ee."

#. type: Plain text
#: documentation/content/en/books/handbook/kernelconfig/_index.adoc:208
msgid ""
"The format of the kernel configuration file is simple.  Each line contains a "
"keyword that represents a device or subsystem, an argument, and a brief "
"description.  Any text after a `+#+` is considered a comment and ignored.  "
"To remove kernel support for a device or subsystem, put a `+#+` at the "
"beginning of the line representing that device or subsystem.  Do not add or "
"remove a `+#+` for any line that is not understand."
msgstr ""
"Формат файла конфигурации ядра прост. Каждая строка содержит ключевое слово, "
"представляющее устройство или подсистему, аргумент и краткое описание. Любой "
"текст после `+#+` считается комментарием и игнорируется. Чтобы удалить "
"поддержку устройства или подсистемы в ядре, поставьте `+#+` в начале строки, "
"соответствующей этому устройству или подсистеме. Не добавляйте и не удаляйте "
"`+#+` для строк, которые не понятны."

#. type: delimited block = 4
#: documentation/content/en/books/handbook/kernelconfig/_index.adoc:214
msgid ""
"It is easy to remove support for a device or option and end up with a broken "
"kernel.  For example, if the man:ata[4] driver is removed from the kernel "
"configuration file, a system using `ATA` disk drivers may not boot.  When in "
"doubt, just leave support in the kernel."
msgstr ""
"Легко удалить поддержку устройства или опции и получить нерабочее ядро. "
"Например, если драйвер man:ata[4] удалён из конфигурационного файла ядра, "
"система, использующая драйверы дисков `ATA`, может не загрузиться. Если "
"сомневаетесь — оставьте поддержку в ядре."

#. type: Plain text
#: documentation/content/en/books/handbook/kernelconfig/_index.adoc:218
msgid ""
"In addition to the brief descriptions provided in this file, additional "
"descriptions are contained in [.filename]#NOTES#, which can be found in the "
"same directory as [.filename]#GENERIC# for that architecture.  For "
"architecture independent options, refer to [.filename]#/usr/src/sys/conf/"
"NOTES#."
msgstr ""
"В дополнение к кратким описаниям, приведённым в этом файле, дополнительные "
"описания содержатся в [.filename]#NOTES#, которые можно найти в том же "
"каталоге, что и [.filename]#GENERIC# для данной архитектуры. Для "
"архитектурно-независимых параметров обратитесь к [.filename]#/usr/src/sys/"
"conf/NOTES#."

#. type: delimited block = 4
#: documentation/content/en/books/handbook/kernelconfig/_index.adoc:222
msgid ""
"When finished customizing the kernel configuration file, save a backup copy "
"to a location outside of [.filename]#/usr/src#."
msgstr ""
"После завершения настройки конфигурационного файла ядра сохраните резервную "
"копию в расположении за пределами [.filename]#/usr/src#."

#. type: delimited block = 4
#: documentation/content/en/books/handbook/kernelconfig/_index.adoc:224
msgid ""
"Alternately, keep the kernel configuration file elsewhere and create a "
"symbolic link to the file:"
msgstr ""
"Или можно сохранить файл конфигурации ядра в другом месте и создать "
"символическую ссылку на него:"

#. type: delimited block . 4
#: documentation/content/en/books/handbook/kernelconfig/_index.adoc:231
#, no-wrap
msgid ""
"# cd /usr/src/sys/amd64/conf\n"
"# mkdir /root/kernels\n"
"# cp GENERIC /root/kernels/MYKERNEL\n"
"# ln -s /root/kernels/MYKERNEL\n"
msgstr ""
"# cd /usr/src/sys/amd64/conf\n"
"# mkdir /root/kernels\n"
"# cp GENERIC /root/kernels/MYKERNEL\n"
"# ln -s /root/kernels/MYKERNEL\n"

#. type: delimited block = 4
#: documentation/content/en/books/handbook/kernelconfig/_index.adoc:238
msgid ""
"An `include` directive is available for use in configuration files.  This "
"allows another configuration file to be included in the current one, making "
"it easy to maintain small changes relative to an existing file.  If only a "
"small number of additional options or drivers are required, this allows a "
"delta to be maintained with respect to [.filename]#GENERIC#, as seen in this "
"example:"
msgstr ""
"В конфигурационных файлах доступна директива `include`, которая позволяет "
"включать содержимое другого конфигурационного файла в текущий. Это упрощает "
"поддержку небольших изменений относительно существующего файла. Если "
"требуется лишь несколько дополнительных параметров или драйверов, можно "
"сохранять разницу относительно [.filename]#GENERIC#, как показано в примере:"

#. type: delimited block . 4
#: documentation/content/en/books/handbook/kernelconfig/_index.adoc:243
#, no-wrap
msgid ""
"include GENERIC\n"
"ident MYKERNEL\n"
msgstr ""
"include GENERIC\n"
"ident MYKERNEL\n"

#. type: delimited block . 4
#: documentation/content/en/books/handbook/kernelconfig/_index.adoc:248
#, no-wrap
msgid ""
"options         IPFIREWALL\n"
"options         DUMMYNET\n"
"options         IPFIREWALL_DEFAULT_TO_ACCEPT\n"
"options         IPDIVERT\n"
msgstr ""
"options         IPFIREWALL\n"
"options         DUMMYNET\n"
"options         IPFIREWALL_DEFAULT_TO_ACCEPT\n"
"options         IPDIVERT\n"

#. type: Plain text
#: documentation/content/en/books/handbook/kernelconfig/_index.adoc:253
msgid ""
"Using this method, the local configuration file expresses local differences "
"from a [.filename]#GENERIC# kernel.  As upgrades are performed, new features "
"added to [.filename]#GENERIC# will also be added to the local kernel unless "
"they are specifically prevented using `nooptions` or `nodevice`.  A "
"comprehensive list of configuration directives and their descriptions may be "
"found in man:config[5]."
msgstr ""
"При использовании этого метода локальный конфигурационный файл отражает "
"локальные отличия от ядра [.filename]#GENERIC#. При выполнении обновлений "
"новые функции, добавленные в [.filename]#GENERIC#, также будут добавлены в "
"локальное ядро, если они не запрещены явно с помощью `nooptions` или "
"`nodevice`. Полный список директив конфигурации и их описания можно найти в "
"man:config[5]."

#. type: delimited block = 4
#: documentation/content/en/books/handbook/kernelconfig/_index.adoc:257
msgid ""
"To build a file which contains all available options, run the following "
"command as `root`:"
msgstr ""
"Чтобы создать файл, содержащий все доступные параметры, выполните следующую "
"команду от имени `root`:"

#. type: delimited block . 4
#: documentation/content/en/books/handbook/kernelconfig/_index.adoc:261
#, no-wrap
msgid "# cd /usr/src/sys/arch/conf && make LINT\n"
msgstr "# cd /usr/src/sys/arch/conf && make LINT\n"

#. type: Title ==
#: documentation/content/en/books/handbook/kernelconfig/_index.adoc:266
#, no-wrap
msgid "Building and Installing a Custom Kernel"
msgstr "Сборка и установка собственного ядра"

#. type: delimited block = 4
#: documentation/content/en/books/handbook/kernelconfig/_index.adoc:269
msgid ""
"Once the edits to the custom configuration file have been saved, the source "
"code for the kernel can be compiled using the following steps:"
msgstr ""
"После сохранения изменений в пользовательском конфигурационном файле "
"исходный код ядра можно скомпилировать, выполнив следующие шаги:"

#. type: Plain text
#: documentation/content/en/books/handbook/kernelconfig/_index.adoc:273
#, no-wrap
msgid "*Procedure: Building a Kernel*\n"
msgstr "*Процедура: Сборка ядра*\n"

#. type: Plain text
#: documentation/content/en/books/handbook/kernelconfig/_index.adoc:275
msgid "Change to this directory:"
msgstr "Перейдите в этот каталог:"

#. type: delimited block . 4
#: documentation/content/en/books/handbook/kernelconfig/_index.adoc:279
#, no-wrap
msgid "# cd /usr/src\n"
msgstr "# cd /usr/src\n"

#. type: Plain text
#: documentation/content/en/books/handbook/kernelconfig/_index.adoc:282
msgid ""
"Compile the new kernel by specifying the name of the custom kernel "
"configuration file:"
msgstr "Соберите новое ядро, указав имя файла конфигурации собственного ядра:"

#. type: delimited block . 4
#: documentation/content/en/books/handbook/kernelconfig/_index.adoc:286
#, no-wrap
msgid "# make buildkernel KERNCONF=MYKERNEL\n"
msgstr "# make buildkernel KERNCONF=MYKERNEL\n"

#. type: Plain text
#: documentation/content/en/books/handbook/kernelconfig/_index.adoc:289
msgid ""
"Install the new kernel associated with the specified kernel configuration "
"file. This command will copy the new kernel to [.filename]#/boot/kernel/"
"kernel# and save the old kernel to [.filename]#/boot/kernel.old/kernel#:"
msgstr ""
"Установите новое ядро, связанное с указанным файлом конфигурации ядра. Эта "
"команда скопирует новое ядро в [.filename]#/boot/kernel/kernel#, а старое "
"ядро сохранит в [.filename]#/boot/kernel.old/kernel#:"

#. type: delimited block . 4
#: documentation/content/en/books/handbook/kernelconfig/_index.adoc:293
#, no-wrap
msgid "# make installkernel KERNCONF=MYKERNEL\n"
msgstr "# make installkernel KERNCONF=MYKERNEL\n"

#. type: Plain text
#: documentation/content/en/books/handbook/kernelconfig/_index.adoc:297
msgid ""
"Shutdown the system and reboot into the new kernel. If something goes wrong, "
"refer to crossref:kernelconfig[kernelconfig-noboot, The kernel does not "
"boot]."
msgstr ""
"Выключите систему и перезагрузитесь с новым ядром. Если возникнут проблемы, "
"обратитесь к разделу crossref:kernelconfig[kernelconfig-noboot, Ядро не "
"загружается]."

#. type: delimited block = 4
#: documentation/content/en/books/handbook/kernelconfig/_index.adoc:301
msgid ""
"By default, when a custom kernel is compiled, all kernel modules are "
"rebuilt.  To update a kernel faster or to build only custom modules, edit [."
"filename]#/etc/make.conf# before starting to build the kernel."
msgstr ""
"По умолчанию при компиляции собственного ядра все модули ядра "
"пересобираются. Чтобы ускорить обновление ядра или собрать только "
"необходимые модули, отредактируйте [.filename]#/etc/make.conf# перед началом "
"сборки ядра."

#. type: delimited block = 4
#: documentation/content/en/books/handbook/kernelconfig/_index.adoc:303
msgid ""
"For example, this variable specifies the list of modules to build instead of "
"using the default of building all modules:"
msgstr ""
"Например, эта переменная задаёт список модулей для сборки вместо "
"использования значения по умолчанию (сборка всех модулей):"

#. type: delimited block . 4
#: documentation/content/en/books/handbook/kernelconfig/_index.adoc:307
#, no-wrap
msgid "MODULES_OVERRIDE = linux acpi\n"
msgstr "MODULES_OVERRIDE = linux acpi\n"

#. type: Plain text
#: documentation/content/en/books/handbook/kernelconfig/_index.adoc:310
msgid ""
"Alternately, this variable lists which modules to exclude from the build "
"process:"
msgstr ""
"Или эта переменная указывает, какие модули исключить из процесса сборки:"

#. type: delimited block . 4
#: documentation/content/en/books/handbook/kernelconfig/_index.adoc:314
#, no-wrap
msgid "WITHOUT_MODULES = linux acpi sound\n"
msgstr "WITHOUT_MODULES = linux acpi sound\n"

#. type: Plain text
#: documentation/content/en/books/handbook/kernelconfig/_index.adoc:318
msgid ""
"Additional variables are available.  Refer to man:make.conf[5] for details."
msgstr ""
"Доступны дополнительные переменные. Подробности смотрите в man:make.conf[5]."

#. type: Title ==
#: documentation/content/en/books/handbook/kernelconfig/_index.adoc:320
#, no-wrap
msgid "If Something Goes Wrong"
msgstr "Если что-то пойдет не так"

#. type: Plain text
#: documentation/content/en/books/handbook/kernelconfig/_index.adoc:323
msgid ""
"There are four categories of trouble that can occur when building a custom "
"kernel:"
msgstr ""
"Существует четыре типа проблем, которые могут возникнуть при сборке "
"собственного ядра:"

#. type: Labeled list
#: documentation/content/en/books/handbook/kernelconfig/_index.adoc:324
#, no-wrap
msgid "`config` fails"
msgstr "`config` завершается с ошибкой"

#. type: Plain text
#: documentation/content/en/books/handbook/kernelconfig/_index.adoc:327
msgid ""
"If `config` fails, it will print the line number that is incorrect.  As an "
"example, for the following message, make sure that line 17 is typed "
"correctly by comparing it to [.filename]#GENERIC# or [.filename]#NOTES#:"
msgstr ""
"Если `config` завершается с ошибкой, он выводит номер строки, содержащей "
"ошибку. Например, при получении следующего сообщения убедитесь, что строка "
"17 введена правильно, сравнив её с [.filename]#GENERIC# или [."
"filename]#NOTES#:"

#. type: delimited block . 4
#: documentation/content/en/books/handbook/kernelconfig/_index.adoc:331
#, no-wrap
msgid "config: line 17: syntax error\n"
msgstr "config: line 17: syntax error\n"

#. type: Labeled list
#: documentation/content/en/books/handbook/kernelconfig/_index.adoc:333
#, no-wrap
msgid "`make` fails"
msgstr "`make` завершается с ошибкой"

#. type: Plain text
#: documentation/content/en/books/handbook/kernelconfig/_index.adoc:336
msgid ""
"If `make` fails, it is usually due to an error in the kernel configuration "
"file which is not severe enough for `config` to catch.  Review the "
"configuration, and if the problem is not apparent, send an email to the "
"{freebsd-questions} which contains the kernel configuration file."
msgstr ""
"Если `make` завершается с ошибкой, обычно это связано с ошибкой в файле "
"конфигурации ядра, которую `config` не смог обнаружить. Проверьте "
"конфигурацию, и если проблема не очевидна, отправьте письмо в список "
"рассылки {freebsd-questions}, приложив файл конфигурации ядра."

#. type: Labeled list
#: documentation/content/en/books/handbook/kernelconfig/_index.adoc:338
#, no-wrap
msgid "The kernel does not boot"
msgstr "Ядро не загружается"

#. type: Plain text
#: documentation/content/en/books/handbook/kernelconfig/_index.adoc:343
msgid ""
"If the new kernel does not boot or fails to recognize devices, do not panic! "
"Fortunately, FreeBSD has an excellent mechanism for recovering from "
"incompatible kernels.  Simply choose the kernel to boot from at the FreeBSD "
"boot loader.  This can be accessed when the system boot menu appears by "
"selecting the \"Escape to a loader prompt\" option.  At the prompt, type "
"`boot _kernel.old_`, or the name of any other kernel that is known to boot "
"properly."
msgstr ""
"Если новый ядро не загружается или не распознаёт устройства, не паникуйте! К "
"счастью, в FreeBSD есть отличный механизм восстановления после проблем с "
"несовместимыми ядрами. Просто выберите ядро для загрузки в загрузчике "
"FreeBSD. Это можно сделать при появлении меню загрузки системы, выбрав опцию "
"«Escape to a loader prompt». В командной строке введите `boot _kernel.old_` "
"или имя любого другого ядра, которое заведомо загружается правильно."

#. type: Plain text
#: documentation/content/en/books/handbook/kernelconfig/_index.adoc:347
msgid ""
"After booting with a good kernel, check over the configuration file and try "
"to build it again.  One helpful resource is [.filename]#/var/log/messages# "
"which records the kernel messages from every successful boot.  Also, man:"
"dmesg[8] will print the kernel messages from the current boot."
msgstr ""
"После загрузки с исправным ядром проверьте конфигурационный файл и "
"попробуйте собрать его снова. Полезным ресурсом может быть [.filename]#/var/"
"log/messages#, где записываются сообщения ядра при каждой успешной загрузке. "
"Также man:dmesg[8] выведет сообщения ядра текущей загрузки."

#. type: delimited block = 4
#: documentation/content/en/books/handbook/kernelconfig/_index.adoc:353
msgid ""
"When troubleshooting a kernel make sure to keep a copy of a kernel that is "
"known to work, such as [.filename]#GENERIC#.  This is important because "
"every time a new kernel is installed, [.filename]#kernel.old# is overwritten "
"with the last installed kernel, which may or may not be bootable.  As soon "
"as possible, move the working kernel by renaming the directory containing "
"the good kernel:"
msgstr ""
"При устранении неполадок ядра обязательно сохраняйте копию работоспособного "
"ядра, например, [.filename]#GENERIC#. Это важно, потому что при каждой "
"установке нового ядра файл [.filename]#kernel.old# перезаписывается "
"последним установленным ядром, которое может быть или не быть загружаемым. "
"Как можно скорее переместите рабочее ядро, переименовав каталог, содержащий "
"исправное ядро:"

#. type: delimited block . 4
#: documentation/content/en/books/handbook/kernelconfig/_index.adoc:358
#, no-wrap
msgid ""
"# mv /boot/kernel /boot/kernel.bad\n"
"# mv /boot/kernel.good /boot/kernel\n"
msgstr ""
"# mv /boot/kernel /boot/kernel.bad\n"
"# mv /boot/kernel.good /boot/kernel\n"

#. type: Labeled list
#: documentation/content/en/books/handbook/kernelconfig/_index.adoc:362
#, no-wrap
msgid "The kernel works, but man:ps[1] does not"
msgstr "Ядро работает, но man:ps[1] — нет"

#. type: delimited block = 4
#: documentation/content/en/books/handbook/kernelconfig/_index.adoc:365
msgid ""
"If the kernel version differs from the one that the system utilities have "
"been built with, for example, a kernel built from -CURRENT sources is "
"installed on a -RELEASE system, many system status commands like man:ps[1] "
"and man:vmstat[8] will not work.  To fix this, crossref:cutting-"
"edge[makeworld,recompile and install a world] built with the same version of "
"the source tree as the kernel.  It is never a good idea to use a different "
"version of the kernel than the rest of the operating system."
msgstr ""
"Если версия ядра отличается от той, с которой собраны системные утилиты, "
"например, при установке ядра, собранного из исходников -CURRENT, на систему -"
"RELEASE, многие команды для просмотра состояния системы, такие как man:ps[1] "
"и man:vmstat[8], не будут работать. Чтобы исправить это, crossref:cutting-"
"edge[makeworld,пересоберите и установите world], собранный из той же версии "
"исходного дерева, что и ядро. Никогда не рекомендуется использовать версию "
"ядра, отличную от остальной операционной системы."