Linux - это интересно!
Вы не вошли.


Наигравшись с разными дистрибутивами, особенно с NuTyX, созрел для опробования его родоначальника, дистрибутива CRUX.
Напрямую установить не получилось, что то пошло не так. Не заработало... Установил на соседний раздел из дистрибутива MX-Linux. Скорее всего, конфиг ядра не подошёл моему компу. Поэтому, скомпилировал ядро для CRUX от Slackware-current, которое доказало свою работоспособность на моём стареньком компе.
Вобщем, ещё один вариант установки дистрибутива CRUX, по материалам множества постов и авторов статей. Не указываю авторов специально, если шо, плюйте в меня. Но от меня им спасибо.
Вобщем по порядку. Есть комп с установленным MX-Linux, GRUB Управляет пуском ракет, он и должен запустить нового соседа по имени CRUX.
Инсталляционный ISO образ дистрибутива CRUX содержит статистически скомпилированную утилиту pkgadd.
Поэтому её можно использовать для установки системы CRUX из пакетов, также включенных в ISO, из другого дистрибутива.
Для начала нужно загрузить установочный образ ISO с одного из зеркал.
wget -c http://ftp.spline.inf.fu-berlin.de/pub/crux/crux-3.4/iso/crux-3.4.isoДалее, под root, смонтируйте его так, чтобы его файлы были доступны системе:
sudo mkdir -p /mnt/crux-mount
sudo mkdir -p /mnt/crux
sudo mount /dev/sda9 /mnt/crux/
sudo mount -o loop,ro crux-3.4.iso /mnt/crux-mountПотом извлеките менеджер пакетов в домашний каталог:
tar xvf /mnt/crux-mount/crux/core/pkgutils*.tar* usr/bin/pkgadd -O > ./pkgadd
chmod a+rx ./pkgaddСоздайте необходимые каталог и файл на разделе для CRUX, для подготовки к работе утилиты pkgadd.
sudo mkdir -p /mnt/crux/var/lib/pkg
sudo touch /mnt/crux/var/lib/pkg/dbУстановите пакеты из всех трёх категорий пакетов:
sudo for pkg in /mnt/crux-mount/crux/core/*; do echo "installing $pkg" && ./pkgadd -r /mnt/crux/ $pkg; done
sudo for pkg in /mnt/crux-mount/crux/opt/*; do echo "installing $pkg" && ./pkgadd -r /mnt/crux/ $pkg; done
sudo for pkg in /mnt/crux-mount/crux/xorg/*; do echo "installing $pkg" && ./pkgadd -r /mnt/crux/ $pkg; doneПропишите версию дистрибутива для того, чтобы grub не принимал CRUX за “неизвестный linux”:
sudo cat > /mnt/crux/etc/lsb-release << EOF
DISTRIB_ID=CRUX
DISTRIB_RELEASE=3.4
DISTRIB_CODENAME=posix
DISTRIB_DESCRIPTION="Crux 3.4 LTS"
EOFСоздайте скрипт входа в среду chroot:
#!/bin/bash
if [ "$UID" != "0" ]; then
echo "Chroot need root access!"
exit 1
fi
CRUX=$1
if [ -z $1 ]; then
echo "Please set directory to chroot!"
exit 1
fi
if [ ! -d $CRUX ]; then
echo "Directory '$CRUX' not exist"
exit 1
fi
pushd $CRUX
mount -v --bind /dev $CRUX/dev
mount -vt devpts devpts $CRUX/dev/pts -o gid=5,mode=620
mount -vt proc proc $CRUX/proc
mount -vt sysfs sysfs $CRUX/sys
mount -vt tmpfs tmpfs $CRUX/run
if [ -h $CRUX/dev/shm ]; then
mkdir -pv $CRUX/$(readlink $CRUX/dev/shm)
fi
if [ -e /etc/resolve.conf ]; then
cp -L /etc/resolve.conf $CRUX/etc/
fi
chroot "$CRUX" /usr/bin/env -i \
HOME=/root \
TERM="$TERM" \
PS1='(crux chroot) \u:\w\$ ' \
PATH=/bin:/usr/bin:/sbin:/usr/sbin /bin/bash --login
popd
echo chroot exited
echo "Unmounting virtual filesystem"
umount -v $CRUX/dev/pts
umount -v $CRUX/dev
umount -v $CRUX/run
umount -v $CRUX/proc
umount -v $CRUX/sys
exit $?Войдите в среду “chroot” в окне root:
./chroot /mnt/cruxПерейдите в каталог с предполагаемыми исходниками ядра:
cd /usr/src/Скачайте архив с исходниками ядра:
wget -c https://cdn.kernel.org/pub/linux/kernel/v4.x/linux-4.19.13.tar.xzИзвлеките исходники:
tar -xvf linux-<version>.tar.xz -C /usr/srcСоздайте символическую ссылку(Slackware влияет на мозги):
ln -s linux-4.19.13 linuxПерейдите в каталог с исходниками ядра:
cd /usr/src/linuxСкачайте конфиг с действующего Slackware-current:
wget -c http://slackware.uk/slackware/slackware-current/source/k/kernel-configs/config-huge-4.19.13.x64Скомпилируйте ядро с помощью команд:
make menuconfigУзнайте количество ядер своего процессора с помощью команды nproc:
nproc
4
Для продолжения нажмите любую клавишу...Запустите процесс компиляции ядра и модулей:
make -j4После окончания компиляции установите модули ядра командой:
make modules_installСкопируйте ядро в каталог /boot:
cp arch/x86/boot/bzImage /boot/vmlinuz-4.19.13Туда же скопируйте файл с символьной таблицей адресов функций и процедур System.map:
cp System.map /bootТуда же скопируйте на всякий случай конфиг скомпилированного ядра:
cp .config /boot/config-huge-4.19.13.x64Назначьте пароль пользователю root:
passwdСоздайте пользователя, я создаю в примере пользователя cdrw:
useradd -m -G users,wheel,video,audio -s /bin/bash cdrwИ ему тоже назначьте пароль:
passwd cdrwПереходим в домашний каталог root:
cd /rootНастраиваем файл /etc/rc.conf:
sudo /usr/bin/featherpad /mnt/crux/rc.confПриводим к такому виду,
#
# /etc/rc.conf: system configuration
#
FONT=LatArCyrHeb-16
KEYMAP=ruwin_ct_sh-UTF-8.map
TIMEZONE=Europe/Vilnius
HOSTNAME=cdrw
SYSLOG=sysklogd
SERVICES=(lo net crond)
# End of fileчто значит:
FONT= консольный шрифт, имеющий в своём составе кириллицу.
KEYMAP= консольная раскладка, умеющая переключать клавиатуру с латиницы на кириллицу.
TIMEZONE= временная зона, часовой пояс, где вы находитесь.
HOSTNAME= имя вашего компьютера, который будет, возможно, виден под ним в сети.
SYSLOG= оставляем без изменений... Сам не знаю, журнал какой то.
SERVISES= службы, которые вы хотите запустить при старте системы.
Генерируем русскую локаль:
localedef -i ru_RU -f UTF-8 ru_RU.utf8Помещаем строки
export LANG=ru_RU.utf8
source ~/.bashrcв файл /etc/profile.
Делаем доступной категорию портов compat-32:
mv /etc/ports/compat-32.rsync.inactive /etc/ports/compat-32.rsyncДелаем доступной категорию портов contrib:
mv /etc/ports/contrib.rsync.inactive /etc/ports/contrib.rsyncОбновляем порты:
ports -uЗагружаем исходники в порты, чтобы не заморачиваться потом:
for pkg in `prt-get listinst`; do cd /usr/ports/*/$pkg && pkgmk -do; doneУстанавливаем файловый консольный менеджер mc:
cd /usr/ports/opt/mcСобираем порт:
pkgmk -dУстанавливаем образовавшийся в результате этой операции бинарный пакет:
pkgadd mc#4.8.22-1.pkg.tar.gzВыходим из сеанса chroot:
exitОчищаем результаты своей деятельности:
umount /mnt/crux-mount
rmdir /mnt/crux-mount
rm ./pkgadd
umount /mnt/cruxПрописываем систему:
sudo update-grubПерезагружаемся.
Всё.
Отредактировано cdrw (12-01-2019 19:46:13)

