Переназначение команды su
Я случайно связал свою команду "su" с двоичным файлом Sublime Text (это то, что вы получаете, когда доверяете нажатию на вкладку, не глядя...) Теперь "su" просто открывает сеанс SublimeTExt. Кто-нибудь знает, как я могу вернуться к предыдущей версии и указать "su" на то, на что он должен указывать? Спасибо!
РЕДАКТИРОВАТЬ: случайно выданная команда
sudo ln -s /opt/Sublime\ Text\ 2/sublime_text /usr/bin/su
3 ответа
Оригинал su
в /bin/su
просто удалите ссылку:
sudo rm /usr/bin/su
Проверьте which su
если он вернулся к /bin/su
Там приоритет в исполняемых путях, см.:
echo $PATH
/usr/bin
приходит раньше /bin
Таким образом, ваша ссылка будет выполнена в первую очередь. Но чтобы научиться создавать эту ссылку снова и запустить which su
ты получишь /usr/bin/su
,
Ну, все $PATH могут содержать сам исполняемый файл или его ссылку. Таким образом, большинство из этих путей содержат смесь, дают ls -l /usr/bin
попытка (я сократил длинные результаты):
total 925272
-rwxr-xr-x 1 root root 39552 Dec 18 14:36 [
lrwxrwxrwx 1 root root 8 Dec 21 15:14 2to3 -> 2to3-2.7
-rwxr-xr-x 1 root root 96 Jan 12 10:12 2to3-2.7
-rwxr-xr-x 1 root root 96 Jan 27 17:21 2to3-3.3
-rwxr-xr-x 1 root root 96 Jan 27 17:23 2to3-3.4
-rwxr-xr-x 1 root root 5655 Jan 7 12:12 404main
-rwxr-xr-x 1 root root 10320 Feb 7 2013 411toppm
-rwxr-xr-x 1 root root 39 Feb 17 2012 7z
-rwxr-xr-x 1 root root 40 Feb 17 2012 7za
-rwxr-xr-x 1 root root 40 Feb 17 2012 7zr
-rwxr-xr-x 1 root root 106584 Jan 15 06:49 a2p
lrwxrwxrwx 1 root root 52 Jan 25 00:22 a2ping -> ../share/texlive/texmf-dist/scripts/a2ping/a2ping.pl
-rwxr-xr-x 1 root root 883 Apr 30 2007 a5booklet
lrwxrwxrwx 1 root root 54 Jan 25 00:22 a5toa4 -> ../share/texlive/texmf-dist/scripts/pfarrei/a5toa4.tlu
-rwxr-xr-x 1 root root 10328 Apr 28 2009 aa3d
Ссылки теперь понятны, 3 ссылки, остальные файлы:
l
в началеlrwxrwxrwx
(l link, d directory, - обычный файл, c char device).->
указать на целевой файл.
Если вы использовали псевдонимы для этого, как вас спрашивают в комментариях, вы можете временно избежать псевдонима, набрав:
\su <restofthecommandhere>
"\" Указывает bash использовать настоящую команду, игнорируя псевдоним. Затем вы можете отредактировать ваш.bashrc и удалить строку, ссылающуюся на этот псевдоним:
gedit $HOME/.bashrc
Если вы использовали псевдоним, способ его удаления заключается в следующем:
Временно удалите это
unalias su
Чтобы окончательно удалить его, удалите его из своего
.bashrc
или же.bash_aliases
файл.
Скорее всего, вы не связались su
возвышать текстовый двоичный файл, потому что для этого потребовалось бы sudo
привилегии. Так что просто проверьте, работает ли первое решение в списке. Если это работает тогда, и проблема появляется снова позже, вам нужно следовать инструкции 2.