Π§ΠΈΡ‚Π°ΠΉΡ‚Π΅ ΠΊΠ½ΠΈΠ³ΠΈ ΠΎΠ½Π»Π°ΠΉΠ½ Π½Π° Bookidrom.ru! БСсплатныС ΠΊΠ½ΠΈΠ³ΠΈ Π² ΠΎΠ΄Π½ΠΎΠΌ ΠΊΠ»ΠΈΠΊΠ΅

Π§ΠΈΡ‚Π°Ρ‚ΡŒ ΠΎΠ½Π»Π°ΠΉΠ½ Β«Linux: ПолноС руководство». Π‘Ρ‚Ρ€Π°Π½ΠΈΡ†Π° 55

Автор ДСнис ΠšΠΎΠ»ΠΈΡΠ½ΠΈΡ‡Π΅Π½ΠΊΠΎ

Рис. 7.8. Π’Ρ‹Π±ΠΎΡ€ ΠΏΠ°ΠΊΠ΅Ρ‚Π° для установки


Рис. 7.9. ΠŸΡ€ΠΎΠ²Π΅Ρ€ΠΊΠ° зависимостСй ΠΏΠ°ΠΊΠ΅Ρ‚Π°

Для поиска установлСнных ΠΏΠ°ΠΊΠ΅Ρ‚ΠΎΠ² ΠΈ входящих Π² Π½ΠΈΡ… Ρ„Π°ΠΉΠ»ΠΎΠ² слуТат ΠΊΠΎΠΌΠ°Π½Π΄Ρ‹ Fileβ†’Find Package ΠΈ Fileβ†’Find File.

Apt: Debian-совмСстимый ΠΌΠ΅Π½Π΅Π΄ΠΆΠ΅Ρ€ ΠΏΠ°ΠΊΠ΅Ρ‚ΠΎΠ²

БистСма управлСния ΠΏΠ°ΠΊΠ΅Ρ‚Π°ΠΌΠΈ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ½ΠΎΠ³ΠΎ обСспСчСния APT Π±Ρ‹Π»Π° Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚Π°Π½Π° для Debian Linux, Π½ΠΎ впослСдствии заимствована ΠΌΠ½ΠΎΠ³ΠΈΠΌΠΈ Red Hat-совмСстимыми дистрибутивами. Π’ сам Red Hat ΠΈ Π΅Π³ΠΎ ΠΏΠΎΡ‚ΠΎΠΌΠΊΠΈ (Fedora Core) эта систСма Π½Π΅ Π²ΠΊΠ»ΡŽΡ‡Π΅Π½Π°, Π½ΠΎ Π²ΠΊΠ»ΡŽΡ‡Π΅Π½Π°, Π½Π°ΠΏΡ€ΠΈΠΌΠ΅Ρ€, Π² состав ALT Linux, ΠΈ Π΅Π΅ ΠΌΠΎΠΆΠ½ΠΎ ΡΠΊΠ°Ρ‡Π°Ρ‚ΡŒ ΠΈΠ· рСпозитория Π‘ΠΈΠ·ΠΈΡ„ http://sisyphus.ru/srpm/apt/get.

Для управлСния ΠΏΠ°ΠΊΠ΅Ρ‚Π°ΠΌΠΈ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅Ρ‚ΡΡ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ° apt-get. Π€ΠΎΡ€ΠΌΠ°Ρ‚ Π΅Π΅ Π²Ρ‹Π·ΠΎΠ²Π°:

$ apt-get [ΠΊΠ»ΡŽΡ‡ΠΈ] [ΠΊΠΎΠΌΠ°Π½Π΄Ρ‹] [ΠΏΠ°ΠΊΠ΅Ρ‚Ρ‹]

Π‘Π°ΠΌΡ‹Π΅ ΠΏΠΎΠ»Π΅Π·Π½Ρ‹Π΅ ΠΊΠΎΠΌΠ°Π½Π΄Ρ‹ пСрСчислСны Π² Ρ‚Π°Π±Π»ΠΈΡ†Π΅ 7.4.


ΠšΠΎΠΌΠ°Π½Π΄Ρ‹ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡ‹ apt Π’Π°Π±Π»ΠΈΡ†Π° 7.4

