LINUX.ORG.RU

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

Bash - чтение строк из файла

Форум — Admin

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

вот так:

while read line; do
  echo "[$line]";
done < ./host_list

читает все подряд (и пустые строки и комментарии)

Подскажите пожалуйста как сделать??

 ,

KLfer
()

Сервер многопользовательской риалтайм-игры. Логика.

Форум — Development

Где бы почитать мировой опыт дизайна логики игровых серверов многопользовательских риалтайм-игр?

Немного удивляет наличие читеров в многопользовательских риалтайм-играх, типа GTA San Andreas. Как модификацией клиента делается возможным изменение скорости машин? Почему нельзя было сделать передачу на сервер только событий начала и конца различных вызываемых пользователем событий? Сел в тачку ID = 123, нажал педаль газа, на сервер улетел «газ», сервер взял параметры тачки 123 и она едет в памяти у сервера. Как её при этом отрисовывает клиент - пофигу. Факт в том, что другие не могут увидеть её едущей быстрее, чем она едет внутри сервера, а там она едет так, как предписывают главные серверные физические модели. На других клиентов идут координаты этой машины только из серверной копии виртуального мира... События столкновений и т.п. обсчитываются так же на сервере и рассылаются всем только оттуда, в том числе самому ездоку. Откуда возможность читерства?

Вот есть у меня такая игрушка, сделанная за 2 дня на коленке на JavaScript. http://dagoneev.no-ip.biz/game/ Зафигачить бы туда онлайн. Как я себе это представляю? На сервере крутится поток и 30 раз в секунду делает очередной шаг времени, вычисляя новое состояние мира с учётом имеющееся на данный момент состояние всех объектов «танк едет, снаряд летит, этот тут, тот здесь» и т.п. Если новости касаются твоего поля зрения, тебе отправляются данные.

В чём ущербность такого подхода?

kiverattes
()

Системы централизованного контроля - что сейчас в моде?

Форум — Talks

Вопрос в толксы, ибо пока он больше идеологический чем технический. Во имя упрощения работы с большим количеством серверов решил заморочиться и настроить одну из таких систем. В основном слышал про две - puppet и ansible. Если кто использует то или иное, или может посоветовать что-либо третье, очень внимательно вас послушаю.
Работать нужно с разными Linux-дистрибутивами (Debian, CentOS в основном) и с FreeBSD.

 ,

Komintern
()

Вышел tmux 1.8

Новости — Open Source
Группа Open Source

26 марта вышел терминальный мультиплексор tmux 1.8.

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

Основные изменения в новой версии:

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

>>> Больше подробностей

 

ii343hbka
()

bash+awk, не получается правильно написать строку на awk в bash скрипте

Форум — General

Пишу скрипт для работы со стримером и нужно поймать значение File number=2 (именно «2») из вывода команды «mt -f /dev/nst0 status»
Выглядит он так:

SCSI 2 tape drive:
File number=2, block number=0, partition=0.
Tape block size 512 bytes. Density code 0x42 (LTO-2).
Soft error count since last status=0
General status bits on (81010000):
EOF ONLINE IM_REP_EN

Решил сделать это через awk
команда:
mt -f /dev/nst0 status | awk -F "," '{if (NR==2) {if (NF=1) { print }}}'
выводит «File number=2» и, по идее, нужно сделать:
mt -f /dev/nst0 status | awk -F "," '{if (NR==2) {if (NF=1) /[0-9]/ { print }}}'
чтобы отсеять значение File number. Но awk при этом ругается на «{» перед «print» (parse error)

И еще вопросы.
Вроде можно перечислить все условия через &&
Например:
mt -f /dev/nst0 status | awk -F "," '{if (NR==2) && (NF=1) && (/[0-9]/) { print }}'
Но тут выскакивает ошибка на первое же упоминание &&
Почему?

awk нормально воспринимает (NR==2), но выводит пустоту на (NF==1), обрабатывая строку так как нужно только с (NF=1). И наоборот. Это я никак не могу понять.

Ну и, может есть другие решения данной задачи?

P.S. Знаю, что можно отсеять через grep или любым другим способом, передав вывод первой команды дальше через конвейер (|), но интереснее же обойтись одним вызовом :)

 ,

sick_monkey
()

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

Форум — 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
()

Рандомная генерация «мира»

Форум — Development

