Rating@Mail.ru
IPB
Etersoft - from Windows to Linux
Etersoft
решения для перехода
с Windows на Linux
Дружественные сайты: alv.me и Rus-Linux.net

Здравствуйте, гость ( Вход | Регистрация ) Поиск · 

> Рекомендации

При поиске решения настоятельно рекомендуются нижеследующие ресурсы.

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

Не забывайте, что использование Gentoo Linux предполагает обязательное наличие навыков применения существующей документации.

Как правильно задавать вопросы

FAQ

https://wiki.gentoo.org/

 
Reply to this topic Start new topic
> Компилирование -- весь день!
azsx
bookmark
gfbbdvkmrlj
Jan 11 2018, в 11:39
Сообщение #1


Жить без форума не могу
Иконка группы

Сообщений: 1681

Вставить имя   :   Цитата
Город: Ангарск

Группа: Участники

Автор темы
С утра решил обновиться. Запустил, он хочет обновить 75 пакетов. Давай, думаю, без проблем -- компилируй братан.
И вот весь день он компилирует (уже 9 часов). И только 63 пакета.
Да, я знаю, что можно нажать ctrl+z, а потом fg, но вот смысл? Мне надо, чтобы всё докомпилировал, чтобы sudo ставить, а компьютер всё компилирует и компилирует. Почему то вспомнил шутку, что gentoo'шники не пользуются никаким софтом на ПК, так как они его постоянно компилируют.
Go to the top of the page
 
+Quote Post
/dev/random
bookmark
gfbbdvkmrlj
Jan 11 2018, в 11:51
Сообщение #2



Иконка группы

Сообщений: 4382

Вставить имя   :   Цитата

ОС: Gentoo
Город: Волгоград

Группа: Админы

Цитата(azsx @ Jan 11 2018, в 11:39) *
С утра решил обновиться. Запустил, он хочет обновить 75 пакетов. Давай, думаю, без проблем -- компилируй братан.
И вот весь день он компилирует (уже 9 часов). И только 63 пакета.
Да, я знаю, что можно нажать ctrl+z, а потом fg, но вот смысл? Мне надо, чтобы всё докомпилировал, чтобы sudo ставить, а компьютер всё компилирует и компилирует. Почему то вспомнил шутку, что gentoo'шники не пользуются никаким софтом на ПК, так как они его постоянно компилируют.

Да и пусть себе компилирует в фоне, вам-то что? Продолжайте работать. Надо поставить sudo - ставьте. Зачем, по-вашему, компьютеру многозадачность?


Спасибо сказали:
Go to the top of the page
 
+Quote Post
azsx
bookmark
gfbbdvkmrlj
Jan 11 2018, в 12:14
Сообщение #3


Жить без форума не могу
Иконка группы

Сообщений: 1681

Вставить имя   :   Цитата
Город: Ангарск

Группа: Участники

Автор темы
Цитата
Зачем, по-вашему, компьютеру многозадачность?

В дебиан если что то одновремнно с apt ставишь, то он вроде ругается на блокировку каких то зависимостей.
А ещё он по htop у меня целиком все 2 ядра забил (лоад авредже 3,5). Совсем помрёт от многозадачности.
А вы сразу одновременно делаете?
Go to the top of the page
 
+Quote Post
devilr
bookmark
gfbbdvkmrlj
Jan 11 2018, в 12:38
Сообщение #4


Коренной житель
Иконка группы

Сообщений: 952

Вставить имя   :   Цитата

ОС: Mandriva => Gentoo (~amd64)

Группа: Участники

Та ладно, 63 пакета. Вот когда целиком мир пересобираешь (3к+ пакетов) вот тогда да. Ядра дымятся сутками. Все 8 штук. smile.gif
А ускорять можно по разному. Допустим собирать в памяти.


--------------------
Мудрость приходит с возрастом.
Иногда возраст приходит один.
Go to the top of the page
 
+Quote Post
/dev/random
bookmark
gfbbdvkmrlj
Jan 11 2018, в 12:42
Сообщение #5



