LINUX.ORG.RU

Сообщения true_admin

 

быстро передать образ по сети

Надо быстро перелить образ диска по гигабитной локалке. Как? Я пока делают вот так:

cat /dev/sda | lrzip -l -p 7 | pv -r -a -p -B 1073741824 | \
ssh -c arcfour backup 'cat > /home/img/fx.img.gz'    

Недостатки: лишний cat (lrzip не хочет читать из блочных устройств напрямую), не задействованы все ядра (150% cpu жрёт при наличии 8 ядер), и нужен pv т.к. lrzip работает как-то .. рывками. Есть идеи как это можно сделать быстрее? Проц fx-8120, 16 гиг оперативы.

true_admin
()

dnsmasq как авторитативный ДНС или что-то в этом духе

Хочу странного: есть тачка с кучей виртуалок. И есть ipv6 по которому виртуалки управляются. Вот надоело с ручным прописыванием параметров париться. Хочу чтобы виртуалка тупо сообщала dhcp6-серверу свой хостнейм, а мастер-машина делала следующее:

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

2) сообщала роуты (radvd?)

3) прописывала тачку в днс в виде <hostname>.domain.org

4) по возможности куда-то складывала выданные айпишники для учёта (это не обязательно)

Как осуществить задуманное?

Я пока вижу два варианта:

1) dnsmasq + radvd + текущий ДНС-сервер на bind9 в котором можно было бы делегировать зону типа v6.domain.org на dnsmasq

2) Поставить bind10, (там, вроде, dhcp-сервер интегрирован) но как-то не хочется

 

true_admin
()

Чего вы хотите?

Сразу скажу что вряд ли это что-то изменит (нет у меня ни полномочий, ни особого желания ни времени этим заниматься). Моя мотивация простая - любопытсво. Поэтому хочу знать больше о:

1) причинах конфликтов

2) что можно сделать

3) каков теоретический максимальный результат и как мы от него далеки

Понятно что это всё субъективно и какое-либо количественное исследование крайне затруднено. Так же я понимаю что эти вопросы поднимались неоднократно (а воз и ныне там, да), пардон за повторение.

Поэтому тут вот небольшой опросничек (немного небрежно составлен, сорри). Кому не влом пожалуйста заполните. Можете добавлять свои пункты.

[] Пусть всё остаётся как есть

[] Нужны перемены!
  [] Поменять правила:
    <список того что нужно менять>
  [] сменить модераторов:
    [] вот этих:
    [] всех сменить!
  [] отменить модерирование
  [] забанить следующих пользователей: <тут список>
  [] запретить анонимусов
  [] раздельное модерирование разделов
  [] запретить луркосленг
  [] разрешить мат
  [] разрешить первонахи, решето итп
  [] разрешить нацпол в толксах
  [] запретить другое: ________
  [] разрешить следующее: ________

 Мне на лоре интересны разделы:
   [] Desktop & General
   [] Admin
   [] Development
   [] Web-development
   [] Клуб (он закрылся)
   [] раздел О сайте (linux-org-ru)
   [] толксы

 Я доволен сайтом:
   [] на 30%
   [] На 50%
   [] на 70%
   [] полностью удовлетворён (146%)
   [] Я абсолютно недоволен сайтом
       [] и скоро отсюда свалю сюда: <название другого сайта>
       [] но у уходить не собираюсь
   [] другое: ___

Помимо лора мои любимые ресурсы это: <пишите stackoverflow, ubuntu.ru, stoplinux, etc>

Ответы пишите сюда. Кто не хочет писать сюда шлите в _жаббер_ true@jabber.no . (Я пытался воспользоваться тремя анонимными почтовыми гейтами, но все три не работали).

Да, по результатам я напишу самых неугодных пользователей и популярные предложения.

PS это не тред горячей поддержки по сайту. Это опросник.

true_admin
()

как собрать минимальный qemu для kvm?

