LINUX.ORG.RU

Сообщения zolden

 

Label для VLAN интерфейса без начального адреса

Форум — Admin

Вопрос, в общем-то, по несколько нетривиальной, как оказалось, но всё-таки матчасти.
Исходные данные:
SLES11
Кластер на основе Corosync+Pacemaker
Две ноды с двумя сетевыми интерфейсами, один под управление, второй под трафик приложений, часть сетей живёт в VLAN интерфейсах

Условия задачи:
Нужно сделать плавающий IP на VLAN интерфейсе.
Так как интерфейсов много, то мне для удобства хочется на каждый адрес назначить метку (iflabel в терминах кластерного конфига, ну или раньше так IP alias назывался во времена ifconfig)
Так как адреса сети управления уже есть на каждом хосте, то выделять адреса из сети где работают приложения на хост мне видится быссмысленным.

Загадки во тьме:
Проблем не возникло с обычным интерфейсом (например bond1), нюансы попёрли в случае VLAN интерфейса - плавающий адрес не подымался с ошибкой.
Причём он подымался нормально если не назначать метку, или если предварительно назначить хосту физический адрес из этой сети. Ошибка в логах при этом следующая:

[INFO] ip -f inet addr add 192.168.77.227.41/255.255.255.224 brd 10.77.227.63 dev vlan123 label app
[ERROR] Start Failed,return 1,execute ip -f inet addr add 192.168.227.41/255.255.255.224 brd 192.168.77.227.63 dev vlan123 label app failed
В других логах видно что фейлится всё на iproute2, в консоли это воспроизвести можно так:
# ip a a 192.168.227.41/27 dev vlan123 label app
"dev" (vlan123) must match "label" (app)
Что ведёт к https://github.com/shemminger/iproute2/blob/master/ip/ipaddress.c
if (l && matches(d, l) != 0) {
fprintf(stderr, "\"dev\" (%s) must match \"label\" (%s).\n", d, l);
return -1;
}
но вопрос не о том.

В хорошем случае, когда адрес уже есть у хоста лог такой:

[INFO] ip -f inet addr add 192.168.227.41/27 brd 192.168.227.63 dev vlan123 label vlan123:app
[INFO] ip link set vlan123 up

Вопрос у меня пока следующий:
Интерфейс что с адресом, что без адреса находится в Up. Но явно есть какая-то разница, когда он находится в Up с назначенным адресом. Кластер видит эту разницу каким-то образом и назначает метку интерфейсу по разному: либо просто «app», либо «vlan123:app» В чём разница и как имитировать «поднятость» интерфейса не выделяя ему адрес? Собственно выделить не проблема, но это неспортивно.

Конфиги интерфейсов:

cat /etc/sysconfig/network/ifcfg-vlan123                                                         
STARTMODE='onboot'
ETHERDEVICE='bond1'
IPADDR=''
NETMASK=''


cat /etc/sysconfig/network/ifcfg-bond1
BOOTPROTO='static'
STARTMODE='onboot'
WIRELESS='no'
device='bond1'
IPADDR=''
NETMASK=''
BONDING_MASTER='yes'
BONDING_MODULE_OPTS='mode=1 miimon=200 use_carrier=1'
BONDING_SLAVE0='eth2'
BONDING_SLAVE1='eth3'

mky frob, router

 , , , ,

zolden
()

Суммирование полей в разных логах

Форум — General

Есть логи(пусть для упрощения будет 2), с кодом ошибки и сколько таких ошибок было, вида

Code              Number
error_code_A      123
error_code_B      345
...
error_code_Z      nnn
Хочу посчитать суммарное количество по каждой из ошибок из этих логов.
Количество строк может различаться (так как в какой-то день каких-то ошибок могло и не случаться), т.е. решение в лоб
paste file1 file2 | awk '{print $1,$2+$4}'
не работает

 

zolden
()

Вставка файла в файл

Форум — General

