Узнать местоположение программы linux

Содержание

Бывают случаи, когда необходимо определить географическое местоположение удаленной машины Ubuntu на основе ее IP-адреса. В этой статье мы расскажем, как это сделать, сначала получив IP-адрес публичного сервера системы, а затем используя этот IP-адрес для определения географического положения, используя API, предоставляемые ipinfo.io и ipvigilante.com.

Показать географическое местоположение IP-адреса в терминале

Для того чтобы получить географическое местоположение вашего сервера, вам понадобится загрузчик Curl и инструмент командной строки JQ. Эти инструменты позволят вам получить и обработать необходимые данные из геолокационных API из Интернета. Пожалуйста, выполните следующие шаги, чтобы установить эти инструменты и затем получить необходимую информацию о местоположении, используя публичный IP вашей машины.

Шаг 1: Установите пакеты Curl и jq

Curl и jq легко доступны в официальном репозитории Ubuntu и могут быть установлены из командной строки с помощью команды apt-get.

Поиск файлов в Linux и Unix — find, grep, ack, ripgrep

Откройте приложение Terminal либо через системный Поиск приложений, либо через сочетание клавиш Ctrl+Alt+T.

Следующим шагом будет обновление индекса репозитория вашей системы с помощью следующей команды:

sudo apt-get update

sudo apt-get update

Это поможет вам установить последнюю доступную версию программного обеспечения из Интернета.

Обратите внимание, что только авторизованный пользователь может добавлять, удалять и настраивать программное обеспечение на Ubuntu.

Теперь вы готовы к установке необходимых инструментов; вы можете сделать это, выполнив следующую команду от имени sudo:

sudo apt-get install curl jq

sudo apt-get install curl jq

Система может запросить у вас пароль для sudo, а также предложить вам опцию Y/n для продолжения установки. Введите Y и нажмите Enter; программное обеспечение будет установлено на вашу систему. Однако процесс может занять некоторое время в зависимости от скорости вашего Интернета.

Шаг 2: Найдите публичный IP-адрес машины/сервера Ubuntu

Все серверы в Интернете распознаются по публичным IP-адресам. Это IP-адрес, присвоенный вашему серверу напрямую или через маршрутизатор сетевого трафика. Мы можем получить этот IP вашей машины с помощью API, предоставляемого ipinfo.io.

Используйте следующую команду curl, чтобы получить ваш публичный IP:

curl https://ipinfo.io/ip
curl https://curlmyip.ru

Получить информацию об IP

Вывод, размытый здесь из-за соображений конфиденциальности, — это публичный IP, по которому ваш сервер распознается в мире Интернета.

Шаг 3: Получение геолокации на основе публичного IP

Как только вы узнали свой публичный IP, вы можете сделать запрос к API ipvigilante.com, чтобы получить географическое положение ваших серверов. Используйте команду curl, упомянутую ниже, чтобы получить данные о вашем местоположении, такие как:

Как вычислить местоположение любого человека в интернете

Читайте также:
Детская программа как рисовать

  • Континент
  • Страна
  • Штат/провинция
  • Город
  • широта и долгота

curl https://ipvigilante.com/

Получение информации об IP-адресе в формате json

Полученная информация довольно подробна и хорошо служит цели.

Использование сценария Bash для вывода геопозиции

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

Откройте новый файл скрипта в одном из ваших любимых текстовых редакторов. Мы будем использовать редактор nano, чтобы открыть пустой файл скрипта с именем geo_location.sh

nano geo_location.sh

В этот пустой файл добавьте следующий скрипт.

curl -s https://ipvigilante.com/$(curl -s https://ipinfo.io/ip) | jq ‘.data.latitude, .data.longitude, .data.city_name, .data.country_name’

Вместо того чтобы вводить весь сценарий в свой файл bash, вы можете скопировать его отсюда и вставить в Терминал с помощью сочетания клавиш Ctrl+Shift+V или с помощью опции Paste из меню правой кнопки мыши.

Теперь выйдите из файла через сочетание клавиш Ctrl+X и сохраните файл на запрос «Сохранить измененный буфер?», набрав Y и нажав Enter.

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

chmod +x geo_location.sh

Наконец, запустите этот скрипт следующим образом:

./geo_location.sh

Получение GEO местоположения сервера Ubuntu

Вы можете видеть, как этот сценарий аккуратно выводит в терминал широту, долготу, город и название страны вашего сервера.

Если вам нужно получить геолокацию вашего сервера только один раз, вам не нужно создавать bash-скрипт. В противном случае скрипт будет автоматизировать весь процесс каждый раз, когда вам нужно будет проверить графическое местоположение вашей машины Ubuntu на основе ее публичного IP.

