Вопросы новичка
Правила форума
Убедительная просьба юзать теги [cоde] при оформлении листингов.
Сообщения не оформленные должным образом имеют все шансы быть незамеченными.
Убедительная просьба юзать теги [cоde] при оформлении листингов.
Сообщения не оформленные должным образом имеют все шансы быть незамеченными.
-
- сержант
- Сообщения: 227
- Зарегистрирован: 2017-01-10 14:37:13
Вопросы новичка
привет!
иногда не хватает подобной темы, в идеале еще бы прикрепить ее
перейду к вопросу) есть команды для вывода содержимого файла, cat head tail, подскажите пжл ключ к ним или другую утилиту для вывода, нужно чтобы содержимое выводилось с нумерацией строк, либо с конкретным номером строки, дабы не открывать файл целиком и не листать до нужной строки
иногда не хватает подобной темы, в идеале еще бы прикрепить ее
перейду к вопросу) есть команды для вывода содержимого файла, cat head tail, подскажите пжл ключ к ним или другую утилиту для вывода, нужно чтобы содержимое выводилось с нумерацией строк, либо с конкретным номером строки, дабы не открывать файл целиком и не листать до нужной строки
Услуги хостинговой компании Host-Food.ru
Тарифы на хостинг в России, от 12 рублей: https://www.host-food.ru/tariffs/hosting/
Тарифы на виртуальные сервера (VPS/VDS/KVM) в РФ, от 189 руб.: https://www.host-food.ru/tariffs/virtualny-server-vps/
Выделенные сервера, Россия, Москва, от 2000 рублей (HP Proliant G5, Intel Xeon E5430 (2.66GHz, Quad-Core, 12Mb), 8Gb RAM, 2x300Gb SAS HDD, P400i, 512Mb, BBU):
https://www.host-food.ru/tariffs/vydelennyi-server-ds/
Недорогие домены в популярных зонах: https://www.host-food.ru/domains/
Тарифы на виртуальные сервера (VPS/VDS/KVM) в РФ, от 189 руб.: https://www.host-food.ru/tariffs/virtualny-server-vps/
Выделенные сервера, Россия, Москва, от 2000 рублей (HP Proliant G5, Intel Xeon E5430 (2.66GHz, Quad-Core, 12Mb), 8Gb RAM, 2x300Gb SAS HDD, P400i, 512Mb, BBU):
https://www.host-food.ru/tariffs/vydelennyi-server-ds/
Недорогие домены в популярных зонах: https://www.host-food.ru/domains/
-
- прапорщик
- Сообщения: 492
- Зарегистрирован: 2015-05-25 14:36:32
Вопросы новичка
Варианты разные могут быть...или так:или так:или так:а про конкретную строку так:
man nl в помощь
Код: Выделить всё
man head > head.txt
cat head.txt | awk '{print NR " " $0 }'
Код: Выделить всё
cat -n head.txt
Код: Выделить всё
cat head.txt | nl
1 HEAD(1) FreeBSD General Commands Manual HEAD(1)
2 NAME
3 head – display first lines of a file
4 SYNOPSIS
5 head [-n count | -c bytes] [file ...]
6 DESCRIPTION
7 This filter displays the first count lines or bytes of each of the
8 specified files, or of the standard input if no files are specified. If
9 count is omitted it defaults to 10.
10 If more than a single file is specified, each file is preceded by a
11 header consisting of the string “==> XXX <==” where “XXX” is the name of
12 the file.
13 EXIT STATUS
14 The head utility exits 0 on success, and >0 if an error occurs.
15 EXAMPLES
16 To display the first 500 lines of the file foo:
17 $ head -n 500 foo
18 head can be used in conjunction with tail(1) in the following way to, for
19 example, display only line 500 from the file foo:
20 $ head -n 500 foo | tail -n 1
21 SEE ALSO
22 tail(1)
23 HISTORY
24 The head command appeared in PWB UNIX.
25 FreeBSD 11.1-STABLE March 16, 2013 FreeBSD 11.1-STABLE
Код: Выделить всё
cat head.txt | nl -ba
1 HEAD(1) FreeBSD General Commands Manual HEAD(1)
2
3 NAME
4 head – display first lines of a file
5
6 SYNOPSIS
7 head [-n count | -c bytes] [file ...]
8
9 DESCRIPTION
10 This filter displays the first count lines or bytes of each of the
11 specified files, or of the standard input if no files are specified. If
12 count is omitted it defaults to 10.
13
14 If more than a single file is specified, each file is preceded by a
15 header consisting of the string “==> XXX <==” where “XXX” is the name of
16 the file.
17
18 EXIT STATUS
19 The head utility exits 0 on success, and >0 if an error occurs.
20
21 EXAMPLES
22 To display the first 500 lines of the file foo:
23
24 $ head -n 500 foo
25
26 head can be used in conjunction with tail(1) in the following way to, for
27 example, display only line 500 from the file foo:
28
29 $ head -n 500 foo | tail -n 1
30
31 SEE ALSO
32 tail(1)
33
34 HISTORY
35 The head command appeared in PWB UNIX.
36
37 FreeBSD 11.1-STABLE March 16, 2013 FreeBSD 11.1-STABLE
Код: Выделить всё
head -n 10 head.txt | tail -n 1
This filter displays the first count lines or bytes of each of the
-
- сержант
- Сообщения: 227
- Зарегистрирован: 2017-01-10 14:37:13
- novik
- мл. сержант
- Сообщения: 146
- Зарегистрирован: 2018-07-26 23:52:57
Вопросы новичка
Один из альтернативных вариантов:
Код: Выделить всё
less +13 -N /var/log/messages
«О сколько нам открытий чудных готовит просвещения дух...»™
-
- прапорщик
- Сообщения: 492
- Зарегистрирован: 2015-05-25 14:36:32
Вопросы новичка
Только обратите внимание, что греп выгребет "35" при любом вхождении в строку.
Если строка начинается именно на "35", то вернее будет так:
Код: Выделить всё
cat -n log.log | grep '^35'
-
- прапорщик
- Сообщения: 492
- Зарегистрирован: 2015-05-25 14:36:32
Вопросы новичка
Если опираться на показанный выше пример, то получится:Т.е. есть пробелы в начале. Вариант Даст "пусто" на выходе, т.к. строка НЕ начинается на 10. Перед "10" есть пробелы. Но можно поступить, например, так:Условие "^[ t]" вырежет пробелы и табуляции с начала строки.
Код: Выделить всё
cat -n head.txt | grep '10'
10 This filter displays the first count lines or bytes of each of the
12 count is omitted it defaults to 10.
Код: Выделить всё
cat -n log.log | grep '^10'
Код: Выделить всё
cat -n head.txt | sed 's/^[ t]*//' | grep '^10'
10 This filter displays the first count lines or bytes of each of the
-
- сержант
- Сообщения: 227
- Зарегистрирован: 2017-01-10 14:37:13
Вопросы новичка
спс за помощь, а откуда взяться пробелам в начале строки если команда
пронумерует их вставляя номера в начале строки?
Код: Выделить всё
cat -n head.txt
-
- прапорщик
- Сообщения: 492
- Зарегистрирован: 2015-05-25 14:36:32
Вопросы новичка
Они там будут.
Приведенный пример, как раз с пробелами перед нумерацией на выходе.
Приведенный пример, как раз с пробелами перед нумерацией на выходе.
-
- прапорщик
- Сообщения: 492
- Зарегистрирован: 2015-05-25 14:36:32
Вопросы новичка
Почему
Вообще если посмотреть исходник catи найти в нем кусок обработки по "-n" (это будет nflag)видим, что разработчиком принудительно зашито шесть символов Теперь идем, например, на http://cppstudio.com/post/1270/ читаем описание ищем ниже по тексту что такое "ширина":Вот отсюда и получаются пробелы...
Все просто.
Вообще если посмотреть исходник cat
Код: Выделить всё
ee /usr/src/bin/cat/cat.c
Код: Выделить всё
if (nflag && (!bflag || ch != '\n')) {
(void)fprintf(stdout, "%6d\t", ++line);
if (ferror(stdout))
break;
}
Код: Выделить всё
stdout, "%6d\t", ++line
Код: Выделить всё
int fprintf( FILE * stream, const char * format, ... );
...
...
Форматируемые теги должны следовать следующему формату записи:
%[флаги][ширина поля][.точность][длинна]спецификатор
Код: Выделить всё
ширина Описание
number Минимальное количество символов для печати. Если значение для печати короче, чем это число, пустые места заполняются пробелами. Значение не обрезается, даже если оно больше number.
-
- сержант
- Сообщения: 227
- Зарегистрирован: 2017-01-10 14:37:13
Вопросы новичка
так глубоко не вникал, даже бы не додумался)
-
- сержант
- Сообщения: 227
- Зарегистрирован: 2017-01-10 14:37:13
Вопросы новичка
может кто знает поделитесь инфой, в релизах 11 версии и 12 не увидел никаких изменений по dummynet , вопрос собственно один, планируется ли сделать так чтобы он распараллеливался по ядрам? очень этого не хватает
- vadim64
- майор
- Сообщения: 2101
- Зарегистрирован: 2009-09-17 15:15:26
- Откуда: Засратовец
Вопросы новичка
у Вас мощность одного из ядер полностью съедается dummynet? можно пруф какой-то?
Люди не делятся на национальности, партии, фракции и религии. Люди делятся на умных и дураков, а вот дураки делятся на национальности, партии, фракции и религии.
-
- сержант
- Сообщения: 227
- Зарегистрирован: 2017-01-10 14:37:13
-
- подполковник
- Сообщения: 3923
- Зарегистрирован: 2008-09-04 11:51:25
- Откуда: Санкт-Петербург
Вопросы новичка
В далекие времена была подобная байда, похоже ее так и не починили, там проблема в высокой загрузки была из-за того, что dummynet прыгал с одного ядра на другое, затраты на переключения были большие, попробуйте привязать этот процесс к конкретному ядру... Хотя я может быть я и ошибаюсь...
-
- сержант
- Сообщения: 227
- Зарегистрирован: 2017-01-10 14:37:13
-
- прапорщик
- Сообщения: 492
- Зарегистрирован: 2015-05-25 14:36:32
Вопросы новичка
В относительно свежем документе (в тексте оного есть упоминания 2018,2019 годов) https://www.ics.uci.edu/~aburtsev/doc/lxds-usenix19.pdf есть фраза: "We configure the isolated dummy driver with a varying number of cores ranging from one to four in such a manner that one LXD thread runs on each socket of the 4-socket d820 system."
В разделе 5.4.
Этот документ вообще интересно поизучать.
В разделе 5.4.
Этот документ вообще интересно поизучать.
-
- прапорщик
- Сообщения: 492
- Зарегистрирован: 2015-05-25 14:36:32
Вопросы новичка
А какого размера MTU у Вас используется на этой машине?
-
- сержант
- Сообщения: 227
- Зарегистрирован: 2017-01-10 14:37:13
-
- прапорщик
- Сообщения: 492
- Зарегистрирован: 2015-05-25 14:36:32
Вопросы новичка
Про igb(*) столько всего понаписано...WideAreaNetwork писал(а): ↑2020-02-21 15:31:37везде на всех интерфейсах MTU1500
Demis писал(а): ↑
2020-02-21 12:26:43
LXD
а это что такое?
Мама не горюй.
Не уверен, что напишу решение в правильном направлении, но попробуйте просто изучить вопрос.
Это так-же как про LXD, хотя в том-же документе, на первой странице, во втором абзаце, написано :
Код: Выделить всё
Lightweight Execution Domains (LXDs)
Мне нужно было сделать производительность сетевого стека.
В моем случае это помогло.
Какая цифиря будет нужна для Вашего случая, сказать не могу.
Вопрос индивидуальный.
Почему у меня так настроено немного написано в посте:
freebsd-f8/strannaya-problema-s-zfs-i-s ... ml#p377009
Даминет вкомпилированный.
При изучении вопроса пользовался примерно такой информацией, с полным прочтением оной от начала до конца, как:
https://forum.nag.ru/index.php?/topic/5 ... ent=603585
https://wiki.freebsd.org/NetworkPerformanceTuning
https://www.opennet.ru/openforum/vsluhf ... 95555.html
https://dadv.livejournal.com/139170.html
Читайте, думайте, пробуйте и пишите...
-
- сержант
- Сообщения: 227
- Зарегистрирован: 2017-01-10 14:37:13
Вопросы новичка
это все прочитано)
я спрашивал есть ли работы в сторону распараллеливания по ядрам шейпера dummynet? так как на сегодня он однопоточен, и тут ничего не остается как ставить еще один БРАС или более мощное железо, а вот если бы оно параллелилось , то даже старые серваки вполне пригодны были бы
варианты подсказали, к примеру прибиванием шейпера к 0 ядру, еще можно исходящую скорость от абонента не шейпить вообще
стоит БРАС потому мту менять не стоит
я спрашивал есть ли работы в сторону распараллеливания по ядрам шейпера dummynet? так как на сегодня он однопоточен, и тут ничего не остается как ставить еще один БРАС или более мощное железо, а вот если бы оно параллелилось , то даже старые серваки вполне пригодны были бы
варианты подсказали, к примеру прибиванием шейпера к 0 ядру, еще можно исходящую скорость от абонента не шейпить вообще
-
- прапорщик
- Сообщения: 492
- Зарегистрирован: 2015-05-25 14:36:32
Вопросы новичка
Я наверное чего-то не догоняю.
Ведь народ наоброт пытается "вогнать/ужать" в одно русло.
Т.е. изначально пошла проблематика когда в железе появились треды и ядра.
Другими словами софт, включая даминет, уже сейчас написан с распараллеливанием, а как-же иначе ядро-то у Вас amd64.
Ваш пример из топа это наглядно рисует.
Но это потянуло цепочку других проблем "как с этим жить"?
Поэтому и начались эксперименты с обуздыванием этой ситуевины.
(Взять например прописывание в коде меток идентификаторов от прерываний того-же igb, для привязки к ядрам).
Команды видаименно это, принудительный "вгон" в одно ядро, и делают.
Но это, на мой взгляд, пример команды показывает обратный процесс, т.е. от многоядерности -> одноядерности.
Ведь народ наоброт пытается "вогнать/ужать" в одно русло.
Т.е. изначально пошла проблематика когда в железе появились треды и ядра.
Другими словами софт, включая даминет, уже сейчас написан с распараллеливанием, а как-же иначе ядро-то у Вас amd64.
Ваш пример из топа это наглядно рисует.
Но это потянуло цепочку других проблем "как с этим жить"?
Поэтому и начались эксперименты с обуздыванием этой ситуевины.
(Взять например прописывание в коде меток идентификаторов от прерываний того-же igb, для привязки к ядрам).
Команды вида
Код: Выделить всё
cpuset -l 0 -t $(procstat -t 0 | awk '/dummynet/ {print $2}')
Но это, на мой взгляд, пример команды показывает обратный процесс, т.е. от многоядерности -> одноядерности.
-
- сержант
- Сообщения: 227
- Зарегистрирован: 2017-01-10 14:37:13
Вопросы новичка
не умеет он раскидывать задачу на все ядра поровну, поочередно грузит ядра, из-за перескакиваний с ядра на ядро его и прибивают к 0 ядру, так как при этом он ест меньше ресурсов проца, проблема в другом, когда dummynet забивает одно ядро до 90+% то начинаются дикие лаги и тормоза у абонентов, потому и интересовала тема, как в этом плане развивается шейпер
получается выход с этого положения либо железо поновее брать, либо добавлять сервера доступа (естественно после всех возможных и невозможных оптимизаций сетевого стека IPFW DUMMYNET и т.д.)
-
- прапорщик
- Сообщения: 492
- Зарегистрирован: 2015-05-25 14:36:32
Вопросы новичка
Думаю, на текущий момент, исходя из реалий - проще
Но тут Вам виднее.
Т.е. расти в ширь.
Но тут Вам виднее.
-
- прапорщик
- Сообщения: 492
- Зарегистрирован: 2015-05-25 14:36:32
Вопросы новичка
Вот еще наткнулся, почитать, но это больше для себя.
https://people.freebsd.org/~olivier/tal ... -Paper.pdf
Просто, чтобы в ветке по теме осталось...
https://people.freebsd.org/~olivier/tal ... -Paper.pdf
Просто, чтобы в ветке по теме осталось...
-
- подполковник
- Сообщения: 3923
- Зарегистрирован: 2008-09-04 11:51:25
- Откуда: Санкт-Петербург
Вопросы новичка
Поищи в инете, народ в этом случае уходил на ng_natWideAreaNetwork писал(а): ↑2020-02-21 19:48:22не умеет он раскидывать задачу на все ядра поровну, поочередно грузит ядра, из-за перескакиваний с ядра на ядро его и прибивают к 0 ядру, так как при этом он ест меньше ресурсов проца, проблема в другом, когда dummynet забивает одно ядро до 90+% то начинаются дикие лаги и тормоза у абонентов, потому и интересовала тема, как в этом плане развивается шейпер
получается выход с этого положения либо железо поновее брать, либо добавлять сервера доступа (естественно после всех возможных и невозможных оптимизаций сетевого стека IPFW DUMMYNET и т.д.)