Возникла надысь нужда в (несколько нетривиальной для моего уровня знания sed) массовой правке конфигов. Нужно вставить порядка 20 строк (в том числе спецсимволы, переводы строк и прочее) в конфиг. Подозреваю использование переменной для хранения нового куска чревато слишком большим геморроем(хотя такой вариант мне нравится больше), поэтому видимо придётся использовать временный файл. Интересуют варианты релизации для следующих случаев: вставка в n-ю строку, вставка до/после маркера

cast emulek

 

zolden
()

Хитрый ssh алиас для кластера

Форум — General

Есть кластер из двух нод, на активной ноде соответственно есть плавающий IP.
Хочу поиметь алиас для коннекта по SSH на стендбайную ноду, да чтоб и автодополнение для него работало.
Внимание вопрос: как такое реализовать?

 ,

zolden
()

Как удалить сетевой интерфейс?

Форум — Admin

Есть несколько сетевых интерфейсов, сконфигурированных посредством
/etc/sysconfig/network/ifcfg-*
Один интерфейс нужно удалить (под удалением предлагаю понимать исчезание интерфейса из вывода ip/ifconfig)
Я удалил конфиг интерфейса, и дёрнул сеть через service network restart - не помогло.
В моём случае это надо для переделки обычного интерфейса в VLAN интерфейс или наоборот, а каждый раз перезагружать машину скучно

 , ,

zolden
()

trap в цикле

Форум — General

Есть скрипт для запуска tcpdump на многих хостах
Условно говоря

for host in hostlist
do
ssh $host tcpdump1 > dumpfile1&
ssh $host tcpdump2 > dumpfile2& done
Как надо обернуть этот цикл в trap, чтобы по нажатию Ctrl+c пройтись по списку хостов и поубивать все экземпляры tcpdump
for host in hostlist;ssh $host pkill -9 tcpdump
?

 , ,

zolden
()

Как включить русский интерфейс в Gimp?

Форум — Desktop

Kubuntu 13.10
Gimp 2.8 из репов
Системный язык - русский
Локаль - русская
Всё, бле@ть насквозь русское.

Gimp при этом английский, и в настройках интерфейса доступны только System language и English.
Гуглёж не помог, финты с сайта гимпа типа LANGUAGE=ru gimp, тоже не помогли

 ,

zolden
()

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

Форум — Desktop

Есть старый ноут с кубунтой, используемый в основном как печатная машинка.
Относительно недавно начались зависания, вот вывод dmesg

