- Собрал пакеты для Midnight Commander 4.8.24 под ARM.
- Добавил поддержку Ubuntu Eoan.
- Удалил из репозитария Ubuntu Cosmic и Ubuntu Disco из-за EOL.
Заметки о Linux, системном администрировании, программировании, электронике и не только
05 февраля 2020
Изменения в моем репозитарии
В моем репозитарии произошло несколько изменений:
Как скачать лог Stackdriver
Журналирование в GCP реализовано через Stackdriver Logging. На прошлой неделе пришлось обратиться в техническую поддержку Google по поводу поломанной работы с зависимостями в AI Platform (ML Engine). Для тикета нужно было скачать логи заданий с ошибкой и без нее. Если пытаться выгружать логи через консоль GCP, то сохранит только ту часть, который видна в данный момент в интерфейсе (в моем случае это малая часть от полного лога).
Чтобы выгрузить весь лог целиком воспользуемся консольной командой
Для удобства чтения я извлекаю из JSON только сам текст сообщения (узнать больше о фильтрации в jq можно тут).
Чтобы выгрузить весь лог целиком воспользуемся консольной командой
gcloud logging read. В моем случае для успешной задачи ML Engine фильтр будет resource.labels.job_id="some_successful_ml_job" timestamp>="2020-01-27T14:28:43Z" а для задания с ошибкой: resource.labels.job_id="some_failed_ml_job" timestamp>="2020-01-30T13:42:58Z" (чтобы использовать этот запрос в команде нужно экранировать двойную кавычку).gcloud logging read "resource.labels.job_id=\"some_successful_ml_job\" timestamp>=\"2020-01-27T14:28:43Z\"" --format=json --order=asc > success.json gcloud logging read "resource.labels.job_id=\"some_failed_ml_job\" timestamp>=\"2020-01-30T13:42:58Z\"" --format=json --order=asc > failure.json
Для удобства чтения я извлекаю из JSON только сам текст сообщения (узнать больше о фильтрации в jq можно тут).
jq -r .[].jsonPayload.message < success.json > success.txt jq -r .[].jsonPayload.message < failure.json > failure.txt
28 января 2020
Midnight Commander 4.8.24
Лучше поздно, чем никогда - собрал пакеты для Midnight Commander 4.8.24 и выложил в свой репозитарий.
Заодно немного статистики по загрузкам:
Заодно немного статистики по загрузкам:
- за последние 12 часов пакет был скачан 86 раз
- в лидерах по количеству загрузок Ubuntu: 36 Bionic, 16 Xenial, 6 Disco
- 80 загрузок для amd64 и 6 загрузок для i386
14 января 2020
Ошибка при создании Cloud Functions через Terraform
При очередном тестировании конфигурации Terraform выдал ошибку при создании Cloud Functions в GCP:
Для работы с Terraform я использую авторизацию приложения с правами пользователя (application default credentials). Это продиктовано требованиями безопасности, да и в целом это имеет смысл т.к. приложение выполняет изменения в GCP от моего имени. Если использовать сервис аккаунт, то все работает без проблем, но тогда либо нужно создавать по отдельному сервис аккаунту на каждого пользователя, либо смириться с проблемами аудита.
googleapi: Error 403: Your application has authenticated using end user credentials from the Google Cloud SDK or Google Cloud Shell which are not supported by the cloudfunctions.googleapis.com. We recommend that most server applications use service accounts instead. For more information about service accounts and how to use them in your application, see https://cloud.google.com/docs/authentication/.Для работы с Terraform я использую авторизацию приложения с правами пользователя (application default credentials). Это продиктовано требованиями безопасности, да и в целом это имеет смысл т.к. приложение выполняет изменения в GCP от моего имени. Если использовать сервис аккаунт, то все работает без проблем, но тогда либо нужно создавать по отдельному сервис аккаунту на каждого пользователя, либо смириться с проблемами аудита.
16 ноября 2019
Релиз jtv2xmltv 0.2.1
Сегодня я выпустил новый релиз 0.2.1 для моей утилиты jtv2xmltv - конвертер электронной программы передач из формата JTV в XMLTV.
Список изменений:
Список изменений:
- После нескольких жалоб на путаницу с заголовком JTV я добавил поддержку альтернативного заголовка.
- Появилась поддержка выбора кодировки для содержимого EPG (по-умолчанию выбирается CP1251). Кодировка задается опциями
-eили--encoding. - Поправил зависимости пакета для Debian.
- Добавил Debian copyright и страницу man - теперь Lintian не выводит ошибок или предупреждений.
02 ноября 2019
Собрал acme.sh для Debian
Какое-то время назад крон, который обновляет сертификаты Let's Encrypt, стал выдавать ошибку вида:
Сегодня занялся этой проблемой вплотную. Поиск вывел на описание ошибки urn:acme:error:badNonce (JWS has no anti-replay nonce). Для работы с сертификатами LE я использую acme.sh. И чтобы решить проблему достаточно обновить версию.
Собрал Debian пакет для acme.sh 2.8.3 и залил его в мой репозитарий для Debian Stretch и Debian Buster.
Описание релиза 2.8.3 на GitHub:
Renew: 'www.tataranovich.com'
Multi domain='DNS:tataranovich.com'
Getting domain auth token for each domain
Getting webroot for domain='www.tataranovich.com'
Getting new-authz for domain='www.tataranovich.com'
The new-authz request is ok.
new-authz error: {"type":"urn:acme:error:badNonce","detail":"JWS has no anti-replay nonce","status": 400}
Please check log file for more details: le-issue.log
Error renew www.tataranovich.com.
Сегодня занялся этой проблемой вплотную. Поиск вывел на описание ошибки urn:acme:error:badNonce (JWS has no anti-replay nonce). Для работы с сертификатами LE я использую acme.sh. И чтобы решить проблему достаточно обновить версию.
Собрал Debian пакет для acme.sh 2.8.3 и залил его в мой репозитарий для Debian Stretch и Debian Buster.
Описание релиза 2.8.3 на GitHub:
Letsencrypt CA recent changed the CDN provider, which resulted in hanging issues. Any downstream package should update. This is important.После установки новой версии сертификаты обновились без проблем.
UDisks2: перестали монтироваться шифрованные LUKS носители в Debian Buster
Нужно было подписать новый SSL сертификат, но при попытке открыть флешку с шифрованным разделом на котором хранится конфигурация TinyCA2 получил ошибку
Немного поиска и я нашел описание проблемы.
После этого флешка нормально смонтировалась. Проблема проявилась из-за отключенной установки рекомендованных зависимостей
$ gvfs-mount -d /dev/sdb2 ... gio: /dev/sdb2: Error unlocking /dev/sdb2: The function 'bd_crypto_luks_open_blob' called, but not implemented!
Немного поиска и я нашел описание проблемы.
$ sudo aptitude install libblockdev-crypto2+M $ sudo systemctl restart udisks2
После этого флешка нормально смонтировалась. Проблема проявилась из-за отключенной установки рекомендованных зависимостей
APT::Install-Recommends=false.
Подписаться на:
Сообщения (Atom)