Иконка группы

Сообщений: 4382

Вставить имя   :   Цитата

ОС: Gentoo
Город: Волгоград

Группа: Админы

Цитата(azsx @ Jan 11 2018, в 12:14) *
В дебиан если что то одновремнно с apt ставишь, то он вроде ругается на блокировку каких то зависимостей.

В gentoo не ругается. Единственное, что может случиться - это если какой-то пакет хотят поставить/обновить обе одновременно выполняемые команды emerge, то обе команды его и скомпилируют, потратив вдвое больше вычислительных ресурсов. Но в вашем случае это не грозит: не думаю, что для установки sudo понадобится обновить что-то из того, что вы уже обновляете. Главное - не меняйте конфигурацию (включая USE-флаги) пока идёт сборка.

Цитата(azsx @ Jan 11 2018, в 12:14) *
А ещё он по htop у меня целиком все 2 ядра забил (лоад авредже 3,5). Совсем помрёт от многозадачности.

Просто понизьте приоритет, чтобы ресурсы процессора выделялись emerge только когда они не нужны никому другому. В make.conf даже специальная опция для этого есть, но это на будущее. Для уже запущенной команды используйте renice.

Цитата(azsx @ Jan 11 2018, в 12:14) *
А вы сразу одновременно делаете?

Разумеется. Что я, по-вашему, сидеть и ждать буду, пока он всё соберёт?


Спасибо сказали:
Go to the top of the page
 
+Quote Post
azsx
bookmark
gfbbdvkmrlj
Jan 11 2018, в 13:09
Сообщение #6


Жить без форума не могу
Иконка группы

Сообщений: 1681

Вставить имя   :   Цитата
Город: Ангарск

Группа: Участники

Автор темы
Цитата
Допустим собирать в памяти.

У меня 8 гб памяти, занято 1,8. А как компилировать в памяти?
Цитата
В gentoo не ругается.
***
Главное - не меняйте конфигурацию (включая USE-флаги) пока идёт сборка.

Не знал.
Цитата
Просто понизьте приоритет, чтобы ресурсы процессора выделялись emerge только когда они не нужны никому другому.

очень интересно, а есть такая опция в renice? Просто, раздражает, пусть бы он компилировался на все 100, когда приостановлен vlc.
Go to the top of the page
 
+Quote Post
/dev/random
bookmark
gfbbdvkmrlj
Jan 11 2018, в 13:32
Сообщение #7



Иконка группы

Сообщений: 4382

Вставить имя   :   Цитата

ОС: Gentoo
Город: Волгоград

Группа: Админы

Цитата(azsx @ Jan 11 2018, в 13:09) *
У меня 8 гб памяти, занято 1,8. А как компилировать в памяти?

По умолчанию emerge компилирует пакеты в /var/tmp/portage. Смонтируйте туда tmpfs. Только учтите, что по умолчанию tmpfs ограничен половиной объёма оперативной памяти (в вашем случае - 4 гигабайтами), этого может не хватить для особо зверских пакетов вроде chromium.

Цитата(azsx @ Jan 11 2018, в 13:09) *
очень интересно, а есть такая опция в renice? Просто, раздражает, пусть бы он компилировался на все 100, когда приостановлен vlc.

"Компилируется только когда приостановлен VLC" - нет. А вот "выделять процессорное время в первую очередь для других процессов, таких, как VLC, а компилятору - только если в данную (условно) микросекунду VLC уже закончил отображать очередной кадр и несколько (условно) микросекунд ему процессор не понадобится" - для этого приоритеты и предназначены. "nice"/"renice" устанавливают "мягкий" приоритет, в случае которого система имеет право всё-таки изредка передать управление низкоприоритетным задачам, даже когда процессор нужен высокоприоритетным - но только изредка. Чем больше разница приоритетов, тем реже. "chrt" устанавливает "жесткий" приоритет, который не нарушается никогда. "ionice" - приоритет работы с диском и другими операциями ввода-вывода.