Не помню с кем разговор заходил, но вообщем этот человек писал (у него аватар еще результат рендра какой-то хрени), что мол рандомно можно генерировать вполне «логические последовательности/модели/фигуры/мир». Гхм, но как я не парился, получалось генерировать только шум, не каких объектов хоть отдаленно напоминающих фигуру не выходило, даже в том случае, если использовал систему состоящею из нескольких десятков рандомов, генерирующих друг для друга числа, которые влияют на них самих впоследствии, точнее на алгоритм их генерации. Более-менее что-то кроме шума выходило только если в рандомную систему врезать не рандомный алгоритм.
^Гхм надеюсь эту кашу хоть кто то понял, сори за такой сумбур, не знаю как это доходчивее объяснить, короче: в идеале я хочу получить систему, которая из кубиков рандомно генерирует объекты, мир в целом, но пока выходит только каша, даже отдаленно не напоминающая что-то вроде строений.

makeB
()

Помогу новичкам в освоении системы Linux

Форум — General

Так как я давно в Linux и когда у меня что-нибудь не удаётся, я всегда нахожу причину, решил помочь разбираться в Linux новичкам. А также предложил заняться тем же знакомым в Jabber (XMPP). Минимальный гуглинг перед задаванием вопроса строго приветствуется.

Наша комната чата (Jabber-конференция), доступна по адресу linux-support@conference.sigil.tk. Кто заходит в Jabber-конференцию первый раз, поясняю: то, что до символа @ вводить в поле Room, а то что после - в Server. Вебгейт для конференции: http://sigil.tk/jabber/.

С пользователями различных дистрибутивов Linux, имеющими длительный опыт работы в них, можно связаться по Jabber:

Debian/Ubuntu, Arch (Linux):
z00ke, crustycrab@izhnet.org / crustycrab@jabber.ru,
derlafff, derlafff@qip.ru - установка системы с помощью deboostrap, настройка multitouch,
Spirit_of_Stallman, root_master@jabber.ru.

Debian/Ubuntu, Gentoo (Linux):
Chaser_Andrey, chaser_andrey at jabber.ru,
leg0las, leg0las@jabber.com.ua.

Arch, Debian, Ubuntu (Linux) Server - post-factum, oleksandr@natalenko.name.

Debian Linux и LFS - TERRANZ, terranz@terranz.ath.cx.

Debian/Ubuntu (Linux):
Licwin, licwin@jabbim.com,
Darth_Revan, sor.alexei@hotbox.ru,
GNU-Ubuntu1204LTS, Ubuntu9.10@sibnsk.net.

openSUSE, Debian, Gentoo, Mandriva/Mageia/PClinuxOS (Linux) - я, Zenitur@jabber.ru.

Fedora, Ubuntu (Linux): ArtKun, artkun@guitarplayer.ru.

Fedora Linux:
Jayrome, jayrome@jabber.ru,
tekk, tekk@jabber.ru.

Red Hat Enterprise Virtualization: Канал #rhev IRC-сети FreeNode. По вопросам KVM, qemu, RHEV/oVirt и все что вокруг (сети, железо, СХД, планирование, миграция...) поможет dyasny.

Gentoo Linux:
geladil, geladil@sigil.tk,
Pinkbyte, мыло&jabber: admin собака pinkbyte.ru,
Nensha, Mi@nengraphy.com - Sabayon, Gentoo,
tiandrey, tiacorpo@gmail.com (e-mail и Jabber),
Tanger, tanger@jabber.mipt.ru - Gentoo, awesome.

Slackware, Arch (Linux): mopsene, mopsene@jabber.ru.

Arch, Lunar (Linux): neocrust, Jabber/Mail: neocrust@gmail.com.

Arch Linux:
bsdfun, dreamsoul@jabber.ru,
pztrn, pztrn@pztrn.ru,
DoctorSinus, doctorsinus@jabber.ru.

ВНИМАНИЕ: Этот топик не предназначен для задавания технических или иных вопросов и ответов на них, а также просьб о помощи. Впредь подобные сообщения будут удаляться.

По поводу пополнения данного списка - обращаться к модераторам

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

 ,

ZenitharChampion
()

bash, перенаправления

Форум — General

Известно, что всякие перенаправления и дупликации bash возводит к сишным функциям, которые собственно выполняют эту работу. Дело в том, что я понимаю логически, что оно должно делать, но это как бы заученное знание без понимания, что происходит. Так вот, где можно прочитать, на какие сишные эквиваленты bash раскладывает это всё, ещё желательно, чтоб с примерами и объяснениями. Ну или отдельно примеры и отдельно ссылку на какой-нибудь справочник, который помог бы распарсить эти примеры. Дело в том, что на Си я писал очень давно и «постольку поскольку» поэтому таких манипуляций не выполнял.

 ,

Deleted
()