[ 2261.688680] WARNING: CPU: 0 PID: 965 at /build/buildd/linux-3.11.0/drivers/gpu/drm/i915/intel_display.c:3877 intel_modeset_check_state+0x6d0/0x760 [i915]()
[ 2261.688682] Modules linked in: usblp zram(C) joydev(F) coretemp gpio_ich dell_wmi sparse_keymap dell_laptop dcdbas bnep parport_pc(F) ppdev(F) snd_hda_codec_idt rfcomm snd_hda_codec_hdmi bluetooth uvcvideo videobuf2_vmalloc snd_hda_intel videobuf2_memops snd_hda_codec snd_usb_audio microcode(F) r852 snd_usbmidi_lib videobuf2_core lib80211_crypt_tkip sm_common snd_seq_midi(F) snd_seq_midi_event(F) snd_hwdep(F) nand videodev snd_rawmidi(F) snd_pcm(F) wl(POF) nand_ecc psmouse(F) serio_raw(F) snd_page_alloc(F) nand_bch nand_ids snd_seq(F) r592 lib80211 bch(F) snd_seq_device(F) mtd lpc_ich snd_timer(F) memstick cfg80211 snd(F) soundcore(F) mac_hid lp(F) parport(F) hid_generic usbhid hid usb_storage(F) i915 firewire_ohci i2c_algo_bit drm_kms_helper sdhci_pci firewire_core sdhci ahci(F) libahci(F) drm crc_itu_t(F) sky2 wmi video(F)
[ 2261.688729] CPU: 0 PID: 965 Comm: Xorg Tainted: PF       WC O 3.11.0-8-generic #15-Ubuntu
[ 2261.688731] Hardware name: Dell Inc. Inspiron 1525                   /0U990C, BIOS A13 06/27/2008
[ 2261.688734]  00000000 00000000 f24f7ca8 c16313e4 00000000 f24f7cd8 c105268e c1805af0
[ 2261.688739]  00000000 000003c5 f886c730 00000f25 f8830f80 f8830f80 f6524800 00000000
[ 2261.688745]  f6630ebc f24f7ce8 c1052752 00000009 00000000 f24f7d38 f8830f80 f886c730
[ 2261.688750] Call Trace:
[ 2261.688755]  [<c16313e4>] dump_stack+0x41/0x52
[ 2261.688759]  [<c105268e>] warn_slowpath_common+0x7e/0xa0
[ 2261.688781]  [<f8830f80>] ? intel_modeset_check_state+0x6d0/0x760 [i915]
[ 2261.688801]  [<f8830f80>] ? intel_modeset_check_state+0x6d0/0x760 [i915]
[ 2261.688804]  [<c1052752>] warn_slowpath_null+0x22/0x30
[ 2261.688824]  [<f8830f80>] intel_modeset_check_state+0x6d0/0x760 [i915]
[ 2261.688848]  [<f88310a0>] intel_set_mode+0x30/0x40 [i915]
[ 2261.688868]  [<f883189c>] intel_crtc_set_config+0x6fc/0x8f0 [i915]
[ 2261.688887]  [<f861027b>] drm_mode_set_config_internal+0x4b/0xc0 [drm]
[ 2261.688902]  [<f861291f>] drm_mode_setcrtc+0xdf/0x620 [drm]
[ 2261.688921]  [<f8612840>] ? drm_mode_setplane+0x400/0x400 [drm]
[ 2261.688933]  [<f8604d5a>] drm_ioctl+0x49a/0x540 [drm]
[ 2261.688951]  [<f8612840>] ? drm_mode_setplane+0x400/0x400 [drm]
[ 2261.688965]  [<f86048c0>] ? drm_copy_field+0x70/0x70 [drm]
[ 2261.688969]  [<c1179f46>] do_vfs_ioctl+0x2e6/0x4e0
[ 2261.688973]  [<c116c1d1>] ? __sb_end_write+0x31/0x70
[ 2261.688976]  [<c116a605>] ? vfs_write+0x155/0x1b0
[ 2261.688979]  [<c117a1a0>] SyS_ioctl+0x60/0x80
[ 2261.688983]  [<c163eb0d>] sysenter_do_call+0x12/0x28
[ 2261.688986] ---[ end trace 3975d9ecb6e5be9c ]---
[ 2261.694216] ------------[ cut here ]------------

Это я уже для эксперимента обновился до Kubuntu 13.10 (и, соответственно ядро с 3.8 до 3.11) но результат тот же.
Гуглёж ничего не дал, прошу совета как с этим этим жить дальше

zolden
()

Ошибка при обновлении Kubuntu до 13.10

Форум — Desktop

Вот такое вот вываливается при попытке обновления

% kubuntu-devel-release-upgrade
Fontconfig warning: «/etc/fonts/conf.d/50-user.conf», line 9: reading configurations from ~/.fonts.conf is deprecated.
Checking for a new Ubuntu release
ÐолÑÑено:1 Upgrade tool signature [198 B]
ÐолÑÑено:2 Upgrade tool [1 199 kB]
100% [Ðжидание] adept_manager: пÑоÑеÑÑ Ð½Ðµ найден
adept_updater: пÑоÑеÑÑ Ð½Ðµ найден
exitMainLoop
Error in sys.excepthook:
Traceback (most recent call last):
File «/tmp/ubuntu-release-upgrader-rgj_cu/DistUpgrade/DistUpgradeViewKDE.py», line 600, in _handleException
self.translate_widget_children(self.dialog)
AttributeError: 'DistUpgradeViewKDE' object has no attribute 'dialog'

