Как запускать программы: различия между версиями

Материал из ALT Linux Wiki
м (+категория)
м (вполне себе HOWTO => Отмена правки 34805 участника Petr-akhlamov (обсуждение))
 
(не показано 13 промежуточных версий 8 участников)
Строка 1: Строка 1:
'''Как запустить только что установленную программу?'''
== Как запустить только что установленную программу? ==


Частенько приходится встречать вопрос «я поставил программу ХХХХ, и как мне её запустить?». Отвечаю:
Частенько приходится встречать вопрос «я поставил программу ХХХХ, и как мне её запустить?».


Разделим все программы на два вида: из пакетов вашего дистрибутива или совместимых (из сетевого репозитория, с установочных дисков, чужие пакеты в формате rpm) и совсем чужие инсталляторы типа '''*.run'''
Разделим все программы на три вида: из пакетов вашего дистрибутива или совместимых (из сетевого репозитория, с установочных дисков), чужие RPM и совсем чужие инсталляторы типа '''*.run'''.


=== Пакеты rpm ===
=== Программы из дистрибутива и совместимых репозиториев ===
Первая же мысль, которая должна прийти в голову современному пользователю после установки новой программы — поглядеть в меню своей графической оболочки. В целом мысль верная. Но! Не все программы попадают в меню, не все программы, попавшие в меню, попадают там в очевидный раздел, некоторые пользователи не могут найти даже очевидно расположенные в меню программы.


Поэтому воспользуемся непривычным для новичков способом, зато чрезвычайно надёжным и уважаемым опытными пользователями. И начнём мы с чтения man’ов:
После установки новой программы надо посмотреть в меню своей графической оболочки. В целом, не все программы попадают в меню и не все программы, попавшие в меню, попадают там в очевидный раздел (некоторые пользователи не могут найти даже очевидно расположенные в меню программы).
 
Если в меню программы не видно, воспользуемся непривычным для новичков, зато чрезвычайно надёжным и уважаемым опытными пользователями способом. Начнём мы с чтения man’ов:


Выдержка из '''man rpm''':
Выдержка из '''man rpm''':
Строка 21: Строка 22:
  ...
  ...


Из чтения данного отрывка (хотя я рекомендую почитать man самостоятельно и более полно) можно понять, что команда '''rpm -ql ИМЯ_ПАКЕТА''' покажет все файлы, входящие в пакет.
Из чтения данного отрывка (хотя я рекомендую почитать man самостоятельно и более полно) можно понять, что команда <tt>rpm -ql ИМЯ_ПАКЕТА</tt> покажет все файлы, входящие в пакет.


Например:
Например:
Строка 37: Строка 38:
  /usr/share/man/man7/sane.7.bz2
  /usr/share/man/man7/sane.7.bz2
  [alexei@threebears ~]$  
  [alexei@threebears ~]$  
То есть можно увидеть все файлы, которые вошли в состав пакета. Для того, чтобы понять, какие из них можно запускать, следует усвоить один постулат: '''все исполняемые<ref>В данном контексте под исполняемыми следует понимать файлы, для которых предусмотрен непосредственный запуск пользователем.</ref> файлы попадают в каталог <tt>/usr/bin</tt>'''.


Объединив всё вышесказанное, можно понять, что пакет '''sane''' содержит три исполняемых файла '''gamma4scanimage''', s'''ane-find-scanner''', '''scanimage'''. Для упрощения поиска нужный файлов можно воспользоваться перенаправлением ввода/вывода и утилитой '''grep''':
Таким образом можно увидеть все файлы, которые вошли в состав пакета. Для того, чтобы понять, какие из них можно запускать, следует усвоить один постулат: ''все исполняемые<ref>В данном контексте под исполняемыми следует понимать файлы, для которых предусмотрен непосредственный запуск пользователем.</ref> файлы попадают в каталог <tt>/usr/bin</tt><ref>Некоторые для универсальности грепают по <tt>bin/</tt>.</ref>''.
 
Объединив всё вышесказанное, можно понять, что пакет <tt>sane</tt> содержит три исполняемых файла: <tt>gamma4scanimage</tt>, <tt>sane-find-scanner</tt>, <tt>scanimage</tt>. Для упрощения поиска нужных файлов можно воспользоваться перенаправлением ввода/вывода и утилитой <tt>grep</tt>:
  [alexei@threebears ~]$ rpm -ql sane | grep /usr/bin
  [alexei@threebears ~]$ rpm -ql sane | grep /usr/bin
  /usr/bin/gamma4scanimage
  /usr/bin/gamma4scanimage
