SHOW:
|
|
- or go back to the newest paste.
| 1 | ВВЕДЕНИЕ | |
| 2 | ||
| 3 | Что такое Gentoo Linux и в чём его плюсы-минусы? | |
| 4 | Гента - это метадистрибутив Linux на базе открытых исходников. Сие означает: | |
| 5 | 1. После установки вы получите только консоль с выходом интернет, всё остальное пользователь допиливает сам. | |
| 6 | 2. При установке приложений скачивается не готовый бинарник, а исходный код, из которого собирается само приложение. | |
| 7 | После закачки кода приложение собирается автоматически на основе установленных пользователем локальных и/или глобальных параметров. | |
| 8 | ||
| 9 | Плюсы: | |
| 10 | 1. Из исходного кода можно собрать идеальную конфетку для себя любимого, отбросив ненужности. | |
| 11 | 2. Код оптимизируется под ваше железо. | |
| 12 | 3. Единый репозиторий для всего вообще. Например, чтобы скачать firefox или chromium вам не нужно ковырять файлы данных и вписывать дополнительные репозитории, достаточно просто написать "emerge firefox" или "emerge chromium" | |
| 13 | 4. Наверное, самый тонконастраиваемый дистрибутив из всех. | |
| 14 | 5. Система очень стабильна и надёжна: достаточно один раз настроить и всё будет работать как атомные часы. Хоть целую вечность. | |
| 15 | ||
| 16 | Минусы: | |
| 17 | 1. Компиляция бинарников - иногда дело долгое, а иногда даже очень долгое. | |
| 18 | 2. Чтобы собрать идеальную конфетку нужен опыт и знания. И копипаста тут бессильна. | |
| 19 | ||
| 20 | ||
| 21 | Гайд предназначен для малоопытных пользователей Linux, которые хотят установить Генту посредством копи-пасты. | |
| 22 | Тут следует уточнить, что данный дистрибутив не сильно дружелюбен к копипасте вообще, поэтому мы очень сильно сократим и упростим некоторые "сложности", чтобы у нас всё получилось. Кое-где всё же придётся применить и свой интеллект, поэтому никаких гарантий идеальной установки я не даю. | |
| 23 | ||
| 24 | Задача: установить Gentoo С НУЛЯ с графической средой, минимальным набором программ для удобства и перевести всё на русский язык. | |
| 25 | Проще говоря, вы получите систему с рабочим столом, браузером, файловым менеджером. Это будет основа, всё остальное вы сможете настроить и перенастроить ещё не раз. Когда угодно. | |
| 26 | ||
| 27 | ВНИМАНИЕ: Инструкция расчитана на установку Gentoo amd64 на загрузочную USB-флешку с подключённым проводным интернетом. | |
| 28 | ||
| 29 | Примерное время на установку всего: ~4-5 часов (здесь и далее ориентировка примерного времени сборки на процессор i7, менее производительные затребуют больше времени) | |
| 30 | Непосредственное участие пользователя: около 20-30 минут. | |
| 31 | ||
| 32 | НАЧАЛО | |
| 33 | ||
| 34 | 0. Готовим чистую, отформатированную в FAT32 флешку минимум на 4 Gb ёмкостью. | |
| 35 | 1. Качаем Hybrid ISO (LiveDVD) образ отсюда: https://www.gentoo.org/downloads/ | |
| 36 | 2. Качаем Universal USB Installer отсюда http://www.pendrivelinux.com/universal-usb-installer-easy-as-1-2-3/ | |
| 37 | 3. Открываем Universal USB Installer, в Step1 выбираем Gentoo, далее указываем путь к скачанному ISO, указываем на какую флешку записывать и жмём Create. | |
| 38 | ||
| 39 | ||
| 40 | УСТАНОВКА | |
| 41 | ||
| 42 | Здесь и далее при установке пакетов используется алгоритм "emerge пакет", например "emerge firefox". Как только вы введете команду и нажмете ENTER сразу же пойдет загрузка. | |
| 43 | Если вы хотите, чтобы программа спрашивала у вас подтверждение используйте ключ -av пример: "emerge -av пакет". | |
| 44 | ||
| 45 | 1. Загружаемся с установочного диска, на рабочем столе тыкаем ярлык Konsole и первым делом проверяем есть ли интернет: | |
| 46 | ping -c3 ya.ru | |
| 47 | ||
| 48 | Пакеты пошли? Всё хорошо, идём дальше. | |
| 49 | ||
| 50 | ВНИМАНИЕ! Если вы выбрали Hybrid ISO (LiveDVD) образ, как я и советовал сделать, в консоле вбиваем команды | |
| 51 | passwd ваш_пароль | |
| 52 | попросит повторить - повторяем, запоминаем | |
| 53 | su | |
| 54 | вводим тот самый пароль и дальше работаем уже как SuperUser | |
| 55 | ||
| 56 | 2. Открываем программу cfdisk и смотрим, что имеем | |
| 57 | cfdisk | |
| 58 | ||
| 59 | 3. Ограничимся тремя разделами: boot, swap, / | |
| 60 | Выбираем Free Space (свободное место) и жмём [ Write ] | |
| 61 | Создаём раздел с 128М | |
| 62 | Создаём раздел с 2G | |
| 63 | Создаём раздел со всем оставшимся местом | |
| 64 | На раздел с 128 мегабайтами ставим * [ Bootable ] | |
| 65 | ||
| 66 | Предположим, что у нас это разделы | |
| 67 | /dev/sda1 | |
| 68 | /dev/sda2 | |
| 69 | /dev/sda3 | |
| 70 | НО У ВАС ЭТО МОГУТ БЫТЬ СОВСЕМ ДРУГИЕ ЦИФРЫ (не sda1,sda2,sda3, а sda5,sda6,sda7, например), ЗАПОМНИТЕ ИХ | |
| 71 | ||
| 72 | Нажимаем [ Write ] и выходим [ Quit ] | |
| 73 | ||
| 74 | 4. Создаём файловые системы, подключаем свап | |
| 75 | mkfs.vfat /dev/sda1 | |
| 76 | mkfs.ext4 /dev/sda3 | |
| 77 | mkswap /dev/sda2 | |
| 78 | swapon /dev/sda2 | |
| 79 | cd /mnt/gentoo | |
| 80 | ||
| 81 | 5. Монтируем разделы на диск | |
| 82 | mount /dev/sda3 /mnt/gentoo | |
| 83 | mkdir /mnt/gentoo/boot | |
| 84 | (если EFI) mkdir /mnt/gentoo/boot/efi | |
| 85 | mount /dev/sda1 /mnt/gentoo/boot | |
| 86 | (если EFI) mount /mnt/gentoo/boot/efi | |
| 87 | ||
| 88 | 6. Скачиваем stage 3 и дерево портажей | |
| 89 | links http://mirror.yandex.ru/gentoo-distfiles там идём к /releases/amd64/autobuilds/current-stage3-amd64/stage3-amd64-20150924.tar.bz2 | |
| 90 | links http://mirror.yandex.ru/gentoo-distfiles там идём к /snapshots/portage-latest.tar.bz2 | |
| 91 | После скачивания выходим кнопкой Q | |
| 92 | ------------------------------------------------------------ | |
| 93 | ||
| 94 | 7. Распаковываем. Это может занять порядка 5-10 минут. | |
| 95 | tar xvjpf stage3-*.tar.bz2 && tar xvjf /mnt/gentoo/portage-latest.tar.bz2 -C /mnt/gentoo/usr | |
| 96 | ||
| 97 | 7.1 (необязательный, но желательный пункт) Указываем немного параметров для оптимизации. Это ускорит процесс компиляции. | |
| 98 | nano /mnt/gentoo/etc/portage/make.conf | |
| 99 | В самом верху добавляем строку: | |
| 100 | MAKEOPTS="-jx" | |
| 101 | Вместо х укажите кол-во ядер вашего процессора +1, например, если у вас 8 ядер (или 4 с гипертредингом) то пишите MAKEOPTS="-j9" | |
| 102 | Выходим ctrl+x жмём y для сохранения | |
| 103 | ||
| 104 | 8. Настраиваем портаж | |
| 105 | ----------------СТАРЫЙ СПОСОБ (проверенно)---------------- | |
| 106 | mirrorselect -i -o >> /mnt/gentoo/etc/portage/make.conf | |
| 107 | Выбираем Yandex | |
| 108 | ---------------------------------------------------------- | |
| 109 | ||
| 110 | --------------НОВЫЙ СПОСОБ (не проверялся)---------------- | |
| 111 | mkdir /mnt/gentoo/etc/portage/repos.conf | |
| 112 | cp /mnt/gentoo/usr/share/portage/config/repos.conf /mnt/gentoo/etc/portage/repos.conf/gentoo.conf | |
| 113 | ---------------------------------------------------------- | |
| 114 | cp -L /etc/resolv.conf /mnt/gentoo/etc/ | |
| 115 | ||
| 116 | 9. Монтируем разделы proc, sys, dev | |
| 117 | mount -t proc none /mnt/gentoo/proc | |
| 118 | mount -o bind /dev /mnt/gentoo/dev | |
| 119 | mount -t sysfs none /mnt/gentoo/sys | |
| 120 | ||
| 121 | 10. Переходим в нашу систему через chroot и обновляем дерево портажей | |
| 122 | chroot /mnt/gentoo /bin/bash | |
| 123 | env-update && source /etc/profile | |
| 124 | export PS1="(chroot) $PS1" | |
| 125 | emerge --sync | |
| 126 | ||
| 127 | 11. Читаем новости и выбираем профиль | |
| 128 | eselect news read | |
| 129 | eselect profile set 3 | |
| 130 | ||
| 131 | 12. Настроим кодировку, раскладку и время | |
| 132 | nano /etc/locale.gen | |
| 133 | Стираем всё и добавляем: | |
| 134 | en_US.UTF-8 UTF-8 | |
| 135 | ru_RU.UTF-8 UTF-8 | |
| 136 | Выходим ctrl+x жмём y для сохранения | |
| 137 | ||
| 138 | cp /usr/share/zoneinfo/Europe/Moscow /etc/localtime | |
| 139 | nano /etc/conf.d/keymaps | |
| 140 | KEYMAP="us" меняем на KEYMAP="ru" | |
| 141 | Выходим ctrl+x жмём y для сохранения | |
| 142 | ||
| 143 | nano /etc/conf.d/clock | |
| 144 | Откроется пустое окно, пишем туда: | |
| 145 | CLOCK="local" | |
| 146 | TIMEZONE="Europe/Moscow" | |
| 147 | Выходим ctrl+x жмём y для сохранения | |
| 148 | ||
| 149 | 13. Качаем программы для сборки ядра и собираем ядро (займет ~10-15 минут) | |
| 150 | emerge gentoo-sources genkernel | |
| 151 | genkernel all | |
| 152 | ||
| 153 | 14. Качаем модули и добавляем их в автозагрузку (займёт ~15-20 минут) | |
| 154 | emerge dhcpcd vixie-cron udev syslog-ng | |
| 155 | rc-update add dhcpcd default | |
| 156 | rc-update add syslog-ng default | |
| 157 | rc-update add vixie-cron default | |
| 158 | rc-update add udev boot | |
| 159 | ||
| 160 | 15. Правим fstab | |
| 161 | nano /etc/fstab | |
| 162 | Меняем | |
| 163 | /dev/BOOT на /dev/sda1 | |
| 164 | /dev/ROOT на /dev/sda3 | |
| 165 | /dev/SWAP на /dev/sda2 | |
| 166 | (Если EFI) меняем в BOOT строке /boot на /boot/efi и файловую систему (след параметр) меняем на vfat | |
| 167 | ПОМНИТЕ, У ВАС ЭТО МОГУТ БЫТЬ ДРУГИЕ ЦИФРЫ! | |
| 168 | /dev/cdrom - ставим # перед этой строкой (#/dev/cdrom) или просто стираем строку | |
| 169 | ||
| 170 | ||
| 171 | 16. Настраиваем сеть | |
| 172 | ifconfig | |
| 173 | Смотрим имя своего адаптера (смотрим в самом начале будет eth0 либо enp3s0 либо что-то в этом духе). Допустим, что наш адаптер это eth0 | |
| 174 | nano /etc/conf.d/net | |
| 175 | Откроется пустое окно, пишем туда | |
| 176 | config_eth0="dhcp" | |
| 177 | ||
| 178 | Если у вас не eth0 то вместо него впишите имя своего адаптера | |
| 179 | Выходим ctrl+x жмём y для сохранения | |
| 180 | ||
| 181 | 17. Создаём сетевую службу и ставим её в автозапуск | |
| 182 | cd /etc/init.d | |
| 183 | ln -s net.lo net.eth0 | |
| 184 | rc-update add net.eth0 default | |
| 185 | Если у вас не eth0 то вместо него впишите имя своего адаптера | |
| 186 | ||
| 187 | 18. Ставим загрузчик grub2 и os-prober (займёт ~10-20 минут) | |
| 188 | emerge grub os-prober | |
| 189 | ||
| 190 | --------------------ЕСЛИ BIOS------------------ | |
| 191 | grub2-install /dev/sda | |
| 192 | grub2-mkconfig -o /boot/grub/grub.cfg | |
| 193 | ----------------------------------------------- | |
| 194 | ||
| 195 | --------------------ЕСЛИ UEFI------------------ | |
| 196 | echo GRUB_PLATFORMS="efi-64" >> /etc/portage/make.conf (если у вас 32 битка то заменяем efi-64 на efi-32) | |
| 197 | grub2-install --target=x86_64-efi --efi-directory=/boot | |
| 198 | grub2-mkconfig -o /boot/grub/grub.cfg | |
| 199 | ----------------------------------------------- | |
| 200 | Смотрим, если он определил системы, значит всё хорошо. | |
| 201 | ||
| 202 | 18. Ставим пароль для суперпользователя | |
| 203 | passwd ваш_пароль | |
| 204 | ||
| 205 | 19. Перезагружаемся | |
| 206 | exit | |
| 207 | cd | |
| 208 | reboot | |
| 209 | ||
| 210 | 20. Проверяем, всё ли хорошо? | |
| 211 | Login: root | |
| 212 | Password: ваш_пароль | |
| 213 | ping -c3 ya.ru | |
| 214 | Если пинг пошёл - мы молодцы, всё сделали правильно и самая сложная часть уже позади, можно передохнуть. | |
| 215 | ||
| 216 | НАСТРОЙКА | |
| 217 | ||
| 218 | 1. Настройка видеокарты. | |
| 219 | Посмотреть какая у вас видеокарта можно командой | |
| 220 | lspci | grep -i VGA | |
| 221 | --------------------------------------------------------------------------- | |
| 222 | а) Если у вас Radeon то сперва нужно сходить https://wiki.gentoo.org/wiki/Radeon и посмотреть там табличку Feature support. В зависимости от вашей карты вписывавем параметры | |
| 223 | nano /etc/portage/make.conf | |
| 224 | ||
| 225 | Допустим, у нас видеокарта R9. Тогда самом низу добавляем | |
| 226 | VIDEO_CARDS="radeon radeonsi" | |
| 227 | Если другая, то добавляйте данные в VIDEO_CARDS="" на основании таблицы с сайта (столбик VIDEO_CARDS). Если это слишком сложно, попробуйте добавить просто VIDEO_CARDS="radeon" | |
| 228 | ||
| 229 | Обновляем систему | |
| 230 | emerge --ask --changed-use --deep @world | |
| 231 | ||
| 232 | Качаем драйвер | |
| 233 | emerge radeon-ucode | |
| 234 | Если будет ругаться, попробуйте | |
| 235 | emerge linux-firmware | |
| 236 | --------------------------------------------------------------------------- | |
| 237 | ||
| 238 | b) Если у вас Nvidia, то вам повезло - делать почти ничего не надо. | |
| 239 | nano /etc/portage/make.conf | |
| 240 | В самом низу добавляем | |
| 241 | VIDEO_CARDS="nouveau" | |
| 242 | Выходим ctrl+x жмём y для сохранения | |
| 243 | Обновляем систему | |
| 244 | emerge --ask --changed-use --deep @world | |
| 245 | --------------------------------------------------------------------------- | |
| 246 | ||
| 247 | c) Если у вас Intel (встроенная видеокарта), то как и в случае с Radeon нам нужны таблицы и данные. Идём https://wiki.gentoo.org/wiki/Intel и смотрим таблицу, данные берем из столбика VIDEO_CARDS. | |
| 248 | nano /etc/portage/make.conf | |
| 249 | В самом низу добавляем | |
| 250 | VIDEO_CARDS="данные из таблицы" | |
| 251 | Выходим ctrl+x жмём y для сохранения | |
| 252 | ||
| 253 | Обновляем систему | |
| 254 | emerge --ask --changed-use --deep @world | |
| 255 | --------------------------------------------------------------------------- | |
| 256 | ||
| 257 | Перезагружаемся. Консоль должна поменять разрешение на разрешение вашего экрана. | |
| 258 | ||
| 259 | 2. Установка X-Server и Cinnamon (займёт ~3 часа) | |
| 260 | nano /etc/portage/make.conf | |
| 261 | Найдите строку USE и смените её на: | |
| 262 | USE="icu pulseaudio X glamor bindist python NetworkManager consolekit infinality minizip sqlite gnome-keyring" | |
| 263 | Выходим ctrl+x жмём y для сохранения | |
| 264 | ||
| 265 | nano .xinitrc | |
| 266 | Откроется пустое окно, пишем туда | |
| 267 | exec cinnamon-session | |
| 268 | Выходим ctrl+x жмём y для сохранения | |
| 269 | ||
| 270 | ||
| 271 | ||
| 272 | Вбиваем эти команды, жмём Enter и идём спать/на работу/на учёбу. К вашему приходу как раз всё будет готово. | |
| 273 | emerge xorg-server cinnamon | |
| 274 | Далее | |
| 275 | emerge gtk+extra xf86-video-modesetting sudo terminator | |
| 276 | rc-update add dbus default | |
| 277 | rc-update add consolekit default | |
| 278 | rc-update add NetworkManager default | |
| 279 | rc-update del net.eth0 default (вместо eth0 имя своей сетевой карты, которое вводили ранее) | |
| 280 | reboot | |
| 281 | 3. Скрещиваем пальцы и пишем заветное | |
| 282 | startx | |
| 283 | ||
| 284 | Если всё хорошо, вы войдёте в Cinnamon. Если вылетела ошибка и краш, попробуйте обновить систему: emerge -uDNav world | |
| 285 | (!) После каждой перезагрузки, чтобы попасть в систему вам нужно будет вбивать логин, пароль и вводить команду "startx". Это дело можно автоматизировать с помощью разных логин менеджеров, но об этом позже. | |
| 286 | ||
| 287 | 4. Первым делом зайдите в настройки и создайте нового пользователя, добавте его во все возможные группы и придумайте пароль от 6 символов, одни только цифры нельзя, обязательно добавте символ или букву. | |
| 288 | В меню найдите терминал Terminator и вбейте команду | |
| 289 | visudo | |
| 290 | ||
| 291 | Ищём там строки и убираем значок # перед ними. Это называется "раскомментировать" опцию. | |
| 292 | %wheel ALL=(ALL) ALL | |
| 293 | %wheel ALL=(ALL) NOPASSWD: ALL (Я бы не советовал трогать эту строку т.к. она полностью отключит необходимость вводить пароль после sudo. Это как бы небезопасно, лучше оставьте # перед ней) | |
| 294 | ||
| 295 | Выходим ctrl+x жмём y для сохранения | |
| 296 | ||
| 297 | ||
| 298 | 5. Заходим с нового пользователя | |
| 299 | Либо ищем в меню Logout/End-Session (или как-то так) | |
| 300 | Либо жмём ALT+CTRL+F1, выходим в консоль и нажимаем CTRL+C, если процесс не завершился | |
| 301 | Выходим из root: | |
| 302 | exit | |
| 303 | ||
| 304 | Логинимся под новым пользователем, как только вы это сделали, добавьте сессию Cinnamon: | |
| 305 | nano .xinitrc | |
| 306 | Откроется пустое окно, пишем туда | |
| 307 | exec cinnamon-session | |
| 308 | Выходим ctrl+x жмём y для сохранения | |
| 309 | startx | |
| 310 | ||
| 311 | 6. По желанию можно установить браузер. Для этого жмём меню, ищем там программу Terminator, это наша виртуальная консоль. | |
| 312 | Бинарник файрфокса (быстрая установка): sudo emerge firefox-bin | |
| 313 | Сорц файрфокс (медленная установка): sudo emerge firefox | |
| 314 | Хром: sudo emerge chromium | |
| 315 | ||
| 316 | ||
| 317 | ||
| 318 | РУССИФИКАЦИЯ | |
| 319 | ||
| 320 | nano /etc/env.d/02locale | |
| 321 | Откроется пустое окно, пишем туда | |
| 322 | LC_ALL="" | |
| 323 | LANG="ru_RU.UTF-8" | |
| 324 | Выходим ctrl+x жмём y для сохранения | |
| 325 | ||
| 326 | nano /etc/conf.d/consolefont | |
| 327 | Меняем consolefont="default8x16" на consolefont="cyr-sun16" | |
| 328 | Выходим ctrl+x жмём y для сохранения | |
| 329 | ||
| 330 | eselect locale list | |
| 331 | Ищем ru_RU.utf8 (обычно под номером 4) | |
| 332 | eselect locale set 4 | |
| 333 | ||
| 334 | Перезагружаемся | |
| 335 | ||
| 336 | UPD: Рекомендую установить пакет шрифтов Noto, они очень хорошо смотрятся как системные шрифты и включают в себя поддержку многих языков т.е. в браузере большая часть языком будет отображаться не крокозябрами | |
| 337 | sudo emerge noto | |
| 338 | ||
| 339 | ||
| 340 | ||
| 341 | АВТОЛОГИН | |
| 342 | ||
| 343 | 1. Если хотите запускать десктоп без вводов логинов и паролей то качаем SLIM: | |
| 344 | sudo emerge slim | |
| 345 | ||
| 346 | 2. Настраиваем XDM. | |
| 347 | sudo nano /etc/conf.d/xdm | |
| 348 | Меняем строку DISPLAYMANAGER="xdm" на DISPLAYMANAGER="slim" | |
| 349 | Выходим ctrl+x жмём y для сохранения | |
| 350 | ||
| 351 | 3. Делаем ему автозагрузку | |
| 352 | rc-update add xdm default | |
| 353 | ||
| 354 | 4. Настраиваем автологин | |
| 355 | sudo nano /etc/slim.conf | |
| 356 | Ищем строки и меням их значение, а так же убираем перед ними #: | |
| 357 | default_user ваш логин | |
| 358 | auto_login yes | |
| 359 | ||
| 360 | Ищем строки и меняем # делай вот такой вид: | |
| 361 | # login_cmd exec /bin/sh - ~/.xinitrc %session | |
| 362 | login_cmd exec /bin/bash -login ~/.xinitrc %session | |
| 363 | # login_cmd exec /bin/bash -login /usr/share/slim/Xsession %session | |
| 364 | ||
| 365 | Выходим ctrl+x жмём y для сохранения | |
| 366 | ||
| 367 | ||
| 368 | ||
| 369 | ||
| 370 | ||
| 371 | ||
| 372 | КРАТКИЙ ВВОД В КОНСОЛЬКУ | |
| 373 | Если вы работаете под обычным пользователем, перед этими командами ставим sudo (sudo emerge итд) | |
| 374 | ||
| 375 | emerge пакет установка | |
| 376 | emerge --autounmask-write =пакет-версия разрешить устанавливать версии пакетов не по-умолчанию (пример emerge --autounmask-write =firefox-40.0.3). Имеющиеся версии пакетов можно легко нагуглить "gentoo имя программы, в первых ссылках будет оф репозиторий там смотрим какие есть версии". Либо сразу искать тут https://packagestest.gentoo.org/ | |
| 377 | ||
| 378 | dispatch-conf просмотреть (l) измененные конфиги и подтвердить (u) либо опровергнуть (z) изменения. Вводите эту команду после использования команды выше, чтобы подтвердить изменения и после этого уже скачивайте нужную вам версию. | |
| 379 | ||
| 380 | emerge -C пакет удаление | |
| 381 | emerge --sync синхронизация | |
| 382 | emerge -uDN world обновление всего | |
| 383 | emerge -uDN system обновление только системных пакетов | |
| 384 | emerge --depclean удаление лишних зависимостей после чистки системы или удаления какой-либо программы | |
| 385 | emerge -e world полная пересборка ВСЕЙ СИСТЕМЫ (это не просто долго, это ОЧЕНЬ долго) |