Команда НазначСниС update Π˜ΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅Ρ‚ΡΡ для синхронизации Ρ„Π°ΠΉΠ»ΠΎΠ² описаний ΠΏΠ°ΠΊΠ΅Ρ‚ΠΎΠ² с ΠΈΡ… источником, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΉ ΡƒΠΊΠ°Π·Π°Π½ Π² Ρ„Π°ΠΉΠ»Π΅ /Π΅tс/Π°pt/sources.list upgrade Π˜ΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅Ρ‚ΡΡ для обновлСния установлСнного ΠΏΠ°ΠΊΠ΅Ρ‚Π° Π΄ΠΎ новСйшСй вСрсии, доступной Π² источникС. ΠœΠΎΠΆΠ΅Ρ‚ Ρ‚Π°ΠΊΠΆΠ΅ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒΡΡ для обновлСния всСх установлСнных Π² систСмС ΠΏΠ°ΠΊΠ΅Ρ‚ΠΎΠ². НовыС ΠΏΠ°ΠΊΠ΅Ρ‚Ρ‹ ΠΏΡ€ΠΈ этом Π½Π΅ ΡƒΡΡ‚Π°Π½Π°Π²Π»ΠΈΠ²Π°ΡŽΡ‚ΡΡ. ΠŸΠ΅Ρ€Π΅Π΄ этой ΠΊΠΎΠΌΠ°Π½Π΄ΠΎΠΉ ΠΎΠ±ΡΠ·Π°Ρ‚Π΅Π»ΡŒΠ½Π° Π΄ΠΎΠ»ΠΆΠ½Π° Π±Ρ‹Ρ‚ΡŒ Π²Ρ‹ΠΏΠΎΠ»Π½Π΅Π½Π° ΠΊΠΎΠΌΠ°Π½Π΄Π° update dist-upgrade Π‘ΠΎΠ»Π΅Π΅ Β«ΠΈΠ½Ρ‚Π΅Π»Π»Π΅ΠΊΡ‚ΡƒΠ°Π»ΡŒΠ½Π°ΡΒ» вСрсия ΠΊΠΎΠΌΠ°Π½Π΄Ρ‹ upgrade. ΠšΡ€ΠΎΠΌΠ΅ установки Π½ΠΎΠ²Ρ‹Ρ… вСрсий ΠΏΠ°ΠΊΠ΅Ρ‚ΠΎΠ², ΠΎΠ½Π° Ρ‚Π°ΠΊΠΆΠ΅ ΠΏΡ€ΠΎΠ²Π΅Ρ€ΠΈΡ‚ измСнившиСся зависимости ΠΌΠ΅ΠΆΠ΄Ρƒ Π½ΠΎΠ²Ρ‹ΠΌΠΈ вСрсиями ΠΏΠ°ΠΊΠ΅Ρ‚ΠΎΠ² ΠΈ попытаСтся Ρ€Π°Π·Ρ€Π΅ΡˆΠΈΡ‚ΡŒ ΠΊΠΎΠ½Ρ„Π»ΠΈΠΊΡ‚Ρ‹ Π² ΠΏΠΎΠ»ΡŒΠ·Ρƒ Π±ΠΎΠ»Π΅Π΅ Π²Π°ΠΆΠ½Ρ‹Ρ… ΠΏΠ°ΠΊΠ΅Ρ‚ΠΎΠ² install Установка ΠΏΠ°ΠΊΠ΅Ρ‚Π°. Если источник, ΠΈΠ· ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠ³ΠΎ Π²Ρ‹ ΡΠΎΠ±ΠΈΡ€Π°Π΅Ρ‚Π΅ΡΡŒ ΡƒΡΡ‚Π°Π½Π°Π²Π»ΠΈΠ²Π°Ρ‚ΡŒ этот ΠΏΠ°ΠΊΠ΅Ρ‚, пСрСчислСн Π² Ρ„Π°ΠΉΠ»Π΅ источников, Ρ‚ΠΎ Π² качСствС ΠΈΠΌΠ΅Π½ΠΈ ΠΏΠ°ΠΊΠ΅Ρ‚Π° Π½ΡƒΠΆΠ½ΠΎ ΡƒΠΊΠ°Π·Ρ‹Π²Π°Ρ‚ΡŒ Ρ‚ΠΎΠ»ΡŒΠΊΠΎ имя ΡƒΠΏΠ°ΠΊΠΎΠ²Π°Π½Π½ΠΎΠΉ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡ‹ remove Π£Π΄Π°Π»Π΅Π½ΠΈΠ΅ ΠΏΠ°ΠΊΠ΅Ρ‚ΠΎΠ² check Π˜ΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅Ρ‚ΡΡ для диагностики Π½Π°Ρ€ΡƒΡˆΠ΅Π½Π½Ρ‹Ρ… зависимостСй ΠΌΠ΅ΠΆΠ΄Ρƒ ΠΏΠ°ΠΊΠ΅Ρ‚Π°ΠΌΠΈ clean ΠžΡ‡ΠΈΡ‰Π°Π΅Ρ‚ локальноС Ρ…Ρ€Π°Π½ΠΈΠ»ΠΈΡ‰Π΅ ΠΏΠΎΠ»ΡƒΡ‡Π΅Π½Π½Ρ‹Ρ… Ρ„Π°ΠΉΠ»ΠΎΠ² ΠΏΠ°ΠΊΠ΅Ρ‚ΠΎΠ². ΠŸΠ΅Ρ€Π΅Π΄ установкой ΠΏΠ°ΠΊΠ΅Ρ‚Ρ‹ ΠΊΠΎΠΏΠΈΡ€ΡƒΡŽΡ‚ΡΡ ΠΈΠ· источника Π² локальноС Ρ…Ρ€Π°Π½ΠΈΠ»ΠΈΡ‰Π΅, Π° ΠΎΡ‚Ρ‚ΡƒΠ΄Π° ΠΏΠΎΡ‚ΠΎΠΌ ΡƒΡΡ‚Π°Π½Π°Π²Π»ΠΈΠ²Π°ΡŽΡ‚ΡΡ. ΠŸΠΎΠ»ΡŒΠ·ΡƒΠΉΡ‚Π΅ΡΡŒ этой ΠΊΠΎΠΌΠ°Π½Π΄ΠΎΠΉ врСмя ΠΎΡ‚ Π²Ρ€Π΅ΠΌΠ΅Π½ΠΈ для освобоТдСния мСста Π½Π° дискС