Похожие записи:

  1. 4 способа выйти из десктопной сессии Ubuntu
  2. Запись экрана с помощью Kazam в Ubuntu
  3. Как установить программное обеспечение для видеоконференций Zoom в Ubuntu
  4. Отключаем IPv6 через параметры ядра (GRUB) в Linux
  5. Как завершить работу Ubuntu
  6. Как исправить предупреждение об устаревании apt-key в Ubuntu
  7. Ubuntu Установка драйвера Nvidia

Источник: g-soft.info

15 полезных практических примеров команды locate в Linux

Новичкам в операционной системе Linux бывает непросто сориентироваться в файловой системе, быстро найти нужный файл. Между прочим, командная строка Linux предоставляет отличные инструменты, которые позволят быстро найти нужные файлы. Двумя самыми распространёнными утилитами являются find и locate.

Каждая из этих программ имеет свою специфику. Особенностью locate является то, что она предназначена для поиска по имени файла и делает это ОЧЕНЬ быстро, поскольку имеет заранее подготовленный кэш. Поиск происходит не по всей файловой системе, а по кэшу, благодаря такой оптимизации нужный файл можно найти за доли секунды.

В этой статье будет показано несколько примеров использования команды locate, которые помогут вам быть более продуктивным.

1. Использование команды locate

Простейшим случаем использования команды locate является указание имени файла (или части имени) файла, который вы хотите найти:

locate createProgXML /home/mial/all/createProgXML.sh /home/mial/all/createProgXMLfix.php

2. Ограничение количества показываемых результатов

Опцией -n вы можете ограничить количество возвращаемых результатов, чтобы избежать избыточного вывода:

Например, вы хотите для вашего запроса вывод только 20 результатов, вы можете набрать следующую команду:

locate «*.html» -n 20 /home/mial/.config/chromium/Default/Extensions/nmmhkkegccagdldgiimedpiccmgmieda/1.0.0.1_0/html/craw_window.html /home/mial/.config/chromium/Default/Extensions/nmmhkkegccagdldgiimedpiccmgmieda/1.0.0.2_0/html/craw_window.html /home/mial/.gem/ruby/2.4.0/gems/erubis-2.7.0/benchmark/templates/_footer.html /home/mial/.gem/ruby/2.4.0/gems/erubis-2.7.0/benchmark/templates/_header.html /home/mial/.gem/ruby/2.4.0/gems/erubis-2.7.0/doc/users-guide.html /home/mial/.gem/ruby/2.4.0/gems/erubis-2.7.0/doc-api/fr_class_index.html /home/mial/.gem/ruby/2.4.0/gems/erubis-2.7.0/doc-api/fr_file_index.html /home/mial/.gem/ruby/2.4.0/gems/erubis-2.7.0/doc-api/fr_method_index.html /home/mial/.gem/ruby/2.4.0/gems/erubis-2.7.0/doc-api/index.html /home/mial/.gem/ruby/2.4.0/gems/erubis-2.7.0/doc-api/classes/ActionView.html /home/mial/.gem/ruby/2.4.0/gems/erubis-2.7.0/doc-api/classes/ERB.html /home/mial/.gem/ruby/2.4.0/gems/erubis-2.7.0/doc-api/classes/Erubis.html /home/mial/.gem/ruby/2.4.0/gems/erubis-2.7.0/doc-api/classes/Kernel.html /home/mial/.gem/ruby/2.4.0/gems/erubis-2.7.0/doc-api/classes/ActionView/TemplateHandlers/ErubisHandler.html /home/mial/.gem/ruby/2.4.0/gems/erubis-2.7.0/doc-api/classes/Erubis/ArrayBufferEnhancer.html /home/mial/.gem/ruby/2.4.0/gems/erubis-2.7.0/doc-api/classes/Erubis/ArrayBufferEruby.html /home/mial/.gem/ruby/2.4.0/gems/erubis-2.7.0/doc-api/classes/Erubis/ArrayEnhancer.html /home/mial/.gem/ruby/2.4.0/gems/erubis-2.7.0/doc-api/classes/Erubis/ArrayEruby.html /home/mial/.gem/ruby/2.4.0/gems/erubis-2.7.0/doc-api/classes/Erubis/Basic.html /home/mial/.gem/ruby/2.4.0/gems/erubis-2.7.0/doc-api/classes/Erubis/BiPatternEnhancer.html

Результатом станет вывод первых 20 файлов, которые оканчиваются на .html.

3. Показ числа найденных файлов

Если вы хотите отобразить количество всех найденных по вашему запросу файлов, то используйте ключ -c:

locate -c «.zip» 233

4. Поиск locate без учёта регистра

По умолчанию locate настроена быть чувствительной к регистру при обработке запросов, это означает, что TEXT.TXT даст вам другие результаты чем дал бы запрос text.txt.

Чтобы команда locate не обращала внимание на регистр букв и выводила результаты независимо от заглавных или маленьких букв, используйте опцию -i:

locate -i *text.txt* /home/mial/TEXT.TXT /usr/share/otori/data/helptext.txt

5. Обновление базы данных mlocate

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

Читайте также:
Как отследить выполнение программы

sudo updatedb

6. Отображение только файлов, существующих в файловой системе

Вы можете использовать ключ -e, который приведёт к тому, что программа locate перед выводом результатов будет каждый из них проверять – действительно ли он существует или это просто старая запись в базе данных. Если файл не существует, то он не будет показан.

rm TEXT.TXT locate -i -e *text.txt* /usr/share/otori/data/helptext.txt

7. Вывод записей без символа «новая строка»

Команда locate в качестве разделителя результатов поиска использует символ «новая строка» (\n). Но если вы предпочитаете использовать другой разделитель, такой как ASCII NUL, вы можете сделать это используя опцию -0.

locate -i -0 *text.txt* /home/mial/TEXT.TXT/usr/share/otori/data/helptext.txt

8. Обзор вашей локальной базы данных Locate

Если вы хотите узнать статус и некоторую статистику по вашей базе данных mlocate.db, то используйте опцию -S:

locate -S База данных /var/lib/mlocate/mlocate.db: »69 670 папок »725 443 файла »46 165 671 байт в названии файла база данных заняла »18 093 242 байта

9. Подавление сообщений об ошибках

Иногда доступ к базе данных mlocate.db выводит сообщения об ошибках, говорящих, что вы обычный пользователь и у вас нет прав для доступа к некоторым данным. Чтобы полностью убрать эти сообщения используйте опцию -q:

locate -q «*.dat»

10. Выбор другого расположения mlocate

Если вы хотите сделать запрос не к базе данных mlocate по умолчанию, а к другой mlocate.db размещённой в системе где-то в другом месте, вы можете указать locate на иное расположение базы данных mlocate с помощью опции -d:

locate -d

11. Поиск файлов с locate по всем пользователям

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

sudo locate -i *text.txt* /root/root_text.txt /usr/share/otori/data/helptext.txt

12. Поиск по нескольким именам файлов

Программа locate умеет искать сразу по нескольким именам файлов, для этого достаточно одновременно указать имена или их части:

locate text txt

13. Поиск по нескольким образцам, встречающимся в одном имени файла

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

locate -A text txt

14. Игнорирование пути до файла при поиске

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

locate -b zip

15. Поиск locate по регулярным выражениям

Команда locate по умолчанию использует поиск по паттернам (образцам). Если вы хотите сделать поиск по регулярным выражениям, то для этого имеется две опции:

-r, —regexp REGEXP поиск по базовым регулярным выражениям вместо паттернов —regex образцы – это расширенные регулярные выражения

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

locate -b —regex «^[a-z.][tx]$» /home/mial/t.txt /opt/wine64/drive_c/Python27/Lib/test/cjkencodings/hz.txt /usr/lib/go/src/compress/testdata/e.txt /usr/lib/go/src/compress/testdata/pi.txt /usr/lib/modules/4.10.11-1-ARCH/build/include/config/blk/dev/3w/xxxx /usr/lib/node_modules/bluebox-ng/node_modules/require-dir/test/duplicates/c.txt /usr/lib/node_modules/bluebox-ng/node_modules/require-dir/test/simple/d.txt /usr/lib/python2.7/test/cjkencodings/hz.txt /usr/lib/python3.5/site-packages/pbr/tests/testpackage/data_files/a.txt /usr/lib/python3.5/site-packages/pbr/tests/testpackage/data_files/b.txt /usr/lib/python3.6/test/cjkencodings/hz.txt /usr/share/davtest/tests/pl.txt /usr/share/iptv/languages/it.txt /usr/share/pasv-agrsv/notes/db.txt /usr/share/snoopy-ng/setup/sn.txt /usr/share/uniscan/c.txt

В рассмотренном выше примере сделан поиск только по базовому имени файла, причём, ищутся файлы, начинающиеся с любого сочетания маленьких букв и точки, длиной от 1 до 3 символов, далее должны идти три символа, составленные из двух символов tx в любом сочетании.

Как мы видим, команда locate делает поиск по именам файлов в Linux эффективным благодаря скорости работы и большому количеству опций. Эта программа будет полезна как для новичков, которые могут её использовать в простых случаях, когда достаточно найти файл по его имени, так и для более продвинутых пользователей, которые сочетая опции и регулярные выражения смогут решить задачи любой сложности по поиску файлов.

Связанные статьи:

  • Какие есть полезные инструменты с интерфейсом командной строки для системных администраторов Linux (47.5%)
  • Руководство по использованию GNU Parallel (47.5%)
  • Как найти все файлы, содержащие определённый текст (на Linux) (44.9%)
  • Как найти имена файлов, чья длина превышает определённое значение (44.9%)
  • Как отсортировать в алфавитном порядке в Writer (LibreOffice) (41.7%)
  • Как в формулу в LibreOffice вставить одиночную фигурную скобку для системы уравнений (RANDOM — 8.3%)
Читайте также:
Как прервать работу программы

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

Как узнать геолокацию из командной строки в Linux

В этом кратком руководстве вы узнаете, как получить геолокацию из командной строки в Linux.

Это может быть полезно, если вы хотите узнать местоположение вашего VPS или удаленных серверов.

Обратите внимание, что некоторые хостинг-провайдеры могли бы скрыть точное место своего сервера или подделать его из-за соображений безопасности.

В таких случаях этот инструмент не поможет.

Узнать свою геолокацию из командной строки в Linux

Установка whereami

Установка инструмента «whereami» довольно проста и прямолинейна.

Сначала вам нужно установить npm, менеджер пакетов javascript.

Для установки npm в системах на основе RPM, таких как RHEL, CentOS, Fedora, выполните следующие команды:

sudo yum install epel-release
sudo yum install npm
sudo dnf install epel-release
sudo dnf install npm

В Debian, Ubuntu, Linux Mint, выполните:

sudo apt-get install npm

На Arch Linux и его производных:

sudo pacman -S npm
sudo zypper install npm

После установки npm запустите следующую команду, чтобы установить инструмент «whereami».

Вы получите результат, как показано ниже.

Найти свою геолокацию

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

whereami
11.1,77.35

Как вы видите на приведенном выше выходе, он отображает широту (11.1) и долготу (77.35) моего местоположения.

Я не понимаю, могу ли я иметь удобочитаемый формат? Конечно мы можем!

Добавьте ключ -f human с командой whereami, как показано ниже.

whereami —f human
Tiruppur, Tamil Nadu, India

Я бы не сказал, что это точный результат, но он был очень близок к моему фактическому местоположению.

Отобразите исходный результат, который содержит общедоступный IP-адрес, код страны, почтовый индекс, часовой пояс и т. д,

Используя следующую команду:

whereami -r

itisgood

previous post

Как запускать команду Linux каждые X секунд навсегда
Решить “Result Code: NS_ERROR_FAILURE (0x80004005)” VirtualBox Error в Arch Linux

You may also like

В чем разница между IMAP и POP3

✔️ Как управлять контейнерами LXD от имени обычного.

Руководство для начинающих по созданию первого пакета.

Феноменальная популярность электроники Xiaomi: основные причины

Получение вчерашней даты в Bash: Практическое руководство

Использование специальных гелей при мышечных болях

Сравнение команд Printf и Echo на Linux

Как расширить/увеличить файловую систему VxFS на Linux

Услуги по размещению серверного оборудования в ЦОД

Для чего выполняется ИТ консалтинг на предприятиях?

Leave a Comment Cancel Reply

• Свежие записи

  • В чем разница между IMAP и POP3
  • ✔️ Как управлять контейнерами LXD от имени обычного пользователя
  • Руководство для начинающих по созданию первого пакета Debian
  • Феноменальная популярность электроники Xiaomi: основные причины
  • Лаки Джет онлайн игра.
  • Можно ли выучить английский самостоятельно?
  • Техническая поддержка сайта на 1С-Битрикс: ключевые направления и нюансы
  • Как переместить весь репозиторий Git
  • GitLab CI: Как создавать образы Docker в Kubernetes
  • Идеальные звуки: Всё, что нужно знать о лучших наушниках на рынке

• Категории

• Теги

• itsecforu.ru

• Страны посетителей

IT is good

Протоколы, используемые для получения электронной почты, являются важной частью функционирования Интернета, и все же они остаются практически незаметными для большинства пользователей. Два наиболее…

Управляем контейнерами LXD от обычного пользователя ( не root). Попробуйте использовать утилиту lxc как обычный пользователь. $ lxc list Error: Get «http://unix.socket/1.0»: dial…

Создание пакета Debian может показаться сложной задачей для новичков, но как только вы поймёте процесс, он станет вполне выполнимым. Давайте покажем вам создание…

Xiaomi, китайская технологическая компания, в последние годы штурмом захватила рынок электроники. В интернет-магазине pixel-centre.ru вас ждет огромный выбор товаров данного бренда. Одним из ключевых факторов…

Лаки Джет: новый хит среди онлайн-игр Что такое Лаки Джет? Многие наверняка слышали это название, и это неслучайно. Популярность проекта Lucky Jet набирает обороты в категории…

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

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