Расположение программ в linux

Содержание

В статье рассказывается о разработанном в рамках проекта Open Source стандарте на структуру каталогов UNIX -подобных операционных систем (подразумеваются Linux и BSD -системы).

Одно из первых понятий, с которыми сталкивается любой пользователь компьютера – это, безусловно, понятие файловой системы. При этом пользователь видит только одну сторону файловой системы, а именно, иерархическую структуру (или дерево) каталогов и файлов. Фактически все каталоги тоже являются файлами, и с точки зрения механизма хранения файлов на диске все файлы, включая каталоги, организованы одинаково [1]. Но для человека работать с “линейным” списком, содержащим тысячи файлов, было бы крайне неудобно, поэтому и было изобретено понятие “каталога”, чисто логического образования, позволяющего дать каждому файлу понятное для человека “полное имя”, определяющее некий “путь” к файлу в единой структуре каталогов.

Поскольку структура каталогов – понятие чисто логическое и к реальным механизмам работы с файлами не имеет отношения, изначально никаких особых требований на вид логического дерева каталогов со стороны операционной системы не предъявляется. И в силу этого каждый конкретный вариант операционной системы, в частности, каждый из дистрибутивов Linux, мог бы строить это дерево по-своему. Легко понять, что это могло бы привести к возникновению больших проблем в работе программного обеспечения от различных разработчиков, к несовместимости и непереносимости программ, установка новых программ в систему и работа большинства приложений были бы очень затруднены, поскольку масса времени уходила бы на поиск нужных файлов. Подчинение же структуры каталогов определенным стандартам позволяет обеспечить совместимость программного обеспечения, разрабатываемого разными группами авторов и в рамках различных дистрибутивов. Поэтому группой энтузиастов (как все, что создается в рамках движения Open Source ) был разработан стандарт на структуру каталогов для UNIX-подобных ОС, так называемый стандарт иерархии файловых систем (Filesystem Hierarchy Standart или кратко FHS).

Установка программ в Linux — apt и apt-get

Работа по созданию этого стандарта была начата в августе 1993 года с попытки упорядочить структуру файлов и каталогов операционной системы Linux. Вначале стандарт назывался проектом стандартов файловой системы — Filesystem Standarts project (FSSTND), и был ориентирован только на систему Linux. Его первая версия была выпущена 14 февраля 1994 года. Последующие редакции были выпущены 9 октября 1994 и 28 марта 1995 года. В разработке стандарта принимало участие большое количество добровольцев, но главным организатором был Дэниел Квинлан ( Daniel Quinlan ).

В начале 1995 года с участием сообщества разработчиков системы BSD была поставлена цель создания более общей версии FSSTND, предназначенной не только для Linux, но и для других UNIX-подобных операционных систем. В результате объединенных усилий разработка стандарта сосредоточилась на вопросах, которые являются общими для всех UNIX-подобных систем, включая операционные системы типа 4.4BSD.

Научись Linux: сборка программ из исходников (эпизод 13)

Учитывая расширение сферы действия стандарта, он был переименован в Filesystem Hierarchy Standard или, для краткости, FHS. Естественно, что «настоящие» UNIX -системы, созданные задолго до появления этого стандарта, ему не соответствуют. Однако FHS учитывает все положительные качества, присущие BSD и другим системам в части поддержки различных архитектур и учета требований работы в гетерогенных сетях. На момент написания этой статьи последней версией стандарта FHS является версия 2.2, которая была выпущена 24 мая 2001 года. Полный исходный текст этого стандарта можно найти в Интернет на сайте http://www.pathname.com/fhs/, а его русский перевод – по адресу http://rus-linux.net/MyLDP/file-sys/fhs-2.2-rus/index.html.

При разработке стандарта FHS его авторы стремились создать в первую очередь справочник, а не учебник по построению структуры каталогов. Стандарт создавался для использования системными интеграторами, разработчиками пакетов программного обеспечения и системными администраторами в процессе создания и поддержки UNIX -совместимых файловых систем.

В основу разработки стандарта были положены следующие соображения.

Во-первых, учитывалось, что в UNIX-подобных ОС структура каталогов представлена в виде единого дерева. Отдельные «ветви» этого дерева могут располагаться на разных носителях, или в разных файловых системах, причем эти файловые системы могут быть разными по своей внутренней организации – на одном носителе это файловая система ext 2 fs , на другом – vfat, и так далее. Разработчики стандарта стремились обеспечить оптимальное размещение файлов в разных файловых системах с тем, чтобы оптимизировать процессы загрузки, последующего функционирования и возможного обновления системы.