Вне форума


Привет! Спортивнее было бы не вводить 100500 команд, а сделать скрипт, выложить его на гитхаб, или пастебин, и запустить его командой типа:
wget $url -O - | shили
curl https://www.example.com/files/coreinstall.sh -o new-filename.shМожно будет обработать ссылку линк-шортенером, и существенно укоротить команду.
ЗЫ. Если нужен пример, то могу выложить скрипт, которым я обстругивал центось.
Отредактировано redix (12-01-2019 20:32:27)
In Tux We Trust
Вне форума


Ну, блин, я же хотел, чтобы поступечато.

Вне форума


Напишешь комментарии, вот проблема. Начинающий все равно не установит, а сведущий прочитает, я всегда(почти) читаю их. А есть еще чувак из Франции Kiki Novak, он пилит офисную систему на базе центоси, так у него в скрипте кругом эхо понатыкано, при установке еще и пишет в терминале, по хранцузски правда, сейчас делается то-то.
Вот мой скрипт тебе для примера:
Отредактировано redix (12-01-2019 21:24:20)
In Tux We Trust
Вне форума


А есть еще чувак из Франции Kiki Novak, он пилит офисную систему на базе центоси, так у него в скрипте кругом эхо понатыкано, при установке еще и пишет в терминале, по хранцузски правда, сейчас делается то-то.Да ради бога... Я по своему хотел сказать. Ну, если не так, тогда простите...

