Я случайно перезаписал программу оболочки Linux и хотел бы это исправить.

Я случайно перезаписал программу оболочки Linux и хотел бы это исправить.

Я случайно перезаписал одну из программ в каталоге /bin и хотел бы это исправить. Я использую Ubuntu 11.10 и хотел бы найти способ переустановить только этот файл, без необходимости переустанавливать весь дистрибутив.

В частности, я случайно ввел следующую команду:

ls > less

Я имел в виду передать вывод ls в программу less для удобства просмотра, что должно было быть так:

ls | less

Команда сработала, потому что я (стыдно мне) вошел в систему как суперпользователь. Я открыл файл less в каталоге /bin, и, конечно же, теперь это текстовый файл с выводом моей команды ls. Можно ли это как-то исправить? Это особенно раздражает, потому что я не могу просмотреть страницы руководства ни для одной команды. Спасибо за помощь, я только изучаю Linux.

решение1

следующее работает на Debian и с трудом на Ubuntu:

sudo apt-get install --reinstall $(dpkg -S /usr/bin/less | cut -d: -f 1)

решение2

Более фундаментальным решением этой проблемы было бы создание резервных копий вашей системы на другом диске с помощью чего-то вроде rsync. Таким образом вы сможете восстановить любой файл, в котором есть проблемы. Вам в любом случае придется это сделать, чтобы защитить ваши файлы данных.

Существует ошеломляющее множество систем резервного копирования, доступных для Linux, но простая rsync сделает то, что вам нужно. Если возможно, одна копия всего должна быть на внешнем диске - желательно, сохраненном в удаленном месте, чтобы она не была физически уязвима для проблем там, где находится ваш компьютер.

Пока об этом, посмотрите most. Он делает то же, что less, и включает горизонтальную прокрутку, а также множество других функций.

http://linux.die.net/man/1/most

Связанный контент