Я пытался обновить свои модули Perl через CPAN, но я не предоставлял имя регулярного выражения / модуля для обновления: perl -MCPAN -e 'upgrade'
; Я могу предположить только худшее (что подтверждается выводом perldoc perllocal
), то есть устанавливаются все модули Perl из CPAN.
Как я могу отменить этот беспорядок? Я полагаю, я могу удалить /usr/local/share/perl
, но каковы последствия этого?
Редактировать: У меня все еще есть 95% свободного места на жестком диске, так что это не большая проблема. Я просто не хочу много ненужного беспорядка. Я рассматриваю rm
этот каталог, делаю dpkg --purge perl
и переделываю процесс установки apt-get
и CPAN. Но действительно ли это необходимо, или я могу просто удалить ненужные модули из /usr/local/share/perl
?
Смотря на это немного ближе, я не думаю, что Вы должны или должны удалить любые каталоги или файлы в Вашей системе.
Выполнение команды perl -MCPAN -e 'upgrade'
из командной строки не установит дополнительные модули на Вашу систему.
Это только попытается обновить установленные модули через систему управления пакета CPAN, а не через Синаптический.
Это подобно выполнению команды 'r' и затем выполнению команды обновления в cpan[1]>
подсказка. Посмотрите здесь.
CPAN и Синаптический являются двумя отдельными и отличными системами управления пакета.
Это не установит все возможные модули Perl от CPAN. И при этом это не изменит существующий дБ системного пакета. Так, можно определенно откатывать это безопасно.
Однако это все еще потенциально опасно, если приложение или Ваша система зависят от конкретной версии модуля Perl.
При прерывании процесса обновления возможности хороши, что Вы постарались не вредить своей системе.
Опции восстановления:
Из командной строки запустить cpan
, и выполненный команда r для наблюдения списка установленных модулей и доступных обновлений. Например, вот сокращенный вывод от моего cpan:
cpan[7]> r
Package namespace installed latest in CPAN file
App::Cpan 1.5701 1.61 BDFOY/App-Cpan-1.61.tar.gz
DBD::mysql 4.020 4.022 CAPTTOFU/DBD-mysql-4.022.tar.gz
DBI 1.616 1.623 TIMB/DBI-1.623.tar.gz
DB_File 1.821 1.827 PMQS/DB_File-1.827.tar.gz
Error 0.17010 0.17019 SHLOMIF/Error-0.17019.tar.gz
Eval::Closure 0.06 0.08 DOY/Eval-Closure-0.08.tar.gz
....
Возьмите Eval::Closure
модуль, для этого примера. Скажем, то, что Вы позволяете perl -MCPAN -e 'upgrade'
управляйте завершенный, и Вам теперь установили версию 0.08.
Смотря на Синаптический, в этом случае, это покажет, что последняя версия в репозитории все еще будет 0.06 (0.06-1 а именно, в моем экземпляре).
Можно откатывать к версии системы путем выполнения следующей команды:
sudo apt-get install --reinstall libeval-closure-perl
Если Вы установили какие-либо модули Perl вручную и хотите откатывать их к предыдущей версии, Вы должны будете загрузить их снова (или из source.cpan.org или в другом месте) и вручную переустановить их.
Подводить итог: Обновление модулей Perl в CPAN не должно влиять на Ваш системный репозиторий.
Всего наилучшего. Не паниковать.
Я бы порекомендовал сделать: apt-get remove <installed-packages> && apt-get autoremove
(для удаления зависимостей) && apt-get purge <installed-packages>
(для удаления оставшихся файлов конфигурации), затем вы можете удалить ненужные папки, но это уже должно быть сделано для вас:) [ 112]