В интернете нашел интересную информацию по поводу запуска команды в консоли операционной системы Linux, например Ubuntu.
Во многих мануалах написано, что для запуска команду в фоне, нужно в конце нее поставить амперсанд &.
При этом обычный запуск выглядит следующим образом:
watch data >> /tmp/data.txt |
Запуск в фоне выполняется так:
watch data >> /tmp/data.txt & |
Проблема в том, что при таком способе запуска программа в фоне заморозится и не будет работать, пока ее не вызовут в foreground командой fg. Это происходит из-за того, что родителем запускаемого процесса будет bash-шелл, и если программа будет продолжать работать, стандартный ввод/вывод данной программы будет путаться с вводом/выводом шелла.
Для правильного запуска без остановки в фоне выполняется команда:
(watch data >> /tmp/data.txt &) |
При таком запуске родителем программы будет непосредстванно init.
P.S.: родителя запущенной программы можно увидеть через htop, переключившись на древовидное представление.
P.P.S.: первоисточник тут:
https://webhamster.ru/mytetrashare/index/mtb0/14075033802o20cd03u8
12th Июл 2017 |
Теги: |
Для отключения запроса на ввод пароля при использовании команды sudo, необходимо выполнить следующее.
Выполнить команду:
1 2 | sudo adduser (your user name) sudo sudo visudo |
Находим строку:
%sudo ALL=(ALL:ALL) ALL |
изменяем на
%sudo ALL=(ALL) NOPASSWD:ALL |
Для сохранения результатов используем сочетание клавиш: Ctrl + K,D, Enter.
Для выходя из visudo используем сочетание клавиш: Ctrl + С.
Далее выполняем команду:
sudo service sudo restart |
При следующем вводе команды sudo, запрос пароля не должен отображаться.
23rd Дек 2016 |
Теги: |
Немного теории.
Усовершенствованное средство управления программными пакетами APT (Advanced Packaging Tool) первоначально было разработано для управления пакетами в дистрибутиве Debian GNU/Linux.
Система APT состоит из нескольких утилит. Главной и наиболее часто используемой является apt-get, утилита управления пакетами. Apt-get автоматически определяет зависимости между пакетами и строго следит за их соблюдением при выполнении любой из следующих операций: установка, удаление или обновление пакетов.
Для корректной работы APT требуется наличие одного или нескольких репозитариев, в которых хранятся пакеты программ и относительно которых производится сверка пакетов, установленных в операционной системе Linux. Репозитарии могут содержать как официальную версию дистрибутива, обновляемую его разработчиками по мере выхода новых версий программ, так и локальные наработки (например, пакеты, разработанные внутри компании).
10th Ноя 2016 |
Теги: |
Гипервизор KVM идет с отличными утилитами управления для командной строки. Что касается графических программ для управления виртуальными машинами на сервер KVM, то здесь дело обстоит хуже. Под Linux стандартным средством является Virt-Manager. Давайте посмотрим, как можно использовать его под Windows.
Стандартная утилита для графического управления гостевыми системами в KVM это virt-manager, который по функционалу сравним с другими управляющими утилитами, например Hyper-V Manager, в части управления виртуальными машины на локальном или удаленном гипервизоре.
Нормальной работоспособной версии Virt-Manager или его аналога под операционную систему Windows я пока не встречал. В связи с этим в Windows необходимо использовать для графического управления KVM утилиты, обеспечивающие X11 Forwarding через протокол SSH.
В операционной системе Windows необходимо выполнить установку X Window Server, например бесплатный XMing и SSH клиент, например PuTTy .
27th Окт 2016 |
Теги: |
Операционные системы Linux (Unix) имеют очень богатый набор команд. В связи с этим иногда очень удобно иметь под рукой небольшой справочник, который поможет найти наиболее часто используемые команды и утилиты.
В данном справочнике команды Linux (Unix) разбиты по категориям и с кратким описанием каждой команды и примерами ее применения, что значительно облегчает поиск нужной команды.
Информационные и диагностические команды
uname -a | Показать версию ядра Linux |
uname -m | Отобразить архитектуру компьютера |
cat /proc/ | Примеры: Информация о версии и сборке для всех Linux: cat /proc/version Альтернатива указанной выше команды: /usr/bin/lsb_release -ircd Информация о версии и сборке для CentOS: cat /etc/centos-release Показать информацию о модели процессора (частота, инструкции и т.д.: cat /proc/cpuinfo Показать расширенную информацию о занимаемой оперативной памяти: cat /proc/meminfo |
hostname | Показать сетевое имя компьютера |
uptime | Время работы системы без перезагрузки и выключения |
dmesg | Показывает log-файл загрузки ОС |
lshal | Показать список всех устройств и их параметров |
lspci -tv | Показать обнаруженные PCI-устройства |
lsusb -tv | Показать обнаруженные USB-устройства |
lsmod | Список всех модулей загруженных в ядро |
modprobe | Загрузка модулей в ядро. Загрузка модуля ext4: modprobe ext4 |
chroot | Пример смены root-окружения на /mnt: chroot /mnt После этого корневой раздел, примонтировнный к /mnt, будет использоваться как родной |
ldd | Список библиотек, необходимых для конкретной программы. Вывести список библиотек, необходимых для работы ssh: ldd /usr/bin/ssh |
whereis | Показывает размещение бинарных файлов, исходных кодов и руководств, относящихся к конкретному файлу. Пример: whereis halt |
crontab | Обеспечивает возможность выполнения определённых задач по расписанию. |
swapoff | Отключение swap-разделов. Отключаем swap (данные перемещаются в оперативную память): swapoff -a |
swapon | Включение swap-разделов. Включаем swap: swapon -a |
date | Просмотр и изменение даты, времени. Примеры: Показывает текущую дату и время: date Установить системные дату и время. Формат: ММДДЧЧммГГГГ.СС: date 041217002016.00 |
19th Окт 2016 |
Теги: |
При работе со скриптами в редакторах на платформе Windows и последующем переносе их на платформу Linux могут иметь место различные ошибки. Например:
1 2 3 4 | : not found: 10: ./script.sh: : not found: 20: ./script.sh: : not found: 21: ./script.sh: ./script.sh: 142: ./script.sh: Syntax error: word unexpected (expecting "then") |
На другой машине возникло сообщение bad interpreter о «Плохом интерпретаторе». Сообщение может быть следующего вида:
1 | /bin/sh^M: bad interpreter: No such file or directory |
Или на русский манер, если система локализована:
1 | /bin/sh^M: плохой интерпретатор: Нет такого файла или каталога |
Суть проблемы в том, что под на платформе Windows редакторы добавляют символ «возврата каретки» CR/LF. При этом не все редакторы под Linux умеют отображать указанный перенос строки, но он там есть, о чем свидетельствует сообщение об ошибке. В итоге в скрипте вместо например первой строки вида:
1 | #!/bin/sh |
19th Окт 2016 |
Теги: |
Иногда может возникнуть ситуация, когда нужно выполнить изменение текстового редактора по умолчанию. Например это может возникнуть при внесении изменений в планировщик заданий cron. Для того, чтобы в Ubuntu изменить текстовый редактор по умолчанию, есть два простых варианта решения.
1. Отредактировать файл /home/user/.selected_editor, выполнив команду
1 | nano /home/user/.selected_editor |
или
1 | nano ~/.selected_editor |
Необходимо закоментировать последнюю строку, добавив в начало строки символ решетку (#) и ниже добавив другую подобную строку, указав в качестве редактора по умолчанию, например nano:
1 2 3 | # Generated by /usr/bin/select-editor #SELECTED_EDITOR="/usr/bin/vim" SELECTED_EDITOR="/usr/bin/nano" |
2. Запустить утилиту update-alternatives, выполнив следующую команду:
1 | sudo update-alternatives --config editor |
11th Июл 2016 |
Теги: |
В системе Ubuntu Linux для каждого пользователя, включая root, создается свое отдельное задание в планировщике cron.
Это значит что выполняя команды:
1 | crontab -e |
и
1 | sudo crontab -e |
создаются задания для разных пользователей. В первом случае для текущего пользователя, во втором для супер пользователя, т.е. учетной записи root.
Просмотреть задания, которые уже добавлены в cron файл можно выполнив команду:
1 | crontab -l |
Текущий cron файл может быть пустым. Что бы добавить новое задание выполняем команду:
1 | crontab -e |
Эта команда открывает cron файл текущего пользователя через редактор, который используется по умолчанию в системе.
9th Июл 2016 |
Теги: |
nano - один из лучших консольных текстовых редакторов для Linux и Unix - подобных операционных систем с возможностью подсветки синтаксиса.
nano - основан на библиотеке ncurses и распространяемый под лицензией GNU GPL.
nano - включен в дистрибутивы Ubuntu по умолчанию и не нуждается в установке .
Особенности программы:
- поддержка русского языка, включая русскоязычную справку
- удобная, настраиваемая подсветка синтаксиса
- простой и понятный интерфейс
Использование редактора
Чтобы воспользоваться текстовым редактором nano для для внесения изменений в файл, необходимо в консоли терминала выполнить команду:
nano filename |
25th Июн 2016 |
Теги: |
В общем суть статьи в следующем вопросе:
Как правильно обновлять систему через терминал в Ubuntu подобных системах?
Далее будет описано:
- чем отличается команда apt-get upgrade от apt-get dist-upgrade;
- А также, почему лучше использовать команду apt-get dist-upgrade.
dist-upgrade против upgrade
Для выяснения различий между указанными консольными командами можно обратиться к документации в операционной системе Ubuntu (если знаете английский язык), выполнив команду:
1 | man apt-get dist-upgrade |
Если по-русски, то вот описание команд из мануала:
20th Июн 2016 |
Теги: |