Π’ ΠΎΡ‚Π»ΠΈΡ‡ΠΈΠ΅ ΠΎΡ‚ систСмы rpm, которая Ρ‚ΠΎΠ»ΡŒΠΊΠΎ Π΄ΠΎΠΊΠ»Π°Π΄Ρ‹Π²Π°Π»Π° ΠΎ Π½Π΅Ρ€Π°Π·Ρ€Π΅ΡˆΠ΅Π½Π½Ρ‹Ρ… зависимостях, прСдоставляя Π²Π°ΠΌ ΡΠΏΡ€Π°Π²Π»ΡΡ‚ΡŒΡΡ с Π½ΠΈΠΌΠΈ самому, ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ° apt-get пытаСтся Ρ€Π°Π·Ρ€Π΅ΡˆΠΈΡ‚ΡŒ зависимости ΡΠ°ΠΌΠΎΡΡ‚ΠΎΡΡ‚Π΅Π»ΡŒΠ½ΠΎ. Для этого ΠΎΠ½Π° ΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅Ρ‚ΡΡ Ρ„Π°ΠΉΠ»ΠΎΠΌ /etc/apt/sources.list, Π² ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠΌ пСрСчислСны источники ΠΏΠ°ΠΊΠ΅Ρ‚ΠΎΠ² (ΠΊΠ°Ρ‚Π°Π»ΠΎΠ³ΠΈ ΠΈ FTP-Π°Ρ€Ρ…ΠΈΠ²Ρ‹), ΠΊ ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΌ ΠΎΠ½Π° обращаСтся Π·Π° Π½Π΅ΠΎΠ±Ρ…ΠΎΠ΄ΠΈΠΌΡ‹ΠΌΠΈ ΠΏΠ°ΠΊΠ΅Ρ‚Π°ΠΌΠΈ. РаскоммСнтируйтС Π² Π½Π΅ΠΌ Π½ΡƒΠΆΠ½Ρ‹Π΅ строки ΠΈ Π΄ΠΎΠ±Π°Π²ΡŒΡ‚Π΅ свои.

ΠŸΡ€ΠΈ установкС Π³Ρ€ΡƒΠΏΠΏΡ‹ ΠΏΠ°ΠΊΠ΅Ρ‚ΠΎΠ² с ΠΏΠΎΠΌΠΎΡ‰ΡŒΡŽ apt-get Π±ΡƒΠ΄ΡŒΡ‚Π΅ Π²Π½ΠΈΠΌΠ°Ρ‚Π΅Π»ΡŒΠ½Ρ‹. ΠžΠ±Ρ‹Ρ‡Π½ΠΎ для установки Π³Ρ€ΡƒΠΏΠΏΡ‹ ΠΏΠ°ΠΊΠ΅Ρ‚ΠΎΠ² ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΡŽΡ‚ΡΡ символы шаблона Β«?Β» ΠΈ Β«*Β». Если Π½Π΅Ρ‚ ΠΏΠ°ΠΊΠ΅Ρ‚ΠΎΠ², ΠΈΠΌΠ΅Π½Π° ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Ρ… ΡΠΎΠ²ΠΏΠ°Π΄Π°ΡŽΡ‚ с ΡƒΠΊΠ°Π·Π°Π½Π½Ρ‹ΠΌ шаблоном, Ρ‚ΠΎ этот шаблон Π±ΡƒΠ΄Π΅Ρ‚ Ρ€Π°ΡΡΠΌΠ°Ρ‚Ρ€ΠΈΠ²Π°Ρ‚ΡŒΡΡ ΠΊΠ°ΠΊ Π²Ρ‹Ρ€Π°ΠΆΠ΅Π½ΠΈΠ΅ POSIX. Π’ этом случаС, Ссли Π²Ρ‹ ΡƒΠΊΠ°Π·Π°Π»ΠΈ шаблон Π°*, Ρ‚ΠΎ Π±ΡƒΠ΄ΡƒΡ‚ установлСны Π’Π‘Π• ΠΏΠ°ΠΊΠ΅Ρ‚Ρ‹, ΠΈΠΌΠ΅Π½Π° ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Ρ… содСрТат Π±ΡƒΠΊΠ²Ρƒ Β«Π°Β», Π° Π½Π΅ Ρ‚ΠΎΠ»ΡŒΠΊΠΎ Ρ‚Π΅, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ Π½Π°Ρ‡ΠΈΠ½Π°ΡŽΡ‚ΡΡ Π½Π° эту Π±ΡƒΠΊΠ²Ρƒ. Π­Ρ‚ΠΎ ΠΆΠ΅ касаСтся ΠΈ ΠΊΠΎΠΌΠ°Π½Π΄Ρ‹ remove.