Во-вторых, любая UNIX -система (в том числе и Linux ) — система сетевая, и эти файловые системы и соответствующие носители могут физически располагаться даже на разных компьютерах. Поэтому при размещении отдельных файлов в различных частях файловой структуры надо учитывать, что некоторые файлы должны быть доступны с других компьютеров в сети (быть разделяемыми), а к другим файлам доступ по сети необходимо ограничить. Выделение группы разделяемых файлов позволяет экономить общее дисковое пространство. Группа неразделяемых файлов вычленяется как по соображениям безопасности, так и просто потому, что эти файлы определяют локальную конфигурацию системы и поэтому нужны только на данном компьютере. Например, пользовательские каталоги могут (а часто и должны) быть разделяемыми, а файлы настройки процедур загрузки системы должны быть неразделяемыми.

Читайте также:
Название детской игровой программы на пасху

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

В таблице 1 приведены несколько примеров того, какие каталоги (точнее, файлы каких каталогов) относятся к каждому из 4 классов, образующихся при разбиении всего множества файлов по этим двум критериям.

Таблица 1. Пример выделения классов файлов

Источник: rus-linux.net

Где Linux устанавливает программы?

Программное обеспечение обычно устанавливается в папки bin, в / usr / bin, / home / user / bin и во многих других местах, хорошей отправной точкой может быть команда find. чтобы найти имя исполняемого файла, но обычно это не отдельная папка. Программное обеспечение может иметь компоненты и зависимости в lib, bin и других папках.

Где программы устанавливают Ubuntu?

Большинство установленных программ находятся в / usr / bin и / usr / sbin. Поскольку обе эти папки добавлены к переменной PATH, вам просто нужно ввести имя программы в терминале и выполнить их, как сказал Стивуэй. как все сказали. вы можете найти их в / usr / bin или / usr / lib.

Как узнать, где установлена ​​программа?

  1. Откройте меню «Пуск».
  2. Теперь щелкните программу правой кнопкой мыши, выберите «Еще» и выберите «Открыть расположение файла».
  3. Откроется папка программы, и будет выбран ярлык программы.
  4. Щелкните этот ярлык правой кнопкой мыши.
  5. Выберите опцию «Открыть расположение файла».

Как перейти на Linux?

Чтобы переместить файлы, используйте команду mv (man mv), которая похожа на команду cp, за исключением того, что с mv файл физически перемещается из одного места в другое, а не дублируется, как с cp.

См. Также Частый вопрос: какой Интернет-браузер установлен в Windows 10 по умолчанию?

Как установить программы Linux на Ubuntu?

Чтобы установить приложение:

  1. Щелкните значок программного обеспечения Ubuntu в док-станцию ​​или выполните поиск программного обеспечения в строке поиска действий.
  2. Когда Ubuntu Программное обеспечение запускается, найдите приложение или выберите категорию и найдите приложение из списка.
  3. Выберите приложение, которое вы хотите установить, и нажмите Установить.

Где Windows 10 устанавливает программы?

Как установить программы из сетевых источников в Windows 10

  1. В веб-браузере выберите ссылку на программу.
  2. Выберите «Сохранить» или «Сохранить как», чтобы загрузить программу. …
  3. Если вы выберете «Сохранить», файл программы будет сохранен в папке «Загрузки».
  4. Или, если вы выберете «Сохранить как», вы можете выбрать, где его сохранить, например, на рабочий стол.

Как узнать, где установлена ​​программа в Windows 7?

Как определить, что установлено на вашем компьютере

  1. Настройки, приложения и amp; Особенности. В настройках Windows перейдите в Приложения страница функций. …
  2. Пусковое меню. Откройте меню «Пуск», и вы увидите длинный список установленных программ. …
  3. C: программные файлы и C: программные файлы (x86)…
  4. ПУТЬ.

Как проверить, установлено ли программное обеспечение в Linux?