Хотел побаловаться с последним qemu, а он по-дефолту собирает кучу ненужных архитектур. А мне вообще это всё не нужно, мне нужен только qemu-kvm. Пробовал играться со списком архитектур для сборки(--target-list), если список архитектур пустой то бинарь qemu вообще не собирается. В то же время не понимаю что из этого включать:

 --target-list=LIST       set target list (default: build everything)
                           Available targets: i386-softmmu x86_64-softmmu 
                           alpha-softmmu arm-softmmu cris-softmmu lm32-softmmu 
                           m68k-softmmu microblaze-softmmu microblazeel-softmmu 
                           mips-softmmu mipsel-softmmu mips64-softmmu 
                           mips64el-softmmu or32-softmmu ppc-softmmu 
                           ppcemb-softmmu ppc64-softmmu sh4-softmmu 
                           sh4eb-softmmu sparc-softmmu sparc64-softmmu 
                           s390x-softmmu xtensa-softmmu xtensaeb-softmmu 
                           unicore32-softmmu i386-linux-user x86_64-linux-user 
                           alpha-linux-user arm-linux-user armeb-linux-user 
                           cris-linux-user m68k-linux-user 
                           microblaze-linux-user microblazeel-linux-user 
                           mips-linux-user mipsel-linux-user or32-linux-user 
                           ppc-linux-user ppc64-linux-user 
                           ppc64abi32-linux-user sh4-linux-user 
                           sh4eb-linux-user sparc-linux-user sparc64-linux-user 
                           sparc32plus-linux-user unicore32-linux-user 
                           s390x-linux-user 

x86_64-linux-user не подходит. Что указать конфигуру чтобы собралось подобие qemu-kvm? --enable-kvm уже стоит, этого мало.

 

true_admin
()

комментарии про ненужность не нужны

Сабж, так решили модераторы. Исключение: треды про mono и systemd. Шутка.

 

true_admin
()

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

Сабж.

 

true_admin
()

predictable interface names: по-моему это fail

В связи с настройкой нового сервера я испытал грабли с этими predictable names: до первой загрузки с systemd мне имя интерфейса не известно вообще (с чем я и столкнулся при настройке нового сервера из livecd в котором systemd не было). И вот тут меня осенило - а нафига это вообще нужно?

На сервере с одним интерфейсом я хочу чтобы имя было всегда eth0. Зачем мне его менять?

На сервере с несколькими сетевухами мне не нужны ни eth0, eth1, ни enp0s3, enp0s4 итп. Мне нужны int, ext, dmz итп. Т.е. осмысленные имена.

В общем, я считаю что Поттеринг зря потратил на эту фичу время. А persistent names в udev уже давно реализованы.

 , ,

true_admin
()

переброс трафика с одного хоста на другой

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

Почему вот это не работает?

iptables -t nat -A PREROUTING -p tcp --dport 80 -j DNAT --to-destination NEWIP
iptables -t nat -A POSTROUTING -p tcp --dport 80 -j MASQUERADE  
sysctl  net.ipv4.ip_forward=1            

PS основной интерфейс этого сервера бридж (если это на что-то влияет).

 

true_admin
()

раздуло образы всех виртуалок

Мне казалось что qcow2 должен круто экономить место. Поэтому я выделил как бы 30гиг под свою виртуалочку, но внутри занято гига на три-пять (щас точно не скажу, она выключена для аплоада на новый сервер).

В общем, я думал что круто экономлю место, но не тут-то было: за два года размер перевалил за 20 гиг. Та же фигня случилась и с остальными виртуалками. Я что-то неправильно делаю или ext4 пишет таким образом что qcow2 распухает? Смотрел через ls -lksh|stat на случай если qemu-img создаёт дырявые образы.

Никогда внутри виртуалки места больше чем на 5гиг не было занято. То же самое с остальными. Я теперь не знаю что делать. Наверно переливать в raw небольшого размера и потом наращивать образ и делать resize2fs по мере необходимости.