Спасибо сказали:
Go to the top of the page
 
+Quote Post
devilr
bookmark
gfbbdvkmrlj
Jan 11 2018, в 13:36
Сообщение #8


Коренной житель
Иконка группы

Сообщений: 952

Вставить имя   :   Цитата

ОС: Mandriva => Gentoo (~amd64)

Группа: Участники

У меня для этого дела в /etc/make.conf есть
Код
PORTAGE_TMPFS="/dev/shm"
PORTAGE_TMPDIR="/dev/shm"
BUILD_PREFIX="/dev/shm"

И все собирается/пересобирается в оперативной памяти. Если не менять ее настройку, то размер shm будет половина оперативной памяти.
В калькуляторе подобное вроде принято делать не напрямую в /etc/make.conf. Можно почитать подробнее в документации на калькулятор.
P.S. Для "особо зверских пакетов" есть /etc/portage/package.env. Можно там настроить, что именно компилируется в памяти, а что - на винте.


--------------------
Мудрость приходит с возрастом.
Иногда возраст приходит один.


Спасибо сказали:
Go to the top of the page
 
+Quote Post
serzh-z
bookmark
gfbbdvkmrlj
Jan 11 2018, в 21:34
Сообщение #9


Маньяк
Иконка группы

Сообщений: 6571

Вставить имя   :   Цитата

ОС: Android, GNU/Linux, Windows

Группа: Бывшие модераторы

QUOTE (azsx @ 11th January 2018 - в 11:39) *
И вот весь день он компилирует (уже 9 часов).
А можно было бы это время и электроэнергию потратить на майнинг BTC... =)


--------------------
Что-то кончается, что-то начинается...
Go to the top of the page
 
+Quote Post
yoshakar
bookmark
gfbbdvkmrlj
Jan 11 2018, в 21:44
Сообщение #10


Завсегдатай
Иконка группы

Сообщений: 223

Вставить имя   :   Цитата

ОС: Debian Stretch
Город: Тула

Группа: Участники

Цитата(azsx @ 11th January 2018 - в 11:39) *
можно нажать ctrl+z, а потом fg
bg
Go to the top of the page
 
+Quote Post
/dev/random
bookmark
gfbbdvkmrlj
Jan 11 2018, в 21:48
Сообщение #11



Иконка группы

Сообщений: 4382

Вставить имя   :   Цитата

ОС: Gentoo
Город: Волгоград

Группа: Админы

Цитата(serzh-z @ Jan 11 2018, в 21:34) *
А можно было бы это время и электроэнергию потратить на майнинг BTC... =)

На CPU? Без шансов. Сейчас уже и на GPU толком не помайнишь, как минимум FPGA нужны, а то и специализированное оборудование. А компиляция занимает только CPU.


Спасибо сказали:
Go to the top of the page
 
+Quote Post
azsx
bookmark
gfbbdvkmrlj
Jan 12 2018, в 01:37
Сообщение #12


Жить без форума не могу
Иконка группы

Сообщений: 1681

Вставить имя   :   Цитата
Город: Ангарск

Группа: Участники

Автор темы
yoshakar рискну с вами не согласиться. Именно fg.
Цитата
А можно было бы это время и электроэнергию потратить на майнинг BTC

можно, но я не майню. К тому же там комп cpu 1.1 гц, видеокарты нет.
Зато сегодня утро, а комп компилирует последний пакет! Больше суток.
Цитата
По умолчанию emerge компилирует пакеты в /var/tmp/portage. Смонтируйте туда tmpfs. Только учтите, что по умолчанию tmpfs ограничен половиной объёма оперативной памяти (в вашем случае - 4 гигабайтами), этого может не хватить для особо зверских пакетов вроде chromium.

я понял, что это не просто. Буду думать об этом потом. А вот renice попробую.
Go to the top of the page
 
+Quote Post
serzh-z
bookmark
gfbbdvkmrlj
Jan 12 2018, в 02:43
Сообщение #13


