LINUX.ORG.RU

Избранные сообщения router

Есть сейчас что-то со встраиваемым Linux и GPIO дешевле, чем первая Rasberry Pi?

 arduino yún, , intel galileo,

Собственно, сабж.

Intel Galileo пока цену имеет кусачую, чтобы ставить его в каждый угол. Cubieboard/Cubietrack тоже дорогие. Arduino Yún (хотя и шилд, но полноценный Linux-комп) имеет цену сравнимую с «Малинкой», но имеет как плюсы, так и минусы в сравнении с ней.

Есть ещё что-то?

KRoN73
()

Как поднять сервер Quake 1?

 ,

Именно Quake, а не QuakeWorld.
Пробовал этим способом: http://kauler.com/games/quake1/, не получилось, требует неведомый libvga.so.1. Дистрибутив Centos 6 x86_64.

weracri
()

Про эльфов, орков, Мордор и Темнейшего

 орки,

«Кстати у господина Толкина именно так, вопрос мотивов и возможной правоты орков не рассматривается в принципе» (c) vurdalak

А вот чего бы такого почитать чтобы было наоборот? Эльфы - светлые, умные, добрые, но абсолютно неправы, а орки - грязные уроды, но несут свет исторической справедливости (как в принципе и есть на самом деле)? Или еще лучше - и эльфы, и орки - просто уроды воюющие за территорию?

И нет, это не танцпол :)

drull
()

Отказоустойчивый iSCSI

 , ,

День добрый!

У меня такое дело, нужно поверх тестового Ceph сконструировать тестовый же отказоустойчивый iSCSI. Подскажите, как это делается в современном мире. В прочитанном обычно описываются drbd (ну это неважно) и два таргета, либо с heartbeat (устарел), либо с pacemaker+corosync. Вопросы возникли такие:

Если pacemaker, то его вроде надо сильно изучать и прикручивать проверки 'ресурсов', по которым он понимает, что его партнёр упал? Это затратно по времени? Это единственный механизм кластеризации, может, есть что-то нативное в самом iscsi? Максимальная производительность или очвысокая надёжность на время тестов мне не нужны, нужно просто посмотреть, что конструкция будет работать при гибели одного из таргетов.

Второе, неожиданно мало в этом контексте пишут про multipath. Это плохое решение? Чем чревато его использование вместо кластеризации?

muon
()

Чем можно распаковать дамп IP пакета

 ,

Подскажите программу с помощью которой можно распаковать дамп IP пакета (протокол ICMP),дамп представлен в виде текстового файла с hex кодами.Данный пакет выплевывает маршрутизатор перед преждевременным распадом маршрута Udp пакета.

BlackJack
()

Яндекс расскажет, как лучше готовить бэкапы PostgreSQL

 , ,

Группа Конференции и встречи

Год назад Владимир Бородин из Яндекс.Почты на meetup-встрече #PostgreSQLRussia представил доклад о миграции с Oracle на PostgreSQL.

