LINUX.ORG.RU

Сообщения Kroz

 

Вирутализация: когда не рекомендуюется использовать контейнеры, а рекомендуют VM

 , , , ,

Привет.

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

В каких случаях противопоказано использовать контейнеры, а следует использовать именно виртуальные машины?

Kroz
()

Почему AWS развивает ARM?

 , ,

Привет.

Amazon продвигает ARM процессоры в облаках.

Пруф: https://www.vamsitalkstech.com/5g/aws-graviton-the-hyperscale-gamechanger/

В статье написано: лучшее быстродействие, более низкое энергопотребение, более дешевые… Как почитаешь - просто мечта, а не процессоры, пора выбрасывать AMD и Intel, и массово переходить на ARM.

В чём подвох?

Для каких задач лучше x86, для каких ARM?

И почему Amazon считает что ARM в облаке должен пользоваться спросом?

Kroz
()

Не могу добавить iotop в sudoers

 

Привет

# root
root $ cd  /etc/sudoers.d/

root $ cat net-tools
%users ALL=NOPASSWD: /bin/ifconfig *

root $ cat iotop
%users ALL=NOPASSWD: /usr/bin/iotop *

# user
user $ sudo /bin/ifconfig
# Выдает нужный результат

user $ sudo /usr/bin/iotop
Password:  # WTF????

Подозреваю что это из-за наркоманского способа вызова iotop:
$ ls -l /usr/bin/iotop
lrwxrwxrwx 1 root root 31 Aug  2 17:45 /usr/bin/iotop -> ../lib/python-exec/python-exec2

$ find /usr/lib/python-exec/ -iname "iotop"
/usr/lib/python-exec/python3.6/iotop
/usr/lib/python-exec/python3.7/iotop

Как правильно составить sudoers?

Как вообще дебажить sudo?

Kroz
()

tmux локально выдает неправильные коды клавиш F1-F4; куда смотреть?

 

Привет

Если запустить read и понажимать F1, F2, ..., F12, то получится такое:

С tmux локально (ошибка в F1-F4):

