LINUX.ORG.RU

Сообщения xperious

 

bash нуб

Форум — General
#!/bin/bash
set +e

str="123"

function foo1()
{
    VAR1=500
    if (($VAR1 < 100)); then
        VAR1=100
    else
        VAR1=$(($VAR1/2))
    fi
    return $VAR1
}

if [ -z str ]; then
    VAR2=100
else
    VAR2=$(foo1 $str)
fi

echo "$VAR2"
# ... somethin else used VAR2

можете смело закидывать помидорами, но реально не могу понять почему VAR2 теряется. Как поправить чтобы VAR2 инициализировался 250 и можно было использовать?

 ,

xperious
()

странный спинлок

Форум — Development

здравствуйте, в одной из реализаций стандартных библиотек си встретил следующую реализацию спинлока:

int pthread_spin_lock(pthread_spinlock_t *s)
{
	while (*(volatile int *)s || a_cas(s, 0, EBUSY)) a_spin();
	return 0;
}

static void a_spin()
{
	volatile int tmp = 0;
	a_cas(&tmp, 0, 0);
}

что делает a_spin? что за магия

 , ,

xperious
()

бесконечная запись двух стримов в один файл

Форум — General

Здравствуйте. Есть два файла разной длительности по времени... Из одного выдираем только видео, транскодируем в другой формат; из второго - только аудио и транскодируем в другой формат. В итоге эти два стрима мультиплицируем в выходной файл. Хочется, чтобы по окончанию файлов, они прогонялись заново, т.е бесконечно это делалось. В следующей команде стримы останавливаются: сначала один прекращается, потом другой.

ffmpeg 	-threads 2 \
		-stream_loop -1 -re -i input1.flv \
		-stream_loop -1 -re -i input2.ogg \
                -c:v libx264 -preset fast -pix_fmt yuv420p \
		-c:a aac -ar 44100 \
		-map 0:v -map 1:a \
		output.mp4

В чем ошибка?

 ,

xperious
()

дернуть из контейнера другой контейнер

Форум — General

есть хост. на нем образ1 и образ2. Заускаю контейнер образа1 в интерактивном режиме. Могу ли я из этого контейнера каким-то образом запустить на хостовой машине контейнер образа2? честно говоря, ничего не смог нагуглить

 ,

xperious
()

приаттачиться консолью к запущенному докер-образу

Форум — General

В общем, запустил контейнер с выхлопом в консоль. Назовем ее «основной». Все работает, отлично.

Есть ли способ «приаттачиться» к контейнеру из другой консоли(или даже эмулятора терминала), чтобы выполнять в этой «приаттаченной» консоли команды, которые не будут дублироваться на основной? Ну в смысле docker attach не подходит т.к. как раз происходит то самое «дублирование» команд. Честно говоря такой простой кейс, а меня вогнал в ступор

 ,

xperious
()

не компилируется портянка

Форум — General

Здравствуйте, что-то подвис на компиляции такого... подскажите, как поправить

template< int in1, int in2, typename FinalT,
		  int (FinalT::*WrapperImpl)(double const& arg1, double const& arg2, double& arg3)>
static int func_impl(int* self, double const& arg1, double const& arg2, double& arg3, bool in)
{
    return 1;
}

template< int in1, int in2, typename FinalT,
		  int (FinalT::*WrapperImpl)(double const& in_frame_info, double const& in_frame, double& out_frame_info)>
static int func(int* self, double const& arg1, double const& arg2, double& arg3)
{
    return func_impl< in1, in2, typename FinalT,
		      int (FinalT::*WrapperImpl)(double const& arg1, double const& arg2, double& arg3)>
	(self, arg1, arg2, arg3, false);
}

 

xperious
()

результаты автотестов по почте

Форум — General

Здравствуйте, есть набор python-скриптов… Есть дженкинс, который запускает эти python-скрипты(фактически, автотесты). Нужно как-то связать результаты выполнения этих тестов (failed или не failed) с посылкой почты определенным людям. Понимаю, что можно написать самому скриптик отправки на почту результатов, но мне кажется, что сейчас так никто не делает.

  1. Можно ли как-то сделать это через дженкинс?
  2. Можно ли скармливать дженкинсу какой-то файл результатов? Если да, то что за формат такого файла? Или хотя бы что погуглить
  3. Как в go такие вещи бы решались? Чисто ради расширения кругозора