Сейчас уже стало очевидно, что PostgreSQL используется в Яндексе всё более и более активно, завоёвывая репутацию надёжной и качественной СУБД (например, Постгрес используется в Яндекс.Маркете http://www.slideshare.net/samokhvalov/postgresqlrussia-20150915-oracle-postgr...).

14 октября meetup-встреча #PostgreSQLRussia снова состоится в компании Яндекс. На этот раз Владимир расскажет о том, как устроено хранение данных на диске и организован WAL в PostgreSQL, какие есть средства для резервного копирования и восстановления. Как, используя некоторые их них, не бояться потерять данные и почему PostgreSQL славится своей надёжностью.

Кроме этого, по традиции, на встрече будет представлено несколько докладов-молний.

Мероприятие бесплатное, количество мест ограничено, требуется регистрация.

>>> Присоединиться к #PostgreSQLRussia (meetup.com)

postgresmen
()

Доливание дистиллированной воды, есть истории успеха?

 , , упс

В тырнете пишут что можно попробовать долить в каждую банку аккумулятора от упс по 3 мл. дистиллированной, или от снега, воды. И после этого он, возможно, снова станет живее всех живых. Есть истории успеха?

Napilnik
()

2nd factor auth for ssh

 ,

Всем привет.

Хочу приделать многофакторную авторизацию для ssh. Кто-нить уже пробовал? Какие сервисы использовались? Какие подводные камни были?

true_admin
()

Майки / толстовки с символикой linux.org.ru?

 ,

Помню как-то пилил тута дизайн логотипа на майки или байки. Не хотите возродить?

int13h
()

Matrix - открытый и свободный IM-протокол как замена Skype/Viber/etc

 , , , ,

Познакомился я с ним недавно по наводке местных евангелистов и под впечатлением сочинил небольшой спич с видеодемонстрацией почему он круче, быстрее и сильнее остальных. Проект пока в бете, но текстовые чаты и аудио/видео звонки работают уже сейчас. Из главных плюсов - полная открытость как серверной так и клиентской части (не надо торговать своими персональными данными), мультилогин, синхронизация истории, WebRTC. Существуют клиенты под Linux, Android и другие ОС. В Matrix также существует lor и ru-комьюнити.

Enjoy!

Deleted
()

monit и SIGSTOP/SIGCONT

 , sigcont, sigstop,

Хочется (как пример, список задач шире) замораживать updatedb.mlocate при LA > 6 и запускать снова при LA<4. Использую для этого monit с таким конфигом:

check process updatedb
    matching "updatedb.mlocate"
    start program = "/usr/bin/killall -q -SIGCONT updatedb.mlocate"
    stop program  = "/usr/bin/killall -q -SIGSTOP updatedb.mlocate"
    if loadavg(1min) greater than 6 then stop
    if loadavg(1min) less than 4 then start

В результате при первом же замораживании он ругается, что «'updatedb' failed to stop» и больше процесс не отслеживает (не пытается разморозить при падении LA).

Как с этим бороться, есть специалисты?

KRoN73
()

А расскажите про пылесосы с циклоном

 ,

а то в интернете реклама + срач мешковиков vs циклонщиков

основных вопроса два:

- стоит ли связываться

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

Ну и можно ссылку на сайтик (не ютуб блин!) где можно почитать и посмотреть фотки унутренностей

Deleted
()

Kvm vga passthrough: вернуть хосту видеокарту

 , , ,

Пробрасываю карту:

echo 0000:01:00.0 > /sys/bus/pci/drivers/radeon/unbind
echo 0000:01:00.0 > /sys/bus/pci/drivers/vfio-pci/bind

стартую qemu:

qemu-system-x86_64 -hda image.qcow -enable-kvm -m 2048 -cpu host -device vfio-pci,host=01:00.0,x-vga=on -vga none

останавливаю qemu:

system_powerdown

пытаюсь вернуть:

echo 0000:01:00.0 > /sys/bus/pci/drivers/vfio-pci/unbind
echo 0000:01:00.0 > /sys/bus/pci/drivers/radeon/bind

запускаю на возвращенной карте иксы:

startx -- -config xorg.conf.secondary

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

radeon-pci-0100
Adapter: PCI adapter
temp1:         -1.0°C  (crit =  +0.0°C, hyst =  +0.0°C)

что нужно сделать, чтобы можно было после остановки ВМ снова полноценно использовать проброшенную видеокарту на хосте?

Ower
()

Второй выпуск «Вестника I2P»

 

Группа Безопасность

Вестник I2P — свободно издающаяся методом электронной публикации газета, посвящённая сети I2P. Пропагандирует использование I2P для ухода от неправомерного сбора информации правительственными и коммерческими организациями и в целях свободного некоммерческого обмена информацией без ограничений.

В этом номере:

( читать дальше... )

Первый выпуск можно найти тут

>>> Загрузить PDF (rghost.ru)

vurdalak
()

Зеркалирование трафика м интерфейса через инет

 ,

Подскажите способ как зеркалировать трафик (или часть трафика, нарпимер правилами tcpdump) с локального сетевого интерфейса, на сетевой интерфейс удаленной машины?

Siado
()

программа электронного документооборота

 ,

Доброго времени уважаемые форумчане! на предприятии поставили задачу создать электронный документооборот, который должен выполнять следующие задачи:

1. отслеживание документооборота

2. постановка и планирование задачи

3. построение графиков выполнения поставленной задачи

4. электронная почта и адресная книга.

давным давно мне попадались программы под подобные задачи, но к сожалению, название программ уже вспомнить не могу. задача выглядит следующим образом: есть предприятие с кучей отделов, начальник ставит задачю какому нибудь отделу, сотрудники отдела должны получить задание, начальник так же хочет отслеживать когда началась работа над заданием и когда она закончилась( в том числе и в графическом видже, ну скажем какую нибудь диграмку). если утрировано то, начальник ставит задачу купить материалы, сотрудник приступил к выполнению в такое то время, но в процессе выполнения выяснилось, что каких то материалов в магазине нет. сотрудник пишит, что купил почти всё, а в замен отсутсвующего ему предложили аналоги. и т.д. необходимо что бы программа работала на локальном сервере, а все содрудники работали с программой через web интерфейс. в программе должен быть встроен почтовый клиент и адресная книга. кто что подскажет?

Evgen25
()

Manul - антивирус для сайтов от Яндекса

 ,

Группа Open Source

Компания Яндекс представляет новый инструмент для вебмастеров - антивирус «Manul». Это утилита, которая поможет вебмастеру понять, что произошло с сайтом и вылечить его.

Антивирус помещается в корневой каталог сайта, дальнейшая работа ведётся через браузер. Доступа к паролям приложение не требует, все производимые с файлами действия контролирует и подтверждает владелец сайта. По окончании работы формируется отчёт в формате XML, для работы с которым предназначен анализатор логов, в свою очередь генерирущий скрипт для удаления файлов антивирусом или для помещения его в карантин. Исполнить этот скрипт можно, открыв Manul и перейдя на вкладку «Лечение». Для работы требуется версия PHP не ниже 5.2 и наличие в ней модулей ZipArchive, DOM и XML. Также Manul потребуется доступ на чтение web_root/public_html каталога виртуального хоста.

Исходный код проекта доступен на GitHub под лицензией BSD.

>>> Подробности (habrahabr.ru)

Valkeru
()

Оптимизация nginx: 200k... 150k... 5k... 1k... wordpress... :D

 , ,

ощщем, ЛОР, пилю очередной тупняк, проходи мимо.

бенчмарк

ab -n 100000 -c 100 -k -H "Accept-Encoding: gzip, deflate" localhost/ 2>&1 | egrep "^(Failed|Requests)"

процессор Pentium G3258 с разгоном до 3.9GHz, остальное не важно. хотите пофапать на хай-лоад?

значит к делу. вот такой конфиг, (сервер _) отлавливает все запросы, которые не подходят под другие хосты.

server {
  listen 80;
  server_name _;

  location = /_.gif {
    empty_gif;
  }
}

ab localhost/_.gif выдаст вам результат в 200000 (двести тысяч!) запросов в секунду. empty_gif это модуль, поэтому такой быстрый.

к сожалению, со статикой картина чуть более печальна. ab localhost/index.html (файлик, что идет вместе с nginx'ом), сообщает о выполнении 125000 тире 150000 запросов в секунду, что тоже не так плохо. то есть, берете свой проект, оборачиваете всю динамику в fastcgi_cache, дабы nginx кэшировал запросы в статику и получаете очень быстрый сайт, мягко говоря.

рецепт успеха

worker_processes 4;
worker_priority -5;

worker_rlimit_nofile 9000;

timer_resolution 100ms;

events {
  use epoll;

  worker_connections 9000;
  multi_accept on;
}

чтобы не расходовать ресурс жесткого диска, I/O, желательно отключить логи, ну или, указать buffer=, да побольше.

error_log /var/log/nginx/error.log warn;

access_log /var/log/nginx/access.log main buffer=64k;
access_log off;
log_not_found off;

очень ресурсоемкая директива

ssi on;

с ней производительность просядет до копеечных 40000 тысяч на статике и на 20% на динамике, что лучше откажитесь от нее вообще. забудьте.

gzip on;

баллада о двух стульях и матери. придется выбирать между процессорным временем и линком. ресурсоемкая операция, производительность сервера страдает на 20%, но зато пропускная способность сети может быть увеличена в 3 раза за счет сжатия трафика.

open_file_cache max=9000 inactive=20s;
open_file_cache_valid 30s;
open_file_cache_min_uses 2;
open_file_cache_errors on;

с этим думаю ясно, кэш дескрипторов файлов. нужен.

забудьте о существовании if в nginx, не злоупотребляйте location, каждый отнимает много ресурсов.

любой другой ара-тюнинг по вкусу, на самом деле получится что-то вроде экономии на спичках, так например, tcp_nodelay дает разницу всего в 1000 запросов при 200000 к _.gif (empty_gif). посему смотреть нужно строго по ситуации, конкретных советов уже не дам.

теперь от статики к динамике. обязательно установить php opcache.

# curl http://php.net/distributions/php-5.5.23.tar.xz | tar -xJ -v
# cd php-5.5.23
# ./configure --disable-all --enable-opcache
# make build-modules
# install -m 755 modules/*.so /usr/lib/php/extensions
# echo "zend_extension=opcache.so" > /etc/php/conf.d/opcache.ini

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

upstream php-fpm {
  server unix:/var/run/php5-fpm.sock0 weight=100 max_fails=5 fail_timeout=5;
  server unix:/var/run/php5-fpm.sock1 weight=100 max_fails=5 fail_timeout=5;
}
location ~ \.php$ {
  try_files $uri =404;

  fastcgi_pass php-fpm;
  fastcgi_index index.php;

  fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;
  include fastcgi_params;
}

настройка php-fpm'ов /etc/php/pool{0,1}.conf

[global]
log_level = notice
emergency_restart_threshold = 0
emergency_restart_interval = 0
process_control_timeout = 0
daemonize = yes

[pool0]
listen = /var/run/php5-fpm.sock0
listen.owner = www
listen.group = www
listen.mode = 0660

user = www
group = www

pm = static
pm.max_children = 8
pm.max_requests = 500

второй точно такой же

:%s/pool0/pool1

:%s/sock0/sock1

# /usr/sbin/php-fpm --fpm-config /etc/php/pool0.conf
# /usr/sbin/php-fpm --fpm-config /etc/php/pool1.conf
# /usr/sbin/nginx -t && /usr/sbin/nginx -s reload

а теперь получите пятикратный прирост производительности php. вот.

Spoofing
()

Кеширование на SSD

 , ,

Есть возможность поставить в ноут в дополнение к HDD ещё и SSD. Хочу извлечь из него пользу в виде свопа для гибернации и кеширующего устройства.

Вопрос как раз по последнему.

Я так понимаю, что основные разработки в этой области — это EnhanceIO и bcache. Чем они отличаются? Кто-то уже пробовал что-то из них? Какие впечатления? Что почитать? Особенно хочется реальных примеров настраивания (с командами, конфигурациями и т.п.).

Обкатанный у меня на ноуте вариант будет включен в pf-kernel.

post-factum
()

debian raid1 BOOT_DEGRADED. inird не хочет собирать массив, если отключить от машины один из дисков

 , , , ,

Доброе утро всем!

Есть debian jessie minimal. Два диска в raid1, корень на /dev/md0. С двумя дисками все Ок. Как только отключаю один из дисков - initrd не хочет собирать /dev/md0. md0 появлятеся, но пишет статус inactive, Raid level : raid0 (вместо 1). Если в консоли восстановления сделать следующее:

(initramfs) mdadm -S /dev/md0 && mdadm --assemble --scan
то массив поднимается, статус сразу active. Выглядит это так: http://postimg.org/image/ve7yolylf/ http://postimg.org/image/7gzo9jueh/ http://postimg.org/image/3qv3687cf/

Подскажите плиз, что надо прописать загрузчику и initramfs, чтобы при загрузке собирался degraded массив?

Заранее всем спасибо.

ps: Сори что повторно создал тему. Думаю, что тут более понятно все описал. Предыдущий топик: grub2 and sortware raid1 не грузится с одним диском.

pps: Вот как ставилась система

Cразу после установки стартую скрипт:

#!/bin/sh

apt-get update && apt-get upgrade && apt-get -y install dbus mc openssh-server openssh-client ntp sudo less tree apt-file htop initramfs-tools mdadm lvm2

cat <<EOF >> /etc/modules
md_mod
raid1
EOF

echo "BOOT_DEGRADED=true"  >>  /etc/initramfs-tools/conf.d/mdadm
echo "options md_mod start_ro=1 start_dirty_degraded=1"  >> /etc/modprobe.d/mdadm.conf

cp /etc/default/grub /etc/default/grub-orig

cat <<EOF > /etc/default/grub
GRUB_DEFAULT=0
GRUB_TIMEOUT=5
GRUB_DISTRIBUTOR=`lsb_release -i -s 2> /dev/null || echo Debian`
GRUB_CMDLINE_LINUX_DEFAULT="bootdegraded=true md-mod.start_dirty_degraded=1"
GRUB_CMDLINE_LINUX=""
EOF

update-initramfs -u && update-grub

grub-install /dev/sda && grub-install /dev/sdb
он ставит нужный мне софт и добавляет bootdegraded=true md-mod.start_dirty_degraded=1, обновляет initramfs и grub, ставит grub на sda и sdb (если при установке поставил не на оба).

Версия ядра и разделы:

root@vdeb:~# uname -a
Linux vdeb 3.16.0-4-amd64 #1 SMP Debian 3.16.7-ckt4-3 (2015-02-03) x86_64 GNU/Linux

root@vdeb:~# cat /etc/debian_version 
8.0

root@vdeb:~# lsblk && blkid
NAME    MAJ:MIN RM  SIZE RO TYPE  MOUNTPOINT
sda       8:0    0    8G  0 disk
└─sda1    8:1    0    8G  0 part
  └─md0   9:0    0    8G  0 raid1 /
sdb       8:16   0    8G  0 disk
└─sdb1    8:17   0    8G  0 part
  └─md0   9:0    0    8G  0 raid1 /
sr0      11:0    1 1024M  0 rom
/dev/sdb1: UUID="52f50c29-ec6f-7bb0-bc02-4771e9b459cb" UUID_SUB="310cadb9-4e97-d692-a396-aba349e53181" LABEL="vdeb:0" TYPE="linux_raid_member" PARTUUID="2945999c-01"
/dev/sda1: UUID="52f50c29-ec6f-7bb0-bc02-4771e9b459cb" UUID_SUB="6b11bf3e-d102-b8c4-c9f8-822b628ae9e1" LABEL="vdeb:0" TYPE="linux_raid_member" PARTUUID="51117c15-01"
/dev/md0: UUID="82ecf9a8-429a-44b8-bdb7-ddacb963a054" TYPE="ext4"

root@vdeb:~# grep -v ^# /etc/fstab
UUID=82ecf9a8-429a-44b8-bdb7-ddacb963a054 /               ext4    errors=remount-ro 0       1
/dev/sr0        /media/cdrom0   udf,iso9660 user,noauto     0       0

samson
()