Вне форума


Ха, чувак уже не пилит, теперь компания Microlinux устанавливает на свои машины Суся. Репа микролинуха удалена с гитхаба. Вот это поворот.
Добавлено спустя 3 ч 03 мин 41 с:
Вот елки, если обидел - извини, я же хотел как лучше. )
In Tux We Trust
Вне форума


К слову, концепция CRUX самая обнадёживающая. Весь мусор - производителям. И правильно, нехрен винт засорять хренью... Всё равно телевизор смотрим, а не книжки читаем.

Вне форума


Всё равно телевизор смотрим
Лет десять не смотрел, и не планирую.
In Tux We Trust
Вне форума


Приветствую участников форума! Извиняюсь за орфографию, пишу с телефона.
У меня вопрос относительно локализации crux. Что делаю: генерирую русскую локаль, прописываю в profile заветную строчку, пересобираю все пакеты, затем собираю chromium и увы, русских символов он не понимает. Не нужно ли в pkgfile указывать какую либо функцию вроде setlocate? И если да, то как это должно выглядеть.
ПС. с линуксами на Вы, буду рад любым ответам, ссылкам. спасибо


В отличие от Арчлинуха допустим, в круксе генерят локали по другому:
6.1.4. Generating locales
Starting with CRUX 2.5, glibc does not contain all possible locales anymore, thus you'll have to generate the locales you need/use. The following example is a typical setup for swedish users, replace sv_SE* with the locale you want:
# localedef -i sv_SE -f ISO-8859-1 sv_SE
# localedef -i sv_SE -f ISO-8859-1 sv_SE.ISO-8859-1
# localedef -i sv_SE -f UTF-8 sv_SE.UTF-8 In Tux We Trust
Вне форума


Благодарю за отклик. Разумеется генерация локали производилась по handbook crux. Команда locale -a показывает наличие русской локали, вопрос в том, почему chromium собирается без ее поддержки.


Раньше язык интерфейса у хромого можно было переключать в настройках, как сейчас - не знаю, но я бы посмотрел.
In Tux We Trust
Вне форума


Причем тут язык интерфейса, когда русские буквы квадратами показывает? я об этом.


Извиняюсь если грубо ответил, не хотел Вас обидеть.


Пустое, я не обидчивый. Возможно какие то опции при сборке нужно указывать, крукс вроде использует систему портов, может вам стоит покурить бсд-шные доки? Впрочем тут я не советчик. По локализации, как по мне так гентушная вики написано более понятным языком, чем арчевики, местами по крайней мере. https://wiki.gentoo.org/wiki/Localization/Guide/ru
In Tux We Trust
Вне форума


Вообщем так я и не победил этот crux, а жаль, дистрибутив действительно хорош. Чтож, будем пользоваться nutyx. Однако за темой послежу, может еще кто отпишется.


И что, так прямо и сдадитесь? Попробуйте Venom Linux, он основан на LFS и по мотивам Крукса.

Страница загрузки: https://sourceforge.net/projects/venomlinux/files/
In Tux We Trust
Вне форума


Спасибо, не слышал об этом дестрибутиве. Похоже дестрибутив появился недавно, на distrowatch информации по нему нету, да и на сайте проекта ничего. Предлагаете подрабатывать мейнтейнером на общественных началах? Мысль интересная, и даже возможно практичная, в плане получения опыта, жаль нет времени.
ПС crux оставил в дуалбуте, будет время обязательно разберусь.


Да и вот я еще о чем подумал, chromium же работает на стороне xserver, получается копать нужно в сторону локализации иксов, я правильно понял?


Дело в том, что хромой и производные по идее должен подхватывать настройки окружения, он же на Gtk3/ Но это по идее, а без идеи что там в головах разработчиков - фик его знает.
PS. Чтобы дистрибутив появился на дистроваче, многие разработчики сами предлагают Ладиславу свои сборки. По крайней мере разрабы PiSi Linux так и сделали году в 12-13-ом. Если зайти на sourceforge, и набрать в поиске Arch например, то вывалится страниц десять с производными, и не факт что из них многие будут на дистроваче.
In Tux We Trust
Вне форума


когда русские буквы квадратами показывает
может банально шрифтов каких-то не хватает?
Долой DE! Даёшь WM!
Вне форума


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


@Tsvi, Привет!
читал, размышлял... ))
у меня была похожая проблема с либрофисом, какой шрифт оно хочет, я так и не выяснил, но помогла смена темы оформления.
Долой DE! Даёшь WM!
Вне форума


Зависит от ДЕ вообще то и от его умолчаний.
In Tux We Trust
Вне форума


но помогла смена темы оформления
Линукс такой линукс
[ Сгенерировано за 0.025 сек, 9 запросов выполнено - Использовано памяти: 1.71 Мбайт (Пик: 1.78 Мбайт) ]