- Куда устанавливаются программы в линуксе?
- Команда wget Linux
- Синтаксис Wget
- Опции
- Использование wget Linux
- 1. Загрузка файла
- 2. Сохранить файл с другим именем
- 3. Скачать несколько файлов
- 4. Взять URL из файла
- 5. Продолжить загрузку
- 6. Загрузка файлов в фоне
- 7. Ограничение скорости загрузки
- 8. Подключение по логину и паролю
- 9. Загрузить и выполнить
- 10. Сохранить файл в папке
- 11. Передать информацию о браузере
- 12. Количество попыток загрузки
- 13. Квота загрузки
- 14. Скачать сайт
- Выводы
- Куда Linux ставит программы. Коротко о файловой системе Linux.
Куда устанавливаются программы в линуксе?
Читал статью что программы устанавливаются в корневой раздел «/» но потом нашел другую информацию что устанавливаются в «/home» в линукс сообществе в вк, так куда?
Как мэйнтейнеру пакета в голову стукнет.
Те что из репозитария ставятся в /, сторонние если юзер хочет может поставить в /home или в /.
обычно, пакеты из репозиториев помещают исполняемые файлы в /usr/bin или /usr/local/bin, вспомoгательные файлы программ хранятся в /usr/lib, /usr/share, /home и т.д. Сторонние программы могут устанавливаться целиком в /opt
Если вкратце, то куда угодно.
нормальные пакеты равномерно размазываются по файловой системе, а всё остальное — куда угодно.
кстати, а какой смысл в таком равномерном размазывании?
пакеты из репозиториев помещают исполняемые файлы в /usr/bin или /usr/local/bin
Вообще-то нет. В /usr/local идёт самосбор. Из пакетов туда вообще не ставят в нормальной ситуации.
Что за дистрибутив у тебя? Вообще куда угодно могут устанвливаться, тут грань между системными и прикладными программами стерта и при установке «размазывается» по дереву (хотя бывают и исключения).
чтобы не искать конфиг и исполняемый файл в новой жопе очередного изобретательного разработчика?
«Так исторически сложилось» ?
кстати, а какой смысл в таком равномерном размазывании?
Есть дистрибутивы, они разные в разных места установки разные, всем заведует менеджер пакетов apt в Debian, pacman в Arch, dnf в Fedora и так далее, соотвецтвенно форматы пакетов разные. Достаточно знать как пользоваться менеджером в любимом тебе дистрибутиве и всё.
Чаще всего программы устанавливаются в /usr/bin/ или в /usr/local/bin есть пользовательские каталоги для этого в особых случаях
/.local/bin/ например. Сторонее проприетарное ПО или же то которое не хочется совать в систему ставят уже руками в /opt/ На самом деле вариантов ещё много, у каждой цели установки свой смысл, просто иди и где то читай про это. И да порой конечно есть излишества.
В любом случае если не городить что-то самому то используй менеджер пакетов который в 99% случаев всё ставить в /usr/bin/ Что бы те было понятнее usr это User System Resources почти program files как в винде, только там один каталог где всё в кашу, а тут есть ещё дополнительное дробление и всё на свои полочки кидается и если знаешь что для чего всегда заранее знаешь что и где искать.
Есть ещё /bin это системные программы наиболее важные для функционирования системой. (Не совсем так, но считай так и есть)
Что бы ещё было понятнее, есть разные типы файлов в одной программе картинки, документация, примеры, конфигурационные фалйы, библиотеки и исполняемые файлы, при установке всё это расфасовывается не в 1 место, а в разные в зависимости от типа файла и его предназначения. И программа установленная как бы интегрируется с системой, сливается с ней в одно целое, а не как в винде в отдельном каталоге всё в кучу. И у того и у того есть и минусы и плюсы.
Источник
Команда wget Linux
Работая в консоли, нам достаточно часто приходится взаимодействовать с сетью, например скачивать файлы или целые интернет страницы. Если интернет страницы мы скачиваем довольно редко, то с файлами дело обстоит совсем по другому. Это могут быть различные скрипты, установочные пакеты, программы, ключи, списки пакетов и многое другое. Скачать файл в консоли Linux можно с помощью утилиты wget. Ее мы и рассмотрим в этой статье.
Это очень мощная утилита, способная работать по протоколам HTTP, HTTPS и FTP. Кроме того поддерживается работа через прокси. Команда wget linux, может выполнять загрузку файлов даже в фоновом режиме — без участия пользователя, в отличии от большинства веб браузеров.
Кроме скачивания файлов, есть возможность сохранять веб страницы или даже целые веб-сайты, благодаря функции открытия ссылок на страницах. Такую возможность еще называют рекурсивной загрузкой. Это все мы и рассмотрим в сегодняшней статье, но начнем, как всегда, с синтаксиса и основных опций утилиты.
Синтаксис Wget
Команда wget linux имеет очень простой синтаксис:
$ wget опции аддресс_ссылки
Можно указать не один URL для загрузки, а сразу несколько. Опции указывать не обязательно, но в большинстве случаев они используются для настройки параметров загрузки.
Опции
Синтаксис опций очень свободный. У каждой опции, как правило есть как длинное, так и короткое имя. Их можно записывать как до URL, так и после. Между опцией и ее значением не обязательно ставить пробел, например вы можете написать -o log или -olog. Эти значения эквивалентны. Также если у опций нет параметров, не обязательно начинать каждую с дефиса, можно записать их все вместе: -drc и -d -r -c. Эти параметры wget тоже эквивалентны.
А теперь давайте перейдем к списку опций. У wget слишком много опций, мы разберем только основные.
- -V(—version) — вывести версию программы
- -h (—help) — вывести справку
- -b(—background) — работать в фоновом режиме
- -oфайл(—out-file) — указать лог файл
- -d(—debug) — включить режим отладки
- -v (—verbose) — выводить максимум информации о работе утилиты
- -q (—quiet) — выводить минимум информации о работе
- -iфайл (—input-file) — прочитать URL из файла
- —force-html — читать файл указанный в предыдущем параметре как html
- -t (—tries) — количество попыток подключения к серверу
- -O файл(—output-document) — файл в который будут сохранены полученные данные
- -с (—continue) — продолжить ранее прерванную загрузку
- -S (—server-response) — вывести ответ сервера
- —spider — проверить работоспособность URL
- -T время (—timeout) — таймаут подключения к серверу
- —limit-rate — ограничить скорость загрузки
- -w (—wait) — интервал между запросами
- -Q(—quota) — максимальный размер загрузки
- -4 (—inet4only) — использовать протокол ipv4
- -6 (—inet6only) — использовать протокол ipv6
- -U (—user-agent)— строка USER AGENT отправляемая серверу
- -r (—recursive)- рекурсивная работа утилиты
- -l (—level) — глубина при рекурсивном сканировании
- -k(—convert-links) — конвертировать ссылки в локальные при загрузке страниц
- -P (—directory-prefix) — каталог, в который будут загружаться файлы
- -m(—mirror) — скачать сайт на локальную машину
- -p(—page-requisites) — во время загрузки сайта скачивать все необходимые ресурсы
Кончено это не все ключи wget, но здесь и так слишком много теории, теперь давайте перейдем к практике. Примеры wget намного интереснее.
Использование wget Linux
Команда wget linux, обычно поставляется по умолчанию в большинстве дистрибутивов, но если нет, ее можно очень просто установить. Например установка с помощью yum будет выглядеть следующим образом:
yum -y install wget
А в дистрибутивах основанных на Debian:
sudo apt install wget
Теперь перейдем непосредственно к примерам:
1. Загрузка файла
Команда wget linux скачает один файл и сохранит его в текущей директории. Во время загрузки мы увидим прогресс, размер файла, дату его последнего изменения, а также скорость загрузки:
2. Сохранить файл с другим именем
Опция -О позволяет задать имя сохраняемому файлу, например, скачать файл wget с именем wget.zip:
wget -O wget.zip http://ftp.gnu.org/gnu/wget/wget-1.5.3.tar.gz
3. Скачать несколько файлов
Вы можете скачать несколько файлов одной командой даже по разным протоколам, просто указав их URL:
wget http://ftp.gnu.org/gnu/wget/wget-1.5.3.tar.gz ftp://ftp.gnu.org/gnu/wget/wget-1.10.1.tar.gz.sig
4. Взять URL из файла
Вы можете сохранить несколько URL в файл, а затем загрузить их все, передав файл опции -i. Например создадим файл tmp.txt, со ссылками для загрузки wget, а затем скачаем его:
wget -i /wget/tmp.txt
5. Продолжить загрузку
Утилита wget linux рассчитана на работу в медленных и нестабильных сетях. Поэтому если вы загружали большой файл, и во время загрузки было потеряно соединение, то вы можете скачать файл wget с помощью опции -c.
wget -c http://ftp.gnu.org/gnu/wget/wget-1.5.3.tar.gz
6. Загрузка файлов в фоне
Опция -b заставляет программу работать в фоновом режиме, весь вывод будет записан в лог файл, для настройки лог файла используются специальные ключи wget:
7. Ограничение скорости загрузки
Команда wget linux позволяет не только продолжать загрузку файлов, но и ограничивать скорость загрузки. Для этого есть опция —limit-rate. Например ограничим скорость до 100 килобит:
wget —limit-rate=100k ftp://ftp.iinet.net.au/debian/debian-cd/8.4.0/amd64/iso-dvd/debian-8.4.0-amd64-DVD-1.iso
Здесь доступны, как и в других подобных командах индексы для указания скорости — k — килобит, m — мегабит, g — гигабит, и так далее.
8. Подключение по логину и паролю
Некоторые ресурсы требуют аутентификации, для загрузки их файлов. С помощью опций —http-user=username, –http-password=password и —ftp-user=username, —ftp-password=password вы можете задать имя пользователя и пароль для HTTP или FTP ресурсов.
wget —http-user=narad —http-password=password http://mirrors.hns.net.in/centos/6.3/isos/x86_64/CentOS-6.3-x86_64-LiveDVD.iso
wget —ftp-user=narad —ftp-password=password ftp://ftp.iinet.net.au/debian/debian-cd/6.0.5/i386/iso-dvd/debian-6.0.5-i386-DVD-1.iso
9. Загрузить и выполнить
Вы, наверное, уже видели такие команды. wget позволяет сразу же выполнять скачанные скрипты:
wget -O — http://сайт/скрипт.sh | bash
Если опции -O не передать аргументов, то скачанный файл будет выведен в стандартный вывод, затем мы его можем перенаправить с интерпретатор bash, как показано выше.
10. Сохранить файл в папке
По умолчанию wget сохраняет файл в текущую папку, но это поведение очень легко изменить с помощью опции -P:
11. Передать информацию о браузере
Некоторые сайты фильтруют ботов, но мы можем передать фальшивую информацию о нашем браузере (user-agent) и страницу с которой мы пришли (http-referer).
wget ‐‐refer=http://google.com ‐‐user-agent=”Mozilla/5.0 Firefox/4.0.1″ //losst.ru
12. Количество попыток загрузки
По умолчанию wget пытается повторить загрузку 20 раз, перед тем как завершить работу с ошибкой. Количество раз можно изменить с помощью опции —tries:
wget —tries=75 http://mirror.nbrc.ac.in/centos/7.0.1406/isos/x86_64/CentOS-7.0-1406-x86_64-DVD.iso
13. Квота загрузки
Если вам доступно только ограниченное количество трафика, вы можете указать утилите, какое количество информации можно скачивать, например разрешим скачать файлов из списка только на десять мегабайт:
wget -Q10m -i download-list.txt
Здесь работают те же индексы для указания размера — k, m, g, и т д.
14. Скачать сайт
Wget позволяет не только скачивать одиночные файлы, но и целые сайты, чтобы вы могли их потом просматривать в офлайне. Использование wget, чтобы скачать сайт в linux выглядит вот так:
wget —mirror -p —convert-links -P ./ аддресс_сайт
Выводы
Вот и все, теперь использование wget не будет для вас таким непонятным. Если я упустил что-то важное о команде или у вас остались вопросы, спрашивайте в комментариях!
Источник
Куда Linux ставит программы. Коротко о файловой системе Linux.
Файловая система Linux очень сильно отличается от того, к чему привык пользователь Windows. Тут нет привычных дисков с их буквенным обозначением и нет папки Program Files.
Файловая система Линукс располагает папки по типу дерева, которое идет от некого корня.
И главное, любая папка может физически находится на другом диске, как логическом, так и физическом.
Скажем папку Home ставят на другой диск, папка хранит все документы пользователя и в случае переустановки системы, они так и останутся.
Надо быть справедливым, такая возможность есть и у Виндоувс, и правильно так поступать(расскажу, если кто не знает), да и всякие свои файлы и программы обычно люди ставят на другой, не системный диск.
И так, мы отвлеклись. Каждая папка Linux хранит свой тип файлов:
/etc — здесь хранятся файлы разных конфигураций, настройки системы, скажем файл fstab хранит информация ваших файловых системах, в нем задаеться информация как их монтировать и что с ними делать. В былые времена я руками туда вписывал разделы виндусевских дисков, сейчас, благо, все монтируется автоматически.
/dev это папка файлов устройств, да в Линуксе каждое устройство это файл.
/boot это загрузчик
/media сюда монтируются съемные носители
Но это все тема отдельная, нас интересует именно куда программы то ставятся.
Тут я имею ввиду программы, которые ставит установщик из стандартных пакетов.
/usr вот в эту папку идут все программы пользователя. Там содержаться и исполняемые файлы, и библиотеки и прочее.
Когда вы скачиваете установочный пакет, то он представляет из себя архив с файлами программы и файл, который указывает установщику, куда положить эти файлы. Существует четкое распределение файлов по папкам, но последнее время, это не всегда так.
Ну ладно, продолжим.
/usr/bin — сюда помещаются исполняемые файлы программ
usr/lib — а здесь библиотеки, которые нужны программе
usr/sbin — сюда помещаются исполняемые файлы от имени администратора
/usr/share — прочие файлы программ
Как я писал выше, что существует правило распределения файлов, но оно не всегда соблюдается.
/opt ряд программ устанавливается в эту папку, там создаеться папка программы, в которой все ее файлы, по типу, как это происходит в виндоувс. Изначально это папка для установки проприетарных программ.
Но некоторые программы «идут еще дальше и , как сказать, ставят себя в папку /home/имя_пользователя/opt
Узнать, куда разместились файлы программы можно командой:
А через пакетный менеджер можно получить более подробную информацию, включая все графические файлы и тд
Источник