PS не пугайтесь, скоро флуд от меня прекратится. Я уже почти переехал на новый сервер...

 ,

true_admin
()

ipv6 over ipv4 за nat

Не понимаю как настроить ipv6 на динамическом ip.

вот как это у меня:

CONNECTION='tunnel'
DESCRIPTION='v6tun'

INTERFACE='he-ipv6'
MODE='sit'
REMOTE='62.205.132.12'
LOCAL='192.168.1.133'

IP6='static'
ADDR6='2a01:d0:ffff:818::2/64'
ROUTES6=('::/0')

Где 192.168.1.133 это мой локальный айпишник за роутером. На странице брокера http://tb.netassist.ua/index.php я подтвердил свой внешний ip, сверил настройки, всё без толку — ping6 google.com молчит. Что я делаю не так?

Вот дамп снифером:

# tcpdump -n -i wlan0
00:03:42.232281 IP 192.168.1.133 > 62.205.132.12: IP6 2a01:d0:ffff:818::2 > 2a00:1450:4006:801::1007: ICMP6, echo request, seq 815, length 64
00:03:42.672291 IP 192.168.1.133 > 62.205.132.12: IP6 2a01:d0:ffff:818::2 > 2a00:1450:4016:801::1012: ICMP6, echo request, seq 19, length 64
00:03:43.232327 IP 192.168.1.133 > 62.205.132.12: IP6 2a01:d0:ffff:818::2 > 2a00:1450:4006:801::1007: ICMP6, echo request, seq 816, length 64

Вот так поднимал по мануалу с сайта (да и в других местах всё примерно так же делается):

ip tunnel add netassist mode sit remote 62.205.132.12 local 192.168.1.133 ttl 200
ip link set netassist up
ip addr add 2a01:d0:ffff:818::2/64 dev netassist
ip route add ::/0 dev netassist
ip -f inet6 addr

Может как-то adsl-модем глючить? Он старый, 2005 года.

 , ,

true_admin
()

predictable interface names: узнать имя заранее

Ставлю арчик на удалённый сервер из-под rescue system. Вот встал вопрос какое имя получит сетевуха при загрузке. В rescue system она называется тупа eth0, хочу узнать какое имя будет в арче. Как?

Вот как оно в sysfs сейчас: /sys/devices/pci0000:00/0000:00:14.0/net/eth0

Судя по systemd оно будет enp0s0?

 

true_admin
()

mdraid1 на весь диск: оно потом загрузится?

Сабж. Не хочу париться с напиливанием отдельных raid1 разделов, хочу весь диск в raid1 и потом его уже напилить на разделы. Такая конфига жизнеспособна в плане загрузки? Помню что мне у меня были проблемы года четыре назад, а с чем уже не помню.

 ,

true_admin
()

C calling convention and register arguments

Я так понимаю что есть два стандартных способа вызывать C-функции: параметры через стек и параметры (частично) через регистры (fastcall).

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

UP спрашиваю потому что пишу свой недоязык с использованием llvm и там при вызове функций просят указать calling convention типа ccc, fastcc итп. Автоматом, оно, похоже, ни о чём не догадается. Что-ж, оставлю дефолт :)

 ,

true_admin
()

владельцы сервера gentoo.ru: срочно свяжитесь с датацентром

Сабж. Если кто их знает то передайте им что у них проблемы :). Если хотите чтобы сервер и дальше радовал вас своей работой свяжитесь с сами-знаете-кем.

Сорри, детали не могу разгласить. Что-то типа «сервер не проплачен».

 

true_admin
()

пристрою 1u сервер / продам сервер

Дорогие друзья,

Есть сервер (конфигурация ниже) который долгое время стоял у друзей. В конце этого месяца датацентр переезжает на новое место и больше не будет его возможности держать. Поэтому нужно его пристроить, продать/отдать или выкинуть. У меня нет цели навариться на старом железе или поставиться куда-то нахаляву. Я хочу понять есть ли шанс на вторую жизнь. Вариантов немного:

1) Найти хостинг. Мне кажется шансов мало, но вдруг у кого есть знакомые.

2) Отдать в хорошие руки.

Ситуация осложняется тем что я не в мск и не скоро там буду. Если не найду хостинг то отдам его кому-нибудь по цене 3000руб (из них 1500руб в поддержку группы Чёрный Обелиск, остальное в детский дом/благотворительную организацию по выбору покупателя). В случае отсутствия покупателей отдам даром. Не будет желающих забрать сервер даром - пойдёт на помойку. Поэтому пишите если какой-либо из вариантов заинтересует. Вопрос надо решить до конца этого месяца.

На нём крутятся: часть сайта http://mastersland.com/ (изначально он для этого и покупался), http://kliga.ru и всякая мелочёвка.

Конфига сервера:

CURRENT PARTS:
    CASE:
        RACK-1000L1R1
        ( http://www.genesysrack.ru/index.phtml?WFi=63&WFw=id=2962 )
    PSU:
        Zippy Emacs 1u P1G-6300P 300W, (+12 + +5 + +3.3 278W MAX), 90V-264V operational, ~%65 КПД, fuse 6.3A/250V, (+5V: 25A, +12V: 16A,
 +3.3V: 14A)
    INTERNALS:
        CPU:
            AMD Athlon 2 x2 240 ("Regor", 2.8Ghz, 2x1024Kb L2)
        MB:
            GF8100VM-M3 (V1.0)
                PINS(Front Panel Header):

              ___________        6-8: POWER
             + . . . .   +       5-7: RESET
             | 2 4 6 8   |       1-3: HDD LED
             | . . . . . |       2-4: POWER(MSG) LED
             | 1 3 5 7 9 |       9:   RESERVED
             +-----------+       10:  MISSING(key, no pin)

        RAM:
            4x2048 DDRII-800
        HDD:
            WDC WD10EADS-00L5B1, 01.01A01 (1000205 MB)
            WDC WD10EADS-00M2B0, 01.00A01 (1000205 MB)
            ST3750640A (750156 MB) w/16384KiB Cache, CHS=65535/255/63
    COOLERS:
        CPU:
            kam2a(propeller replaced), 519g, 106.0 x 79.0 x 10.0 (mm), fan 75*75*15(mm),
            5000 rpm 2ball, 10.489cfm, 42dBA
            actual: 5500rpm
        CHASE:
            San Ace 40 (sanyo denki 9cr0412s518), 12V 1.1A:
                plus: red, orange
                minus: gray, black
                sensor: yellow, purple
                control:  brown, white
            noname(with wrong "afb0712eh-f00 chaozifeng" sign)


Пару лет назад заменил все вентиляторы (в т.ч. в БП) на самое лучшее что нашёл на савёловском рынке. Поперечные вентиляторы, по-моему, вообще снял т.к. охлаждения с лихвой хватает даже летом, см. smart и текущие логи ниже.

Корпус суперский: очень жёсткий, даст фору многим брэндовым. Конструктивно расчитан на 3 обычных винта, хотя я когда-то находил приблуду для установки 6x2.5"hddd.

Из косяков:

1) сорвана резьба под один из винтов корпуса. Хз как так получилось, остальные в норме. Возможно, по запарке попытался вкрутить винт с другим шагом резьбы. На жёсткость не влияет.

2) один из hdd подвисает (с кучей ругани в dmesg) если к нему долго нет обращений. wdiddle не выручила поэтому я просто раз месяц добавляю его в рейд, синкаю и вынимаю обратно. Подозреваю баг прошивки.

3) одна ip-kvm раньше с этим сервером не хотела по usb работать, подключали по ps/2. Уже года два не было проблем.

4) Завис он всего один раз, пару недель назад. Так же был один ребут недели три назад. Я, честно говоря, грешу на ДЦ.