Из ΠΊΠ»ΡŽΡ‡Π΅ΠΉ apt-get ΠΏΠΎΠ»Π΅Π·Π½Ρ‹ΠΌΠΈ для вас Π±ΡƒΠ΄ΡƒΡ‚ -f ΠΈ -d. ΠšΠ»ΡŽΡ‡ -f Ρ‚Ρ€Π΅Π±ΡƒΠ΅Ρ‚ ΠΏΠΎΠΏΡ‹Ρ‚Π°Ρ‚ΡŒΡΡ ΠΈΡΠΏΡ€Π°Π²ΠΈΡ‚ΡŒ Π½Π°Ρ€ΡƒΡˆΠ΅Π½Π½Ρ‹Π΅ зависимости, Π° ΠΏΡ€ΠΈ ΡƒΠΊΠ°Π·Π°Π½ΠΈΠΈ ΠΊΠ»ΡŽΡ‡Π° -d ΠΏΠ°ΠΊΠ΅Ρ‚Ρ‹ Ρ‚ΠΎΠ»ΡŒΠΊΠΎ ΡΠΊΠ°Ρ‡ΠΈΠ²Π°ΡŽΡ‚ΡΡ ΠΈΠ· источника, Π½ΠΎ Π½Π΅ ΡƒΡΡ‚Π°Π½Π°Π²Π»ΠΈΠ²Π°ΡŽΡ‚ΡΡ. ΠšΠ»ΡŽΡ‡ --no-upgrade, ΡƒΠΊΠ°Π·Π°Π½Π½Ρ‹ΠΉ ΠΏΡ€ΠΈ установкС Π³Ρ€ΡƒΠΏΠΏΡ‹ ΠΏΠ°ΠΊΠ΅Ρ‚ΠΎΠ², Π·Π°ΠΏΡ€Π΅Ρ‰Π°Π΅Ρ‚ ΠΎΠ±Π½ΠΎΠ²Π»ΡΡ‚ΡŒ Ρ‚Π΅ ΠΈΠ· Π½ΠΈΡ…, Ρ‡Ρ‚ΠΎ ΡƒΠΆΠ΅ установлСны. Π•Ρ‰Π΅ ΠΎΠ΄Π½Π° полСзная, Π½ΠΎ опасная Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡ‚ΡŒ β€” ΠΊΠ»ΡŽΡ‡ --force-yes, ΠΏΡ€ΠΈΠ½ΡƒΠΆΠ΄Π°ΡŽΡ‰ΠΈΠΉ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡƒ Π½Π΅ Π·Π°Π΄Π°Π²Π°Ρ‚ΡŒ вопросов, выполняя ΠΏΠΎΡ‚Π΅Π½Ρ†ΠΈΠ°Π»ΡŒΠ½ΠΎ Ρ€Π°Π·Ρ€ΡƒΡˆΠΈΡ‚Π΅Π»ΡŒΠ½Ρ‹Π΅ дСйствия. Иногда ΠΎΠ½Π° Π΄Π΅ΠΉΡΡ‚Π²ΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎ Π½Π΅ΠΎΠ±Ρ…ΠΎΠ΄ΠΈΠΌΠ°.

Для установки ΠΏΠ°ΠΊΠ΅Ρ‚Π° Π½Π΅ ΠΏΠΎ сСти, Π° с дистрибутивного ΠΊΠΎΠΌΠΏΠ°ΠΊΡ‚-диска ΠΏΡ€Π΅Π΄Π½Π°Π·Π½Π°Ρ‡Π΅Π½Π° ΠΊΠΎΠΌΠ°Π½Π΄Π° apt-cdrom.

7.5.3. Установка ΠΈΠ· ΠΏΠ°ΠΊΠ΅Ρ‚ΠΎΠ², содСрТащих исходный ΠΊΠΎΠ΄

Иногда Π² ΠΏΠ°ΠΊΠ΅Ρ‚Π°Ρ… RPM находятся Π½Π΅ ΠΎΡ‚ΠΊΠΎΠΌΠΏΠΈΠ»ΠΈΡ€ΠΎΠ²Π°Π½Π½Ρ‹Π΅ вСрсии ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌ, Π° ΠΈΡ… исходный ΠΊΠΎΠ΄. ΠŸΡ€ΠΈΠ·Π½Π°ΠΊΠΎΠΌ этого являСтся слово Β«srcΒ» вмСсто названия Π°Ρ€Ρ…ΠΈΡ‚Π΅ΠΊΡ‚ΡƒΡ€Ρ‹. Для установки Ρ‚Π°ΠΊΠΎΠ³ΠΎ ΠΏΠ°ΠΊΠ΅Ρ‚Π° Π²Π²Π΅Π΄ΠΈΡ‚Π΅:

$ rpm -iv <ΠΏΠ°ΠΊΠ΅Ρ‚>.src.rpm

ΠœΠ΅Π½Π΅Π΄ΠΆΠ΅Ρ€ ΠΏΠ°ΠΊΠ΅Ρ‚ΠΎΠ² распакуСт исходныС тСксты Π² ΠΊΠ°Ρ‚Π°Π»ΠΎΠ³ Red Hat: ΠΏΠΎ ΡƒΠΌΠΎΠ»Ρ‡Π°Π½ΠΈΡŽ это /usr/src/redhat, Π½ΠΎ Π²Ρ‹ ΠΌΠΎΠΆΠ΅Ρ‚Π΅ ΡƒΡΡ‚Π°Π½ΠΎΠ²ΠΈΡ‚ΡŒ Π΄Ρ€ΡƒΠ³ΠΎΠΉ ΠΊΠ°Ρ‚Π°Π»ΠΎΠ³ Π΄ΠΈΡ€Π΅ΠΊΡ‚ΠΈΠ²ΠΎΠΉ topdir Π² ΠΊΠΎΠ½Ρ„ΠΈΠ³ΡƒΡ€Π°Ρ†ΠΈΠΎΠ½Π½ΠΎΠΌ Ρ„Π°ΠΉΠ»Π΅ /etc/rpmrc. Π’ ΠΏΠΎΠ΄ΠΊΠ°Ρ‚Π°Π»ΠΎΠ³ SOURCES Π±ΡƒΠ΄ΡƒΡ‚ распакованы исходныС тСксты ΠΈ Π·Π°ΠΏΠ»Π°Ρ‚ΠΊΠΈ (ΠΏΠ°Ρ‚Ρ‡ΠΈ) ΠΊ Π½ΠΈΠΌ, Π² ΠΏΠΎΠ΄ΠΊΠ°Ρ‚Π°Π»ΠΎΠ³ SPECS β€” spec-Ρ„Π°ΠΉΠ»Ρ‹, содСрТащиС инструкции ΠΏΠΎ ΠΏΡ€ΠΈΠΊΠ»Π°Π΄Ρ‹Π²Π°Π½ΠΈΡŽ Π·Π°ΠΏΠ»Π°Ρ‚ΠΎΠΊ ΠΈ ΠΏΠΎΡΠ»Π΅Π΄ΡƒΡŽΡ‰Π΅ΠΉ сборкС. Π§Ρ‚ΠΎΠ±Ρ‹ ΡΠΎΠ±Ρ€Π°Ρ‚ΡŒ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡƒ, Π²Ρ‹ΠΏΠΎΠ»Π½ΠΈΡ‚Π΅ ΠΊΠΎΠΌΠ°Π½Π΄Ρ‹:

$ cd /usr/src/redhat/SPECS

$ rpm -bp <ΠΏΠ°ΠΊΠ΅Ρ‚>.spec

Π―Π²Π»Π΅Π½ΠΈΠ΅ ΠΏΠ°Ρ‚Ρ‡Π° (Π·Π°ΠΏΠ»Π°Ρ‚ΠΊΠΈ β€” ΠΌΡ‹ ΠΆΠ΅ Π½Π° русском языкС Π³ΠΎΠ²ΠΎΡ€ΠΈΠΌ) ΠΎΡ‡Π΅Π½ΡŒ распространСно Π² ΠΌΠΈΡ€Π΅ ΠΎΡ‚ΠΊΡ€Ρ‹Ρ‚ΠΎΠ³ΠΎ ΠΊΠΎΠ΄Π°, поэтому я скаТу ΠΎ Π½Π΅ΠΌ здСсь. Допустим, ΠΊΡ‚ΠΎ-Ρ‚ΠΎ нашСл ΠΈ исправил ΠΎΡˆΠΈΠ±ΠΊΡƒ Π² ΠΊΠ°ΠΊΠΎΠΌ-Π½ΠΈΠ±ΡƒΠ΄ΡŒ извСстном ΠΏΠ°ΠΊΠ΅Ρ‚Π΅. Π˜ΡΠΏΡ€Π°Π²Π»Π΅Π½ΠΈΠ΅ ΠΌΠΎΠΆΠ΅Ρ‚ Π·Π°ΠΊΠ»ΡŽΡ‡Π°Ρ‚ΡŒΡΡ Π² Π΄Π²ΡƒΡ… строках ΠΊΠΎΠ΄Π°, Ρ‚Π°ΠΊ Ρ‡Ρ‚ΠΎ ΠΆΠ΅ β€” Π²Ρ‹ΠΊΠ»Π°Π΄Ρ‹Π²Π°Ρ‚ΡŒ Π² ΠΎΠ±Ρ‰ΠΈΠΉ доступ исправлСнныС исходники Ρ†Π΅Π»ΠΈΠΊΠΎΠΌ? НСт, ΠΎΠ½ распространяСт Π·Π°ΠΏΠ»Π°Ρ‚ΠΊΡƒ, ΠΊΠΎΡ‚ΠΎΡ€ΡƒΡŽ ΠΆΠ΅Π»Π°ΡŽΡ‰ΠΈΠ΅ ΠΌΠΎΠ³ΡƒΡ‚ ΠΏΡ€ΠΈΠ»ΠΎΠΆΠΈΡ‚ΡŒ сами. Π—Π°ΠΏΠ»Π°Ρ‚ΠΊΠ° прСдставляСт собой тСкстовый Ρ„Π°ΠΉΠ», содСрТащий список ΠΎΡ‚Π»ΠΈΡ‡ΠΈΠΉ исправлСнного ΠΊΠΎΠ΄Π° ΠΎΡ‚ исходного.

Π’Π°ΠΊΠΎΠΉ список Π² стандартном Π²ΠΈΠ΄Π΅ Π³Π΅Π½Π΅Ρ€ΠΈΡ€ΡƒΠ΅Ρ‚ ΡƒΡ‚ΠΈΠ»ΠΈΡ‚Π° diff с ΠΊΠ»ΡŽΡ‡Π°ΠΌΠΈ -uNr. Π§Ρ‚ΠΎΠ±Ρ‹ Π΅Π³ΠΎ ΠΏΡ€ΠΈΠ»ΠΎΠΆΠΈΡ‚ΡŒ, Π½ΡƒΠΆΠ½ΠΎ ΠΏΠ΅Ρ€Π΅ΠΉΡ‚ΠΈ Π² ΠΊΠΎΡ€Π½Π΅Π²ΠΎΠΉ ΠΊΠ°Ρ‚Π°Π»ΠΎΠ³ Π΄Π΅Ρ€Π΅Π²Π° исходного ΠΊΠΎΠ΄Π° ΠΏΠ°ΠΊΠ΅Ρ‚Π° ΠΈ Π²Ρ‹ΠΏΠΎΠ»Π½ΠΈΡ‚ΡŒ ΠΊΠΎΠΌΠ°Π½Π΄Ρƒ

$ patch -Ρ€0 < <Ρ„Π°ΠΉΠ»_Π·Π°ΠΏΠ»Π°Ρ‚ΠΊΠ°>