Вам нужно использовать команду rpm для отображения всех установленных пакетов в Linux.

  1. Red Hat / Fedora Core / CentOS Linux. Введите следующую команду, чтобы получить список всего установленного программного обеспечения. …
  2. Debian Linux. Введите следующую команду, чтобы получить список всего установленного программного обеспечения:…
  3. Ubuntu Linux. …
  4. FreeBSD. …
  5. OpenBSD.

Как переместить каталоги в Linux?

Как переместить папку через графический интерфейс

  1. Вырежьте папку, которую вы хотите переместить.
  2. Вставьте папку в новое место.
  3. Щелкните параметр «Перейти к» в контекстном меню, вызываемом правой кнопкой мыши.
  4. Выберите новое место назначения для перемещаемой папки.

См. Также Как добавить папку на домашний экран Android?

Что означает Linux?

В данном конкретном случае следующий код означает: Кто-то с именем пользователя «пользователь» вошел в систему на машине с именем хоста «Linux-003». «~» — представляет домашнюю папку пользователя, условно это будет / home / user /, где «user» — имя пользователя, может быть любым, например / home / johnsmith.

Как установить sudo apt?

Если вы знаете имя пакета, который хотите установить, вы можете установить его, используя следующий синтаксис: sudo apt-get install package1 package2 package3 … Как видите, это возможно для одновременной установки нескольких пакетов, что полезно для получения всего необходимого программного обеспечения для проекта за один шаг.

Как установить файл в Linux?

bin установочные файлы, выполните следующие действия.

  1. Войдите в целевую систему Linux или UNIX.
  2. Перейдите в каталог, содержащий программу установки.
  3. Запустите установку, введя следующие команды: chmod a + x filename.bin../ filename.bin. Где filename.bin — это имя вашей программы установки.
Читайте также:
Программа для настройки ГБО 4 поколения для Андроид

Какая команда используется для установки пакетов в Linux?

Команда apt — это мощный инструмент командной строки, который работает с Advanced Packaging Tool (APT) Ubuntu и выполняет такие функции, как установка новых пакетов программного обеспечения, обновление существующих пакетов программного обеспечения, обновление индекса списка пакетов и даже обновления всей системы Ubuntu.

Источник: linkeyprod.fr

Работа в Linux в графической оболочке и командной строке

В Linux работа в графическом режиме осуществляется с помощью системы X Window (иксы). Данная система не предоставляет непосредственно графический интерфейс, а предоставляет другим программам средства для работы с видеокартой, монитором, клавиатурой и мышью. На основе этой системы работают графические интегрированные среды KDE и GNOME.

Введение в интерфейс командной строки

имя_команды [короткие_ключи] [длинные_ключи] [аргументы]

имя_команды командой может является любой исполняемый файл (например, ls ).
короткие_ключи короткие ключи состоят из одного символа и начинаются с символа — и указываются через пробел (например, ls -l -a ). Для компактности короткие ключи могут объединяться в один ключ (например, ls -la ).
длинные_ключи длинные ключи состоят из нескольких символов, образующих осмысленные слова и начинаются с двух символов — и указываются через пробел (например, ls —all ). Длинные ключи НЕ МОГУТ объединяться в один ключ.

Краткую справку о команде можно получить вызвом команды с ключом -h или —help . Подробную справку можно получить с помощью справочной системы man :

Перемещение по тексту вниз и вверх с помощью стрелок и клавиш и . Выход нажатием клавиши .

Основные команды для работы с файлами

Команда Описание
pwd текущий каталог
ls список файлов в текущем каталоге
cd сменить каталог
mkdir создать каталог
rmdir удалить каталог
cp копировать файл
mv переименовать/переместить файл
rm удалить файл
cat вывести содержимое файла на консоль
vim редактировать файл
find найти файл
which найти исполняемый файл
exit выйти из системы
shutdown -r now перезагрузить компьютер
shutdown -h now выключить компьютер

Прервать выполнение команд можно с помощью комбинации клавиш .

Имена файлов

Имена файлов и каталогов могут иметь длину до 255 символов.
В именах нельзя использовать символ / и не рекомендуется использовать символы, имеющие специальное значение для командной оболочки:

Служебные (скрытые) файлы начинаются с символа . (точка) и ни чем более не отличаются от обычных файлов.

Типы файлов