Строка 45: Строка 47:
  /usr/bin/scanimage
  /usr/bin/scanimage


Выяснив имена исполняемых файлов, можно запускать их без всяких меню и иконок. Для этого достаточно набрить их имена в командной строке, и нажимать ввод:
Выяснив имена исполняемых файлов, можно запускать их без всяких меню и иконок. Для этого достаточно набрать их имена в командной строке, и нажать ввод:


  [alexei@threebears ~]$ sane-find-scanner  
  [alexei@threebears ~]$ sane-find-scanner  
Строка 58: Строка 60:
  ....
  ....


Кроме того, недурной мыслью будет обратить внимание на то, какие файлы попали в каталог <tt>/usr/share/doc</tt>. Ведь именно туда кладётся документация, и именно в этот каталог стоит заглядывать первым делом при возникновении проблем с программами.
Кроме того, недурной мыслью будет обратить внимание на то, какие файлы попали в каталог <tt>/usr/share/doc</tt>. Именно туда кладётся документация, и именно в этот каталог стоит заглядывать первым делом при возникновении проблем с программами.  Для этого можно воспользоваться {{cmd|rpm -qd пакет}} для выяснения ''всех'' файлов, помеченных в пакете как документация (файлы из <tt>/usr/share/{doc,info,man}</tt> помечаются автоматически).
 
=== Чужие RPM-пакеты ===
 
Для этих программ применимо всё, что сказано выше, с одним важным исключением: поскольку RPM-пакеты разных дистрибутивов не совместимы между собой, то никто не гарантирует, что в дистрибутиве ALT Linux такой пакет нормально установится и будет складывать свои файлы туда же, куда и «родные» пакеты.


=== Инсталляторы *.run, *.bin и прочие ===
=== Инсталляторы *.run, *.bin и прочие ===
'''Внимание: отвественность за установку прогамм нештатными средсвтвами (а именно о них сейчас речь) целиком и полностью лежит на пользователе! И не говорите потом, что вас не предупреждали.
'''Внимание: отвественность за установку программ нештатными средствами (а именно о них сейчас речь) целиком и полностью лежит на пользователе! И не говорите потом, что вас не предупреждали.
'''
'''


Никогда не ставьте такие программы в "места по умолчанию", то есть в <tt>/usr</tt>. Ставьте их в <tt>/opt</tt> или в '''$HOME'''. Нет стандартного способа узнать, сколько, каких и куда инсталлятором было записано файлов. Поэтому ищите их сами. Проявите фантазию, примените сортировку по дате в программе ls, например '''ls -ltc''', освойте наконец всю мощь утилиты '''find'''.
Никогда не ставьте такие программы в «места по умолчанию», то есть в <tt>/usr</tt>. Ставьте их в <tt>/opt</tt>, <tt>/usr/local</tt> или в домашний каталог. Нет стандартного способа узнать, сколько, каких и куда инсталлятором было записано файлов, поэтому ищите их сами: проявите фантазию, примените сортировку по дате в программе ls, например <tt>ls -ltc</tt>, освойте наконец всю мощь утилиты <tt>find</tt>.
 
 


== Примечания ==
== Примечания ==
<references />
<references />


 
{{Category navigation|title=Пользователю|category=Пользователю|sortkey={{SUBPAGENAME}}}}
[[Категория:HOWTO]]
{{Category navigation|title=HOWTO|category=HOWTO|sortkey={{SUBPAGENAME}}}}
[[категория:пользователю]]

Текущая версия от 15:13, 2 декабря 2015

Как запустить только что установленную программу?

Частенько приходится встречать вопрос «я поставил программу ХХХХ, и как мне её запустить?».

Разделим все программы на три вида: из пакетов вашего дистрибутива или совместимых (из сетевого репозитория, с установочных дисков), чужие 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.

Примечания

  1. В данном контексте под исполняемыми следует понимать файлы, для которых предусмотрен непосредственный запуск пользователем.
  2. Некоторые для универсальности грепают по bin/.