# < - это Π·Π½Π°ΠΊ пСрСнаправлСния Π²Π²ΠΎΠ΄Π°

ΠšΠ»ΡŽΡ‡ -p ΡƒΠΊΠ°Π·Ρ‹Π²Π°Π΅Ρ‚, сколько ΠΎΡ‚Π΄Π΅Π»Π΅Π½Π½Ρ‹Ρ… Β«/Β» частСй Π½ΡƒΠΆΠ½ΠΎ ΠΎΡ‚Ρ‰ΠΈΠΏΠ½ΡƒΡ‚ΡŒ ΠΎΡ‚ ΠΏΡƒΡ‚Π΅ΠΉ ΠΊ Ρ„Π°ΠΉΠ»Π°ΠΌ, ΠΏΠΎΠ΄Π»Π΅ΠΆΠ°Ρ‰ΠΈΠΌ ΠΈΡΠΏΡ€Π°Π²Π»Π΅Π½ΠΈΡŽ (Π²Π΄Ρ€ΡƒΠ³ ΠΊΠ°Ρ‚Π°Π»ΠΎΠ³ ΠΏΠ°ΠΊΠ΅Ρ‚Π° Ρƒ Π°Π²Ρ‚ΠΎΡ€Π° Π·Π°ΠΏΠ»Π°Ρ‚ΠΊΠΈ назывался ΠΈΠ½Π°Ρ‡Π΅?).

ΠŸΡ€ΠΈΠ»ΠΎΠΆΠΈΠ² Π·Π°ΠΏΠ»Π°Ρ‚ΠΊΡƒ, Π²Ρ‹ΠΏΠΎΠ»Π½ΠΈΡ‚Π΅ ΠΎΠ±Ρ‹Ρ‡Π½Ρ‹Π΅ ΠΊΠΎΠΌΠ°Π½Π΄Ρ‹ сборки:

$ ./configure

$ make

$ make install

7.6. ΠšΠ»ΠΎΠ½ΠΈΡ€ΠΎΠ²Π°Π½ΠΈΠ΅ ΠΈ восстановлСниС систСмы

ΠšΠ»ΠΎΠ½ΠΈΡ€ΠΎΠ²Π°Π½ΠΈΠ΅ β€” это созданиС Ρ‚ΠΎΡ‡Π½ΠΎΠΉ (ΠΏΠΎΠ±ΠΈΡ‚Π½ΠΎΠΉ) ΠΊΠΎΠΏΠΈΠΈ исходного носитСля. НоситСлСм Π² нашСм случаС Π±ΡƒΠ΄Π΅Ρ‚ корнСвая файловая систСма Linux. ΠšΠ»ΠΎΠ½ΠΈΡ€ΠΎΠ²Π°Π½Π½Π°Ρ копия называСтся ΠΎΠ±Ρ€Π°Π·ΠΎΠΌ.

Если Π²Π°ΠΌ Π½ΡƒΠΆΠ½ΠΎ ΡƒΡΡ‚Π°Π½ΠΎΠ²ΠΈΡ‚ΡŒ дистрибутив Π½Π° нСсколько ΠΊΠΎΠΌΠΏΡŒΡŽΡ‚Π΅Ρ€ΠΎΠ² ΠΎΠ΄ΠΈΠ½Π°ΠΊΠΎΠ²ΠΎΠΉ ΠΊΠΎΠ½Ρ„ΠΈΠ³ΡƒΡ€Π°Ρ†ΠΈΠΈ (Π½Π°ΠΏΡ€ΠΈΠΌΠ΅Ρ€, Π²Ρ‹ администрируСтС ΠΈΠ½Ρ‚Π΅Ρ€Π½Π΅Ρ‚-Π·Π°Π»), Ρ‚ΠΎ цСлСсообразно ΡƒΡΡ‚Π°Π½ΠΎΠ²ΠΈΡ‚ΡŒ ΠΈ Π½Π°ΡΡ‚Ρ€ΠΎΠΈΡ‚ΡŒ Π΅Π³ΠΎ Π½Π° ΠΎΠ΄Π½ΠΎΠΉ машинС, Π° Π½Π° Π΄Ρ€ΡƒΠ³ΠΈΠ΅ β€” ΡΠΊΠ»ΠΎΠ½ΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒ. Для домашнСй систСмы ΠΈΠ· ΠΎΠ΄Π½ΠΎΠ³ΠΎ ΠΊΠΎΠΌΠΏΡŒΡŽΡ‚Π΅Ρ€Π° ΠΊΠ»ΠΎΠ½ΠΈΡ€ΠΎΠ²Π°Π½ΠΈΠ΅ Ρ‚ΠΎΠΆΠ΅ ΠΈΠΌΠ΅Π΅Ρ‚ смысл: Ссли Ρ‡Ρ‚ΠΎ-Ρ‚ΠΎ Π²Π΄Ρ€ΡƒΠ³ «слСтит», Ρ‚ΠΎ Π²Ρ‹ смоТСтС быстро Π²ΠΎΡΡΡ‚Π°Π½ΠΎΠ²ΠΈΡ‚ΡŒ исходноС состояниС систСмы простым Ρ€Π°Π·Π²Π΅Ρ€Ρ‚Ρ‹Π²Π°Π½ΠΈΠ΅ΠΌ ΠΎΠ±Ρ€Π°Π·Π°. На Ρ€Π°Π·Π²Π΅Ρ€Ρ‚Ρ‹Π²Π°Π½ΠΈΠ΅ ΠΎΠ±Ρ€Π°Π·Π° Π½ΡƒΠΆΠ½ΠΎ Π½Π°ΠΌΠ½ΠΎΠ³ΠΎ мСньшС Π²Ρ€Π΅ΠΌΠ΅Π½ΠΈ, Ρ‡Π΅ΠΌ Π½Π° установку ΠΈ настройку систСмы.

