Forwarded from opennet.ru
Релиз системы виртуализации VirtualBox 6.0
После года разработки компания Oracle опубликовала релиз системы виртуализации VirtualBox 6.0. Готовые установочные пакеты доступны для Linux (Ubuntu, Fedora, openSUSE, Debian, SLES, RHEL), Solaris, macOS и Windows.
http://www.opennet.ru/opennews/art.shtml?num=49809
После года разработки компания Oracle опубликовала релиз системы виртуализации VirtualBox 6.0. Готовые установочные пакеты доступны для Linux (Ubuntu, Fedora, openSUSE, Debian, SLES, RHEL), Solaris, macOS и Windows.
http://www.opennet.ru/opennews/art.shtml?num=49809
www.opennet.ru
Релиз системы виртуализации VirtualBox 6.0
После года разработки компания Oracle опубликовала релиз системы виртуализации VirtualBox 6.0. Готовые установочные пакеты доступны для Linux (Ubuntu, Fedora, openSUSE, Debian, SLES, RHEL в сборках для архитектуры AMD64), Solaris, macOS и Windows.
Разница между
В связи с этим, надо понимать, что в некоторых случаях
Из документации Ansible было непонятно, какую политику обновления использует модуль yum.
В исходном коде встретилась такая вот строчка:
Последняя команда выполняет обновление всех пакетов без удаления
По ходу поисков на просторах интернета выяснилось, что люди, которые использовали ранее Debian-like дистрибутивы переносят весь свой опыт в мир RHEL-like дистрибутивов. А затем в инструкциях встречаются вот такие конструкции:
P.S. Да, можно использовать
yum update и yum upgrade:yum update - обновляет список установленных пакетов (если не указаны, то обновляет все имеющиеся в системе).yum upgade - производит обновление пакетов, а также удаляет устаревшие пакеты (obsoletes packages).В связи с этим, надо понимать, что в некоторых случаях
yum upgrade может удалить пакеты, которые вы используете.Из документации Ansible было непонятно, какую политику обновления использует модуль yum.
В исходном коде встретилась такая вот строчка:
- When using state=latest, this can be C('*') which means run C(yum -y update).
После запуска плейбука с обновлением всех пакетов было замечено, что вызываются 2 команды:/usr/bin/yum -d 2 -y check-updateГде первая команда (с аргументом
/usr/bin/yum -d 2 -y update
check-update) запрашивает список обновленных пакетов (если они есть, то возвращается код выхода 100, если таких пакетов нет - 0, если во время запроса списка пакетов произошла ошибка - код 1). -d 2 - устанавливает значение debug-level в значение 2Последняя команда выполняет обновление всех пакетов без удаления
obsoletes-packages
UPDATEПо ходу поисков на просторах интернета выяснилось, что люди, которые использовали ранее Debian-like дистрибутивы переносят весь свой опыт в мир RHEL-like дистрибутивов. А затем в инструкциях встречаются вот такие конструкции:
yum update && yum updateКак видно - совершенно бессмысленные. В мире Debian-like дистрибутивах это выглядит вот так:
apt update && apt upgradeЧто вполне логично, так как
apt update получает информацию о пакетах из репозиториев, описанных в файле /etc/apt/sources.list (встречаются и отдельные файлы, которые размещают в директории /etc/apt/sources.list.d/
apt upgrade устанавливает все доступные обновления, полученные после запуска команды выше.P.S. Да, можно использовать
apt вместо apt-getПолезности из мира Gitlab
https://docs.gitlab.com/ce/ci/yaml/#onlychanges-and-exceptchanges
Параметр
Простой пример работы этого параметра:
(Внимание! Изменение прав файла, например на 755, чтобы сделать его исполняемым, тоже считается изменением. Правда гитлаб в коммите показывает следующую запись:
https://docs.gitlab.com/ce/ci/yaml/#onlychanges-and-exceptchanges
Параметр
onlychanges позволяет запускать CI/CD процессы только в случаях, когда изменились конкретные файлы, либо группа файлов.Простой пример работы этого параметра:
changes_feature_test:Здесь процессы CI/CD начинают запускаться только после изменения содержимого shell-скрипта test.sh
noscript:
- ping -c4 8.8.8.8
- ./test.sh
only:
changes:
- test.sh
tags:
- changes_test
(Внимание! Изменение прав файла, например на 755, чтобы сделать его исполняемым, тоже считается изменением. Правда гитлаб в коммите показывает следующую запись:
File mode changed from 100644 to 100755)Gitlab
CI/CD YAML syntax reference | GitLab
GitLab product documentation.
Ansible-playbook для установки утилиты
Если вы используете Fedora, то у вас есть пакет
bat на RHEL-based дистрибутивы. Пакеты с данной утилитой пока никто не собирает, но на github есть готовые бинарники- name: get bat latest versionUPDATE
block:
- shell: curl --silent "https://api.github.com/repos/sharkdp/bat/releases/latest" | grep -Po '"tag_name"':' "\K.*?(?=")' warn=false
register: latest_release
- get_url:
url: https://github.com/sharkdp/bat/releases/download/{{latest_release.stdout}}/bat-{{latest_release.stdout}}-x86_64-unknown-linux-musl.tar.gz
dest: /tmp
- unarchive:
src: bat-{{latest_release.stdout}}-x86_64-unknown-linux-musl.tar.gz
dest: /tmp
- copy:
src: /tmp/bat-{{latest_release.stdout}}-x86_64-unknown-linux-musl/
dest: /usr/local/bat/
mode: preserve
- lineinfile:
path: ~/.bashrc
line: "alias bat='/usr/local/bat/bat'"
insertafter: 'mv'
- find:
paths: /tmp
file_type: any
patterns: bat*
register: bat_files_delete
- file:
path: "{{ item.path }}"
state: absent
with_items: "{{ bat_files_delete.files }}"
Если вы используете Fedora, то у вас есть пакет
bat в официальных репозиториях. Установить его можно командойdnf install bat
Forwarded from Записки админа
📚 Hacking for the Holidays by No Starch Press.
Очередной книжный бандл доступен по вкусной цене. На этот раз по большей части для тех, кто увлекается вопросами секурити. 😉
https://www.humblebundle.com/books/hacking-for-the-holidays-books
#security #книга
Очередной книжный бандл доступен по вкусной цене. На этот раз по большей части для тех, кто увлекается вопросами секурити. 😉
https://www.humblebundle.com/books/hacking-for-the-holidays-books
#security #книга
Humble Bundle
Humble Book Bundle: The Happy Hacking Holiday Bundle by No Starch Press
Pay what you want for awesome ebooks and support charity!
Забавное поведение RPM.
На прошлой неделе не стал разбираться почему команда
Сегодня добрался и выяснилось, что команда
UPDATE
Задал этот вопрос в русскоязычном чате сообщества Fedora.
Все было банально - экранируем запрос, чтобы локальные файлы не влияли на выдачу.
Т.е.
На прошлой неделе не стал разбираться почему команда
rpm -qa *gitlab*Ничего не возвращает на сервере с установленным гитлабом.
Сегодня добрался и выяснилось, что команда
rpm -qa | grep gitlabвыдает мне нужный пакет. И имеется предположение, что первая команда не выполнилась по причине того, что в директории, где я выполнял эту команду лежал файл, подходящий под регулярное выражение. И если перейти в другую директорию, например,
/tmp, то все отрабатывает успешно. Гугл пока что ничего не сказал по этому поводу.UPDATE
Задал этот вопрос в русскоязычном чате сообщества Fedora.
Все было банально - экранируем запрос, чтобы локальные файлы не влияли на выдачу.
Т.е.
rpm -qa "*gitlab*"или
rpm -qa \*gitlab\*
При восстановление Gitlab из бэкапов можно получить ошибку
Это означает, что сервис
В некоторых случаях сервису не хватает прав для директории
GRPC::Unavailable: 14:Connect Failed
Это означает, что сервис
gitaly не запущен и проверить в логах, что с ним случилось.В некоторых случаях сервису не хватает прав для директории
/tmpAwesome Docker resources and projects list
https://awesome-docker.netlify.com
https://awesome-docker.netlify.com
Write down a command-line to see the help text that matches each argument
https://explainshell.com
https://explainshell.com
Очевидно, но не сразу.
На домашнем ноутбуке у меня установлена Fedora Workstation (DE - Cinnamon).
И при поиске в меню по фразе
Оказалось, что сначала приоритет отдается полю
1. Получаем значение ключа
На домашнем ноутбуке у меня установлена Fedora Workstation (DE - Cinnamon).
И при поиске в меню по фразе
tele почему-то первым совпадением был Skype, а не телеграм. Оказалось, что сначала приоритет отдается полю
Comment в описании приложения и через стандартный редактор не получилось поменять этот коментарий для своей учетной записи. Зато я нашел, где это задается глобально (в данной случае для приложения Skype) в файле /usr/share/applications/skypeforlinux.desktop с помощью утилиты crudini (её нужно установить - dnf install crudini):1. Получаем значение ключа
Comment в секции Desktop Entry
# crudini --get /usr/share/applications/skypeforlinux.desktop "Desktop Entry" "Comment"2. Меняем значение на
Skype Internet Telephony
Skype
# crudini --set /usr/share/applications/skypeforlinux.desktop "Desktop Entry" "Comment" "Skype"Либо можно поправить ручками в вашем любимом текстовом редакторе
# crudini --get /usr/share/applications/skypeforlinux.desktop "Desktop Entry" "Comment"
Skype
Установка docker в Oracle Linux 7.
1. Установка при наличии сети
Включить репозитории
через yum-config-manager, либо ручками редактированием файла
Установка docker и запуск docker-демона выглядит следующим образом:
Для установки необходимо установить 2 пакета (версии пакетов актуальны на 26.12.2018):
1. Установка при наличии сети
Включить репозитории
ol7_latest, ol7_uekr и ol7_addonsчерез yum-config-manager, либо ручками редактированием файла
/etc/yum.repos.d/public-yum-ol7.repoУстановка docker и запуск docker-демона выглядит следующим образом:
yum install docker-engine2. Установка при отсутствии сети (или доступа в Интернет)
systemctl start docker && systemctl enable docker
Для установки необходимо установить 2 пакета (версии пакетов актуальны на 26.12.2018):
yum localinstall container-selinux-2.21-1.el7.noarch.rpm
yum localinstall docker-engine-18.03.1.ol-0.0.9.el7.x86_64.rpm
systemctl start docker && systemctl enable docker
set -eФункция
set -e используется в bash-скриптах и предназначена для выхода из скрипта, если на какой-то из команд получается не нулевой exit-code (код выхода). Функция
set +e меняет поведения на обратное (даже если код не нулевой, то выполнение скрипта не прекращается)Как выглядит регулярное выражение для валидации e-mail RFC822 (http://www.ex-parrot.com/~pdw/Mail-RFC822-Address.html)
Изменение локальной ветки в git и пуш этой ветки в удаленный git-репозиторий
git branch -m new-branch
git push origin :old-branch new-branchhttps://blog.github.com/2019-01-07-new-year-new-github/
Самая главная полезность для простых разработчиков:
Самая главная полезность для простых разработчиков:
For the first time, developers can use GitHub for their private projects with up to three collaborators per repository for free
The GitHub Blog
New year, new GitHub: Announcing unlimited free private repos and unified Enterprise offering
Today we’re announcing two major updates to make GitHub more accessible to developers.