Original exception was:
Traceback (most recent call last):
File «/tmp/ubuntu-release-upgrader-rgj_cu/saucy», line 10, in <module>
sys.exit(main())
File «/tmp/ubuntu-release-upgrader-rgj_cu/DistUpgrade/DistUpgradeMain.py», line 240, in main
save_system_state(logdir)
File «/tmp/ubuntu-release-upgrader-rgj_cu/DistUpgrade/DistUpgradeMain.py», line 133, in save_system_state
scrub_sources=True)
File «/tmp/ubuntu-release-upgrader-rgj_cu/DistUpgrade/apt_clone.py», line 149, in save_state
self._write_state_sources_list(tar, scrub_sources)
File «/tmp/ubuntu-release-upgrader-rgj_cu/DistUpgrade/apt_clone.py», line 241, in _write_state_sources_list
"./etc/apt/sources.list.d/«+source)
File »/tmp/ubuntu-release-upgrader-rgj_cu/DistUpgrade/apt_clone.py", line 252, in _add_file_to_tar_with_password_check
source_copy.write(line)
UnicodeEncodeError: 'ascii' codec can't encode characters in position 59-71: ordinal not in range(128)

Кто виноват и что делать?

 

zolden
()

Раскидать логи по каталогам в зависимости от даты

Форум — General

Есть десятки тысяч постоянно добавляющихся файлов логов с именами в виде app_id1_YYYYMMDDHHMMSS_id2 и есть каталоги вида YYYYMMDD в которые эти логи надо раскидывать для дальнейшей обработки
Файлов очень много, поэтому мучает меня любопытство о самом быстром способе сопоставления файлов по дате и перекладывании файлов в соответствующие каталоги.
Доп. ограничение: изначально файлы кладутся именно в один каталог, изменить это я не в силах.

Дополнение: Делать это нужно с минимальными задержками, то есть разбор на следующий день не подходит

 ,

zolden
()

Плеер для аудиокниг

Форум — Talks

Посоветуйте годный MP3-плеер для аудиокниг
Требования примерно такие:
- наличие экрана
- возможность ставить множественные закладки и воспроизведение с места остановки
- навигация по ФС и возможность проигрывать папки, сверхумный каталогизатор по тегам и прочим жанрам тут скорее вредит
- ну и наверно он должен быть относительно быстрым, чтобы прокручивать многочасовой файл
- лучше если подключение будет с помощью кабеля, а не встроенного USB разъёма, который увеличивает габариты

 audiobooks, ,

zolden
()

SMPlayer и Samba

Форум — Multimedia

Внезапно осознал, что SMPlayer не может играть кино с Samba шары, а, судя по всему, пытается его то ли полностью закопировать, то ли закешировать.
VLC при этих же условиях играет нормально, но не люб он мне совсем.
Гугл подсказывает про добавление «Categories=Qt;KDE» в /usr/share/applications/smplayer.desktop, но строка такая там и так есть и что-то это не помогает
Если у кого-то есть истории успеха в схожей ситуации, то скорее со мной делитесь
SMPlayer 0.8.3

 , , ,

zolden
()

grep по очень большому количеству идентификаторов

Форум — General

Маячит на горизонте задача фильтровать логи по миллионам идентификаторов.
Логи не в базе, а в файлах, обычные такие текстовый логи
Ради интереса сгененировал файл с числами от нуля до нескольких миллионов и попробовал скормить его grep'у

echo teststring | grep -f list.txt
grep ожидаемо помер (grep: память исчерпана)
Понятно, что делаться в итоге всё будет не на грепе, но у меня пока чисто спортивный интерес - можно ли решить задачу без использования компилятора

 , знает,

zolden
()

Растянуть/увеличить кнопку меню

Форум — Desktop