Гуглить пробовал, но, честно говоря, от обилия инфы глаза разбегаются: много воды, и сути практически нигде нету. Помогите…

 , , , ,

xperious
()

Забивается раздел диска

Форум — General

здравствуйте, сделал дефолтную разбивку диска с usb-live... получилось так:

df -h:
udev                           12G            0   12G            0% /dev
tmpfs                         2,4G         9,2M  2,4G            1% /run
/dev/mapper/debian--vg-root    28G          26G     0          100% /
tmpfs                          12G         223M   12G            2% /dev/shm
tmpfs                         5,0M         4,0K  5,0M            1% /run/lock
tmpfs                          12G            0   12G            0% /sys/fs/cgroup
/dev/sdb2                     237M          37M  188M           17% /boot
/dev/sdb1                     511M          27M  485M            6% /boot/efi
/dev/mapper/debian--vg-home   422G          53G  348G           14% /home
жил какое-то время, но с сегодняшнего дня начал получать
X session: warning: unable to write to /tmp
при логине в иксах. Ну, очевидно, что памяти не хватает... Мягко говоря, не силен в tmpfs и т.д. Подскажите что можно сделать сейчас чтобы стабильно(а не временно) проблему решить?

 

xperious
()

где найти docker образ debian stretch

Форум — General

не разносите пожалуйста неофита, но на полном серьезе не могу найти как скачать именно образ debian 9… лазание по docker search или ручной поиск на hub.docker.com ничего не дали

 ,

xperious
()

Смена ip-адреса сайта

Форум — General

Чисто задумался: предположим, выделен ip-адрес моей веб-службе, которя в облаке, например, запущена... у клиента есть соединение с ним(браузер, например). Поменялся ip-адрес(он же не фиксированный, а берется из пула) - и, соответственно, connection грохается самым плохим образом. Допустим, через эту службу скачивался файл 100Гб в момент смены ip-шника. И все, кирдык, либо должны быть реализованы какие-то механизмы «докачки» на клиенте. Есть ли какое-то общепринятое название у проблемы о смене ip-адреса во время передачи данных?

 ,

xperious
()

синхронизация содержимого папок на разных машинах

Форум — General

здравствуйте, предположим, скачиваю я какой-то контент в определенную директори. хочу чтобы:

1) автоматом это же появилось на нескольких других машинах(в моем случае, виртуальных) в своих директориях.

2) при изменении содержимого в одной из машин - автоматически изменения выкатывались и на других машинах, в том числе и на хосте

есть ли какая-то несложная софтина для таких целей, а-ля rsync(он же вроде так не умеет)?

 ,

xperious
()

изменение настроек энкодера on-fly

Форум — Development

здравствуйте, при кодировании с помощью libx264 хочу на лету менять битрейт... подскажите, кто-нибудь пользовался методом

X264_API int x264_encoder_reconfig( x264_t *, x264_param_t * );
если да, то он корректный вообще?

 , ,

xperious
()

странное поведение при dhcp

Форум — General

Здравствуйте... у нас в конторе есть рабочая подсеть 10.0.200...

dhcp присвоил мне 10.0.0.161. Вроде все нормально - почта работает, гит доступен, другими участниками сети моя машина пингуется.

Однако есть проблема: поднимаю у себя на машине виртуалку с сетевым мостом, ее ip 10.0.0.202; ее могу пропинговать со своей машины, однако с других машин ее не видно. В чем может быть проблема?

 , ,

xperious
()

NAT в понимании дилетанта

Форум — General

здравствуйте, просьба тех, кто давно занимается сетями, не смеяться.

Рассмотрим упрощенную схему. Я человек, с домашним ПК... предположим, сижу я в социальной сети... элементарным нажатием мыши, отправляю простой get-запрос на какой-то сайт... компьютер подключен через роутер, соответственно 80 порт, с которого браузер посылает запрос, транслируется в какой-то дугой на роутере(а роутер заносит это в таблицу). соответственно, последующие роутеры и маршрутизаторы делают то же самое... если сделать traceroute vk.com, то выдает следующее:

traceroute to vk.com (87.240.182.224), 30 hops max, 60 byte packets
 1  192.168.42.129 (192.168.42.129)  0.356 ms  0.379 ms  0.469 ms
 2  192.168.0.1 (192.168.0.1)  4.298 ms  5.855 ms  5.944 ms
 3  81.177.114.61 (81.177.114.61)  10.665 ms  10.829 ms  10.743 ms
 4  81.177.114.60 (81.177.114.60)  9.735 ms  9.771 ms  9.886 ms
 5  188.254.2.0 (188.254.2.0)  36.507 ms  36.478 ms  37.119 ms
 6  * * *
 7  * * *
 8  * * *
 9  * * *
10  * * *
11  * * *
12  * * *
13  * * *
14  * * *
15  * * *
16  * * *
17  * * *
18  * * *
19  * * *
20  * * *
21  * * *
22  * * *
23  * * *
24  * * *
25  * * *
26  * * *
27  * * *
28  * * *
29  * * *
30  * * *
т.е. мой get-запрос(точнее tcp-пакет), проходит, я полагаю, с десяток, как минимум, устройств принадлежащих моему провайдеру... и у каждого из используется NAT... в итоге все упирается в последнее устройство моего провайдера, которое далее уже контактирует с устройствами дата-центра, где лежит сайт. Меня мучает следующая мысль: пакетов, которые посылает моя машина на внешний интерфейс, десятки... таких как я у провайдера сотни тысяч пользователей. Поэтому для конечного устройства эти транслирования адресов выполняются сотнями миллионов в секунду.

Посему вопрос: реально ли это последнее устройство провайдера справляется с такой нагрузкой, или я неправильно представляю себе весь процесс?

второй вопрос: правильно ли я понимаю, что в выхлопе traceroute я, теоретически, обязательно мог бы увидеть свой белый ip(это самое конечное устройство провайдера) если б печатались все узлы?( а не три звезды вместо них)

 , ,

xperious
()

смартфон как usb-модем на debian

Форум — General

здравствуйте, ни разу с этим не связывался... в итоге есть небольшой мануал https://wiki.archlinux.org/index.php/Android_tethering_(%D0%A0%D1%83%D1%81%D1%81%D0%BA%D0%B8%D0%B9) насколько это актуально? может сейчас можно сделать все проще.

 , ,

xperious
()

время выполнения == нагрузка на процессор?

Форум — General

одна программа стала много потреблять цпу... поисследовал ее с помощью perf... в итоге выдается статистика в процентах. Что это за проценты: время, затраченное на функцию, от общего времени снятия метрики или нагрузка процессора на эту функцию?

и вообще впервые задумался о вопросе: а, например, в утилите htop использование процент использования cpu каким-либо процессом будет ли равно проценту времени, потраченного на этот процесс процессором?

 , ,

xperious
()

подача на вход ffmpeg разжатых фреймов

Форум — General

здравствуйте, я новичок в ffmpeg... подскажите, а можно ли на вход ffmpeg подавать потоковое сырое видео через shared memory?

1) ну, допустим, есть у меня поток с веб-камеры(он ведь вроде raw-фреймами является), можно ли подавать его на ffmpeg для того, чтоб ffmpeg его кодировал и записывал в файл?

2) есть у меня свое приложение, на выходе которого есть raw-фреймы... можно ли их как-то подавать на вход ffmpeg? в идеале через shared memory

 ,

xperious
()

конвертация rgb32 в yuv420

Форум — General

здравствуйте, в каждом пикселе формата rgb32, присутствует альфа-канал, посему вопрос: можно ли валидно конвертировать rgb32 в yuv420p, или только обязательно в yuva420?

 , ,

xperious
()

с помощью какой ide вы исследуете исходники c/c++ библиотек?

Форум — General

здравствуйте, надоело grep-пать исходники на поиск реализации и т.д. чем вы предпочитаете открывать исходники? ну, имеется ввиду, если у проекта система сборки cmake, то проект отлично открывается qtcreator-ом с соответствующими плюшками современных ide... другое дело, если проект старый и на autoconfig... то чем его можно открыть?

 , ,

xperious
()

исключить зависимость из макросов debhelper

Форум — General

здравствуйте, есть кусок debian/control

Depends: ${misc:Depends}
, который в итоге раскрывается в список, в ктором фигурирует libstdc++ какой-то версии... можно ли что-то сделать, чтобы libstdc++ не требовалась после раскрытия макроса?

 , ,

xperious
()

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