LINUX.ORG.RU

Сообщения true_admin

 

тормозит rsync

Надо скопировать sparse-образ виртуалки. Делаю rsync и получаю непонятные тормоза. Сравните:

ux32vd@perftests$ time { pv ./arch64_template.qcow2 > /home/sources/perftests/arch64_template.qcow2; sync; }
  10GiB 0:00:54 [ 188MiB/s] [========================================================================================>] 100%            

real    1m44.477s
user    0m0.107s
sys     0m29.743s

ux32vd@perftests$ time { rm arch64_template.qcow2; }

real    0m1.698s
user    0m0.000s
sys     0m0.973s

Тот же образ через rsync:

ux32vd@perftests$ time { sudo rsync -avHAXPS ./ /home/sources/perftests/; sync; }                                                       
sending incremental file list
./
arch64_template.qcow2
 10737418240 100%   46.75MB/s    0:03:39 (xfer#1, to-check=1/11)

sent 10738729287 bytes  received 34 bytes  48923596.00 bytes/sec
total size is 10970009332  speedup is 1.02

real    3m39.146s
user    3m4.517s
sys     1m10.577s

ux32vd@perftests$ time { rm arch64_template.qcow2; }

real    0m11.850s
user    0m0.003s
sys     0m1.073s

И это при том что rsync надо скопировать всего 3гига. Откуда такие тормоза? Даже файл удаляется после этого дольше (!).

Простой rsync без выкрутасов тоже тормозит:

ux32vd@perftests$ time { sudo rsync -a ./ /home/sources/perftests/; sync; }

real    3m24.019s
user    2m12.413s
sys     1m3.747s

Проц грузит, но не на 100%. При этом диски простаивают (картинка во время rsync):

top - 14:40:46 up 19 min,  0 users,  load average: 1.53, 0.94, 0.45
Tasks: 116 total,   2 running, 114 sleeping,   0 stopped,   0 zombie
%Cpu(s): 23.9 us,  6.9 sy,  0.0 ni, 63.0 id,  6.2 wa,  0.0 hi,  0.0 si,  0.0 st
KiB Mem:  10129100 total,  9961984 used,   167116 free,   336376 buffers
KiB Swap:  1000444 total,        0 used,  1000444 free,  8392568 cached

  PID USER      PR  NI    VIRT    RES    SHR S  %CPU  %MEM     TIME+ COMMAND   
 2544 root      20   0   13568    704    416 S 63.16 0.007   2:26.42 rsync     
 2542 root      20   0   13888   1440   1016 R 56.17 0.014   2:00.28 rsync     
 2205 exe       20   0  509068  57948  26536 S 1.994 0.572   1:09.96 plugin-co+
   38 root      20   0       0      0      0 S 1.662 0.000   0:02.04 kswapd0   
 1655 root      20   0  121960  15376   7416 S 1.330 0.152   0:28.72 X         
 2017 root      20   0       0      0      0 D 1.330 0.000   0:00.82 flush-8:0 




ux32vd@~$ sudo iostat -x -m 1
Linux 3.8.6-1-custom (ux32vd) 	04/28/2013 	_x86_64_	(4 CPU)

avg-cpu:  %user   %nice %system %iowait  %steal   %idle
           9.64    0.00    4.00    2.03    0.00   84.33

Device:         rrqm/s   wrqm/s     r/s     w/s    rMB/s    wMB/s avgrq-sz avgqu-sz   await r_await w_await  svctm  %util
sda               0.06     4.38   25.30   44.75     0.32    18.96   563.83     7.75  110.65    1.68  172.27   1.31   9.20
sdb               1.56     0.00   66.36    0.00     5.23     0.00   161.50     0.07    0.99    0.99    0.00   0.35   2.35

avg-cpu:  %user   %nice %system %iowait  %steal   %idle
          23.50    0.00    8.00    0.00    0.00   68.50

Device:         rrqm/s   wrqm/s     r/s     w/s    rMB/s    wMB/s avgrq-sz avgqu-sz   await r_await w_await  svctm  %util
sda               0.00    11.00    6.00    4.00     0.35     0.46   167.20     0.01    1.30    1.17    1.50   1.00   1.00
sdb               0.00     0.00    0.00    0.00     0.00     0.00     0.00     0.00    0.00    0.00    0.00   0.00   0.00

avg-cpu:  %user   %nice %system %iowait  %steal   %idle
          23.35    0.00    7.11    1.52    0.00   68.02

Device:         rrqm/s   wrqm/s     r/s     w/s    rMB/s    wMB/s avgrq-sz avgqu-sz   await r_await w_await  svctm  %util
sda               0.00     0.00    1.00   40.00     0.00    12.29   614.24    14.42   33.17   10.00   33.75   2.93  12.00
sdb               0.00     0.00    0.00    0.00     0.00     0.00     0.00     0.00    0.00    0.00    0.00   0.00   0.00

^C

Опции монтирования:

ux32vd@~$ cat /proc/mounts | grep sda
/dev/sda2 / ext4 rw,relatime,discard,nobarrier 0 0

 ,

true_admin
()

самый красивый ЯП

Какой ЯП вы считаете самым красивым?

 ,

true_admin
()

нужна помощь в дописании фичи

Когда-то давно я написал патч для qemu-bridge-helper который позволяет задавать имя tap-интерфейсов на хост машине. Вот подробности: http://lists.gnu.org/archive/html/qemu-devel/2013-03/msg03859.html

(для Ъ: по ссылке патч, описание и короткое обсуждение).

Патч не был принят т.к. создание интерфейсов с произвольным именем было рассмотрено как угроза безопасности. Я не нашёл времени чтобы допилить патч.

Мне бы не хотелось чтобы работа пропала. Есть у кого желание продолжить? Я пока по времени не успеваю. В принципе, пока я это всё писал у меня созрел план что делать с qemu-bridge-helper.c (имхо, можно в ACLRule.type добавить ACL_ALLOW_IFNAME и ACL_DENY_IFNAME). Но я не жадный и готов разделить славу хакеров qemu с кем-либо ещё.

 , ,

true_admin
()

запустить винды в виртуалке чтобы opengl/d3d работали

Сабж. Желательно под winXP.

Задача такая: есть результаты томографии, но прога только под оффтопик и очень глючная (привет, бинарная совместимость и java). В wine не стартует. На обычных компах она тоже очень любит глючить и тупить — ни одному врачу ещё не удалось её открыть. Поэтому хочу на своём ноуте всё показывать.

Почему не хочу win7 или win8: они ооочень большие. win7 отожрала 16 гиг только чтобы поставиться и не смогла даже обновления установить из-за нехватки места. Мне место на ssd жалко.

Спрашиваю сдесь потому что пускаю в qemu и вряд ли на winfaq мне с этим помогут. Гугление тоже не помогло найти что-то рабочее. Неужели это только в xen возможно?

Конфига ноута: asus ux32vd, i7-3517U, какая-то встроенная nvidia (optimus).

 , ,

true_admin
()

послать ctrl+C (SIGINT) на slave pty

Как послать SIGINT через терминал? В инете вычитал что достаточно отослать ^C и всё заработает, но это не так. Код (под вторым питоном тоже работает):

#!/usr/bin/env python3
from __future__ import print_function
import shlex
import time
import pty
import os

def osexec(cmd):
  cmd = shlex.split(cmd)
  os.execlp(cmd[0], *cmd)

pid, fd = pty.fork()
if pid == 0:
  osexec('perf stat -x, sleep 10')
time.sleep(1)
os.write(fd, b'^C')
raw_data = os.read(fd, 65535)
print("OUT:",raw_data.decode())

Ожидаемый вывод:

sleep: Interrupt
1.260884,task-clock
1,context-switches
0,cpu-migrations
...

Попой чую нужен какой-нить ioctl. Почему я не делаю просто kill -INT: похоже что грёбаный perf различает сигналы от терминала и от юзера (по SI_KERNEL|SI_USER) и ведёт себя по-разному. Отсюда и костыли в коде с эмуляцией терминала вместо subprocess.Popen.

 , forkpty,

true_admin
()

распаковать sparse файл

Похоже что новый qemu-img теперь создаёт sparse-файлы. Это создало проблемы при переносе образа: я сжал образ через lzop, перелил, а распаковать не могу: не хватает места потому что lzop и нули распаковывает (знал бы заранее то использовал tar).

Есть ли утилитка которая бы читала из stdin и писала бы sparse-файлы?

UP:

вот так получилось:

lzop -cd ./at.qcow2.lzop | pv -bar | cp --sparse=always /dev/stdin output.qcow2
true_admin
()

добавление юзера в группу без ребута

Понадобилось себя добавить в группу systemd-journal. Сделал так:

usermod -a -G systemd-journal ТАВИМ

Потом делаю sudo -i -u ТАВИМ и... группы-то старые. Разлогиниваюсь из иксов, захожу обратно, а всё равно меня нет в группе. Как же так? Мне казалось через sudo всё сразу должно быть пучком.

А вот волшебный ребут помог. /etc/groups проверял, там всё как надо сразу было.

ОС arch amd64, менеджер сессий slim, systemd 198-2.

 

true_admin
()

x86 Планшет за $1600 и ультрабук с 4гига оперативы за $1900

Кто хотел планшетик на интеле? Всего за 1600 баксов он ваш c core i5 внутри.

Ну я любителям ультрабуков предлагается старый 900x3 с 4гигами оперативки, но с обновлённым экраном. Апгрейд экрана с 1600x900 до fullHD поднял цену всего на 600 баксов.

PS интересно как долго самсунг продержится на пике.

PPS что-то не видно нового ноута на сайте самсунга. Неуж-то постеснялись и сняли?

Ссылки к «новости»:

http://www.samsung.com/us/computer/tablet-pcs

http://www.engadget.com/2013/03/25/samsung-ships-ativ-smart-pc-pro-with-att-l...

 , ,

true_admin
()

регистрантам которые гадят из-под анонимуса

Товарищи типа nanoolinux и другие кто мелко гадит из-под анонимуса рискуют очень быстро схлопотать банан.

Уже третьего за день ловлю.

true_admin
()

лучший консольный менеджер паролей?

Какой лучший консольный менеджер паролей?

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

В инете добра навалом, но оно обычно написано корявенько и без проверок на ошибки. Я ещё видел тулзы которые хранят без шифрования, но это, имхо, вообще фейл.

true_admin
()

скорость ssd

У кого-нить есть логичное объяснение проблемам со скоростью?

Сразу скажу что я этот ssd уже мысленно похоронил. Но вдруг кто скажет как его оживить... Биос последний, ОС арчик amd64, ядро 3.8.3, но на 3.7 та же байда наблюдалась. Режим ahci.

Итак, имеется ноут asus ux32vd с распаянным ssd i100 на 32гектара. Производителем заявлена скорость работы под 300-400метров. Проверяем на ext4 с rw,relatime,discard,data=writeback,barrier=0,nobh:

ux32vd@~$ dd if=/dev/zero of=~/test bs=1M count=100 conv=fdatasync
100+0 records in
100+0 records out
104857600 bytes (105 MB) copied, 32.3032 s, 3.2 MB/s

(barrier=0,nobh и data=writeback не влияют на скорость, но немного облегчили подвисоны. Сейчас ещё сделал elevator=noop, но это тоже скорости на запись не прибавило).

Надо ли говорить что ноут во время записи на диск просто умирает. Что интересно, ОС-то я как-то поставил и работал без проблем, вероятно когда ноут был новый проблемы не было.

Я пытался писать на raw-раздел, результат был такой же. А тут случайно промахнулся и вместо /dev/sda1 указал /dev/sda. И, о чудо:

[root@ux32vd ~]# dd if=/dev/zero of=/dev/sda bs=1M count=100 conv=fdatasync skip=4
100+0 records in
100+0 records out
104857600 bytes (105 MB) copied, 1.20484 s, 87.0 MB/s

Чудо омрачнилось крайней нестабильностью результата:

[root@ux32vd ~]# swapoff /dev/sda1
[root@ux32vd ~]# dd if=/dev/zero of=/dev/sda bs=1M count=100 conv=fdatasync skip=4
100+0 records in
100+0 records out
104857600 bytes (105 MB) copied, 4.67787 s, 22.4 MB/s
[root@ux32vd ~]# dd if=/dev/zero of=/dev/sda bs=1M count=100 conv=fdatasync skip=4
100+0 records in
100+0 records out
104857600 bytes (105 MB) copied, 2.21489 s, 47.3 MB/s
[root@ux32vd ~]# dd if=/dev/zero of=/dev/sda bs=1M count=100 conv=fdatasync skip=4
100+0 records in
100+0 records out
104857600 bytes (105 MB) copied, 1.37613 s, 76.2 MB/s
[root@ux32vd ~]# dd if=/dev/zero of=/dev/sda bs=1M count=100 conv=fdatasync skip=4
100+0 records in
100+0 records out
104857600 bytes (105 MB) copied, 1.20484 s, 87.0 MB/s
[root@ux32vd ~]# sync
[root@ux32vd ~]# dd if=/dev/zero of=/dev/sda bs=1M count=100 conv=fdatasync skip=5
100+0 records in
100+0 records out
104857600 bytes (105 MB) copied, 1.21545 s, 86.3 MB/s
[root@ux32vd ~]# dd if=/dev/zero of=/dev/sda bs=1M count=100 conv=fdatasync skip=5

(и игрался со skip/seek чтобы понять не влияет ли как-то смещение данных, сходу закономерности не обнаружил. Ну и я тут перепутал skip с seek). Скорость гуляет в разы, может и до 16 метров просесть.

Есть шанс вылечить?

Данные смарт:

[root@ux32vd ~]# smartctl -a /dev/sda
smartctl 6.0 2012-10-10 r3643 [x86_64-linux-3.8.1-pf] (local build)
Copyright (C) 2002-12, Bruce Allen, Christian Franke, www.smartmontools.org

=== START OF INFORMATION SECTION ===
Device Model:     SanDisk SSD i100 32GB
Serial Number:    121700101194
LU WWN Device Id: 5 001b44 76179284a
Firmware Version: 11.50.00
User Capacity:    32,017,047,552 bytes [32.0 GB]
Sector Size:      512 bytes logical/physical
Rotation Rate:    Solid State Device
Device is:        Not in smartctl database [for details use: -P showall]
ATA Version is:   ACS-2 T13/2015-D revision 3
SATA Version is:  SATA 3.0, 6.0 Gb/s (current: 6.0 Gb/s)
Local Time is:    Sun Mar 17 22:48:50 2013 CET
SMART support is: Available - device has SMART capability.
SMART support is: Enabled

=== START OF READ SMART DATA SECTION ===
SMART overall-health self-assessment test result: PASSED

General SMART Values:
Offline data collection status:  (0x00)	Offline data collection activity
					was never started.
					Auto Offline Data Collection: Disabled.
Self-test execution status:      (   0)	The previous self-test routine completed
					without error or no self-test has ever 
					been run.
Total time to complete Offline 
data collection: 		(  120) seconds.
Offline data collection
capabilities: 			 (0x11) SMART execute Offline immediate.
					No Auto Offline data collection support.
					Suspend Offline collection upon new
					command.
					No Offline surface scan supported.
					Self-test supported.
					No Conveyance Self-test supported.
					No Selective Self-test supported.
SMART capabilities:            (0x0003)	Saves SMART data before entering
					power-saving mode.
					Supports SMART auto save timer.
Error logging capability:        (0x01)	Error logging supported.
					General Purpose Logging supported.
Short self-test routine 
recommended polling time: 	 (   2) minutes.
Extended self-test routine
recommended polling time: 	 (   8) minutes.

SMART Attributes Data Structure revision number: 1
Vendor Specific SMART Attributes with Thresholds:
ID# ATTRIBUTE_NAME          FLAG     VALUE WORST THRESH TYPE      UPDATED  WHEN_FAILED RAW_VALUE
  5 Reallocated_Sector_Ct   0x0002   100   100   000    Old_age   Always       -       0
  9 Power_On_Hours          0x0002   100   100   000    Old_age   Always       -       961
 12 Power_Cycle_Count       0x0002   100   100   000    Old_age   Always       -       472
171 Unknown_Attribute       0x0002   100   100   000    Old_age   Always       -       0
172 Unknown_Attribute       0x0002   100   100   000    Old_age   Always       -       0
173 Unknown_Attribute       0x0002   100   100   000    Old_age   Always       -       45
174 Unknown_Attribute       0x0002   100   100   000    Old_age   Always       -       163
187 Reported_Uncorrect      0x0002   100   100   000    Old_age   Always       -       0
230 Unknown_SSD_Attribute   0x0002   100   100   000    Old_age   Always       -       150
232 Available_Reservd_Space 0x0003   100   100   005    Pre-fail  Always       -       0
234 Unknown_Attribute       0x0002   100   100   000    Old_age   Always       -       118
241 Total_LBAs_Written      0x0002   100   100   000    Old_age   Always       -       1103882629
242 Total_LBAs_Read         0x0002   100   100   000    Old_age   Always       -       666393360

SMART Error Log Version: 1
No Errors Logged

SMART Self-test log structure revision number 1
No self-tests have been logged.  [To run self-tests, use: smartctl -t]


Selective Self-tests/Logging not supported

 

true_admin
()

status bar засунуть в трей

Заранее извеняюсь за глупые вопросы, я в десктопах нуб.

Я использую dzen2 и fluxbox. Оно у меня делит нижнюю полоску экрана вместе стреем пополам (слева трей, справа дзен, между ними небольшая щель) и мне не нравятся следующие вещи:

1) при подключении внешнего моника оно располагается по границам первого монитора, либо вообще на экране не появляется