Кубунта
Насмотревшись гламура в скриншотах и прочих темах, сделал в KDE вертикальную панель и чуть растянул её на радость своему чувству прекрасного.
Все значки приложений автоматом заресайзились до новой ширины панели, а кнопка меню все мои изыски проигнорировала и автоматом масштабироваться не захотела, в итоге теперь висит на панели маленькой мерзкой белой вороной, в три раза уже ширины панели. Подсовывание в настройках значка побольше (128х128) не помогло отцу русской демократии.
Что делать, как исправить эту вселенскую несправедливость?

 

zolden
()

Агрегация/бондинг сквозь промежуточные свичи

Форум — Admin

Топология следующая: есть циска, есть линуксовый сервер.
Между циской и сервером стоят два L2 свича (SW1 и SW2)

    
       SW1
     /     \
Сisco       Linux
     \     /
       SW2

Всё соединено гигабитными линками.
Вопрос - можно ли в такой схеме поиметь полноценный 2гигабитный транк между циской и линуксом.
Cast mky, frob, true_admin

 , etherchannel,

zolden
()

Распаковать часть файлов в другой каталог

Форум — General

Есть затаренный образ (tar -cjPpf), надо его развернуть на других машинах
Один ньюанс - на новой машине немного поменялась структура ФС, так что примерно 5 из 200 файлов нужно распаковать в каталог, отличный от первоначального местонахождения.
Я конечно могу и руками потом всё перенести как надо, но из любви к прекрасному, всё же спрошу, есть ли вариант сделать это за один проход, средствами самого tar'а
Образно говоря нужно нечто вроде этого

tar -xf image.tar.bz2 file1 -C dir1 file2 -C dir2 <остальное распаковывать по дефолтному пути>

 

zolden
()

Сжатие текста при передаче по сети

Форум — Admin

Задача такая: перекидывать логи по сети, с одного сервера на другой, удалить переданные логи.
Сейчас это делается по ftp.
Но, так как как файлы текстовые и их много (порядка терабайта в день), то меня жаба душит по части утилизации сети.
Какие сейчас самые модные методы сжатия данных (в данном случае это простой текст, так что ожидаю многократый выигрыш по сравнению с ftp)?
В голову приходит tar + gzip+ netcat или tar + gzip + scp, но не знаю как это красиво автоматизировать, да и слишком уж это костыльно

 , ,

zolden
()

Клонирование конфигурации LVM

Форум — Admin

Есть сервер, с примонтированным по FC массивом, этот раздел маппится в несколько LV.
В скором времени планируется апгрейд сервера и нужно будет перенести всё со старого на новый.
С переносом FS у меня вопросов нет, но, не совсем понятно, как правильно перенести конфигурацию LVM, ибо не хочется пересоздавать все PV/VG/LV вручную.
План пока примерно такой: копирование образа старого сервера, выключение, подключение нового и монтирование массива, развёртывание образа на новом сервере.

 ,

zolden
()

2 одновременных tcpdump'а с удалённой машины

Форум — General

Есть нужда снимать с удалённой машины 2 tcpdump'а одновременно с разных интерфейсов.
Сейчас это реализовано так:

ssh remotehost "tcpdump -i iface1 -w - " > iface1_dump.pcap &
ssh remotehost "tcpdump -i iface2 -w - " > iface2_dump.pcap

Результат в принципе устраивает, но всё-таки мучает идеалистический такой вопрос - можно ли сделать это за один ssh коннект, чтобы минимизировать потери пакетов во втором дампе, пока будет отрабатывать второй ssh коннект.

tcpdump -i any не подходит, так как искажаются Ethernet заголовки

 

zolden
()

[zsh] Поломалось цветное автодополнение

Форум — General

Не могу понять, почему zsh перестал показывать цветное автодополнение файлов.
Простой ls раскрашивает как надо (ибо alias ls='ls --color=auto'), а если делать ls<TAB> то всё одноцветное.
Случилось это, видимо, после каких-то апдейтов кубунты, тот же самый zshrc (zstyle ':completion:*' list-colors ${(s.:.)LS_COLORS}) на сусе работает как надо, поэтому дело явно не в нём, а, возможно, в неких опциях терминала (TERM=linux)

 

zolden
()

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