5) Салазки типичные китайские, «уши» немного выпирают сверху и снизу за положенные габариты (на пару мм). Рядом с нормальным сервером они встают, рядом с таким же китайским, не встанут.

6) БП, как видно, выдаёт плохие напряжение, но на стабильности это никак не сказывается. Всего корпус видел две или три мамки за 7 лет.

7) Больше косяков не помню, сервер «просто работает».

# ПРИМ: все винты "SMART Error Log Version: 1/No Errors Logged"
# Seek_Error_Rate на этих сегейтах нерепрезентативен и растёт со скоростью, по-моему, 100 вне зависимости от того что винт делает. Бага известная, см. гугл.

# SDA
SMART Attributes Data Structure revision number: 10
Vendor Specific SMART Attributes with Thresholds:
ID# ATTRIBUTE_NAME          FLAG     VALUE WORST THRESH TYPE      UPDATED  WHEN_FAILED RAW_VALUE
  1 Raw_Read_Error_Rate     0x000f   085   071   006    Pre-fail  Always       -       244092607
  3 Spin_Up_Time            0x0003   094   093   000    Pre-fail  Always       -       0
  4 Start_Stop_Count        0x0032   100   100   020    Old_age   Always       -       65
  5 Reallocated_Sector_Ct   0x0033   100   100   036    Pre-fail  Always       -       37
  7 Seek_Error_Rate         0x000f   068   060   030    Pre-fail  Always       -       7084185
  9 Power_On_Hours          0x0032   060   060   000    Old_age   Always       -       35203
 10 Spin_Retry_Count        0x0013   100   100   097    Pre-fail  Always       -       0
 12 Power_Cycle_Count       0x0032   100   100   020    Old_age   Always       -       71
187 Reported_Uncorrect      0x0032   100   100   000    Old_age   Always       -       0
189 High_Fly_Writes         0x003a   100   100   000    Old_age   Always       -       0
190 Airflow_Temperature_Cel 0x0022   068   050   045    Old_age   Always       -       32 (Min/Max 21/35)
194 Temperature_Celsius     0x0022   032   050   000    Old_age   Always       -       32 (0 20 0 0 0)
195 Hardware_ECC_Recovered  0x001a   052   046   000    Old_age   Always       -       46778498
197 Current_Pending_Sector  0x0012   100   100   000    Old_age   Always       -       1
198 Offline_Uncorrectable   0x0010   100   100   000    Old_age   Offline      -       1
199 UDMA_CRC_Error_Count    0x003e   200   200   000    Old_age   Always       -       0
200 Multi_Zone_Error_Rate   0x0000   100   253   000    Old_age   Offline      -       0
202 Data_Address_Mark_Errs  0x0032   100   253   000    Old_age   Always       -       0

#SDB
ID# ATTRIBUTE_NAME          FLAG     VALUE WORST THRESH TYPE      UPDATED  WHEN_FAILED RAW_VALUE
  1 Raw_Read_Error_Rate     0x002f   200   200   051    Pre-fail  Always       -       0
  3 Spin_Up_Time            0x0027   171   160   021    Pre-fail  Always       -       6441
  4 Start_Stop_Count        0x0032   100   100   000    Old_age   Always       -       100
  5 Reallocated_Sector_Ct   0x0033   200   200   140    Pre-fail  Always       -       0
  7 Seek_Error_Rate         0x002e   100   253   000    Old_age   Always       -       0
  9 Power_On_Hours          0x0032   057   057   000    Old_age   Always       -       32096
 10 Spin_Retry_Count        0x0032   100   253   000    Old_age   Always       -       0
 11 Calibration_Retry_Count 0x0032   100   253   000    Old_age   Always       -       0
 12 Power_Cycle_Count       0x0032   100   100   000    Old_age   Always       -       98