2) оно работает поверх всех окон и не контроллирует свои размеры. Как результат, реальные размеры зависят от dpi итп. И может возникнуть ситуация что dzen2 наезжает на трей.

Пробовал i3bar, xmobar - всё это работает как оверлей, т.е. не то что мне нужно.

В общем, мне бы хотелось что-то легковесное и чтобы можно было засунуть как аплет в трей. Есть такое?.

От статус-бара мне нужны: часы с датой, загрузка и температура проца, уровень сигнала wifi и свободное место на диске. Я готов поменять fluxbox на, скажем, icewm или ещё что, лишь бы хоткеи настраивались, декорации окон убирались и оно не тормозило. Но вот к xmonad или awesome я не готов :).

true_admin
()

померять скорость скачивания из разных точек

Есть ли сервис которому можно скормить ссылку на большой файл и тот померяет скорость из разных точек земли?

Всё что я нашёл расчитано на обычные веб-страницы, скормить файл в 10 метров не получается.

PS лор не предлагать, я уже и сам почти до этого созрел :)

true_admin
()

ёмкость ssd указывают в гигабайтах или гибибайтах?

Только что осознал что мой венник меньше чем я думал. Это у всех производителей так или только у избранных?

true_admin
()

тестовый сервер: http://127.0.0.1:8080 посылает редирект на linux.org.ru