Маньяк
Иконка группы

Сообщений: 6571

Вставить имя   :   Цитата

ОС: Android, GNU/Linux, Windows

Группа: Бывшие модераторы

QUOTE (/dev/random @ 11th January 2018 - в 13:32) *
Смонтируйте туда tmpfs.
О этот волнительный момент, когда из-за нехватки памяти сборка большого пакета останавливается после 6 часов непрерывного компилирования, а все временные файлы подчищаются! =)


--------------------
Что-то кончается, что-то начинается...


Спасибо сказали:
Go to the top of the page
 
+Quote Post
delvin-fil
bookmark
gfbbdvkmrlj
Jan 12 2018, в 04:41
Сообщение #14


Новичок
Иконка группы

Сообщений: 29

Вставить имя   :   Цитата

ОС: Linux
Город: Орел

Группа: Участники

Ох, ну ёхарный бабай
А во так , не судьба:
alias emerge='ionice -c 2 -n 7 nice -n 19 emerge'
Go to the top of the page
 
+Quote Post
azsx
bookmark
gfbbdvkmrlj
Jan 12 2018, в 04:51
Сообщение #15


Жить без форума не могу
Иконка группы

Сообщений: 1681

Вставить имя   :   Цитата
Город: Ангарск

Группа: Участники

Автор темы
вот тоже интересный вопрос. Я выполняю
Цитата
sudo nice -n 0 emerge -avuND @world

а толку то? Если посмотреть ваши .ebuild, то там везде make -- самое такое ресурсоёмкое. То есть мне надо чтобы каждый отдельный make запустился с пониженным приоритетом, а не команда обновления, верно?
Go to the top of the page
 
+Quote Post
/dev/random
bookmark
gfbbdvkmrlj
Jan 12 2018, в 10:24
Сообщение #16



Иконка группы

Сообщений: 4382

Вставить имя   :   Цитата

ОС: Gentoo
Город: Волгоград

Группа: Админы

Цитата(azsx @ Jan 12 2018, в 04:51) *
вот тоже интересный вопрос. Я выполняю
Цитата
sudo nice -n 0 emerge -avuND @world

а толку то?

"nice -n 0" не делает ничего. Указанное в -n значение прибавляется к значению "вежливости" ("niceness") процесса. Чем оно больше, тем чаще он будет готов "пропускать вперёд" другие процессы. "-n 0" означает "прибавить 0", т.е. не делать ничего.

Цитата(azsx @ Jan 12 2018, в 04:51) *
Если посмотреть ваши .ebuild, то там везде make -- самое такое ресурсоёмкое. То есть мне надо чтобы каждый отдельный make запустился с пониженным приоритетом, а не команда обновления, верно?

Процессы наследуют приоритет родительского процесса.


Спасибо сказали:
Go to the top of the page
 
+Quote Post
delvin-fil
bookmark
gfbbdvkmrlj
Jan 13 2018, в 01:36
Сообщение #17


Новичок
Иконка группы

Сообщений: 29

Вставить имя   :   Цитата

ОС: Linux
Город: Орел

Группа: Участники

Цитата
авредже 3,5

Серьезно?
У меня, когда больше одного ебилда собираю, 12-17 в порядке вещей. И да, с nice.
Go to the top of the page
 
+Quote Post
azsx
bookmark
gfbbdvkmrlj
Jan 13 2018, в 02:21
Сообщение #18


Жить без форума не могу
Иконка группы

Сообщений: 1681

Вставить имя   :   Цитата
Город: Ангарск

Группа: Участники

Автор темы
delvin-fil, у меня Intel® Celeron® CPU 847 @ 1.10GHz
Go to the top of the page
 
+Quote Post

 Reply to this topic Start new topic
1 чел. читают эту тему (гостей: 1, скрытых пользователей: 0)
Пользователей: 0

 



RSS Текстовая версия Сейчас: 23rd January 2018 - в 13:00




Rating@Mail.ru