ΠŸΠ΅Ρ€Π΅Π·Π°Π³Ρ€ΡƒΠ·ΠΈΡ‚Π΅ΡΡŒ Π² ΠΎΠ΄Π½ΠΎΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»ΡŒΡΠΊΠΎΠΌ Ρ€Π΅ΠΆΠΈΠΌΠ΅ (ΠΎ Ρ€Π΅ΠΆΠΈΠΌΠ°Ρ… ΠΈ Π²Π°Ρ€ΠΈΠ°Π½Ρ‚Π°Ρ… Π·Π°Π³Ρ€ΡƒΠ·ΠΊΠΈ сказано Π² ΠΏ.9.1.1). Π’Π²Π΅Π΄ΠΈΡ‚Π΅ ΠΊΠΎΠΌΠ°Π½Π΄Ρƒ mount, Ρ‡Ρ‚ΠΎΠ±Ρ‹ ΡƒΠ·Π½Π°Ρ‚ΡŒ, ΠΊΠ°ΠΊΠΎΠΉ Ρ€Π°Π·Π΄Π΅Π» содСрТит ΠΊΠΎΡ€Π½Π΅Π²ΡƒΡŽ Ρ„Π°ΠΉΠ»ΠΎΠ²ΡƒΡŽ систСму:

/dev/hda1 on / type ext3 (rw,noatime)

none on /proc type proc (rw)

none on /sys type sysfs (rw)

ΠšΠΎΡ€Π½Π΅Π²Π°Ρ файловая систСма располоТСна Π½Π° Ρ€Π°Π·Π΄Π΅Π»Π΅ /dev/hda1. ΠžΠ±Ρ€Π°Π· ΠΈΠΌΠ΅Π½Π½ΠΎ этого Ρ€Π°Π·Π΄Π΅Π»Π° ΠΌΡ‹ Π±ΡƒΠ΄Π΅ΠΌ ΡΠΎΡ…Ρ€Π°Π½ΡΡ‚ΡŒ Π½Π° Π΄Ρ€ΡƒΠ³ΠΎΠΌ носитСлС. НоситСлСм ΠΌΠΎΠΆΠ΅Ρ‚ Π±Ρ‹Ρ‚ΡŒ Π΄Ρ€ΡƒΠ³ΠΎΠΉ ТСсткий диск β€” я Π±ΡƒΠ΄Ρƒ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ внСшний USB-винчСстСр. Для Π΅Π³ΠΎ ΠΏΠΎΠ΄ΠΊΠ»ΡŽΡ‡Π΅Π½ΠΈΡ Π΄ΠΎΠ»ΠΆΠ΅Π½ Π±Ρ‹Ρ‚ΡŒ Π·Π°Π³Ρ€ΡƒΠΆΠ΅Π½ ΠΌΠΎΠ΄ΡƒΠ»ΡŒ usb_storage. Π‘ΠΎΠ·Π΄Π°Π΄ΠΈΠΌ ΠΊΠ°Ρ‚Π°Π»ΠΎΠ³ /mnt/image ΠΈ ΠΏΡ€ΠΈΠΌΠΎΠ½Ρ‚ΠΈΡ€ΡƒΠ΅ΠΌ ΠΊ Π½Π΅ΠΌΡƒ USB-винчСстСр:

# modprobe usb_storage

# mkdir /mnt/image

# mount /dev/sda1 /mnt/image

ВсС, Ρ‡Ρ‚ΠΎ ΠΎΡΡ‚Π°Π»ΠΎΡΡŒ ΡΠ΄Π΅Π»Π°Ρ‚ΡŒ, β€” это ΠΏΠ΅Ρ€Π΅ΠΌΠΎΠ½Ρ‚ΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒ ΠΊΠΎΡ€Π½Π΅Π²ΡƒΡŽ Ρ„Π°ΠΉΠ»ΠΎΠ²ΡƒΡŽ систСму Π² Ρ€Π΅ΠΆΠΈΠΌΠ΅ Β«Ρ‚ΠΎΠ»ΡŒΠΊΠΎ Ρ‡Ρ‚Π΅Π½ΠΈΠ΅Β» ΠΈ ΡΠΎΠ·Π΄Π°Ρ‚ΡŒ ΠΎΠ±Ρ€Π°Π·:

# sync

# mount -ΠΎ remount.ro /

# dd if=/dev/hda1 of=/mnt/image/image.bin