Почему так происходит?

[lor@lor lorsource]$ telnet localhost 8080
Trying ::1...
Connected to localhost.
Escape character is '^]'.
GET / HTTP/1.1
Host: linux.org.ru

HTTP/1.1 302 Found
Location: http://www.linux.org.ru/
Content-Length: 0
Server: Jetty(8.1.9.v20130131)
true_admin
()

mvn jetty:run тащит кучу хлама

Признавайтесь, это ваш косяк или мавена: при запуске оно скачивает под две тыщи файлов в ~/.m2/repository. Неужели так и должно быть?

 

true_admin
()

простая электрическая задачка

Представьте себе последовательную цепь из нескольких батареек и лампочки. Влияет ли порядок включения батареек на яркость?

Мой ответ — не влияет по прафилу Кирхгофа: как контур не обходи, к лампочке приложена одна и та же ЭДС, сопротивление цепи так же одно и тоже. Однако физик на экзамене много лет назад сказал «не всё так просто». Вот я все эти годы мучаюсь — я чего-то не знаю или это он так пошутил?

 

true_admin
()

Подтвердите баг: qemu вешается на последнем ядре

Сабж.

На ядре 3.7.10 qemu перестал работать: комманда «qemu-system-i386 --enable-kvm -curses» приводит к тому что qemu даже kill -9 не убивает. На 3.7.9 всё нормально.

 ,

true_admin
()

Читаете ли вы нашу вики? Пишете ли туда? А планируете?

Сабж.

true_admin
()

Какие нацпольные темы вы бы хотели создать?

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

Как всегда никаких гарантий что хоть что-то это изменит и я понятия не имею чем это всё закончится, но давайте попробуем.

Итак, какие темы вы хотели бы создать, но стесняетесь?

true_admin
()

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