192 Power-Off_Retract_Count 0x0032   200   200   000    Old_age   Always       -       28
193 Load_Cycle_Count        0x0032   200   200   000    Old_age   Always       -       100
194 Temperature_Celsius     0x0022   120   108   000    Old_age   Always       -       30
196 Reallocated_Event_Count 0x0032   200   200   000    Old_age   Always       -       0
197 Current_Pending_Sector  0x0032   200   200   000    Old_age   Always       -       0
198 Offline_Uncorrectable   0x0030   200   200   000    Old_age   Offline      -       0
199 UDMA_CRC_Error_Count    0x0032   200   200   000    Old_age   Always       -       0
200 Multi_Zone_Error_Rate   0x0008   200   200   000    Old_age   Offline      -       0

#SDC
ID# ATTRIBUTE_NAME          FLAG     VALUE WORST THRESH TYPE      UPDATED  WHEN_FAILED RAW_VALUE
  1 Raw_Read_Error_Rate     0x002f   200   200   051    Pre-fail  Always       -       0
  3 Spin_Up_Time            0x0027   116   112   021    Pre-fail  Always       -       7158
  4 Start_Stop_Count        0x0032   100   100   000    Old_age   Always       -       16
  5 Reallocated_Sector_Ct   0x0033   200   200   140    Pre-fail  Always       -       0
  7 Seek_Error_Rate         0x002e   200   200   000    Old_age   Always       -       0
  9 Power_On_Hours          0x0032   078   078   000    Old_age   Always       -       16389
 10 Spin_Retry_Count        0x0032   100   253   000    Old_age   Always       -       0
 11 Calibration_Retry_Count 0x0032   100   253   000    Old_age   Always       -       0
 12 Power_Cycle_Count       0x0032   100   100   000    Old_age   Always       -       14
192 Power-Off_Retract_Count 0x0032   200   200   000    Old_age   Always       -       12
193 Load_Cycle_Count        0x0032   166   166   000    Old_age   Always       -       103070
194 Temperature_Celsius     0x0022   118   109   000    Old_age   Always       -       29
196 Reallocated_Event_Count 0x0032   200   200   000    Old_age   Always       -       0
197 Current_Pending_Sector  0x0032   200   200   000    Old_age   Always       -       0
198 Offline_Uncorrectable   0x0030   200   200   000    Old_age   Offline      -       0
199 UDMA_CRC_Error_Count    0x0032   200   200   000    Old_age   Always       -       0
200 Multi_Zone_Error_Rate   0x0008   200   200   000    Old_age   Offline      -       0
[root@master ~]# hddtemp /dev/sda
/dev/sda: ST3750640A: 32 C
[root@master ~]# hddtemp /dev/sdb
/dev/sdb: WDC WD10EADS-00L5B1: 30 C
[root@master ~]# hddtemp /dev/sdc
/dev/sdc: WDC WD10EADS-00M2B0: 29 C
[root@master ~]# sensors
acpitz-virtual-0
Adapter: Virtual device
temp1:        +30.0 C  (crit = +110.0 C)

k10temp-pci-00c3
Adapter: PCI adapter
temp1:        +27.9 C  (high = +70.0 C)

w83627dhg-isa-0a10
Adapter: ISA adapter
Vcore:        +1.58 V  (min =  +0.00 V, max =  +1.74 V)
in1:          +1.61 V  (min =  +0.14 V, max =  +1.25 V)  ALARM
AVCC:         +3.34 V  (min =  +2.98 V, max =  +3.63 V)
+3.3V:        +3.34 V  (min =  +2.98 V, max =  +3.63 V)
in4:          +1.14 V  (min =  +1.60 V, max =  +0.72 V)  ALARM
in5:          +1.12 V  (min =  +1.98 V, max =  +0.61 V)  ALARM
in6:          +1.19 V  (min =  +0.21 V, max =  +0.61 V)  ALARM
3VSB:         +3.34 V  (min =  +2.98 V, max =  +3.63 V)
Vbat:         +3.09 V  (min =  +2.70 V, max =  +3.63 V)
fan1:           0 RPM  (min = 8437 RPM, div = 32)  ALARM
fan2:        6026 RPM  (min =    0 RPM, div = 8)  ALARM
fan3:           0 RPM  (min =  753 RPM, div = 32)  ALARM
fan4:           0 RPM  (min =  811 RPM, div = 32)  ALARM
fan5:           0 RPM  (min = 1054 RPM, div = 32)  ALARM
temp1:        -48.0 C  (high = +17.0 C, hyst = +75.0 C)  sensor = thermistor
temp2:        +25.5 C  (high = +75.0 C, hyst = +75.0 C)  sensor = CPU diode
temp3:        +14.5 C  (high = +80.0 C, hyst = +75.0 C)  sensor = thermistor
cpu0_vid:    +1.250 V
intrusion0:  ALARM