$ read
^[OP^[OQ^[OR^[OS^[[15~^[[17~^[[18~^[[19~^[[20~^[[21~^[[23~^[[24~


С tmux удаленно, PuTTY:
$ read
^[[11~^[[12~^[[13~^[[14~^[[15~^[[17~^[[18~^[[19~^[[20~^[[21~^[[23~^[[24~


Без tmux локально:
$ read
^[[11~^[[12~^[[13~^[[14~^[[15~^[[17~^[[18~^[[19~^[[20~^[[21~^[[23~^[[24~


Как пофиксить? Куда смотреть?

Kroz
()

Как показать JSON Schema в виде дерева, желательно в консоли

 

Привет

Есть ли возможность вывести JSON Schema и виде дерева для удобства чтения. Интересует в первую очередь как это сделать в консоли, в крайнем случае в vim или notepad++.

Вот пример как можно вывести YANG модель:

https://tools.ietf.org/html/rfc8466

module: ietf-l2vpn
  +--rw l2vpn
     +--rw redundancy-group-templates
        +--rw redundancy-group-template* [name]
           +--rw name               string
           +--rw protection-mode?   enumeration
           +--rw reroute-mode?      enumeration
           +--rw dual-receive?      boolean
           +--rw revert?            boolean
           +--rw reroute-delay?     uint16
           +--rw revert-delay?      uint16

Kroz
()

Как кастовать модераторов?

 

Привет

Например, хочется обратить внимание модераторов на какую-то тему или момент обсуждения. Причина - нарушение правил, просьба поправить опрос и др. Как это сделать? Кастовать модераторов поименно неудобно. Если еще нет, прелагаю функционал: тег [moderators/], или кнопочка под сообщением «Сообщить о проблеме модераторам».

Как к такому относитесь?

Kroz
()

Как вы валидируете JSON/XML на соответствие YANG модели?

 yang

Привет.

(Для тех кто в курсе что такое YANG модели).

Есть json (ну, или xml). Нужно провалидировать удовлетворяет ли он YANG модели. Как это сделать?

Нашел способ через yang2dsdl, но эта штука не поддерживает yang 1.1 (а IETF модели сейчас на 1.1) и выводит абсолютно непонятные ошибки.

Есть что-то получше?

Kroz
()

Конвертор VCF (VCARD)<->CSV: есть ли такой?

 ,

Привет

Задумал написать конвертор списка контактов в CSV и обратно. Но решил проверить: не велосипед ли?

Есть уже софт, который нормально делает конвертацию VCF в CSV и обратно?

Kroz
()

Как вы редактируете VCF файлы (VCARD список контактов)?

 

Привет

Хотел бы привести в порядок свою телефонную книгу. Экспортнул контакты из телефона в VCF файл (VCARD), хочу удобно редактировать: фильтровать, сортировать, менять поля сразу нескольким контактам. Из идей только конвертнуть это в таблицу (CSV, например), отредактировать, а потом конвертнуть обратно в VCF. Но может есть другие способы.

А как вы редактируете VCF файлы?

Kroz
()

Firefox, из CLI сделать refresh, достать загруженную страницу

 

Привет

Когда-то был для Firefox плагин remote-control, который открывал порт (например, 1234), и позволял удаленно запускать JavaScript команды и доставать значения переменных. Например, из CLI можно было на порт 1234 отправить document.body.innerHTML; и получить содержимое страницы, а отправив на порт 1234 window.location.reload(); можно можно было инициировать refresh страницы.

А потом у Firefox изменили API...

Подскажите, а сейчас есть у Firefox (или Chrome) подобный плагин?

Kroz
()

Как избавться от (python) pdb?

 ,

Привет

В последнее время при падении питоновской программы (как я понял), запускается некий pdb и просит что-то ввести. Проблема в том, что это тормозит всю установку emerge, и требует ручного вмешательства.

Как избавиться от pdb?

Пример:

$ emerge --unmerge noto-cjk
 * This action can remove important packages! In order to be safer, use
 * `emerge -pv --depclean <atom>` to check for reverse dependencies before
 * removing packages.

 media-fonts/noto-cjk
    selected: 20150615
   protected: none
     omitted: none

All selected packages: =media-fonts/noto-cjk-20150615

>>> 'Selected' packages are slated for removal.
>>> 'Protected' and 'omitted' packages will not be removed.

>>> Waiting 5 seconds before starting...
>>> (Control-C to abort)...
>>> Unmerging in: 5 4 3 2 1
>>> Unmerging (1 of 1) media-fonts/noto-cjk-20150615...

...

--Return--
> /usr/lib64/python3.6/site-packages/portage/util/_eventloop/asyncio_event_loop.py(76)_internal_caller_exception_handler()->None
-> pdb.set_trace()
(Pdb)

Kroz
()

Ресурсы для подготовки к сертификациям

 , , , ,

С наступающим!

Посоветуйте годные сайты на которых можно брать инфу для подготовки к разного рода сертификациям - CCNA, ITIL, Red Hat и т. п.

Kroz
()

Как вы называете переменные и не только?

 ,

Привет

Есть ли у вас правила именования переменных и не только для следующих кейсов?

Case 1. Предположим есть некие объекты. Есть функция, которая должна что-то сделать с объектом, например вызываем её вот так: fn(obj). Как понять, аргумент функции - сам объект, указатель на объект, или индекс объекта в каком-то массиве? А как на счет массива индексов? Я понимаю, что можно посмотреть объявление obj (в тех языках, где оно есть), но если это посредине кода, то хочется как-то понять из имени: облегчило бы чтение кода. Думал про obj/iObj/pObj или obj/obj_i/obj_ptr, но может есть лучшие идеи?

Case 2. Функция-член класса. Как по имени различить локальные переменные, глобальные переменные, переменные-члены класса?

Case 3. У вас есть правила именования, которые бы по имени позволяли различать переменную, тип, класс, функциу, макрос и т. п? Я пока переменные называю с маленькой буквы, функции - с большой, макросы - все большие, а вот типы/классы пока называют TType и CClass, но у многих это вызывает отвращение. Варианты получше есть?

Kroz
()

Автоматические парсеры резюме

 , ,

Привет

Слышал что сейчас во многих компаниях резюме сначала попадают на автоматические парсеры как первый фильтр, а только потом HR'у на стол.

Есть где-то онлайн парсеры, чтобы проверить свое резюме, увидеть что машина там видит?

Kroz
()

Последовательно склеить две директории

 , , ,

Привет

Есть временный каталог на tmpfs (/mnt/ramdisk) и каталог на HDD (/mnt/tmp). Хочу чтобы данные записывались в ramdisk, и, только если там закончится место, чтобы писалось в tmp. То есть последовательно склеить две директории. Так возможно? Если да - как?

Шальные мысли:
- LVM группы?
- Может overlayfs что-то такое умеет?
- RAID?

Kroz
()

vim: не работают двухбуквенные комбинации в normal mode

 

Привет

Команда:

:if (exists("w:test")) | echo "Yes" | unlet w:test | else | echo "No" | let w:test=1 | endif
Маппинг:
:nnoremap z/ :if (exists("w:test")) \| echo "Yes" \| unlet w:test \| else \| echo "No" \| let w:test=1 \| endif<CR>
Команда работает. А вот по нажатию z/ ничего не происходит.
Что я делаю не так?

Kroz
()

(grub2) os-prober генерит нерабочий LVM конфиг: я чего-то не знаю или всем пофиг?

 ,

Привет

Сравниваю блоки grub.cfg относящиеся к разделу на LVM. Один блок сгенерен на операционке на этой lvm партиции (и, соответственно, os-prober тут не причем), а другой сгенерен на операционке на другой партиции (соответственно, работал os-prober). Разница существенная. Кроме того, насколько я вижу, блок сгенеренный os-prober'ом вообще не рабочий, так как пытается грузиться с /dev/dm-0 ; поправьте меня, но по-моему это не то же самое что и /dev/mapper/vg11-gentoo11 .

Я что-то не так делаю, или всем настолько пофиг, что os-prober неверно генерит конфиг LVM?

«Родной» конфиг:

menuentry 'Gentoo GNU/Linux LVM' --class gentoo --class gnu-linux --class gnu --class os $menuentry_id_option 'gnulinux-simple-aa0ab174-09de-4906-a13d-14ef562b0051' {
    load_video
    if [ "x$grub_platform" = xefi ];   then
	    set gfxpayload=keep
    fi
    insmod gzio
    insmod part_msdos
    insmod lvm
    insmod ext2
    set root='lvmid/va7oBN-23P2-2Sbv-JLwF-VZ4t-mYjh-wKAEQ7/aBGas0-Wttn-Uz5x-LxFe-hpwa-gKL3-Ay9I20'
    if [ x$feature_platform_search_hint = xy ]; then
       search --no-floppy --fs-uuid --set=root --hint='lvmid/va7oBN-23P2-2Sbv-JLwF-VZ4t-mYjh-wKAEQ7/aBGas0-Wttn-Uz5x-LxFe-hpwa-gKL3-Ay9I20'  aa0ab174-09de-4906-a1
    else
      search --no-floppy --fs-uuid --set=root aa0ab174-09de-4906-a13d-14ef562b0051
    fi
    echo    'Loading Linux 4.9.76-gentoo-r1-lix-k19 ...'
    linux   /boot/vmlinuz-4.9.76-gentoo-r1-lix-k19 root=/dev/mapper/vg11-gentoo11 ro consoleblank=0 loglevel=4 splash=silentonly,theme:natural_gentoo CONSOLE=/dev/tty1 5
    echo    'Loading initial ramdisk ...'
    initrd  /boot/initramfs-custom.cpio.gz
}

os-prober:
menuentry 'Gentoo Base System release 2.4.1 (on /dev/mapper/vg11-gentoo11)' --class gentoo --class gnu-linux --class gnu --class os $menuentry_id_option 'osprober-gnulinux-simple-aa0ab174-09de-4906-a13d-14ef562b0051' {
    insmod part_msdos
    insmod lvm
    insmod ext2
    set root='lvmid/va7oBN-23P2-2Sbv-JLwF-VZ4t-mYjh-wKAEQ7/aBGas0-Wttn-Uz5x-LxFe-hpwa-gKL3-Ay9I20'
    if [ x$feature_platform_search_hint = xy ]; then
      search --no-floppy --fs-uuid --set=root --hint='lvmid/va7oBN-23P2-2Sbv-JLwF-VZ4t-mYjh-wKAEQ7/aBGas0-Wttn-Uz5x-LxFe-hpwa-gKL3-Ay9I20'  aa0ab174-09de-4906-a13d-14ef562b0051
    else
      search --no-floppy --fs-uuid --set=root aa0ab174-09de-4906-a13d-14ef562b0051
    fi
    linux /boot/vmlinuz-4.9.76-gentoo-r1-lix-k19 root=/dev/dm-0
}

Kroz
()

Регулярное выражение grep: содержит bcd и не содержит bcde - одной регуляркой

 , ,

Привет

Помогите, плиз, написать регуляркe для grep.
Важно: два grep'а и/или grep -v не предлагать.
Допустимо: grep -P - Perl-compatible regular expression (PCRE)

Условие: содержит bcd и не содержит bcde
Аналог с двумя grep'ами:

grep -P 'bcd' <<<"abcdefghij" | grep -P '^((?!bcde).)*$'
Тесткейсы:
grep '???' <<<"abcdefghij" -> ""
grep '???' <<<"abcd_efghij" -> "abcd_efghij"
grep '???' <<<"abcd_efghijbcde" -> ""
grep '???' <<<"bcdeabcd_efghij" -> ""

Спасибо.

Kroz
()

Музыка: возрождение классических инструментов в современной музыка

 ,

Привет

Фортепиано, скрипки, виолончели у меня всегда однозначно ассоциировались с Бахом, Бетховеном, Моцартом и другой классикой. Классика - это хорошо, пафосно, возвышенно. Но, иногда хочется чего-то менее нафталинистого.

Пошерстив по Youtube'ам с удивлением обнаружил, что классические инструменты могут звучать современно. Примеры ниже, но вопрос/просьба сразу:

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

Исполнение Metallica, Scorpions и т. п. в аранжировке с оркестром не предлагать: уж очень банально.

Вот примеры чего хочу.

2Cellos - уже, думаю, многие знают. Ребята очень современно играют на виолончелях. Например Mombasa - хороший пример современного стиля игры на классическом инструменте: во времена Моцарта и Баха так не играли. Highway To Hell - да, рок-классика, но звучит по-другому и классно: я бы поставил такое себе в плеер.

William Joseph офигительно играет Radioactive в даб-степовой аранжировке. Или вот еще классический Miserlou со скрипками как звучит: совсем по-другому в сравнении с оригиналом.

Lindsey Stirling - скрипка + дабстеп: Crystallize, Shadows

И открытие года - Darius Havasi - фортепиано + барабан. Это нужно просто видеть и слышать: Duel, Freedom, Prelude | Age of Heroes

Есть еще что-то подобное?

Kroz
()

Установка приложений на очень старый Gentoo

 , ,

Привет.

Вцелом концепция «Установил Gentoo - забыл на X лет» показывает себя успешной, за исключением парочки приложений таких как браузеры и Skype. Отсюда вопрос/кейс: как установить браузер на очень старую систему?

Навскидку в голову приходит использования либо пакетов AppImage/Snappy/Flatpak, либо контейнеров Docker/LXC/...

Какие плюсы/минусы контейнеров/пакетов для данного кейса?
Какие есть альтернативы?

Kroz
()

RSS подписка на новые темы