Тип файла Описание Обозначение (команда ls)
обычные файлы последовательность байтов (текст, исполняемые программы и т.п.)
каталоги именованные наборы ссылок на другие файлы d
символические ссылки ссылки на другие файлы l
файлы физических устройств 1. блочные устройства
2. символьные устройства
b
c
именованные каналы буферы типа FIFO (First In — First Out, первым вошел — первым вышел) для обмена данными между программами p
сокеты точки сетевого соединения двух программ s
Каталоги

Каталог создается командой:

При создании каталога в нем создаются два псевдокаталога: . (точка) и .. (две точки).

Файл Описание
. содержит ссылку на этот каталог
.. содержит ссылку на родительский каталог

Для удаления каталога служит команда:

Символические ссылки

Символическая ссылка создается командой:

ln -s имя_файла имя_ссылки

Для просмотра ссылки служит команда:

Ссылка удаляется так же, как и обычный файл:

Файлы физических устройств

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

mknod имя_устройства тип_устройства старший_номер младший_номер

Атрибут Описание
тип_устройства в Linux существуют блок-ориентированные и байт-ориентированные устройства. В блочные устройства (например, диски) данные передаются блоками и для обмена необходим буфер. В символьные устройства (например, принтер) данные передаются посимвольно и буфер не требуется.
b — блочное устройство
с — символьное устройство
старший_номер указывает тип устройства. Список старших номеров хранится в файле /proc/devices
младший_номер порядковый номер устройств одного типа (с одинаковым старшим номером)

Файлы наиболее часто используемых устройств.

Файл Устройство
null пустое устройство
tty1 первая консоль
tty2 вторая консоль
tty3 третья консоль
tty4 четвертая консоль
tty5 пятая консоль
tty6 шестая консоль
tty7 седьмая консоль
pts/1 первый виртуальный терминал
mouse0 первая мышь
audio0 первая звуковая плата
ttyS0 первый последовательный порт (COM1 в MS-DOS)
lp0 первый параллельный порт
eth0 первая сетевая карта
fd0 первый дисковод для гибких дисков
cdrom привод CD-ROM
hda первый IDE-диск
sda первый SCSI-диск
ram виртуальный диск
random генератор псевдослучайных чисел
urandom генератор псевдослучайных чисел с учетом информации от клавиатуры и мыши
Именованные каналы

Именованный канал — это буфер типа FIFO (First In — First Out, первым вошел — первым вышел) для обмена данными между программами. Одна программа производит запись в именованный канал, а другая программа считывает эти данные из именованного канала.
Именованный канал создается командой:

Именованный канал удаляется так же, как и обычный файл:

Сокеты

Сокеты создаются программно. Например, код программы на C++ может иметь иметь следующий вид:

#include #include int fd = socket(AF_INET, SOCK_STREAM, IPPROTO_TCP); // Далее действия с созданным сокетом

Потоки ввода-вывода

Каждой выполняющейся программе (процессу) соответствуют три потока:

Поток Название
stdin стандартный ввод
stdout стандартный вывод
stderr стандартный поток сообщений об ошибках

По умолчанию потоки ввода-вывода связаны с консолью (клавиатура+монитор):

Читайте также:
Что значит проанализировать программу
stdin — с клавиатурой,
stdout — с монитором,
stderr — с монитором.

Стандартные потоки можно перенаправить в файл или стандартный поток другого процесса.

Для перенаправления стандартного вывода служит символ > . Например, стандартный поток вывода можно перенаправить вместо экрана в файл:

Ввод символов с клавиатуры заканчивается нажатием клавиши и затем комбинации клавиш .

В случае, если ведется перенаправление в файл, то можно перенаправляемые данные дописывать к уже существующему файлу (если не существует, то будет создан) с помощью символа >> .

Стандартный ввод перенаправляется символом < .

Стандартный поток сообщений об ошибках перенаправляется символом 2> .

Для перенаправления стандартного вывода одной команды на стандартный ввод другой команды применяется символ | . Это так называемый конвейер команд. Благодаря этому средству можно создавать цепочки команд для обработки данных

Команды-фильтры

Команда Описание
more имя_файла постранично выводит на экран текстовый файл. Перемещение вниз нажатием клавиши . Выход нажатием клавиши .
less имя_файла выводит на экран текстовый файл. Позволяет перемещаться по тексту вниз и вверх с помощью клавиш стрелок и клавиш и .
grep фраза имя_файла выводит на экран строки из текстового файла, в которых присутствует указанная последовательность символов (фраза).

