11f533316f
y2kbug.sgml: Just correct original revision number support.sgml: 1.353 -> 1.354 tutorials/index.sgml: 1.23 -> 1.24 support/webresources.sgml: 1.1 -> 1.2 Obtained from: The FreeBSD Russian Documentation Project
289 lines
11 KiB
Text
289 lines
11 KiB
Text
<!--
|
||
The FreeBSD Russian Documentation Project
|
||
|
||
$FreeBSDru: frdp/www/ru/y2kbug.sgml,v 1.10 2006/06/08 08:14:55 gad Exp $
|
||
|
||
Original revision: 1.46
|
||
-->
|
||
|
||
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" [
|
||
<!ENTITY date "$FreeBSD$">
|
||
<!ENTITY title 'Готовность к 2000 году ("Ошибка тысячелетия")'>
|
||
<!ENTITY % navincludes SYSTEM "includes.navabout.sgml"> %navincludes;
|
||
<!ENTITY % includes SYSTEM "includes.sgml"> %includes;
|
||
]>
|
||
<html>
|
||
&header;
|
||
|
||
<p>Так как осознание проблемы 2000 года (известной также под
|
||
названием "ошибки тысячелетия") усиливается, все большее количество
|
||
компаний требуют официальных заявлений от поставщиков их аппаратного
|
||
и программного обеспечения о том, насколько корректно их оборудование
|
||
воспримет переход в 2000 год.</p>
|
||
|
||
<p>Организации, использующие &unix; и Unix-подобные операционные системы
|
||
типа FreeBSD, уже сделали один шаг вперёд в решении этой проблемы.
|
||
FreeBSD многие годы будет корректно обрабатывать время после наступления
|
||
2000 года.></p>
|
||
|
||
<h2>Вводная информация</h2>
|
||
|
||
<p><i>(Этот раздел основан на информации, найденной на странице <a
|
||
href="http://www.linux.org.uk/mbug.html">Готовности
|
||
Linux к Г2000</a>)</i></p>
|
||
|
||
<p>Как это имеет место со всеми Unix и Unix-подобными операционными
|
||
системами, время и даты во FreeBSD имеют внутреннее представление в виде
|
||
числа секунд, прошедших с 1 января 1970 года ("век" Unix). В настоящее
|
||
время это число хранится в виде 32-разрядного целого и исчерпает себя
|
||
только к 2038 году. К тому времени мы уже (надеемся) будем использовать
|
||
счетчик на 64 (или больше) разрядов, которого должно хватить до
|
||
скончания мира.</p>
|
||
|
||
<p>Заметьте, что готовность ОС к Г2000 не означает, что приложения,
|
||
не готовые к Г2000, будут работать корректно.</p>
|
||
|
||
<p>Заметьте также, что при работе ОС предполагается чтение текущей даты
|
||
и времени из часов CMOS на вашем компьютере. Не все такие устройства
|
||
корректно обрабатывают 2000 год. Советуем вам индивидуально
|
||
протестировать каждую машину, чтобы убедиться, что ваши аппаратные часы
|
||
ведут себя правильно при переходе от 1999 года к 2000. и что они
|
||
правильно интерпретируют год 2000 как високосный.</p>
|
||
|
||
<h2>Что вы можете сделать</h2>
|
||
|
||
<p>FreeBSD будет продолжать правильно вести отсчет времени в следующем
|
||
веке. Приложения третьих фирм, однако, могут этого и не сделать.
|
||
Лучшей вашей защитой от проблем, связанных с 2000 годом, является хорошо
|
||
продуманная атака. Выслушивание историй о предстоящем крахе мира, как
|
||
мы его себе представляем, <strong>не решит</strong> проблему
|
||
тысячелетия, как впрочем, и простое ожидание последнего часа. Проект
|
||
FreeBSD рекомендует, чтобы ваша организация выработала некоторые
|
||
принципиальные подходы к решению задач, касающихся проблемы Г2000.</p>
|
||
|
||
<h2>Заявление FreeBSD по поводу Г2000</h2>
|
||
|
||
<blockquote>
|
||
<p>"После тщательного исследования и тестирования, мы полагаем, что
|
||
FreeBSD является системой, готовой к Г2000 на 100%. В случае, если
|
||
что-то было пропущено, мы приложим все усилия, чтобы исправить всё как
|
||
можно скорее."</p>
|
||
|
||
<p align="right">David Greenman<br>Principal Architect, The
|
||
FreeBSD project</p>
|
||
</blockquote>
|
||
|
||
<h2>Исправленные проблемы</h2>
|
||
|
||
<p>Во FreeBSD были найдены и исправлены следующие проблемы Г2000.</p>
|
||
|
||
<dl>
|
||
<dt><a
|
||
href="http://www.FreeBSD.org/cgi/query-pr.cgi?pr=1380">misc/1380</a></dt>
|
||
|
||
<dd>Некоторые программы имеют предопределенный формат 19%d
|
||
для выдачи года. К таким программам относятся: yacc, ftpd, и make.
|
||
[Исправлено: yacc v1.2 1999/01/18; ftpd v1.7 1996/08/05;
|
||
make v1.4 1996/10/06; исправления касаются FreeBSD-2.2 и выше]
|
||
</dd>
|
||
|
||
<dt><a
|
||
href="http://www.FreeBSD.org/cgi/query-pr.cgi?pr=1382">conf/1382</a></dt>
|
||
|
||
<dd>sed-скрипт в /etc/rc.local, вставляющий строку идентификации
|
||
машины/ядра в сообщении дня, зависит от номера года и не работает
|
||
после 1999.[Исправлено v1.21 1996/10/24; исправления касаются
|
||
FreeBSD-2.2 и выше]
|
||
</dd>
|
||
|
||
<dt><a
|
||
href="http://www.FreeBSD.org/cgi/query-pr.cgi?pr=3465">misc/3465</a></dt>
|
||
|
||
<dd>Команда etc/namedb/make-localhost генерирует серийный номер DNS
|
||
в формате YYMMDD. В 2000 году, он будет иметь вид 1YYMMDD.
|
||
[Исправлено v1.2 1997/08/11; исправления касаются FreeBSD-2.2.5 и выше]
|
||
</dd>
|
||
|
||
<dt><a
|
||
href="http://www.FreeBSD.org/cgi/query-pr.cgi?pr=4930">gnu/4930</a> и
|
||
<a href="http://www.FreeBSD.org/cgi/query-pr.cgi?pr=8321">gnu/8321</a></dt>
|
||
|
||
<dd>Макрос tmac для groff использует предопределенное число 19 для
|
||
генерации некоторых дат.
|
||
[Исправлено: tmac.e v1.3 1998/12/06; doc-common v1.10 1999/01/19;
|
||
исправления касаются FreeBSD-3.1 и выше]
|
||
</dd>
|
||
|
||
<dt><a
|
||
href="http://www.FreeBSD.org/cgi/query-pr.cgi?pr=9323">bin/9323</a></dt>
|
||
|
||
<dd>В своей устаревшей форме touch неправильно обрабатывает две
|
||
цифры указываемого года. Даты в диапазоне 00-68 воспринимаются как
|
||
1900-1968, а не 2000-2068. [Исправлено v1.7 1999/01/05; исправления
|
||
касаются FreeBSD-3.1 и выше]
|
||
</dd>
|
||
|
||
<dt><a
|
||
href="http://cvsweb.FreeBSD.org/src/usr.sbin/xntpd/parse/util/dcfd.c">xntpd/parse/util/dcfd.c</a></dt>
|
||
|
||
<dd>Вычисление високосного года для выяснения числа дней в году и
|
||
преобразование времени DCF77 в число секунд, прошедших с начала Века
|
||
выполнялись некорректно. Эти ошибки влияют на все года.
|
||
[Исправлено v1.6 1999/01/12; исправления касаются FreeBSD-3.1 и выше]
|
||
</dd>
|
||
|
||
<dt><a
|
||
href="http://cvsweb.FreeBSD.org/src/gnu/usr.bin/tar/getdate.y">tar/getdate.y</a></dt>
|
||
|
||
<dd>В функции Convert() было задано использование номера года, состоящего
|
||
из двух цифр, для лет в диапазоне 70-99. Сейчас это исправлено, чтобы
|
||
можно было использовать две цифры года для лет из диапазона 1970-2069.
|
||
Функция не работает для круглых дат невисокосных лет - ошибка y2k1!
|
||
[Исправлено v1.4 1999/01/12; исправления касаются FreeBSD-3.1 и выше]
|
||
</dd>
|
||
|
||
<dt><a
|
||
href="http://cvsweb.FreeBSD.org/src/usr.bin/fetch/http.c">fetch/http.c</a></dt>
|
||
|
||
<dd>Протокол HTTP описывает устаревший формат представления даты, в
|
||
котором используются две цифры года. Предыдущие версии утилиты fetch
|
||
будут интерпретировать все такие даты как относящиеся к 20 веку;
|
||
что описано в последующем документе <a
|
||
href="ftp://ftp.cdrom.com/pub/internet/rfc/rfc2068.txt">RFC
|
||
2068</a>, что позволяет интерпретировать год из двух цифр как
|
||
относящийся к текущем столетию, если до его конца осталось больше
|
||
50 лет. Так как серверов HTTP, которые используют старый формат,
|
||
осталось не так уж много, вряд ли это вызовет значительные
|
||
сложности. [Исправлено v1.24 1999/01/15; исправления касаются
|
||
FreeBSD-3.1 и выше]
|
||
</dd>
|
||
|
||
<dt><a
|
||
href="http://www.FreeBSD.org/cgi/query-pr.cgi?pr=9500">misc/9500</a></dt>
|
||
|
||
<dd>Скрипт `edithook' в каталоге CVSROOT использует значение tm_year
|
||
непосредственно и поэтому будет выводить 01/01/100 для 2000-JAN-01.
|
||
[Исправлено в v1.2 1999/01/17; не имеет отношения ни к какому релизу]
|
||
</dd>
|
||
|
||
<dt><a
|
||
href="http://www.FreeBSD.org/cgi/query-pr.cgi?pr=9501">bin/9501</a></dt>
|
||
|
||
<dd>Некоторые из заимствованных файлов поставки cvs не совместимы с
|
||
Г2000. Скрипты log.pl и sccs2rcs.csh добавляют `19' к номеру года,
|
||
что приводит к выводу 19100 для 2000 года. Скрипт log_accum.pl
|
||
в одном месте использует две цифры года, а в другом предполагает, что
|
||
tm_year - это число лет, прошедших с начала столетия, а не с 1900 года.
|
||
[Исправлено: log.pl v1.2 1999/01/15; sccs2rcs.csh v1.3 1999/01/15;
|
||
исправления касаются FreeBSD-3.1 и выше]
|
||
</dd>
|
||
|
||
<dt><a
|
||
href="http://www.FreeBSD.org/cgi/query-pr.cgi?pr=9502">bin/9502</a></dt>
|
||
|
||
<dd>Регистр `yr' утилиты groff, инициализируется из (struct tm).tm_year
|
||
и поэтому представляет собой число лет, прошедших с 1900 года, а не
|
||
с начала текущего века (смотрите определение в файле
|
||
troff/input.cc).
|
||
[Исправлено, сейчас устанавливается значение по модулю 100,
|
||
troff/input.cc V1.2 1999/06/03; исправлено во FreeBSD-3.3]
|
||
</dd>
|
||
|
||
<dt><a
|
||
href="http://www.FreeBSD.org/cgi/query-pr.cgi?pr=9503">bin/9503</a></dt>
|
||
|
||
<dd>В PicoBSD simple_httpd использует непосредственное значение tm_year
|
||
и поэтому будет выводить 01/01/100 для 2000-JAN-01.
|
||
[Исправлено в v1.2 1999/01/16; исправления касаются FreeBSD-3.1 и выше]
|
||
</dd>
|
||
|
||
<dt><a
|
||
href="http://www.FreeBSD.org/cgi/query-pr.cgi?pr=9505">bin/9505</a></dt>
|
||
|
||
<dd>Утилита adduser использует непосредственное значение tm_year и
|
||
поэтому будет выводить 100/01/01 для даты 2000-JAN-01.
|
||
[Исправлено в v1.42 1999/01/15; исправления касаются FreeBSD-3.1 и выше]
|
||
</dd>
|
||
|
||
<dt><a
|
||
href="http://www.FreeBSD.org/cgi/query-pr.cgi?pr=9506">bin/9506</a></dt>
|
||
|
||
<dd>Cron использует значение tm_year непосредственно и поэтому будет
|
||
выводить значение 100 для 2000 года.
|
||
[Fixed v1.7 1999/01/16]
|
||
</dd>
|
||
|
||
<dt><a
|
||
href="http://www.FreeBSD.org/cgi/query-pr.cgi?pr=9507">bin/9507</a></dt>
|
||
|
||
<dd>Утилита tcpslice(8) использует значение tm_year непосредственно и
|
||
поэтому будет выводить 100y01m01d... для 2000-JAN-01. Для
|
||
достижения совместимости используйте две цифры года до 2000 года.
|
||
[Исправлено в v1.8 1999/01/20; исправления касаются FreeBSD-3.1 и
|
||
выше]
|
||
</dd>
|
||
|
||
<dt><a
|
||
href="http://www.FreeBSD.org/cgi/query-pr.cgi?pr=14472">bin/14472</a></dt>
|
||
|
||
<dd>Команда date не воспринимает цифры, указывающие тысячи/сотни.
|
||
[Исправлено в v1.31 1999/11/10]
|
||
</dd>
|
||
|
||
<dt><a
|
||
href="http://www.FreeBSD.org/cgi/query-pr.cgi?pr=14511">misc/14511</a>
|
||
</dt>
|
||
|
||
<dd>В команде сhpass имеется проблема при использовании 00 для указания
|
||
года истечения срока.
|
||
</dd>
|
||
|
||
<dt><a
|
||
href="http://www.FreeBSD.org/cgi/query-pr.cgi?pr=15852">bin/15852</a>,
|
||
<a
|
||
href="http://www.FreeBSD.org/cgi/query-pr.cgi?pr=16045">gnu/16045</a> и
|
||
<a href="http://www.FreeBSD.org/cgi/query-pr.cgi?pr=16207">bin/16207</a>
|
||
</dt>
|
||
|
||
<dd>В программе groff имеется проблема с предопределённой строкой
|
||
\*(DT [\*(td]. [Исправлено с включением версии 1.15 2000/01/12]
|
||
</dd>
|
||
|
||
<dt><a
|
||
href="http://www.FreeBSD.org/cgi/query-pr.cgi?pr=15872">bin/15872</a>
|
||
</dt>
|
||
|
||
<dd>В программе at(1) имеется проблема с проверкой указания времени,
|
||
когда при задании tm_year равным 100 выдаётся диагностика `garbled
|
||
time'.
|
||
</dd>
|
||
|
||
<dt><a
|
||
href="http://www.FreeBSD.org/cgi/query-pr.cgi?pr=16238">misc/16238</a>
|
||
</dt>
|
||
|
||
<dd>Установка KerberosIV работает некорректно, так как в исходных текстах
|
||
Kerberos жёстко задано время 12/31/99 истечения срока работы генератора
|
||
ключей. [Исправлено в v1.24 1999/09/19]
|
||
</dd>
|
||
</dl>
|
||
|
||
<h2>Дополнительная информация</h2>
|
||
|
||
<p>Если у вас есть вопросы по поводу готовности FreeBSD к 2000 году или
|
||
вы обнаружили приложение FreeBSD, которое не готово к 2000 году,
|
||
пожалуйста, напишите нам по адресу <a
|
||
href="mailto:freebsd-bugs@FreeBSD.org">freebsd-bugs@FreeBSD.org</a>.</p>
|
||
|
||
&footer;
|
||
</body>
|
||
</html>
|
||
|
||
<!--
|
||
Local Variables:
|
||
mode: sgml
|
||
sgml-indent-data: t
|
||
sgml-omittag: nil
|
||
sgml-always-quote-attributes: t
|
||
End:
|
||
-->
|