Как запускать программы
Как запустить только что установленную программу?
Частенько приходится встречать вопрос «я поставил программу ХХХХ, и как мне её запустить?».
Разделим все программы на три вида: из пакетов вашего дистрибутива или совместимых (из сетевого репозитория, с установочных дисков), чужие RPM и совсем чужие инсталляторы типа *.run.
Программы из дистрибутива и совместимых репозиториев
После установки новой программы надо посмотреть в меню своей графической оболочки. В целом, не все программы попадают в меню и не все программы, попавшие в меню, попадают там в очевидный раздел (некоторые пользователи не могут найти даже очевидно расположенные в меню программы).
Если в меню программы не видно, воспользуемся непривычным для новичков, зато чрезвычайно надёжным и уважаемым опытными пользователями способом. Начнём мы с чтения man’ов:
Выдержка из man rpm:
... ОПЦИИ ЗАПРОСА Общая форма команды запроса (инспекции) выглядит так: rpm -q [опции-запроса] ... -l, --list Вывести список файлов, входящих в данный пакет. ...
Из чтения данного отрывка (хотя я рекомендую почитать man самостоятельно и более полно) можно понять, что команда rpm -ql ИМЯ_ПАКЕТА покажет все файлы, входящие в пакет.
Например:
[alexei@threebears ~]$ rpm -ql sane /usr/bin/gamma4scanimage /usr/bin/sane-find-scanner /usr/bin/scanimage /usr/share/doc/sane-1.0.19 /usr/share/doc/sane-1.0.19/AUTHORS /usr/share/doc/sane-1.0.19/COPYING ..... ..... пропущено много строк ..... /usr/share/man/man1/scanimage.1.gz /usr/share/man/man7/sane.7.bz2 [alexei@threebears ~]$
Таким образом можно увидеть все файлы, которые вошли в состав пакета. Для того, чтобы понять, какие из них можно запускать, следует усвоить один постулат: все исполняемые[1] файлы попадают в каталог /usr/bin[2].
Объединив всё вышесказанное, можно понять, что пакет sane содержит три исполняемых файла: gamma4scanimage, sane-find-scanner, scanimage. Для упрощения поиска нужных файлов можно воспользоваться перенаправлением ввода/вывода и утилитой grep:
[alexei@threebears ~]$ rpm -ql sane | grep /usr/bin /usr/bin/gamma4scanimage /usr/bin/sane-find-scanner /usr/bin/scanimage
Выяснив имена исполняемых файлов, можно запускать их без всяких меню и иконок. Для этого достаточно набрать их имена в командной строке, и нажать ввод:
[alexei@threebears ~]$ sane-find-scanner # sane-find-scanner will now attempt to detect your scanner. If the # result is different from what you expected, first make sure your # scanner is powered up and properly connected to your computer. # No SCSI scanners found. If you expected something different, make sure that # you have loaded a kernel SCSI driver for your SCSI adapter. libusb couldn't open USB device /dev/bus/usb/001/001: Permission denied. libusb requires write access to USB device nodes. .... ....
Кроме того, недурной мыслью будет обратить внимание на то, какие файлы попали в каталог /usr/share/doc. Именно туда кладётся документация, и именно в этот каталог стоит заглядывать первым делом при возникновении проблем с программами. Для этого можно воспользоваться rpm -qd пакет для выяснения всех файлов, помеченных в пакете как документация (файлы из /usr/share/{doc,info,man} помечаются автоматически).
Чужие RPM-пакеты
Для этих программ применимо всё, что сказано выше, с одним важным исключением: поскольку RPM-пакеты разных дистрибутивов не совместимы между собой, то никто не гарантирует, что в дистрибутиве ALT Linux такой пакет нормально установится и будет складывать свои файлы туда же, куда и «родные» пакеты.
Инсталляторы *.run, *.bin и прочие
Внимание: отвественность за установку программ нештатными средствами (а именно о них сейчас речь) целиком и полностью лежит на пользователе! И не говорите потом, что вас не предупреждали.
Никогда не ставьте такие программы в «места по умолчанию», то есть в /usr. Ставьте их в /opt, /usr/local или в домашний каталог. Нет стандартного способа узнать, сколько, каких и куда инсталлятором было записано файлов, поэтому ищите их сами: проявите фантазию, примените сортировку по дате в программе ls, например ls -ltc, освойте наконец всю мощь утилиты find.