Шаблоны имен файлов

Для задания шаблонов поиска файлов могут использоваться стандартные символы: *, ?, [].

Шаблон Описание
* любое количество любых символов
? только один любой символ
[abc] любой символ из указанных в скобках
[a-c] любой символ из указанного в скобках диапазона символов
[a-cA-C0-9] любой символ из указанных в скобках диапазонов символов

Переменные окружения оболочки bash

Сценарии оболочки bash

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

#!/bin/bash mkdir test cd test echo «First file.» > file_01.txt echo «Second file.» > file_02.txt
Файлам сценариев обычно дают расширение .sh .

Текстовый редактор vim

В текстовом редакторе vim существуют два режима работы: командный и редактирования. При запуске редактор находится в командном режиме, то есть можно вводить специальные команды.

Навигация по тексту
k вверх
j вниз
h влево
l вправо
+ на строку вниз
на строку вверх
w на слово вперед
e на слово назад
в начало строки
$ в конец строки
H в начало экрана
L в конец экрана
10G перейти к строке номер 10
$G перейти к последней строке

Копирование текста
yw копировать слово
yy копировать строку

Вставка текста
p вставить в следующую строку
P вставить в предыдущую строку

Удаление текста
x удалить символ в позиции курсора
X удалить символ перед курсором
dw удалить слово
dd удалить строку
D удалить от курсора и до конца строки

Отмена действий
u отмена введенной команды
Ctrl+R возврат отмененной команды

Поиск и замена текста
/образец искать текст вниз от курсора
?образец искать текст вверх от курсора
n повторить поиск в том же направлении
N повторить поиск в обратном направлении
:%s/текст1/текст2/c найти текст1 и заменить на текст2 каждый раз спрашивая подтверждение

Для перехода в режим редактирования необходимо нажать клавишу i. Для возврата в командный режим нажать клавишу .

Сохранение файла и выход
:w сохранить файл
:w новое_имя сохранить файл под новым именем
:w! новое_имя сохранить файл под новым именем, предварительно удалив одноименный файл
:q выйти из редактора
:wq сохранить и выйти
:q! выйти без сохранения

Начальные сведения о структуре файловой системы

Файловая система представляет собой логическую структуру каталогов и файлов. Структура стандартных каталогов почти одинакова в различных дистрибутивах Linux и координируется группой разработчиков http://www.pathname.com/fhs.

Каталог Описание
/bin основные пользовательские программы
/sbin программы системного администрирования
/boot файлы загрузчика системы
/home каталоги и файлы пользователей
/dev файлы устройств
/etc файлы настроек
/lib системные библиотеки и модули ядра
/lost+found восстановленные части файловой системы после некорректного размонтирования
/media точка монтирования компакт-дисков и flash-карт
/mnt временные точки монтирования
/opt дополнительные пакеты программ
/proc виртуальная файловая система, содержащая файлы с информацией о выполняющихся в данный момент процессах
/root домашний каталог суперпользователя
/tmp временные файлы
/var каталоги данных, файлы журналов, почтовые ящики, очереди печати и т.д.
/usr программы, исходные коды, документация

Полный список основных каталогов можно получить из справочного руководства man hier .

Расположение основных конфигурационных файлов

Имя файла Назначение
/etc/profile стандартные параметры окружения всех пользователей
/etc/bashrc параметры приглашения командной строки и псевдонимы команд. Информация может быть переопределена в пользовательском файле ~/.bashrc
~/.bash_profile параметры окружения пользователя
~/.bashrc параметры приглашения командной строки и псевдонимы команд
~/.bash_logout действия при завершении сеанса работы пользователя
/etc/X11/xorg.conf настройки системы X Window

В файле ~/.bashrc можно задать значения переменных окружения. Например, в конце файла ~/.bashrc могут быть записаны следующие строки:

Работа с протоколами системы

Журналы (логи) работы программ находятся в каталоге /var/log/ . Например, для просмотра последних 10 строк журнала системных сообщений /var/log/messages можно использовать команду:

Для вывода последних 20 строк необходимо выполнить команду:

tail -20 /var/log/messages

Для вывода первых 20 строк необходимо выполнить команду:

head -20 /var/log/messages

Источник: chukin.ru

Рейтинг
( Пока оценок нет )
Загрузка ...
EFT-Soft.ru