Переназначение команды su

Я случайно связал свою команду «su» с двоичным файлом Sublime Text (это то, что вы получаете, когда доверяете нажатию на вкладку, не глядя ...) Теперь «su» просто открывает сеанс SublimeTExt. Кто-нибудь знает, как я могу вернуться к предыдущей версии и указать «su» на то, на что он должен указывать? Спасибо!

РЕДАКТИРОВАТЬ: случайно выданная команда

sudo ln -s /opt/Sublime\ Text\ 2/sublime_text /usr/bin/su
1
задан 6 February 2014 в 16:43

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 ссылка, d каталог, - нормальный файл, c символьное устройство).

  • -> укажите на конечный файл.

1
ответ дан 6 February 2014 в 16:43

Если вы использовали псевдонимы для этого, как вас спрашивают в комментариях, вы можете временно избежать псевдонима, набрав в командной строке:

\su <restofthecommandhere>

«\» указывает bash использовать настоящую команду, игнорируя псевдоним. Затем вы можете отредактировать ваш .bashrc и удалить строку со ссылкой на этот псевдоним:

gedit $HOME/.bashrc
0
ответ дан 6 February 2014 в 16:43

Если вы использовали псевдоним, способ удалить его следующим образом:

  1. Временно удалить его

    unalias su
    
  2. Чтобы навсегда удалите его, удалите его из файла .bashrc или .bash_aliases.

Скорее всего, вы не связали su с возвышенным текстовым двоичным файлом, потому что для этого потребовались бы права sudo. Так что просто проверьте, работает ли первое решение в списке. Если это сработает тогда, и проблема снова появится позже, вам нужно следовать инструкции 2.

0
ответ дан 6 February 2014 в 16:43

Другие вопросы по тегам:

Похожие вопросы: