IT News: Digital Camera, OS, Laptop, Smartphone, Smart TV, Sound...

The Author's Project by Valeri N.Kravchuk
Сайт проверен Dr.Web
Меню сайта
  • Главная страница
  • Информация о сайте
  • Дневник
  • Каталог файлов
  • Обратная связь
  • Каталог сайтов
  • FAQ
  • Доска объявлений
  • Форум
  • Фотоальбом
  • Категории раздела
    Автомобильные гаджеты, ремонт... [220]
    Безопасность IT [484]
    Блоки питания, Power Banks, зарядки... [489]
    Видеорегистраторы [220]
    Гаджеты для спорта и здоровья... [189]
    Гаджеты, аксессуары... [625]
    Измерительная техника, инструменты [444]
    Накопители данных [226]
    Нетбуки, Ноутбуки, Ультрабуки [679]
    Мультиварки, блендеры и не только... [158]
    Планшеты [758]
    Радар-детекторы [26]
    Роботы-пылесосы [37]
    Своими руками [353]
    Сети, сетевые технологии, оборудование... [267]
    Смартфоны [4963]
    Фотокамеры, объективы, искусство фотографии.. [542]
    Умный дом [47]
    Электронные книги [95]
    CB, LPD, PMR- связь... [169]
    DECT, IP-телефоны [18]
    Drones, boats, cars... [108]
    electric cars [35]
    GPS-навигаторы, трекеры... [51]
    Linux и не только [4380]
    mini computers и не только... [409]
    News IT, Это интересно, ликбез... [1112]
    Smart TV, UltraHD, приставки, проекторы... [414]
    Smart Watch [263]
    Sound: наушники, плееры, усилители... [613]
    Windows 10... [298]
    Windows 11 [28]
    Погода

  • Метеорадар БРЕСТ
  • Погода в Бресте от www.yr.no

    Яндекс.Погода БРЕСТ

  • Интересные ссылки

    COMPIZOMANIA

    Наш опрос
    Оцените мой сайт
    Всего ответов: 1338
    Статистика
    Анализ веб сайтов

    Яндекс.Метрика

    Рейтинг@Mail.ru Яндекс цитирования

    Russian America Top. Рейтинг ресурсов Русской Америки.

    eXTReMe Tracker

    Правильный CSS!


    Онлайн всего: 1
    Гостей: 1
    Пользователей: 0
    Locations of visitors to this page
    Форма входа
    Главная » 2017 » Декабрь » 9 » Как узнать, что будет делать программа для Linux, не выполняя её по-настоящему?
    16:34
    Как узнать, что будет делать программа для Linux, не выполняя её по-настоящему?

    Как узнать, что будет делать программа для Linux, не выполняя её по-настоящему?

    https://www.ostechnix.com/know-command-program-will-exactly-executing/

     

    Хотелось ли вам когда-нибудь узнать, какие именно действия будет выполнять команда Linux, ещё до вызова этой команды? Предположим, вы опытный пользователь, и вы знаете, как ведут себя многие команды. Но даже вам не под силу знать, как работает абсолютно всё. Конечно, определённую помощь в выяснении подробностей о командах может оказать веб-сервис Explainshell. Для этого нужно будет скопировать и вставить туда интересующую вас команду, после чего вы найдёте подробное описание того, как работает каждая её часть. Однако, это не наш метод. Благодаря тому инструменту, о котором мы сейчас расскажем, узнать, как именно работает некая программа, можно прямо из командной строки.



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

    Как работает maybe?


    Разработчик программы рассказывает о ней следующее: «Maybe выполняет процессы под управлением ptrace, с помощью библиотеки python-ptrace. Когда программа перехватывает системный вызов, который приводит к изменениям в файловой системе, она записывает этот вызов в журнал, затем модифицирует регистры процессора для того, чтобы перенаправить вызов на недействительный ID системного вызова (то есть, по сути, превращая этот вызов в пустую операцию). Далее, она устанавливает значение, которое возвращает эта пустая операция, таким образом, что оно указывает на успешное завершение исходного вызова. В результате процесс уверен в том, что всё то, что он пытается сделать, действительно происходит, в то время как в реальности не происходит ничего.»

    Тут стоит отметить, что следует проявлять большую осторожность при использовании maybe в любых системах, отказ которых может привести к тяжёлым последствиям. Дело в том, что эта утилита пока ещё блокирует не особенно много системных вызовов, как результат, её использование может привести к сбоям в работе компьютера.
     

    Установка maybe


    Прежде чем устанавливать maybe, проверьте, установлен ли в вашей системе менеджер пакетов pip. Если это не так — ниже приведены команды для установки pip в различных дистрибутивах Linux.

    В Arch Linux и в других системах, построенных на базе этого дистрибутива, таких, как Antergos и Manjaro Linux, pip можно установить так:
     
    sudo pacman -S python-pip

    В RHEL и CentOS вам поможет следующая последовательность команд:
     
    sudo yum install epel-release
    sudo yum install python-pip

    В Fedora это можно сделать так:
     
    sudo dnf install epel-release
    sudo dnf install python-p

    Вот соответствующая команда для Debian, Ubuntu и Linux Mint:
     
    sudo apt-get install python-pip

    В SUSE и OpenSUSE используйте следующую команду:
     
    sudo zypper install python-pip

    После установки pip установите maybe:
     
    sudo pip install maybe
     

    Работа с maybe


    Пользоваться maybe очень просто. Просто добавьте maybe перед командой, которую вы хотите исследовать. Вот как это выглядит:
     
    $ maybe rm -r ostechnix/

    Как видите, я собираюсь удалить папку ostechnix и хочу узнать, что произойдёт в моей системе, если будет выполнена вышеприведённая команда. Вот что сообщает об этом maybe:
     
    maybe has prevented rm -r ostechnix/ from performing 5 file system operations:
    
     delete /home/sk/inboxer-0.4.0-x86_64.AppImage
     delete /home/sk/Docker.pdf
     delete /home/sk/Idhayathai Oru Nodi.mp3
     delete /home/sk/dThmLbB334_1398236878432.jpg
     delete /home/sk/ostechnix
    
    Do you want to rerun rm -r ostechnix/ and permit these operations? [y/N] y



    Оказалось, что команда rm -r ostechnix/ выполнила бы 5 операций с файловой системой, о чём и сообщила maybe. Теперь я могу решить, надо ли мне выполнять эти операции или нет. По мне — так это просто замечательная возможность.

    Вот ещё пример. Я хочу установить Inboxer — настольный клиент для Gmail. Вот что удалось выяснить о соответствующей операции с помощью maybe:
     
    $ maybe ./inboxer-0.4.0-x86_64.AppImage 
    fuse: bad mount point `/tmp/.mount_inboxemDzuGV': No such file or directory
    squashfuse 0.1.100 (c) 2012 Dave Vasilevsky
    
    Usage: /home/sk/Downloads/inboxer-0.4.0-x86_64.AppImage [options] ARCHIVE MOUNTPOINT
    
    FUSE options:
     -d -o debug enable debug output (implies -f)
     -f foreground operation
     -s disable multi-threaded operation
    
    open dir error: No such file or directory
    maybe has prevented ./inboxer-0.4.0-x86_64.AppImage from performing 1 file system operations:
    
    create directory /tmp/.mount_inboxemDzuGV
    
    Do you want to rerun ./inboxer-0.4.0-x86_64.AppImage and permit these operations? [y/N]

    Если в ходе исследования некоей команды не удаётся обнаружить операций с файловой системой, maybe выведет нечто похожее на это:
     
    $ maybe sudo pacman -Syu
    sudo: effective uid is not 0, is /usr/bin/sudo on a file system with the 'nosuid' option set or an NFS file system without root privileges?

    Тут я попытался исследовать команду обновления моей Arch Linux, а maybe не обнаружила операций с файловой системой и не вывела никаких сообщений о таких операциях.
     

    Итоги


    Как видите, всё тут просто и понятно. Мне команда maybe очень понравилась, это как раз то, что я какое-то время искал. Теперь я могу без особых сложностей узнать, что будет делать команда или программа до её реального запуска. Надеюсь, maybe пригодится и вам.

    Уважаемые читатели! Какие сценарии использования maybe вы видите? В материале упомянуто о том, что maybe — утилита, которая пока не вполне готова к использованию на ответственных системах. Знаете ли вы что-то подобное, но подходящее для запуска на таких системах?

     

    Категория: Linux и не только | Просмотров: 328 | Добавил: laptop | Рейтинг: 0.0/0
    Всего комментариев: 0
    Добавлять комментарии могут только зарегистрированные пользователи.
    [ Регистрация | Вход ]
    Волк слабее льва и тигра, но в цирке волк не выступает!
    Волк слабее льва и тигра, но в цирке волк не выступает!
    Волк - единственный из зверей, который может пойти в бой на более сильного противника.
    Если же он проиграл бой, то до последнего вздоха смотрит в глаза противника. После этого умирает...

    Праздники сегодня

    Поиск
    Календарь
    «  Декабрь 2017  »
    ПнВтСрЧтПтСбВс
        123
    45678910
    11121314151617
    18192021222324
    25262728293031
    Архив записей
    Друзья сайта
  • Официальный блог
  • JEEP - the best! Mercedes - the best! Автомобильный портал города Бреста: технические характеристики с фото, авторынок, автоспорт...
    Наша кнопка
    IT новости с моего лаптопа...

    Внимание!
    Администратор сайта laptop.ucoz.ru не несет ответственности за содержание рекламных объявлений. Все используемые на сайте зарегистрированные товарные знаки принадлежат своим законным владельцам! Используемая со сторонних источников информация публикуется с обязательными ссылками на эти источники.
    Copyright Valeri N.Kravchuk © 2007-2024