Перемещено true_admin из talks

 , ,

true_admin
()

openvpn@myvpn[1263]: RESOLVE: Cannot resolve host address: xxxyyy.net: Name or service not known

Ошибка как в сабже. До обновления системы всё работало. А сейчас валится на ресолвинге, хотя сеть _уже_ есть. Вот что говорит стрейс:

1263  sendto(5, "\206\177\1\0\0\1\0\0\0\0\0\0\5xxxx\6yyyy\3net\0\0\1\0\1", 34, MSG_NOSIGNAL, NULL, 0) = 34
1263  poll([{fd=5, events=POLLIN}], 1, 5000) = 0 (Timeout)
1263  close(5)           

И так до бесконечности. Если перезапустить openvpn то всё сразу взлетает. Есть идеи как лечить? Я грешу на ядро, у него много где чего кэшируется итп и часто вижу то что, например, пинг «не работает» при смене настроек интерфейса пока не перезапустишь.

 ,

true_admin
()

англоязычные вакансии

2 JB

Я не вижу проблем с англоязычными вакансиями. Это как раз тест на знание языка. Да и раньше мы не удаляли их (кажись, от самсунга была).

PS сорри что не в рассылку, моя почта временно недоступна.

true_admin
()

jagged alliance 2: оно как под линуксом?

Тут пришло от gag.com письмо что за 4 бакса можно взять ja2. Однако не понятно на сколько оно работоспособно под линухом. Гугление показало что... многие ссылки мертвы, инфа неактуальна, что с совместимостью с модами и AMD64 не понятно. Перелопачивать тонны фан-сайтов не хочется.

В общем, у кого какой опыт с нативной версией? Или забить и не насиловать труп?

true_admin
()

возврат ошибок системных вызовов

Есть одна вещь которая меня коробит, это то как сделаны коды возврата в ядре. Идея простая: есть системные вызовы и есть стандартные коды возврата от SUCCESS до всяких EPERM, EBADF и прочих. Когда речь идёт о тривиальных вызовах типа open(«some file») всё понятно (и то бывают дурацкие проблемы со всякими xattrs, selinux и прочим, но selinux хотя бы логи умеет вести). Но есть гораздо более сложные ситуации когда внутри ядра происходит куча всего и одна и код возврата может быть использован в разных местах. Соотв. из userspace понять что там в ведре случилось невозможно. И что, блин, характерно, в логах тоже ничего не найдёшь.

Вот пример такого:

* We only trust the superuser with rebooting the system. */
- if (!capable(CAP_SYS_BOOT))
+ if (!capable(CAP_SYS_BOOT) || !capable(CAP_COMPROMISE_KERNEL))
return -EPERM;

Как бы с точки зрения ядра всё прекрасно, но вот для юзерспейса важно почему что-то не работает, иначе непонятно как исправлять ситуацию. И в данном случае без исходников ядра и долгого ковыряния определить почему ядро возвращает EPERM для рутового процесса очень сложно.

Я не требую введения иерархии эксепшенов. Прочто чочу чтобы ядро тоже умело писать в лог :(. Ну хотя бы в дебаг-сборке.

Перемещено mono из talks

 , ,

true_admin
()

два гейтвея: http/https завернуть во второй

Хочу http трафик завернуть в vpn. Попробовал вот так, но в туннель попадают пакеты не с того адреса:

# ДОБАВЛЯЕМ
iptables -t mangle -A OUTPUT -p tcp -m multiport --dports 80 -j MARK --set-xmark 666
ip route add table exevpn default via 172.16.1.1
ip rule add fwmark 666 table exevpn
ip route flush cache

# ПРОВЕРЯЕМ
# iptables -t mangle -L OUTPUT -v
Chain OUTPUT (policy ACCEPT 556 packets, 33522 bytes)
 pkts bytes target     prot opt in     out     source               destination         
  379 22740 MARK       tcp  --  any    any     anywhere             anywhere             multiport dports http MARK set 0x29a

# ip route get 6.6.6.6 mark 666
6.6.6.6 via 172.16.1.1 dev exevpn  src 172.16.1.111  mark 0x29a
    cache 

# ip route get 6.6.6.6
6.6.6.6 via 10.23.0.1 dev wlan0  src 10.23.2.131 
    cache 

Вроде бы и правила на фаерволе срабатывают и роутинг отрабатывает как надо. Но вот tcpdump говорит что в туннель exevpn попадают пакеты с src-ip интерфейса wlan0, а надо чтобы было с адреса 172.16.1.111:

$ sudo tcpdump -n -i exevpn
tcpdump: verbose output suppressed, use -v or -vv for full protocol decode
listening on exevpn, link-type EN10MB (Ethernet), capture size 65535 bytes
14:23:59.483671 IP 10.23.2.131.56446 > 87.250.250.119.80: Flags [S], seq 900304472, win 14600, options [mss 1460,sackOK,TS val 1053120 ecr 0,nop,wscale 7], length 0
14:23:59.483834 IP 10.23.2.131.35691 > 213.180.193.119.80: Flags [S], seq 2742770037, win 14600, options [mss 1460,sackOK,TS val 1053120 ecr 0,nop,wscale 7], length 0
14:24:00.486667 IP 10.23.2.131.56446 > 87.250.250.119.80: Flags [S], seq 900304472, win 14600, options [mss 1460,sackOK,TS val 1053421 ecr 0,nop,wscale 7], length 0

Что делать и почему так происходит? Неужели SNAT поднимать?

PS интерфейсы:

$ ip a
1: lo: <LOOPBACK,UP,LOWER_UP> mtu 65536 qdisc noqueue state UNKNOWN 
    link/loopback 00:00:00:00:00:00 brd 00:00:00:00:00:00
    inet 127.0.0.1/8 scope host lo
    inet6 ::1/128 scope host 
       valid_lft forever preferred_lft forever
2: wlan0: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc mq state UP qlen 1000
    link/ether c4:85:08:17:30:c2 brd ff:ff:ff:ff:ff:ff
    inet 10.23.2.131/16 brd 10.23.255.255 scope global wlan0
    inet6 fe80::c685:8ff:fe17:30c2/64 scope link 
       valid_lft forever preferred_lft forever
3: intbr: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc noqueue state UNKNOWN 
    link/ether c6:02:87:04:13:ca brd ff:ff:ff:ff:ff:ff
    inet 172.16.5.254/24 brd 172.16.5.255 scope global intbr
    inet6 fe80::c402:87ff:fe04:13ca/64 scope link 
       valid_lft forever preferred_lft forever
6: exevpn: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc pfifo_fast state UNKNOWN qlen 100
    link/ether aa:cb:15:09:c0:bf brd ff:ff:ff:ff:ff:ff
    inet 172.16.1.111/24 brd 172.16.1.255 scope global exevpn
    inet6 fe80::a8cb:15ff:fe09:c0bf/64 scope link 
       valid_lft forever preferred_lft forever

true_admin
()

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