Имеем большой десктоп на четырёх ядрах и нетбук на атоме (x86) со всеми вытекающими. Задача – пересобрать мир. Так как distcc-pump работает, но периодически заикается, да и препроцессинг на атоме уводит load avg в 0.7…1, я подумал о том, чтобы сделать linux32 chroot в корень бука, примонтированный по nfs. Проблем я вижу минимум две:
- /usr на буке находится на отдельном разделе, дополнительная строчка в exports сработала только со второго раза, и это настораживает. Причём на десктопе mount типа примонтировал /usr в корень (который уже примонтирован по nfs), но /usr оказался пуст, повторил процедуру (вот не надо, я не забывал рестартануть nfs на буке) и всё заработало. Заработает ли в следующий раз…
- Одно дело выполнить chroot в лежачую систему, где подразумевается, что /proc и /dev не обновляются никем другим, кроме как процессами из того шелла, который выполнился вместе с командой chroot. И другое – когда система запущена и работает. /var не на отдельном разделе, поэтому remount-ro возможен только в экстренном случае отказа ФС.
В принципе, можно отловить все пакеты, где спотыкается distcc, просто хотелось бы выяснить, насколько возможно и затруднительно было бы компилять из чрута по nfs.
Ах, да, конфиги nfs:
#/etc/exports
/ 192.168.0.1/8(rw,no_squash,insecure,no_subtree_check)
/usr 192.168.0.1/8(rw,no_squash,insecure,no_subtree_check)
fanetbook:/ /mnt/fanetbook nfs4 rw,soft,timeo=5,retrans=1,rsize=65536,wsize=65536 0 0
fanetbook:/usr /mnt/fanetbook/usr nfs4 rw,soft,timeo=5,retrans=1,rsize=65536,wsize=65536 0 0