Могло бы иметь смысл временно исключать пакет из установки, если бы доступная версия, как известно, является багги, хотя это редко происходило бы на сервере, где каждый обычно устанавливает дистрибутивы, которые часто не обновляют за исключением исправлений ошибок.
Причина, которая приходит на ум для исключения жемчуга конкретно, состоит в том, если существует отдельная установка жемчуга, возможно непосредственно от CPAN, возможно совместно использованного или синхронизируемого с другими машинами в сети для обеспечения непротиворечивых множеств установленных библиотек и версий. Заглянуть /usr/local
или opt
для альтернативной установки жемчуга проверьте на a PERL5LIB
начинание /etc/profile
. Я не сделал бы этого тот путь, потому что, поскольку Вы заметили, что это повредит зависимости, но я вижу, почему кто-то мог бы соблазниться.
Возможно, если Вы отправите полный набор исключений, то кто-то определит шаблон. Есть ли какой-либо комментарий в файле, который мог бы дать подсказку?
Для предотвращения этого вида проблемы в будущем необходимо подвергнуть все конфигурации управлению версиями. Затем журнал изменений указал бы, когда удивительная конфигурация была настроена, и надо надеяться почему.
На Debian/Ubuntu я использую etckeeper, который я думаю, был упакован для CentOS также. На машине мультиадминистратора это не должно быть настроено, чтобы никогда фиксировать изменения автоматически, вынудив администратора сделать явную фиксацию, прежде чем они смогут работать yum install
или yum update
.
Это ожидается, если Ваш терминал будет иметь tostop
опция включена. Когда это установлено, любой фоновый процесс, который пытается произвести к терминалу, получает SIGTTOU
сигнал, и что обработчик сигнала по умолчанию останавливает процесс. (Это сделано так, чтобы произведенный от фоновых процессов не портил Ваш терминал.)
Можно отключить эту опцию путем выполнения stty -tostop
, в том же терминале.
$ stty tostop
$ php ./t.php &
[1] 6484
$
[1]+ Stopped php ./t.php
$ # no messing up of the terminal, process stopped
$ fg
php ./t.php
0^C
$
$ stty -tostop
$ php ./t.php &
[1] 6481
$ # 01an2d 3now 45 6it m7esses 8up 9my term!
Существует, вероятно, лучшее решение, но для меня, на Ubuntu, оно работает, если Вы выполняете его на переднем плане и приостанавливаете его с Ctrl-Z и затем фоном оно с bg
:
$ php myfile.php
^Z
[4]+ Stopped php myfile.php
$ bg
[4]+ php myfile.php &
$ 2#3 it4 mess5es up 6my 7term8in9al too!
[4] Done php myfile.php