ΠŸΠΎΠ΄Ρ€ΠΎΠ±Π½ΠΎ ΠΎΠΏΠΈΡΡ‹Π²Π°Ρ‚ΡŒ ΡƒΡ‚ΠΈΠ»ΠΈΡ‚Ρƒ dd Π½Π΅ стану β€” это ΠΎΡ‡Π΅Π½ΡŒ Ρ…ΠΎΡ€ΠΎΡˆΠΎ сдСлано Π² справочной систСмС. Π‘ΠΊΠ°ΠΆΡƒ Ρ‚ΠΎΠ»ΡŒΠΊΠΎ, Ρ‡Ρ‚ΠΎ ΠΊΡ€ΠΎΠΌΠ΅ dd сущСствуСт Π΅Ρ‰Π΅ ΠΈ ΡƒΡ‚ΠΈΠ»ΠΈΡ‚Π° dd_rescue, которая ΠΏΡ€ΠΈ ΠΊΠ»ΠΎΠ½ΠΈΡ€ΠΎΠ²Π°Π½ΠΈΠΈ пропускаСт ΠΏΠ»ΠΎΡ…ΠΈΠ΅ сСкторы ΠΈ Π΄Π΅Π»Π°Π΅Ρ‚ максимально Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΡƒΡŽ копию Ρ„Π°ΠΉΠ»ΠΎΠ²ΠΎΠΉ систСмы. Для мСня, Π΄Π° ΠΈ для вас использованиС этой ΡƒΡ‚ΠΈΠ»ΠΈΡ‚Ρ‹ Π½Π΅Π°ΠΊΡ‚ΡƒΠ°Π»ΡŒΠ½ΠΎ β€” вСдь винчСстСры ΠΌΠ΅Π½ΡΡŽΡ‚ ΠΌΠΈΠ½ΠΈΠΌΡƒΠΌ ΠΎΠ΄ΠΈΠ½ Ρ€Π°Π· Π² Π³ΠΎΠ΄, поэтому Π½Π΅ Π΄ΡƒΠΌΠ°ΡŽ, Ρ‡Ρ‚ΠΎ Ρƒ вас Π±ΡƒΠ΄Π΅Ρ‚ Β«Π±ΠΈΡ‚Ρ‹ΠΉΒ» винчСстСр.

Π’Π΅ΠΏΠ΅Ρ€ΡŒ рассмотрим, ΠΊΠ°ΠΊ ΠΌΠΎΠΆΠ½ΠΎ Π²ΠΎΡΡΡ‚Π°Π½ΠΎΠ²ΠΈΡ‚ΡŒ систСму. Для восстановлСния систСмы Π²Π°ΠΌ понадобится Π·Π°Π³Ρ€ΡƒΠ·ΠΎΡ‡Π½Ρ‹ΠΉ ΠΊΠΎΠΌΠΏΠ°ΠΊΡ‚-диск Linux, ΠŸΠΎΠ΄ΠΎΠΉΠ΄Π΅Ρ‚ ΠΏΠ΅Ρ€Π²Ρ‹ΠΉ диск любого дистрибутива, Π΄Π°ΠΆΠ΅ нСсовмСстимого с вашим. Если Π²Ρ‹ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅Ρ‚Π΅ Π½Π΅ LiveCD, Π° простой Π·Π°Π³Ρ€ΡƒΠ·ΠΎΡ‡Π½Ρ‹ΠΉ диск, для ΠΏΠ΅Ρ€Π΅Ρ…ΠΎΠ΄Π° Π½Π° Ρ‚Π΅ΠΊΡΡ‚ΠΎΠ²ΡƒΡŽ консоль Π½Π°ΠΆΠΌΠΈΡ‚Π΅ Ctrl+Alt+F2. ΠŸΠΎΠ΄ΠΌΠΎΠ½Ρ‚ΠΈΡ€ΡƒΠ΅ΠΌ наш внСшний винчСстСр:

# mkdir /image

# modprobe usb_storage

# mount /dev/sda1 /image

Π’Π΅ΠΏΠ΅Ρ€ΡŒ Π½Π° Π½ΠΎΠ²ΠΎΠΌ винчСстСрС Π½ΡƒΠΆΠ½ΠΎ ΡΠΎΠ·Π΄Π°Ρ‚ΡŒ Ρ€Π°Π·Π΄Π΅Π»Ρ‹. Π­Ρ‚ΠΎ ΠΌΠΎΠΆΠ½ΠΎ ΡΠ΄Π΅Π»Π°Ρ‚ΡŒ с ΠΏΠΎΠΌΠΎΡ‰ΡŒΡŽ ΡƒΡ‚ΠΈΠ»ΠΈΡ‚Ρ‹ fdisk ΠΈΠ»ΠΈ с ΠΏΠΎΠΌΠΎΡ‰ΡŒΡŽ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡ‹ установки β€” ΠΊΠ°ΠΊ Π²Π°ΠΌ ΡƒΠ΄ΠΎΠ±Π½Π΅Π΅. Если ΠΆΠ΅ Π²Ρ‹ восстанавливаСтС систСму послС сбоя, Π½ΠΈΡ‡Π΅Π³ΠΎ ΡΠΎΠ·Π΄Π°Π²Π°Ρ‚ΡŒ Π½Π΅ Π½ΡƒΠΆΠ½ΠΎ β€” всС ΡƒΠΆΠ΅ создано. НС Π·Π°Π±ΡƒΠ΄ΡŒΡ‚Π΅ Ρ‚ΠΎΠ»ΡŒΠΊΠΎ ΡΠΎΠ·Π΄Π°Ρ‚ΡŒ Ρ€Π°Π·Π΄Π΅Π» ΠΏΠΎΠ΄ΠΊΠ°Ρ‡ΠΊΠΈ (Ρ‚ΠΈΠΏ Ρ€Π°Π·Π΄Π΅Π»Π° /dev/hda2 Π΄ΠΎΠ»ΠΆΠ΅Π½ Π±Ρ‹Ρ‚ΡŒ Linux swap):