(Translated by https://www.hiragana.jp/)
Debian GNU/Linux 2004 - 2023 Debian ; / GNU. : ŚF, GNU General Public License. Build version of this manual: 20230508+deb12u1. Debian GNU/Linux 12 (? bookworm?) 32-bit hard-float ARMv7 (?armhf?). , Σしぐま Debian. This translation of the installation guide is not up-to-date and currently there is noone actively working on updating it. Keep this in mind when reading it; it may contain outdated or wrong information. Read or double-check the English variant, if in doubt. If you can help us with updating the translation, please contact or the debian-l10n-xxx mailinglist for this language. Many thanks , debian-l10n-russian@lists.debian.org. ------------------------------------------------------------------------------- Debian GNU/Linux 12 armhf 1. Debian 1.1. Debian? 1.2. GNU/Linux? 1.3. Debian GNU/Linux? 1.4. Debian? 1.5. Debian 1.6. 1.7. 1.8. 2. 2.1. 2.1.1. 2.1.2. ARM 2.1.3. ARM 2.1.4. , Debian/armhf 2.1.5. 2.1.6. 2.1.7. 2.1.8. 2.2. , 2.3. GNU/Linux 2.3.1. 2.4. 2.4.1. CD-ROM/DVD-ROM/BD-ROM 2.4.2. 2.4.3. 2.4.4. Un*x GNU 2.4.5. 2.5. 3. Debian GNU/Linux 3.1. 3.2. ģ ! 3.3. , 3.3.1. 3.3.2. 3.3.3. 3.3.4. 3.4. 3.5. - 3.6. 3.6.1. ARM 3.6.2. U-Boot ( ), Debian 3.6.3. MAC- ethernet U-Boot 3.6.4. /Initrd/- U-Boot 4. 4.1. Official Debian GNU/Linux installation images 4.2. - Debian 4.2.1. Where to Find Installation Files 4.3. TFTP 4.3.1. RARP 4.3.2. DHCP 4.3.3. BOOTP 4.3.4. TFTP 4.3.5. TFTP TFTP 4.4. 4.4.1. Debian 4.5. Verifying the integrity of installation files 5. 5.1. 32-bit hard-float ARMv7 5.1.1. 5.1.2. 5.1.3. TFTP 5.1.4. USB U-Boot 5.1.5. SD- 5.2. 5.2.1. 5.2.2. 5.2.3. 5.2.4. 5.2.5. , 5.2.6. 5.3. 5.3.1. 5.3.2. Debian 5.3.3. 5.3.4. 5.3.5. ޣ 5.4. 5.4.1. Reliability of optical media 5.4.2. 5.4.3. 5.4.4. 5.4.5. ޣ 6. Debian 6.1. 6.2. 6.3. 6.3.1. Debian 6.3.2. 6.3.3. 6.3.4. 6.3.5. 6.3.6. 6.3.7. 6.3.8. 6.3.9. 6.3.10. Installation over network-console 6.4. 6.4.1. 6.4.2. 6.4.3. Completing the Installed System 6.5. Customization 6.5.1. Installing an alternative init system 7. Debian 7.1. 7.2. 7.2.1. 7.3. 8. 8.1. 8.2. Debian 8.2.1. Debian 8.2.2. Debian 8.2.3. 8.2.4. cron 8.3. 8.4. 8.4.1. 8.4.2. 8.4.3. Exim4 8.5. 8.6. A. A.1. A.2. A.2.1. Optical disc A.2.2. A.2.3. ֣ A.3. A.4. ޣ A.5. ... B. B.1. B.1.1. B.1.2. B.2. B.2.1. B.2.2. B.2.3. B.2.4. B.2.5. Examples of boot prompt preseeding B.2.6. DHCP B.3. B.4. ( bookworm) B.4.1. B.4.2. B.4.3. B.4.4. - B.4.5. ޣ B.4.6. B.4.7. B.4.8. B.4.9. Apt B.4.10. B.4.11. B.4.12. B.5. B.5.1. B.5.2. B.5.3. C. Debian C.1. Debian C.2. C.3. C.4. Linux C.5. Debian D. D.1. Linux D.1.1. D.2. , D.3. Debian GNU/Linux Unix/Linux D.3.1. D.3.2. debootstrap D.3.3. debootstrap D.3.4. D.3.5. D.3.6. D.3.7. ̣ : SSH D.3.8. D.4. Debian GNU/Linux PPP Ethernet (PPPoE) E. E.1. E.2. E.3. , Σしぐま E.4. F. GNU General Public License 3.1. , 3.2. Debian GNU/Linux 12 armhf , Debian. , Debian GNU/Linux . Debian GNU/Linux , . , , -- , . , Debian, , Debian ޣ . , " ", , ̣ . ŚA, . , , ģ , , . 1. Debian 1.1. Debian? 1.2. GNU/Linux? 1.3. Debian GNU/Linux? 1.4. Debian? 1.5. Debian 1.6. 1.7. 1.8. Debian Debian GNU/Linux. Debian Debian GNU/Linux, . 1.1. Debian? Debian -- , , (Free Software). Debian 1993 , (Ian Murdock) , Linux. , GNU, , , Debian 1000. Debian , Web FTP , , , , , . , Debian, Debian , ޣ , Debian: * Debian -- Debian . , Debian . Debian -- , , . * Debian (DFSG) -- Debian . DFSG . * Debian -- Debian. Debian , Debian, Linux. : * (FHS) -- Linux. FHS , GNU/Linux. * Debian , -- , Debian' . Debian, Debian FAQ. 1.2. GNU/Linux? GNU/Linux -- : , . () , , ; ֣ , ; ; . -- . GNU/Linux Linux. , GNU GNU. Linux -- ݣ , ?GNU/Linux? , ?Linux?. GNU/Linux Unix. GNU/ Linux , . , GNU/Linux . , GNU/Linux , . , GNU/ Linux . . , GNU/Linux, 1984 , Unix- , GNU. GNU Unix (tm) Unix- , GNU/Linux. , ( ) ( ). GNU/ Linux, ݣ . , ( -). , , GNU/Linux . Linux 1991 , - (Linus Torvalds) Minix comp.os.minix. Linux Internationals Linux. . Linux. linux-kernel FAQ linux-kernel. GNU/Linux users have immense freedom of choice in their software. For example, they can choose from a dozen different command line shells and several graphical desktops. This selection is often bewildering to users of other operating systems, who are not used to thinking of the command line or desktop as something that they can change. GNU/Linux , ݣ, . , Linux ϣ . , Linux . 1.3. Debian GNU/Linux? Debian, GNU, Linux , Debian GNU/ Linux. . , , , , , (bug reports) . , . Debian , . : ݣ (firewall), ޣ, . Debian - Linux. Debian Linux, . , Debian Linux, ̣ . Linux, . Debian Linux. , (Open Source) , . Debian Linux . Debian , , . , . , , . ? ? , Debian , Debian. Debian . , . Debian . Debian GNU/Linux Debian Debian ( 327). -- Debian . 1.4. Debian? Debian, ?d-i?, -- , Debian. , , , , . . , , . . : USB, CD/DVD/Blu-Ray . ģ 80 . boot-floppies 2000 . , ţ . Debian, debian-boot. 1.5. Debian For information on how to download Debian GNU/Linux from the Internet or from whom official Debian installation media can be purchased, see the distribution web page. The list of Debian mirrors contains a full set of official Debian mirrors, so you can easily find the nearest one. Debian ̣. , , . 1.6. . Debian 12 ģ 12 Debian GNU/Linux. ̣ . 1.7. Debian. Σしぐま . , , , (hardware) . , , , Debian . . , ģ . Debian GNU/Linux : 1. , (2, ). 2. , Debian (3, Debian GNU/Linux). - , , , ֣ Debian. 3. , (4, ). 4. 5, . . 5. Perform the actual installation according to 6, Debian. This involves choosing your language, configuring peripheral driver modules, configuring your network connection, so that remaining installation files can be obtained directly from a Debian server (if you are not installing from a set of CD/DVD installation images), partitioning your hard drives and installation of a base system, then selection and installation of tasks. (Some background about setting up the partitions for your Debian system is explained in ŚC, Debian.) 6. (7, Debian). 8, . , Unix Debian, . , , ŚE, . 1.8. , , -- , . . Debian GNU/Linux . ! -- . , Debian . Calling software free doesn't mean that the software isn't copyrighted, and it doesn't mean that installation media containing that software must be distributed at no charge. Free software, in part, means that the licenses of individual programs do not require you to pay for the privilege of distributing or using those programs. Free software also means that not only may anyone extend, adapt, and modify the software, but that they may distribute the results of their work as well. , Debian, , , . , , contrib non-free - Debian CD/ DVD-ROM; ?FTP- Debian? Debian FAQ. GNU, ?GPL?. GPL , ; , . , Debian ^[1] . Debian . , /usr/share/doc/-/copyright . , Debian , , ޣ (main) , Debian . -- . , , . - ̣ . , , -- , , ԣ. ------------------------------------------------------------------------------- ^[1] , Debian, Debian FAQ, ? Debian?. 2. 2.1. 2.1.1. 2.1.2. ARM 2.1.3. ARM 2.1.4. , Debian/armhf 2.1.5. 2.1.6. 2.1.7. 2.1.8. 2.2. , 2.3. GNU/Linux 2.3.1. 2.4. 2.4.1. CD-ROM/DVD-ROM/BD-ROM 2.4.2. 2.4.3. 2.4.4. Un*x GNU 2.4.5. 2.5. , Debian. , , GNU Linux. 2.1. Debian , Linux kFreeBSD GNU. , , Linux kFreeBSD, libc, gcc .. ӣ Debian, Debian. https://www.debian.org/ports/arm/, 32-bit hard-float ARMv7 Debian GNU/Linux. , ӣ , 32-bit hard-float ARMv7, , . 2.1.1. Debian GNU/Linux 12 9 , ? (flavors)?. +-----------------------------------------------------------------------------+ | | | | | | | Debian | | | |-------------------------------+--------------+-------------------+----------| |AMD64 & Intel 64 |amd64 | | | |-------------------------------+--------------+-------------------+----------| | | | x86 | | | | | | | | Intel x86 |i386 |-------------------+----------| | | | Xen |xen | | | |PV | | |-------------------------------+--------------+-------------------+----------| |ARM |armel |Marvell Kirkwood |marvell | | | |Orion | | |-------------------------------+--------------+-------------------+----------| |ARM FPU |armhf |multiplatform |armmp | |-------------------------------+--------------+-------------------+----------| |64- ARM |arm64 | | | |-------------------------------+--------------+-------------------+----------| | | |MIPS Malta |5kc-malta | |64- MIPS ( | |-------------------+----------| | ) |mips64el |Cavium Octeon |octeon | | | |-------------------+----------| | | |Loongson 3 |loongson-3| |-------------------------------+--------------+-------------------+----------| | | |MIPS Malta |4kc-malta | |32- MIPS ( | |-------------------+----------| | ) |mipsel |Cavium Octeon |octeon | | | |-------------------+----------| | | |Loongson 3 |loongson-3| |-------------------------------+--------------+-------------------+----------| |Power Systems |ppc64el | IBM POWER8 | | | | | | | |-------------------------------+--------------+-------------------+----------| |64- IBM S/390 |s390x |IPL VM-reader |generic | | | |DASD | | +-----------------------------------------------------------------------------+ 32-bit hard-float ARMv7. , Debian, Debian. 2.1.2. ARM ARM ARM , . Debian ARM, : * Debian/armel 32- ARM (FPU), * Debian/armhf 32- ARM, , , ARMv7 3 ARM (VFPv3). , . * Debian/arm64 64- ARM, , , ARMv8. , ARM ( ), . Debian/arm64, Debian/ armhf Debian/armel . 2.1.3. ARM ARM , i386/amd64, . The ARM architecture is used mainly in so-called ?system-on-chip? (SoC) designs. These SoCs are designed by many different companies with vastly varying hardware components even for the very basic functionality required to bring the system up. System firmware interfaces have been increasingly standardised over time, but especially on older hardware firmware/boot interfaces vary a great deal, so on these systems the Linux kernel has to take care of many system-specific low-level issues which would be handled by the mainboard's BIOS/UEFI in the PC world. ARM Linux , ? ? PC. , ARM, ARM. ARM , . , Debian , , ARM ( ?armmp?) Debian/armhf. 2.1.4. , Debian/armhf Debian/armhf (armmp) : Freescale MX53 Quick Start Board (MX53 LOCO Board) IMX53QSB i.MX53. Versatile Express Versatile Express -- ARM, , . Allwinner sunXi armmp Allwinner A10 ( ?sun4i?), A10s/A13 ( ?sun5i?), A20 ( ?sun7i?), A31/A31s ( ?sun6i?) A23/A33 ( ?sun8i?). ( SD ) sunXi: + Cubietech Cubieboard 1 + 2 / Cubietruck + LeMaker Banana Pi Banana Pro + LinkSprite pcDuino pcDuino3 + Olimex A10-Olinuxino-LIME / A20-Olinuxino-LIME / A20-Olinuxino-LIME2 / A20-Olinuxino Micro / A20-SOM-EVB + Xunlong OrangePi Plus Allwinner sunXi , Linux. ( Allwinner SDK) 3.4 android linux-sunxi.org Debian. Allwinner A10, A10s/A13, A20, A23/A33 A31/A31s Linux , ethernet, SATA, USB MMC/SD. (HDMI/VGA/LCD) . , ?simplefb?, , -. , , ( ). -, , sunXi : NAND eMMC. sunXi - NAND, , , Debian. NAND eMMC. eMMC, , ߣ SD, SD. sunXi, , , Debian . SD . : + Olimex A10s-Olinuxino Micro / A13-Olinuxino / A13-Olinuxino Micro + Sinovoip BPI-M2 ( A31s) + Xunlong Orange Pi ( A20) / Orange Pi Mini ( A20) , , Allwinner H3 . Debian 9 ģ H3 , H3 , MMC/SD USB. ethernet H3, USB ethernet USB wifi. H3, : + FriendlyARM NanoPi NEO + Xunlong Orange Pi Lite / Orange Pi One / Orange Pi PC / Orange Pi PC Plus / Orange Pi Plus / Orange Pi Plus 2E / Orange Pi 2 NVIDIA Jetson TK1 NVIDIA Jetson TK1 Tegra K1 ( Tegra 124). Tegra K1 ң 32- ARM Cortex-A15 Kepler (GK20A) 192 CUDA. Tegra 124. Seagate Personal Cloud Seagate NAS Seagate Personal Cloud Seagate NAS -- NAS Marvell Armada 370. Debian Personal Cloud (SRN21C), Personal Cloud (SRN22C), Seagate NAS (SRPD20) ң Seagate NAS (SRPD40). SolidRun Cubox-i2eX / Cubox-i4Pro Cubox-i -- Freescale i.MX6. Cubox-i , Linux; Freescale 3.0 Cubox-i Debian. : , ethernet, USB, MMC/SD HDMI ( X11). Cubox-i4Pro eSATA. Wandboard Wandboard Quad, Dual Solo -- ң Freescale i.MX6. , Linux; wandboard-specific 3.0 3.10 wandboard.org Debian. : , HDMI ( X11), ethernet, USB, MMC/ SD, SATA ( ң) . (S/PDIF, HDMI-Audio) WLAN/Bluetooth Debian 9. , ARM Linux debian-installer armhf, , , debian-installer . , , , . , . debian-installer , , ģ , , debian-installer. 2.1.5. -- ? (symmetric multi-processing)? SMP. Debian 12 SMP-alternatives. , ( ) SMP . , , ?? ӣ. , ??. 2.1.6. Debian's support for graphical interfaces is determined by the underlying support found in X.Org's X11 system, and the kernel. Basic framebuffer graphics is provided by the kernel, whilst desktop environments use X11. Whether advanced graphics card features such as 3D-hardware acceleration or hardware-accelerated video are available, depends on the actual graphics hardware used in the system and in some cases on the installation of additional ?firmware? blobs (see ̚2.2, ?, ?). ARM , . , , . . , , , 3D . , bookworm nouveau ( Nvidia Tegra K1) freedreno ( Qualcomm Snapdragon). . https://wiki.freedesktop.org/xorg/. Debian 12 X.Org 7.7. 2.1.7. (NIC), Linux, ; . 32-bit hard-float ARMv7 Ethernet PCI USB. 2.1.8. Linux , , , , PCMCIA/CardBus/ExpressCard USB . , . 2.2. , Besides the availability of a device driver, some hardware also requires so-called firmware or microcode to be loaded into the device before it can become operational. This is most common for network interface cards (especially wireless NICs), but for example some USB devices and even some hard disk controllers also require firmware. With many graphics cards, basic functionality is available without additional firmware, but the use of advanced features requires an appropriate firmware file to be installed in the system. , , EEPROM/ Flash . ; ţ . In most cases firmware is non-free according to the criteria used by the Debian GNU/Linux project and thus cannot be included in the main distribution. If the device driver itself is included in the distribution and if Debian GNU/Linux legally can distribute the firmware, it will often be available as a separate package from the non-free-firmware section of the archive (prior to Debian GNU/ Linux 12.0: from the non-free section). However, this does not mean that such hardware cannot be used during installation. Starting with Debian GNU/Linux 12.0, following the 2022 General Resolution about non-free firmware, official installation images can include non-free firmware packages. By default, debian-installer will detect required firmware (based on kernel logs and modalias information), and install the relevant packages if they are found on an installation medium (e.g. on the netinst). The package manager gets automatically configured with the matching components so that those packages get security updates. This usually means that the non-free-firmware component gets enabled, in addition to main. Users who wish to disable firmware lookup entirely can do so by setting the firmware=never boot parameter. It's an alias for the longer hw-detect/ firmware-lookup=never form. Unless firmware lookup is disabled entirely, debian-installer still supports loading firmware files or packages containing firmware from a removable medium, such as a USB stick. See ̚6.4, ? ? for detailed information on how to load firmware files or packages during the installation. Note that debian-installer is less likely to prompt for firmware files now that non-free firmware packages can be included on installation images. debian-installer , non-free, . , ̣ , ӣ ţ (, , tg3). 2.3. GNU/Linux Debian GNU/Linux. , ģ , , , GNU/ Linux. Linux , , ӣ , , Linux. , , ģ . ( ), Linux. Linux . 2.3.1. . , , . , Linux. (, , -), ţ ̣ . , (-), . (, USB ?Human Interface Devices ?, .. , . ., USB- , USB ) , , . , , , , , . , (-) , , . , , . , . , , , . , - , . , , . , , . 2.4. , Debian. , ݣ (4, ), . , . 2.4.1. CD-ROM/DVD-ROM/BD-ROM Installation from optical disc is supported for most architectures. 2.4.2. . , . ( PPPoE, ISDN PPP), HTTP FTP. ISDN PPP . , , CD/DVD USB. ף netboot (. . DHCP TFTP), ţ . ̣ , . ݣ -- NFS. 2.4.3. ֣ -- ݣ , . - ֣ . , . 2.4.4. Un*x GNU Unix , ţ Debian GNU/Linux debian-installer, . - , . , ̚D.3, ? Debian GNU/Linux Unix/Linux?. , . 2.4.5. Debian , , . IDE systems are also supported. 2.5. 190MB 1160MB ֣ . , , . ̚3.4, ? ?. The installer normally automatically enables memory-saving tricks to be able to run on such low-memory system, but on architectures that are less tested it may miss doing so. It can however be enabled manually by appending the lowmem=1 or even lowmem=2 boot parameter (see also ̚6.3.1.1, ? / ? and ̚5.3.2, ? Debian?). Installation on systems with less memory or disk space available may be possible but is only advised for experienced users. 3. Debian GNU/Linux 3.1. 3.2. ģ ! 3.3. , 3.3.1. 3.3.2. 3.3.3. 3.3.4. 3.4. 3.5. - 3.6. 3.6.1. ARM 3.6.2. U-Boot ( ), Debian 3.6.3. MAC- ethernet U-Boot 3.6.4. /Initrd/- U-Boot , Debian: , . 3.1. -, . , Debian ; ֣ . . , , . Debian GNU/Linux , . "" ; . . , Debian . , , . . , . 1. ֣ , . 2. . 3. Debian ֣ . 4. / . 5. , CDs/DVDs/USB, , . 6. . 7. . 8. , , ethernet. 9. , Debian. 10. // . 11. . 12. , Debian GNU/Linux / . 13. . , , . ԣ "": , debian-installer -- , ޣ . , dhcp-client , debootstrap tasksel , . ԣ , debian-installer . tasksel, , , . , X Window System . ? ?, , . , , , ţ , - , Debian GNU/Linux , . X -- , debian-installer, , . X Window System . 3.2. ģ ! , , . , ģ , Debian GNU/Linux. , ӣ , . , Debian GNU/Linux, ģ; ; , . . . - , , , . , , , , . 3.3. , 3.3.1. 3.3.1.1. , , Debian bookworm . 3.3.1.2. . 3.3.2. . ӣ . : * , ԣ . * The BIOS/UEFI setup screens of your computer. You can view these screens when you start your computer by pressing a combination of keys. Check your manual for the combination. Often, it is the Delete or the F2 key, but some manufacturers use other keys or key combinations. Usually upon starting the computer there will be a message stating which key to press to enter the setup screen. * . * , . ֣ . * . . 3.1. , +------------------------------------------------------------------------+ | | , | |------------------+-----------------------------------------------------| | | . | | |-----------------------------------------------------| | | . | | |-----------------------------------------------------| | |IDE (. PATA), SATA SCSI. | | |-----------------------------------------------------| | | . | | |-----------------------------------------------------| | |. | | |-----------------------------------------------------| | |, .| |------------------+-----------------------------------------------------| | |/ . | |------------------+-----------------------------------------------------| | | . | |------------------+-----------------------------------------------------| | |/ . | +------------------------------------------------------------------------+ 3.3.3. Linux. , Linux . , Linux ӣ . Linux, , ̣ ? ? ?? - , ̣ / . / ; , ? ? , , . . , , . , , ̣ /. , , , , , /, , , , . USB PCI/PCI-Express/ ExpressCard . USB/PCI/ PCI-Express/ExpressCard ?? ? ?, , , , . On Linux systems, these IDs can be read with the lsusb command for USB devices and with the lspci -nn command for PCI/PCI-Express/ExpressCard devices. The vendor and product IDs are usually given in the form of two hexadecimal numbers, separated by a colon, such as ?1d6b:0001?. lsusb: ?Bus 001 Device 001: ID 1d6b:0002 Linux Foundation 2.0 root hub?, 1d6b -- 0002 -- . lspci -nn Ethernet: ?03:00.0 Ethernet controller [0200]: Realtek Semiconductor Co., Ltd. RTL8111/8168B PCI Express Gigabit Ethernet controller [10ec:8168] (rev 06)?. , . . 10ec -- 8168 -- . , : ?04:00.0 VGA compatible controller [0300]: Advanced Micro Devices [AMD] nee ATI RV710 [Radeon HD 4350] [1002:954f]?. Windows Windows ??, VEN_, DEV_. Windows 7 ? ? , . /, ?Linux? ?driver? ̣ . / , , lsusb lspci (?RTL8111?/?RTL8168B? -- ?RV710? -- ). 3.3.3.1. Live- Debian GNU/Linux ? ?. (live system) -- , , , , , CD DVD. ţ . , ӣ , . . . , Debian GNU/Linux, Debian. . , RAM , RAM, - . -- , . . . , , -- ģ , ( debian-installer). Debian Debian. 3.3.4. ޣ (. . Ethernet , /PPP ), , : * ( ). * . * IP- . * . * IP- , . * , DNS (Domain Name Service) . DHCP (Dynamic Host Configuration Protocol), , DHCP- ţ . DSL (. . ) ( ), , , , DHCP ޣ . (WLAN/WiFi), : * ESSID (? ?) . * WEP WPA/WPA2 ( ). 3.4. , , . , , . , , . 3.2. +-----------------------------------------------------------------------------+ | | ()| | | | | | () | | |-------------------------+----------------+---------------------+------------| | |256 |512 |4 | |-------------------------+----------------+---------------------+------------| | |1 gigabytes |2 |10 | | | | | | +-----------------------------------------------------------------------------+ The minimum values assumes that swap will be enabled and a non-liveCD image is used. The ?No desktop? value assumes that the non-graphical (text-based) installer is used. The actual minimum memory requirements are a lot less than the numbers listed in this table. With swap enabled, it is possible to install Debian with as little as 140MB. The same goes for the disk space requirements, especially if you pick and choose which applications to install; see ̚D.2, ? , ? for additional information on disk space requirements. ۣ , , , GNOME KDE Plasma; xfce4, icewm wmaker, . , , . , , : , . , . , Debian GNU/Linux . , /var Debian , . dpkg ( ) 40. apt . , 200 /var , . 3.5. - -- . . , , ; , . , Debian , . Debian ֣ . Windows Mac OS X. Unix, . , Debian. . . Σしぐま. . , ţ. ̣ , . , . , , , . 3.6. This section will walk you through pre-installation hardware setup, if any, that you will need to do prior to installing Debian. Generally, this involves checking and possibly changing BIOS/UEFI/system firmware settings for your system. The ?BIOS/UEFI? or ?system firmware? is the core software used by the hardware; it is most critically invoked during the bootstrap process (after power-up). 3.6.1. ARM , ARM . , ţ . ARM , , Σしぐま . , , . , Σしぐま , . , Σしぐま , ARM. 3.6.2. U-Boot ( ), Debian Debian U-Boot ( .../images/u-boot/ ) armhf, U-Boot SD. U-Boot : U-Boot , SD. U-Boot ; , SD. .sdcard.img.gz , , zcat .sdcard.img.gz > /dev/SD_CARD_DEVICE : SD ţ ! Debian U-Boot , , U-Boot , Debian, , . 3.6.3. MAC- ethernet U-Boot , MAC- ethernet , , , ethernet. , , MAC- - (), . , , , - . MAC- . MAC- , MAC-, , , ף , , , IP- DHCP MAC-, , . MAC- , ?-? . ( ?MAC address?). , , ca (, ca:ff:ee:12:34:56) - . U-Boot , ethernet MAC- ?ethaddr?. U-Boot ?printenv ethaddr? ?setenv ethaddr ca:ff:ee:12:34:56?. ?saveenv? . 3.6.4. /Initrd/- U-Boot U-Boot Linux, ramdisk . U-Boot ?Starting kernel ...?, . U-Boot, v2014.07. U-Boot v2014.07 , . u-boot, , U-Boot (bootm_size), U-Boot , . bootm_size U-Boot ?env default bootm_size; saveenv? U-Boot. ݣ : ?setenv fdt_high ffffffff; setenv initrd_high 0xffffffff; saveenv? U-Boot, ramdisk . 4. 4.1. Official Debian GNU/Linux installation images 4.2. - Debian 4.2.1. Where to Find Installation Files 4.3. TFTP 4.3.1. RARP 4.3.2. DHCP 4.3.3. BOOTP 4.3.4. TFTP 4.3.5. TFTP TFTP 4.4. 4.4.1. Debian 4.5. Verifying the integrity of installation files 4.1. Official Debian GNU/Linux installation images By far the easiest way to install Debian GNU/Linux is from a set of official Debian installation images. You can buy a set of CDs/DVDs from a vendor (see the CD vendors page). You may also download the installation images from a Debian mirror and make your own set, if you have a fast network connection and a CD/DVD burner (see the Debian CD/DVD page and Debian CD FAQ for detailed instructions). If you have such optical installation media, and they are bootable on your machine, you can skip right to 5, . Much effort has been expended to ensure the most-used files are on the first CD and DVD image, so that a basic desktop installation can be done with only the first DVD or - to a limited extent - even with only the first CD image. ߣ, CD- , , CD; CD , . Also, keep in mind: if the installation media you are using don't contain some packages you need, you can always install those packages afterwards from your running new Debian system (after the installation has finished). If you need to know on which installation image to find a specific package, visit https:// cdimage-search.debian.org/. If your machine doesn't support booting from optical media, but you do have a set of CD/DVD, you can use an alternative strategy such as net boot, or manually loading the kernel from the disc to initially boot the system installer. The files you need for booting by another means are also on the disc; the Debian network archive and folder organization on the disc are identical. So when archive file paths are given below for particular files you need for booting, look for those files in the same directories and subdirectories on your installation media. Once the installer is booted, it will be able to obtain all the other files it needs from the disc. If you don't have an installation media set, then you will need to download the installer system files and place them on the a connected computer so they can be used to boot the installer. 4.2. - Debian ( , , ) - - Debian. 4.2.1. Where to Find Installation Files Various installation files can be found on each Debian mirror in the directory debian/dists/bookworm/main/installer-armhf/current/images/ -- the MANIFEST lists each image and its purpose. 4.2.1.1. armhf , armhf ( ̚2.1.4, ?, Debian/armhf?) Linux, ramdisk Linux . ramdisk tftp .../images/netboot/ , .../images/device-tree/ . tar USB .../images/hd-media/ . u-boot armhf .../images/u-boot/ . 4.3. TFTP , ţ TFTP. ̣ ̣ . TFTP , , DHCP RARP . Reverse Address Resolution Protocol (RARP) -- IP . -- BOOTP . BOOTP -- IP , IP- . DHCP (Dynamic Host Configuration Protocol) BOOTP. DHCP. Trivial File Transfer Protocol (TFTP) . , , . SunOS 4.x, SunOS 5.x ( Solaris) GNU/ Linux. 4.3.1. RARP To set up RARP, you need to know the Ethernet address (a.k.a. the MAC address) of the client computers to be installed. If you don't know this information, you can boot into ?Rescue? mode and use the command ip addr show dev eth0. RARP Linux Solaris/SunOS rarpd. , Ethernet ?ethers? ( /etc/ethers NIS/NIS+) ?hosts?. , RARP. Linux SunOS 5 (Solaris 2) ( ): /usr/sbin/rarpd -a; Linux /usr/etc/rarpd -a /usr/etc/rarpd -a SunOS 4 (Solaris 1). 4.3.2. DHCP DHCP ISC dhcpd. Debian GNU/Linux isc-dhcp-server. ( /etc/dhcp/dhcpd.conf): option domain-name "example.com"; option domain-name-servers ns1.example.com; option subnet-mask 255.255.255.0; default-lease-time 600; max-lease-time 7200; server-name "servername"; subnet 192.168.1.0 netmask 255.255.255.0 { range 192.168.1.200 192.168.1.253; option routers 192.168.1.1; } host clientname { filename "/tftpboot.img"; server-name "servername"; next-server servername; hardware ethernet 01:23:45:67:89:AB; fixed-address 192.168.1.90; } ̣ servername, DHCP, TFTP . domain-name, . filename , TFTP. dhcpd, /etc/init.d/isc-dhcp-server restart. 4.3.3. BOOTP GNU/Linux BOOTP . -- CMU bootpd. , DHCP -- ISC dhcpd. Debian GNU/Linux bootp isc-dhcp-server . To use CMU bootpd, you must first uncomment (or add) the relevant line in /etc/ inetd.conf. On Debian GNU/Linux, you can run update-inetd --enable bootps, then /etc/init.d/inetd reload to do so. Just in case your BOOTP server does not run Debian, the line in question should look like: bootps dgram udp wait root /usr/sbin/bootpd bootpd -i -t 120 Now, you must create an /etc/bootptab file. This has the same sort of familiar and cryptic format as the good old BSD printcap, termcap, and disktab files. See the bootptab manual page for more information. For CMU bootpd, you will need to know the hardware (MAC) address of the client. Here is an example /etc/ bootptab: client:\ hd=/tftpboot:\ bf=tftpboot.img:\ ip=192.168.1.90:\ sm=255.255.255.0:\ sa=192.168.1.1:\ ha=0123456789AB: You will need to change at least the ?ha? option, which specifies the hardware address of the client. The ?bf? option specifies the file a client should retrieve via TFTP; see ̚4.3.5, ? TFTP TFTP ? for more details. , BOOTP ISC dhcpd , BOOTP DHCP. BOOTP. , ̚4.3.2, ? DHCP ?. , allow bootp , , /etc/dhcp/dhcpd.conf dhcpd /etc/ init.d/isc-dhcp-server restart. 4.3.4. TFTP TFTP , - tftpd. tftpd-hpa . inetd, . , . , TFTP- /tftpboot . , Debian GNU/Linux , Filesystem Hierarchy Standard. , tftpd-hpa /srv/tftp. . , in.tftpd, Debian, TFTP . -v, . ; . 4.3.5. TFTP TFTP , TFTP ̚4.2.1, ?Where to Find Installation Files? tftpd. , tftpd ̣ . , TFTP . 4.4. . Debian: fai-quickstart ( ) Debian. FAI. 4.4.1. Debian Debian . , , . , , ŚB, . 4.5. Verifying the integrity of installation files You can verify the integrity of downloaded files against checksums provided in SHA256SUMS or SHA512SUMS files on Debian mirrors. You can find them in the same places as the installation images itself. Visit the following locations: * checksum files for CD images, * checksum files for DVD images, * checksum files for other installation files. To compute the checksum of a downloaded installation file, use sha256sum filename.iso respective sha512sum filename.iso and then compare the shown checksum against the corresponding one in the SHA256SUMS respective SHA512SUMS file. The Debian CD FAQ has more useful information on this topic (such as the script check_debian_iso, to semi-automate above procedure), as well as instructions, how to verify the integrity of the above checksum files themselves. 5. 5.1. 32-bit hard-float ARMv7 5.1.1. 5.1.2. 5.1.3. TFTP 5.1.4. USB U-Boot 5.1.5. SD- 5.2. 5.2.1. 5.2.2. 5.2.3. 5.2.4. 5.2.5. , 5.2.6. 5.3. 5.3.1. 5.3.2. Debian 5.3.3. 5.3.4. 5.3.5. ޣ 5.4. 5.4.1. Reliability of optical media 5.4.2. 5.4.3. 5.4.4. 5.4.5. ޣ 5.1. 32-bit hard-float ARMv7 5.1.1. ARM : ) Linux zImage (?vmlinuz?) Linux ramdisk (?initrd.gz?) ) uImage (?uImage?) ramdisk (? uInitrd?). uImage/uInitrd -- , U-Boot, ARM ( , 32-). U-Boot uImage/uInitrd, armel. U-Boot -- uImage/uInitrd -- Linux ramdisk, uImage. , , ramdisk (device-tree blob, ?dtb? ). . dtb , . 5.1.2. .tar netboot (̚5.1.3.2, ? tar- netboot?) SD- (̚5.1.5, ? SD- ?) ( ), U-Boot ?console?. , , . , U-Boot ? console? , , . 5.1.3. TFTP TFTP (, , DHCP, RARP BOOTP ). ̚4.3, ? TFTP?. 5.1.3.1. TFTP U-Boot , U-Boot, ң : ) , ) (/ ramdisk/dtb) ) . -, , DHCP setenv autoload no dhcp setenv ipaddr setenv netmask setenv serverip setenv dnsip setenv gatewayip , saveenv (/ ramdisk/dtb) . tftpboot, . , , . U-Boot : kernel_addr_r, ramdisk_addr_r fdt_addr_r. printenv kernel_addr_r ramdisk_addr_r fdt_addr_r , . Allwinner SunXi (, Allwinner A10, name ?sun4i? Allwinner A20, ?sun7i?), , , : setenv kernel_addr_r 0x46000000 setenv fdt_addr_r 0x47000000 setenv ramdisk_addr_r 0x48000000 tftp tftpboot ${kernel_addr_r} < > tftpboot ${fdt_addr_r} < dtb> tftpboot ${ramdisk_addr_r} < ramdisk> . U-boot ?bootargs? , -- ( ̚5.3.1, ? ?) ( ̚5.3.2, ? Debian? and ŚB, ) -- setenv bootargs console=ttyS0,115200 rootwait panic=10 . uImage/uInitrd, bootm ${kernel_addr_r} ${ramdisk_addr_r} ${fdt_addr_r} , Linux bootz ${kernel_addr_r} ${ramdisk_addr_r}:${filesize} ${fdt_addr_r} : linux ramdisk dtb U-Boot filesize , bootz ramdisk. , , $ {fdt_addr_r}. 5.1.3.2. tar- netboot Debian tar- ( .../images/netboot/netboot.tar.gz ), ӣ tftp. , . U-Boot tftp autoboot, , (MMC/SD, USB, IDE/SATA/SCSI), tftp. , dhcp tftp. tftp autoboot U-Boot, : run bootcmd_dhcp tar- U-Boot: setenv autoload no dhcp tftpboot ${scriptaddr} /debian-installer/armhf/tftpboot.scr source ${scriptaddr} 5.1.4. USB U-Boot U-Boot USB USB, USB (). , . u-Boot v2014.10 autoboot. , , . debian-installer USB , , , . USB Debian tar- hd-media ( ̚4.2.1, ?Where to Find Installation Files?) USB , U-Boot . U-Boot, , FAT16 / FAT32 / ext2 / ext3 / ext4. ISO CD DVD Debian. The autoboot framework in modern U-Boot versions works similar to the boot ordering options in a PC BIOS/UEFI, i.e. it checks a list of possible boot devices for a valid boot image and starts the first one it finds. If there is no operating system installed, plugging in the USB stick and powering up the system should result in starting the installer. You can also initiate the USB-boot process any time from the U-Boot prompt by entering the ?run bootcmd_usb0? command. , USB -- . U-Boot, debian-installer ţ , , . , -- (? console=ttyS0,115200?), (?console=ttyS0?). - U-Boot . U-Boot 115200 , - 9600 . , ?run usb_boot ?. 5.1.5. SD- Debian SD, U-Boot debian-installer . -- ( .../images/netboot/ SD-card-images/ ), Debian CD/DVD ( .../images/ hd-media/SD-card-images/ ). , -- ?firmware..img.gz? ?partition.img.gz?. Linux zcat: zcat firmware..img.gz partition.img.gz > complete_image.img Windows , , 7-Zip, Windows CMD.exe copy /b firmware..img + partition.img complete_image.img . SD, , ( Linux): cat complete_image.img > /dev/_SD_CARD SD , SD. hd-media , Debian CD/DVD , , , CD/ DVD ISO USB. ģ ( ̚6.3.4, ? ?), . , SD, Debian. SD ( ̚6.3.4.2, ? ?). 5.2. Some users may need specific support because of e.g. some visual impairment. Most accessibility features have to be enabled manually. Some boot parameters can be appended to enable accessibility features. Note that on most architectures the boot loader interprets your keyboard as a QWERTY keyboard. 5.2.1. Debian : , text , newt . , DEBIAN_FRONTEND ̚5.3.2, ? Debian?. With the newt front-end (used mostly with braille), one mostly just selects answers with arrow keys and presses Enter to validate the choice. Pressing Tab or Shift - Tab allows to switch between dialog elements, and notably to access the Go Back button, which brings back again to previous questions. Some dialogs contain check boxes, which can be ticked on and off by pressing Space. With the text front-end (used mostly with speech), one mostly selects answers either by typing their number followed by pressing Enter, or by selecting an answer with arrow keys, and pressing Enter to validate the choice. One can also not type anything and just press Enter to simply accept the default value. Typing < and pressing Enter brings back again to previous questions. When a selection of choices has to be made (e.g. during task selection), one can type ! to express an empty selection. 5.2.2. , . , - fb=false. , . 5.2.3. For users with low vision, the installer can use a high-contrast color theme that makes it more readable. To enable it, you can use the ?Accessible high contrast? entry from the boot screen with the d shortcut, or append the theme= dark boot parameter. 5.2.4. : Control++ Control+- . 5.2.5. , , . , ?Advanced options? a. BIOS ( ), Enter ; UEFI ( ) . , s ( Enter BIOS, UEFI). : x -- , r -- , a -- . Enter, BIOS. Debian , . ŚB, . 5.2.6. - Debian. 5.3. -- Linux, , . . , . , ( ) , ӣ . , . , , . Linux BootPrompt HOWTO, . . Σ ̚5.4, ? ?. 5.3.1. If you are booting with a serial console, generally the kernel will autodetect this. If you have a videocard (framebuffer) and a keyboard also attached to the computer which you wish to boot via serial console, you may have to pass the console=device argument to the kernel, where device is a serial device of the target, which is usually something like ttyS0. , ޣ, console=ttyS0,9600n8; : 57600 115200. , ?---?, (bootloader) ( ). , , TERM=. , : linux, bterm, ansi, vt102 dumb. debian-installer vt102. IPMI , QEMU/KVM, , ţ screen. screen, vt102. 5.3.2. Debian ^[2], . ?ݣ ?, . ݣ , () . ݣ . debconf/priority (priority) . priority=high. , , . , . priority=medium , . priority=low ( expert). priority=critical, ӣ . DEBIAN_FRONTEND , . : + DEBIAN_FRONTEND=noninteractive + DEBIAN_FRONTEND=text + DEBIAN_FRONTEND=newt + DEBIAN_FRONTEND=gtk DEBIAN_FRONTEND=newt. DEBIAN_FRONTEND=text. , newt text . , , gtk. BOOT_DEBUG 2 . 3 . ( .) BOOT_DEBUG=0 . BOOT_DEBUG=1 . BOOT_DEBUG=2 . BOOT_DEBUG=3 , . . log_host, log_port ݣ ̣ syslog . , 514- syslog. lowmem lowmem , . 1 2. ̚6.3.1.1, ? / ?. noshell tty2 tty3. , . debian-installer/framebuffer (fb) - . - , fb=false. -- bterm bogl, . debian-installer/theme (theme) A theme determines how the user interface of the installer looks (colors, icons, etc.). Which themes are available may differ per frontend. Currently both the newt and gtk frontend have (apart from the default look) only one additional theme named ?dark? theme, which was designed for visually impaired users. Set this theme by booting with theme=dark (there is also the keyboard shortcut d for this in the boot menu). netcfg/disable_autoconfig , debian-installer IPv6 autoconfiguration DHCP. , . . IPv6 DHCP , , , , , netcfg/disable_autoconfig=true, (v4 v6) . hw-detect/start_pcmcia false, PCMCIA, . . preseed/url (url) url . ̚4.4, ? ?. preseed/file (file) . ̚4.4, ? ?. preseed/interactive true , . . , , , . ̚B.5.2, ? ?. auto-install/enable (auto) , , . ̚B.2.3, ? ?. finish-install/keep-consoles (VT1-VT6) /etc/inittab. true, . cdrom-detect/eject By default, before rebooting, debian-installer automatically ejects the optical media used during the installation. This can be unnecessary if the system does not automatically boot off such media. In some cases it may even be undesirable, for example if the optical drive cannot reinsert the media itself and the user is not there to do it manually. Many slot loading, slim-line, and caddy style drives cannot reload media automatically. false, , - . base-installer/install-recommends (recommends) false, ?? , . , , , . . . debian-installer/allow_unauthenticated , gpg. true . : , . rescue/enable true , . ̚8.6, ? ?. 5.3.3. , , . ̚B.2.2, ? ?. . debian-installer/language (language), debian-installer/country (country), debian-installer/locale (locale) , , . -- locale. . , locale=de_CH ( de_CH.UTF-8 ). , . , -- . locale . : language=en country=DE locale= en_GB.UTF-8. anna/choose_modules (modules) , . , openssh-client-udeb ( , scp) ppp-udeb ( PPPoE). netcfg/disable_autoconfig true, IPv6 autoconfiguration DHCP . mirror/protocol (protocol) , http - Debian, ftp . ftp, . , - ftp , ģ . tasksel:tasksel/first (tasks) , , kde-desktop. ̚6.3.6.2, ? ?. 5.3.4. , . - , . , , , . . , . . ӣ ݣ . : _._= , . , 3Com BNC () ߣ IRQ 10, : 3c509.xcvr=3 3c509.irq=10 5.3.5. ޣ ޣ , udev. , . , . , . ޣ : module_name.blacklist=yes. ޣ /etc/ modprobe.d/blacklist.local . , ӣ ݣ . , , . 5.4. 5.4.1. Reliability of optical media Sometimes, especially with older drives, the installer may fail to boot from an optical disc. The installer may also -- even after booting successfully from such disc -- fail to recognize the disc or return errors while reading from it during the installation. . . . , . * If the disc does not boot, check that it was inserted correctly and that it is not dirty. * If the installer fails to recognize the disc, try just running the option Detect and mount installation media a second time. Some DMA related issues with very old CD-ROM drives are known to be resolved in this way. If this does not work, then try the suggestions in the subsections below. Most, but not all, suggestions discussed there are valid for CD-ROM and DVD. If you cannot get the installation working from optical disc, try one of the other installation methods that are available. 5.4.1.1. * CD-ROM , CD. * CD-ROM , ޣ ? ? (DMA). 5.4.1.2. If the optical disc fails to boot, try the suggestions listed below. * Check that your BIOS/UEFI actually supports booting from optical disc (only an issue for very old systems) and that booting from such media is enabled in the BIOS/UEFI. * If you downloaded an iso image, check that the md5sum of that image matches the one listed for the image in the MD5SUMS file that should be present in the same location as where you downloaded the image from. $ md5sum debian-testing-i386-netinst.iso a20391b12f7ff22ef705cee4059c6b92 debian-testing-i386-netinst.iso Next, check that the md5sum of the burned disc matches as well. The following command should work. It uses the size of the image to read the correct number of bytes from the disc. $ dd if=/dev/cdrom | \ > head -c `stat --format=%s debian-testing-i386-netinst.iso` | \ > md5sum a20391b12f7ff22ef705cee4059c6b92 - 262668+0 records in 262668+0 records out 134486016 bytes (134 MB) copied, 97.474 seconds, 1.4 MB/s If, after the installer has been booted successfully, the disc is not detected, sometimes simply trying again may solve the problem. If you have more than one optical drive, try changing the disc to the other drive. If that does not work or if the disc is recognized but there are errors when reading from it, try the suggestions listed below. Some basic knowledge of Linux is required for this. To execute any of the commands, you should first switch to the second virtual console (VT2) and activate the shell there. * VT4 /var/log/syslog ( nano), . dmesg. * Check in the output of dmesg if your optical drive was recognized. You should see something like (the lines do not necessarily have to be consecutive): ata1.00: ATAPI: MATSHITADVD-RAM UJ-822S, 1.61, max UDMA/33 ata1.00: configured for UDMA/33 scsi 0:0:0:0: CD-ROM MATSHITA DVD-RAM UJ-822S 1.61 PQ: 0 ANSI: 5 sr0: scsi3-mmc drive: 24x/24x writer dvd-ram cd/rw xa/form2 cdda tray cdrom: Uniform CD-ROM driver Revision: 3.20 If you don't see something like that, chances are the controller your drive is connected to was not recognized or may be not supported at all. If you know what driver is needed for the controller, you can try loading it manually using modprobe. * Check that there is a device node for your optical drive under /dev/. In the example above, this would be /dev/sr0. There should also be a /dev/ cdrom. * Use the mount command to check if the optical disc is already mounted; if not, try mounting it manually: $ mount /dev/hdc /cdrom Check if there are any error messages after that command. * Check if DMA is currently enabled: $ cd /proc/ide/hdc $ grep using_dma settings using_dma 1 0 1 rw A ?1? in the first column after using_dma means it is enabled. If it is, try disabling it: $ echo -n "using_dma:0" >settings Make sure that you are in the directory for the device that corresponds to your optical drive. * If there are any problems during the installation, try checking the integrity of the installation media using the option near the bottom of the installer's main menu. This option can also be used as a general test if the disc can be read reliably. 5.4.2. , , , ̚5.3, ? ?. , ( ̚2.2, ?, ? ̚6.4, ? ?). 5.4.3. can't find - - not present, can't initialize - this driver release depends on - . . , . , , , . , , . - , . , , ( ̚8.5, ? ?). 5.4.4. If you get through the initial boot phase but cannot complete the install, the menu option Save debug logs may be helpful. It lets you store system error logs and configuration information from the installer on a storage medium, or download them using a web browser. This information may provide clues as to what went wrong and how to fix it. If you are submitting a bug report, you may want to attach this information to the bug report. , , /var/log/ , /var/log/installer/ , . 5.4.5. ޣ If you still have problems, please submit an installation report (in English please, whenever possible). We also encourage installation reports to be sent even if the installation is successful, so that we can get as much information as possible on the largest number of hardware configurations. , ޣ Debian (BTS) . , , . Debian , ޣ -- installation-report reportbug (apt install installation-report reportbug), reportbug, ̚8.4.2, ? ? reportbug installation-reports. Alternatively you can use this template when filling out installation reports, and file the report as a bug report against the installation-reports pseudo package, by sending it to . Package: installation-reports Boot method: Image version: Date: Machine: Processor: Memory: Partitions: Output of lspci -knn (or lspci -nn): Base System Installation Checklist: [O] = OK, [E] = Error (please elaborate below), [ ] = didn't try it Initial boot: [ ] Detect network card: [ ] Configure network: [ ] Detect media: [ ] Load installer modules: [ ] Detect hard drives: [ ] Partition hard drives: [ ] Install base system: [ ] Clock/timezone setup: [ ] User/password setup: [ ] Install tasks: [ ] Install boot loader: [ ] Overall install: [ ] Comments/Problems: Please make sure that any installation logs that you think would be useful are attached to this report. (You can find them in the installer system in /var/log/ and later on the installed system under /var/log/installer.) Please compress large files using gzip. In the bug report, describe what the problem is, including the last visible kernel messages in the event of a kernel hang. Describe the steps that you did which brought the system into the problem state. ------------------------------------------------------------------------------- ^[2] (2.6.9 ) 32 32 . , . 255 , ӣ . 6. Debian 6.1. 6.2. 6.3. 6.3.1. Debian 6.3.2. 6.3.3. 6.3.4. 6.3.5. 6.3.6. 6.3.7. 6.3.8. 6.3.9. 6.3.10. Installation over network-console 6.4. 6.4.1. 6.4.2. 6.4.3. Completing the Installed System 6.5. Customization 6.5.1. Installing an alternative init system 6.1. For this architecture the installer uses a text-based user interface. A graphical user interface is currently not available. Debian , ̣ . , , . , . , () . . ̣ ; , , , . , . , , , - . , , . أ ??, ݣ. , , debian-installer. , , ( IPv6 autoconfiguration DHCP, ), netcfg/disable_autoconfig=true. ̚5.3.2, ? Debian?. , , , , . , priority= medium. , ??. expert , priority=low. debian-installer. In the text-based environment the use of a mouse is not supported. Here are the keys you can use to navigate within the various dialogs. The Tab or right arrow keys move ?forward?, and the Shift+Tab or left arrow keys move ?backward? between displayed buttons and selections. The up and down arrow select different items within a scrollable list, and also scroll the list itself. In addition, in long lists, you can type a letter to cause the list to scroll directly to the section with items starting with the letter you typed and use Pg-Up and Pg-Down to scroll the list in sections. The space bar selects an item such as a checkbox. Use Enter to activate choices. . , , F1. ף . , Alt+F4 ( Alt F4); Alt+F1. /var/log/syslog. /var/log/installer/syslog . /var/log/ /var/log/installer/ , . 6.2. . ̚6.3, ? ?. main-menu , . main-menu (medium) , ( ), . , , , , , . , Go Back, . localechooser : , . , . , . console-setup Shows a list of keyboard (layouts), from which the user chooses the one which matches his own model. hw-detect , , PCMCIA. cdrom-detect Looks for and mounts a Debian installation media. netcfg , . iso-scan ISO- ( .iso files) ֣ . choose-mirror - Debian. , . cdrom-checker Checks integrity of installation media. This way, the user may assure him/ herself that the installation image was not corrupted. lowmem ߣ , debian-installer ( ). anna Anna's Not Nearly APT. Installs packages which have been retrieved from the chosen mirror or installation media. user-setup . clock-setup (UTC) . tzsetup , . partman ޣ , . , , LVM. Debian. partman-lvm LVM ( ). partman-md RAID (Redundant Array of Inexpensive Disks). RAID , ۣ IDE (-) RAID- . base-installer , Debian GNU/Linux . apt-setup apt, , , . pkgsel tasksel . os-prober bootloader-installer, . . bootloader-installer The various bootloader installers each install a boot loader program on the hard disk, which is necessary for the computer to start up using Linux without using a USB stick or CD-ROM. Many boot loaders allow the user to choose an alternate operating system each time the computer boots. shell . save-logs Provides a way for the user to record information on a USB stick, network, hard disk, or other media when trouble is encountered, in order to accurately report installer software problems to Debian developers later. 6.3. . . , . 6.3.1. Debian , Debian ţ . debian-installer ӣ ݣ . , , . . debian-installer , , . , debian-installer , (, , -). , debian-installer . , (.. CD-ROM ). , . debian-installer . , , , . . ̚6.4, ? ?. 6.3.1.1. / , debian-installer, . , , , , Debian GNU/Linux . , -- , . , . , , . . , , , . (64-128). , . . , . , ӣ , - ( ?Out of memory? VT4 syslog). , ޣ , , . , ţ ext2 ( ). ext2 ext3. lowmem , , ?lowmem? ̚5.3.2, ? Debian?. 6.3.1.2. , . , . , . , . ( -- ) - Debian. . . () (); . . , ?C? . ?C? ; , locales . . , ^[3], . , ( ). ; ̣ , Σしぐま . , , , . , . , , . , , ^[4]. . , , UTF-8. , , ?? ^[5] ; - , . 6.3.1.3. ̣ . , , , . ( kbd-config ). Enter. -- , . 6.3.1.4. ISO Debian hd-media, , ISO- Debian, . iso-scan. iso-scan (, ), , , .iso ( .ISO, ). , ( /.iso, /data/ .iso, /data/tmp/.iso). iso-, iso-scan , iso- Debian . , iso-scan . ISO- , iso-scan , . ģ . iso-scan ISO , ( .iso), debian-installer , ģ ( ). Unix . , ( ), ISO, , . , , ISO RAM . debconf iso-scan/copy_iso_to_ram ( , ). 6.3.1.5. , , , , . . ; interfaces(5). 6.3.1.5.1. , debian-installer . , , ޣ . ף . , ݣ , . , , ӣ , ݣ . , ţ . 6.3.1.5.2. , IP-, , , ͣ . , , Wireless ESSID WEP WPA/WPA2. ̚3.3, ?, ?. , , : , IP- IP- . IP- . . - , -- , , /etc/network/ interfaces. 6.3.1.5.3. IPv4 IPv6 Debian GNU/Linux 7.0 (?Wheezy?), debian-installer IPv6 ( ?? IPv4). IPv4 IPv6 ( IPv4, IPv6 ). IPv4 DHCP ( ). IPv6 (stateless) NDP ( , DNS (RDNSS)), DHCPv6 / ( NDP, DHCPv6). 6.3.2. , ޣ ?root? / ޣ . ޣ . 6.3.2.1. (root) ޣ root -- ޣ , . ޣ root . 6 , . root, ޣ . , . - , root, . root -, . ?root?, ޣ , sudo, . , sudo root. 6.3.2.2. ޣ , ޣ . ޣ ޣ . ޣ root ޣ . ? , root , root . : -- , , . Unix -- , . . ޣ ; , - ģ. , , ޣ . ݣ ޣ , adduser. 6.3.3. ( NTP), . , , . . , , , . , . ? ? (UTC) . - , , . 1. : . : # dpkg-reconfigure tzdata 2. : time/zone=. , Europe/London UTC. . 6.3.4. , debian-installer , - . , , , , , RAID, LVM . , , ŚC, Debian. Σしぐま . ?? . , . 6.3.4.1. debian-installer . , . , , , . , . . , , , , ߣ ߣ. debconf; , . , . * (LVM) * RAID RAID 0, 1, 4, 5, 6 10 . * * ( ) . ţ . . * ext2r0, ext2, ext3, ext4 ext4; /boot ext2. * jfs ( ) * xfs ( ) * reiserfs ( ; ) Reiser . debconf, ţ partman-reiserfs. . * jffs2 -. jffs2 . * FAT16, FAT32 6.3.4.2. , : ֣ ( ), (LVM) , LVM ^ [6]. LVM LVM . LVM LVM c , ; , . LVM , () . LVM, , . ( ), . LVM LVM c , LVM, . ֣ . . ( , LVM ( )) , , . , , , . , . . , . , ; LVM ( ) . , . "" "", ŚC, Debian. , . , ̣ . 1 ( ), . +-----------------------------------------------------------------------------+ | | | | | | | | |-------------------------------+---------------------+-----------------------| | |600 |/, swap | |-------------------------------+---------------------+-----------------------| | /home |500 |/, /home, swap | |-------------------------------+---------------------+-----------------------| | /home, /var |1 |/, /home, /var, /tmp, | |/tmp | |swap | +-----------------------------------------------------------------------------+ LVM ( ), /boot. , , LVM. , , . : SCSI1 (0,0,0) (sda) - 6.4 GB WDC AC36400L #1 primary 16.4 MB B f ext2 /boot #2 primary 551.0 MB swap swap #3 primary 5.8 GB ntfs pri/log 8.2 MB FREE SPACE SCSI2 (1,0,0) (sdb) - 80.0 GB ST380021A #1 primary 15.9 MB ext3 #2 primary 996.0 MB fat16 #3 primary 3.9 GB xfs /home #5 logical 6.0 GB f ext4 / #6 logical 1.0 GB f ext3 /var #7 logical 498.8 MB ext3 ֣ , ̣ ; . , , , , ( ). : , , . . , ( ). , , . 6.3.4.3. , , . Debian. , , ( ). , ? ?. , . , ( ) ( ). , . :, , , RAID, LVM, . , ; , . , . , :, , , RAID, LVM . , Σしぐま partman. , - , ģ . , . , , , : , , . , , fat16, fat32, ext2, ext3 . , . , , , : ( /) . , partman , . partman , . , ģ , , (, partman-ext3, partman-xfs partman-lvm). , . ޣ , , . 6.3.4.4. Multidisk ( RAID) ֣ ^[7] , partman-md / ģ . Multidisk ( , , RAID). MD , Σしぐま . ( partman , ..). MD . : RAID0 . RAID0 . /, , ӣ ( ӣ ݣ (), ). , RAID0 . RAID1 , ģ . ( ) , . , . : , , . : ߣ ( , RAID). : , , , , . , , . RAID5 , ģ . RAID5 ( RAID0). RAID0, RAID5 , . ( RAID4), , . , ţ . RAID5 , ң . , , . , RAID5 ģ RAID1, . , , RAID0 - . RAID6 RAID5, , . RAID6 . RAID10 RAID10 ( RAID0) ( RAID1). Σしぐま n , , . n 2, . n. RAID10 . (near) . . ̣ (far) . , . RAID10 ģ ޣ . : +-----------------------------------------------------------------------------+ | | | | | | | || | | | | | | | ? | | |------+---------+-------------+--------------+-------------------------------| | | | | | | |RAID0 |2 | | | | | | | | | RAID | |------+---------+-------------+--------------+-------------------------------| |RAID1 |2 || | | | | | | | RAID | |------+---------+-------------+--------------+-------------------------------| | | | | | | |RAID5 |3 || | ( | | | | | | RAID ) | |------+---------+-------------+--------------+-------------------------------| | | | | | | |RAID6 |4 || | ( | | | | | | RAID ) | |------+---------+-------------+--------------+-------------------------------| | | | | | ,| |RAID10|2 || |̣ | | | | | |( ) | +-----------------------------------------------------------------------------+ RAID, Software RAID HOWTO. MD RAID. ( partman , : ? RAID.) Make sure that the system can be booted with the partitioning scheme you are planning. In general it will be necessary to create a separate file system for /boot when using RAID for the root (/) file system. Most boot loaders do support mirrored (not striped!) RAID1, so using for example RAID5 for / and RAID1 for /boot can be an option. , RAID partman. ( RAID.) partman-md MD . MD , (, RAID1). MD. * RAID0 -- RAID, , MD. * RAID1 . -, , MD. , RAID , , . , ģ . . £ , debian-installer , . * RAID5 RAID1 , . * RAID6 RAID1 , . * RAID10 RAID1, . debian-installer . . -- . n ( ), f ( ̣ ), o ( ). . , , , . MD . , ֣ 200 MD, 100 , ң RAID0 ( 300 ) (2 1 ) RAID1 ( ģ 100 /home). MD , partman-md partman, MD . 6.3.4.5. (LVM) ? ? , , ̣, , ( ) , , .. (LVM). , LVM ( LVM) ( ), ( ). , (, , ) . , , ݣ 160 /home , 300 , , /home , 460 . , , ݣ. ģ LVM HOWTO. LVM debian-installer partman -, (), LVM. , : ? LVM. : LVM , LVM. , LVM - , Debian , () LVM ԣ! , ( - ) LVM, - (, ). - LVM! Σしぐま partman, (LVM). , ( ) , LVM. LVM. . : * : LVM , .. * * * * * * * : partman , ţ . partman, , ( ). 6.3.4.6. debian-installer . , , . , . ֣ . ֣ , , . The two most important partitions to encrypt are: the home partition, where your private data resides, and the swap partition, where sensitive data might be stored temporarily during operation. Of course, nothing prevents you from encrypting any other partitions that might be of interest. For example /var where database servers, mail servers or print servers store their data, or /tmp which is used by various programs to store potentially interesting temporary files. Some people may even want to encrypt their whole system. Generally the only exception here is the /boot partition which must remain unencrypted, because historically there was no way to load the kernel from an encrypted partition. (GRUB is now able to do that, but debian-installer currently lacks native support for encrypted /boot. The setup is therefore covered in a separate document.) , , . , . . (, , LVM RAID). : . . debian-installer : dm-crypt (ޣ Linux, LVM ). , Device-mapper (dm-crypt). : , , . : aes (), . debian-installer : aes, blowfish, serpent twofish. , , , 2000 AES 21- . : 256 . . , . . IV : xts-plain64 IV , . , . , xts-plain64 . , . : . ^[8] , . . : , . (, , , .) , . , , ?suspend-to-disk? Linux, ( ) . : , . , , . , ^[9]. , . . , , , , . . , ţ . 8 , , , - (, , , , ). , . , . , , qwerty, azerty. . , ݣ . , . , . : , , ( - , /dev/null ..). . , , . , dm-crypt Encrypted volume (sda2_crypt) - 115.1 GB Linux device-mapper #1 115.1 GB F ext3 , - . - ( sda2_crypt ) , . . ̚7.2, ? ?. , . 6.3.5. , , , . , ̣ . tty4. , Alt+F4; Alt+F1. / /var/ log/syslog. , . Linux. . , . , . , , , . , , , ?? . , , . 6.3.6. , . , , . , . 6.3.6.1. apt One of the tools used to install packages on a Debian GNU/Linux system is the program apt, from the apt package^[10]. Other front-ends for package management, like aptitude and synaptic, are also in use. These front-ends are recommended for new users, since they integrate some additional features (package searching and status checks) in a nice user interface. apt . /etc/apt/sources.list. . , , , , , . , , ?stable-updates?. If you are installing at a lower priority (e.g. in expert mode), you will be able to make more decisions yourself. You can choose whether or not to use the security and/or stable-updates services, and you can choose to add packages from the ?contrib?, ?non-free?, and ?non-free-firmware? sections of the archive. 6.3.6.1.1. Installing from more than one CD or DVD image If you are installing from a CD or DVD image that is part of a larger set, the installer will ask if you want to scan additional installation media. If you have such additional media available, you probably want to do this so the installer can use the packages included on them. If you do not have any additional media, that is no problem: using them is not required. If you also do not use a network mirror (as explained in the next section), it can mean that not all packages belonging to the tasks you select in the next step of the installation can be installed. Packages are included on CD and DVD images in the order of their popularity. This means that for most uses only the first image of a set is needed and that only very few people actually use any of the packages included on the last images of a set. , CD , . 3 8 CD, -. DVD : DVD , , DVD . If you do scan multiple installation media, the installer will prompt you to exchange them when it needs packages from one that isn't currently in the drive. Note that only discs that belong to the same set should be scanned. The order in which they are scanned does not really matter, but scanning them in ascending order will reduce the chance of mistakes. 6.3.6.1.2. - : - . , . If you are not installing from a full CD/DVD image, you really should use a network mirror as otherwise you will end up with only a very minimal system. However, if you have a limited Internet connection it is best not to select the desktop task in the next step of the installation. If you are installing from a single full CD image, using a network mirror is not required, but is still strongly recommended because a single CD image contains only a fairly limited number of packages. If you have a limited Internet connection it may still be best to not select a network mirror here, but to finish the installation using only what's available on the CD image and selectively install additional packages after the installation (i.e. after you have rebooted into the new system). If you are installing from DVD, any packages needed during the installation should be present on the first DVD image. Use of a network mirror is optional. One advantage of adding a network mirror is that updates, that have occurred since the CD/DVD images were created and have been included in a point release, will become available for installation, thus extending the life of your CD/DVD set without compromising the security or stability of the installed system. In summary: selecting a network mirror is generally a good idea, except if you do not have a good Internet connection. If the current version of a package is available from installation media, the installer will always use that. The amount of data that will be downloaded if you do select a mirror thus depends on 1. , , 2. , , 3. which of those packages are present on the installation media you have scanned, and 4. whether any updated versions of packages included on the installation media are available from a mirror (either a regular package mirror, or a mirror for security or stable-updates). , , ӣ , , stable-updates, , . 6.3.6.1.3. - Unless you chose not to use a network mirror, you will be presented with a list of network mirrors based upon your country selection earlier in the installation process. Choosing the offered default is usually fine. The offered default is deb.debian.org, which is not a mirror itself but will redirect to a mirror that should be up-to-date and fast. These mirrors support TLS (https protocol) and IPv6. This service is maintained by the Debian System Administration (DSA) team. A mirror can also be specified by hand by choosing ?enter information manually? . You can then specify a mirror host name and an optional port number. This actually has to be a URL base, i.e. when specifying an IPv6 address, one has to add square brackets around it, for instance ?[2001:db8::1]?. IPv6 (, , , ), . IPv4, IPv6. , . IPv6, ? ?. ?ftp.ipv6.debian.org?, , IPv6, . 6.3.6.2. . 93672 , , ̣ . These tasks loosely represent a number of different jobs or things you want to do with your computer, such as ?Desktop environment?, ?Web server?, or ?SSH server?^[11]. ̚D.2, ? , ? lists the space requirements for the available tasks. . , . . / . ? ? . debian-installer . . , . Note that this will only work if the packages needed for the desired desktop environment are actually available. If you are installing using a single full CD image, they will possibly need to be downloaded from a network mirror as they might not be available on the CD image due to its limited amount of space. Installing any of the available desktop environments this way should work fine if you are using a DVD image or any other installation method. The various server tasks will install software roughly as follows. Web server: apache2; SSH server: openssh. ? ? ?? . , Linux Unix . , . ?C ?, tasksel , - , . , . , ( ). Continue. apt Σしぐま , . - , ţ . , , . CD-ROM , CD-ROM, . , ͣ . ţ . CD-ROM, ӣ , , CD-ROM. , ( ); , , . 6.3.7. If you are installing a diskless workstation, obviously, booting off the local disk isn't a meaningful option, and this step will be skipped. 6.3.7.1. , . , , Debian. , ӣ ݣ ޣ . . . 6.3.7.2. flash-kernel ARM, ARM . Debian flash-kernel . Flash-kernel , , . , , , . , NOR- NAND-flash, flash-kernel ramdisk . Σしぐま armel. , ramdisk- , . . flash-kernel, , ! ARM, U-Boot ramdisk ( MMC/SD, USB ֣ IDE/SATA), flash-kernel , . 6.3.7.3. , / , (, ). , , /target/boot. , initrd; , , . ݣ , / , /boot, /boot. 6.3.8. Debian ݣ . , debian-installer. 6.3.8.1. (UTC). , , , , . . debian-installer . UTC , , . 6.3.8.2. You will be prompted to remove the boot media (CD, USB stick, etc) that you used to boot the installer. After that the system will be rebooted into your new Debian system. 6.3.9. , , - ģ . 6.3.9.1. , , , /var/log/installer/ Debian. Choosing Save debug logs from the main menu allows you to save the log files to a USB stick, network, hard disk, or other media. This can be useful if you encounter fatal problems during the installation and wish to study the logs on another system or attach them to an installation report. 6.3.9.2. . , , -- Alt+F2^[12] ( Mac: Option+F2). Alt+F1. , , . Go Back . , exit . RAM Unix . ls /bin / sbin /usr/bin /usr/sbin help. Bourne ash , . nano. /var/log. ӣ , , , , - . . , . 6.3.10. Installation over network-console network-console. SSH. , , . ( ̚4.4, ? ?.) This component is not loaded into the main installation menu by default, so you have to explicitly ask for it. If you are installing from optical media, you need to boot with medium priority or otherwise invoke the main installation menu and choose Load installer components from installation media and from the list of additional components select network-console: Continue installation remotely using SSH. Successful load is indicated by a new menu entry called Continue installation remotely using SSH. . ӣ. ̣ installer ģ . (fingerprint) . , ̣. , Enter . ģ . UTF-8, ţ . , ̣ ӣ ݣ , -ascii . ̣ : $ ssh -l installer install_host install_host IP- . (fingerprint), , . ssh , keep-alive. , , , . , -- -- . -- (NAT) - . , , . , -oServerAliveInterval= ssh, ssh. , (, keep-alive , ssh ), . , IP- , ssh . , , . , , ~/.ssh/known_hosts^[13] ݣ . ̣ :Start menu Start shell. , ģ , . , , - ̣ . SSH . SSH, , , . , , . 6.4. ̚2.2, ?, ?, . , ; ӣ- , . Starting with Debian GNU/Linux 12.0, following the 2022 General Resolution about non-free firmware, official installation images (like netinst) can include non-free firmware packages. Even with those firmware packages available, some firmware files might still be missing. Or one might be using netboot files, which don't include firmware packages. , , debian-installer , . , debian-installer . , (/lib/ firmware) . Which devices are scanned and which file systems are supported depends on the architecture, the installation method and the stage of the installation. Especially during the early stages of the installation, loading the firmware is most likely to succeed from a FAT-formatted USB stick. , , , ţ, . 6.4.1. The most common method to load such firmware is from some removable medium such as a USB stick. To prepare a USB stick (or other medium like a hard drive partition), the firmware files or packages must be placed in either the root directory or a directory named /firmware of the file system on the medium. The recommended file system to use is FAT as that is most certain to be supported during the early stages of the installation. Tarballs and zip files containing current packages for the most common firmware, and the associated metadata to ensure a proper detection by the installer (dep11 directory), are available from: * https://cdimage.debian.org/cdimage/firmware/bookworm/ Just download the tarball or zip file for the correct release and unpack it to the file system on the medium. , . , , . 6.4.2. Any firmware loaded during the installation will be copied automatically to the installed system. In most cases this will ensure that the device that requires the firmware will also work correctly after the system is rebooted into the installed system. However, if the installed system runs a different kernel version than the installer, there is a slight chance that the firmware cannot be loaded due to version skew. If the firmware was loaded from a firmware package, debian-installer will also install this package for the installed system and will automatically add the non-free-firmware section of the package archive in APT's sources.list. This has the advantage that the firmware should be updated automatically if a new version becomes available. , , , () . , , ( ) . 6.4.3. Completing the Installed System Depending on how the installation was performed, it might be that the need for some firmware was not detected during installation, that the relevant firmware was not available, or that one chose not to install some firmware at that time. In some cases, a successful installation can still end up in a black screen or a garbled display when rebooting into the installed system. When that happens, the following workarounds can be tried: * Pass the nomodeset option on the kernel command line. This might help boot into a ?fallback graphics? mode. * Use the Ctrl+Alt+F2 key combination to switch to VT2, which might offer a functional login prompt. 6.5. Customization Using the shell (see ̚6.3.9.2, ? ?), the installation process can be carefully customized, to fit exceptional use cases: 6.5.1. Installing an alternative init system Debian uses systemd as its default init system. However, other init systems (such as sysvinit and OpenRC) are supported, and the easiest time to select an alternative init system is during the installation process. For detailed instructions on how to do so, please see the Init page on the Debian wiki. ------------------------------------------------------------------------------- ^[3] : . ^[4] , , ( ). ^[5] -- , UTF-8, , ISO8859-1 ( - ) EUC-JP ( ). ^[6] LVM 256- AES ?dm-crypt? . ^[7] , MD , ֣ , . ^[8] , LUKS. ^[9] , , . ^[10] Note that the program which actually installs the packages is called dpkg . However, this program is more of a low-level tool. apt is a higher-level tool, which will invoke dpkg as appropriate. It knows how to retrieve packages from your installation media, the network, or wherever. It is also able to automatically install other packages which are required to make the package you're trying to install work correctly. ^[11] You should know that to present this list, the installer is merely invoking the tasksel program. It can be run at any time after installation to install more packages (or remove them), or you can use a more fine-grained tool such as aptitude. If you are looking for a specific single package, after installation is complete, simply run aptitude install package, where package is the name of the package you are looking for. ^[12] : Alt F2 . ^[13] : ssh-keygen -R <_|IP->. 7. Debian 7.1. 7.2. 7.2.1. 7.3. 7.1. - ?smoke test ?. , . , - , Debian. . (̚8.6, ? ?). Debian Linux, . Σしぐま 32-bit hard-float ARMv7, debian-arm. ޣ ̚5.4.5, ? ޣ ?. , , . 7.2. , . , dm-crypt, : Starting early crypto disks... part_crypt(starting) Enter LUKS passphrase: , part , sda2 md0. , , : ? /home? /var? , , , . , , ̚6.3.4.6, ? ?. part_crypt , /etc/crypttab /etc/fstab . . initramfs, initrd . initrd, initramfs-tools: Begin: Mounting root file system... ... Begin: Running /scripts/local-top ... Enter LUKS passphrase: ( ף). ģ , ݣ . Σしぐま . ̚7.2.1, ? ?. . 7.2.1. - , . . * . , , ģ , ݣ . * -- /home /srv. . dm-crypt . -, device mapper: # /etc/init.d/cryptdisks start , /etc/crypttab, /dev (, , , ). : # mount /_ * (/usr /var), . , () , , , , . -- . 7.3. . , . . , , . , . , . /usr/share/doc/ (, Debian, ). , . , apt apt-doc apt-howto. , /usr/share/doc/ . Linux HOWTO .gz /usr/share/doc/HOWTO/en-txt/. dhelp /usr/share/doc/HTML/index.html . -- : $ cd /usr/share/doc/ $ w3m . w3m . , -. - / usr/share/doc/ . info man , . help, . --help . , |more , . , ̣ , . 8. 8.1. 8.2. Debian 8.2.1. Debian 8.2.2. Debian 8.2.3. 8.2.4. cron 8.3. 8.4. 8.4.1. 8.4.2. 8.4.3. Exim4 8.5. 8.6. 8.1. Debian GNU/Linux , . Debian GNU/Linux , / ֣ . , ? ? , ( ) . Ctrl+Alt+Del . , . reboot. halt ^[14]. poweroff shutdown -h now. systemd , ; , systemctl reboot systemctl poweroff. 8.2. Debian Debian . Linux, , Debian, . , ; Debian, . 8.2.1. Debian Debian. , . : * /usr ( /usr/local) * /var ( /var/local, ) * /bin * /sbin * /lib , /usr/bin/perl, , , perl, , Σしぐま. , ?hold? aptitude. One of the best installation methods is apt. You can use the command line version of apt as well as tools like aptitude or synaptic (which are just graphical frontends for apt). Note that apt will also let you merge main, contrib, non-free, and non-free-firmware so you can have restricted packages (strictly speaking not belonging to Debian) as well as packages from Debian GNU /Linux at the same time. 8.2.2. Debian , Debian . , . - Debian The Software Available for Debian's Stable Release. 8.2.3. update-alternatives. , update-alternatives. 8.2.4. cron /etc, . , cron , /etc/cron.{daily,weekly,monthly}. /etc /crontab . , : () ̣ (b) ̣ ̣ , /etc/crontab, , , /etc/cron.d/ _. , , ޣ , cron. , , cron . . cron(8), crontab(5) /usr/share/doc/cron/README.Debian. 8.3. - Debian Debian. , Debian GNU/Linux FAQ Debian. Debian Debian. Debian Debian . , Debian, Debian. ̣ , , man info . , /usr/share/doc. , /usr/share/doc/HOWTO /usr/share/doc/FAQ . /usr/share/doc/debian/ bug*. ̣ , Debian, /usr/share/doc/( )/README.Debian. GNU/Linux Linux. ģ HOWTO GNU/Linux. Linux Unix. Linux Documentation Project (LDP) HOWTO Linux. Unix, , , - . Unix FAQs UseNet. 8.4. (email) -- . , Debian, . ң . : [Mail User Agent] (MUA) -- , . : [Mail Transfer Agent] (MTA) -- . : [Mail Delivery Agent] (MDA) -- . , . , . , Linux Unix MUA mutt. Linux . exim sendmail, MTA procmail MDA. , GNOME evolution, KDE kmail Mozilla thunderbird. MUA, MTA MDA, ( ) Linux. 8.4.1. Even if you are planning to use a graphical mail program, it would be useful, to have a traditional MTA/MDA installed and correctly set up on your Debian GNU /Linux system. Reason is that various utilities running on the system^[15] can send important notices by e-mail to inform the system administrator of (potential) problems or changes. For this you can install exim4 and mutt with apt install exim4 mutt. exim4 is a combination MTA/MDA that is relatively small but very flexible. By default it will be configured to only handle e-mail local to the system itself and e-mails addressed to the system administrator (root account) will be delivered to the regular user account created during the installation^[16]. /var/mail/ޣ_. mutt. 8.4.2. , Debian , . , exim4 , , . ɣ . (ISP) , exim4 . ɣ ( ). , , . reportbug, Debian. , exim4. reportbug , reportbug --configure ?? MTA. SMTP, . 8.4.3. Exim4 , , exim4^[17]: # dpkg-reconfigure exim4-config ( ), , . , . . , . - , SMTP. , , . - (smarthost) , ?smarthost?, . Smarthost ݣ , , . , smarthost fetchmail. , smarthost ISP, , . . smarthost; , , , . (, ) ӣ . . , , . ; ţ, . , , /etc/exim4. exim4 /usr/share/doc/exim4; README.Debian.gz exim4 . , , , , . ISP. ӣ , , . MTA exim4, /etc/email-addresses. 8.5. ? , , Debian . , , ?make deb-pkg?. Debian Linux Kernel Handbook. 8.6. - ģ , , . , , , ֣ /sbin/init. , ӣ , . , rescue , rescue boot: rescue/ enable=true . ģ , , , . , ! , , . , , , . , , , . , RAID LVM. , , . . , . , . /target. , . , , , . -- . ------------------------------------------------------------------------------- ^[14] SysV halt , poweroff , systemd ( jessie) . ^[15] Examples are: cron, quota, logcheck, aide, ... ^[16] The forwarding of mail for root to the regular user account is configured in /etc/aliases. If no regular user account was created, the mail will of course be delivered to the root account itself. ^[17] , exim4 MTA/MDA. A. A.1. A.2. A.2.1. Optical disc A.2.2. A.2.3. ֣ A.3. A.4. ޣ A.5. ... Debian GNU/Linux bookworm 32-bit hard-float ARMv7 (?armhf?) debian-installer. , Σしぐま , . , , . A.1. , ̚5.4.5, ? ޣ ?, . , , debian-boot (debian-boot@lists.debian.org) IRC- (#debian-boot OFTC). A.2. The debian-cd team provides builds of installation images using debian-installer on the Debian CD/DVD page. For more information on where to get installation images, see ̚4.1, ?Official Debian GNU/Linux installation images?. Some installation methods require other images than those for optical media. ̚4.2.1, ?Where to Find Installation Files? explains how to find images on Debian mirrors. , . A.2.1. Optical disc The netinst CD image is a popular image which can be used to install bookworm with the debian-installer. This installation method is intended to boot from the image and install additional packages over a network; hence the name ? netinst?. The image has the software components needed to run the installer and the base packages to provide a minimal bookworm system. If you'd rather, you can get a full size CD/DVD image which will not need the network to install. You only need the first image of such set. Download whichever type you prefer and burn it to an optical disc. A.2.2. debian-installer . (netboot) . debian-installer netboot/. A.2.3. ֣ It's possible to boot the installer using no removable media, but just an existing hard disk, which can have a different OS on it. Download hd-media/ initrd.gz, hd-media/vmlinuz, and a Debian CD/DVD image to the top-level directory of the hard disk. Make sure that the image has a filename ending in .iso. Now it's just a matter of booting linux with the initrd. A.3. . Enter , ( ̚5.3, ? ?). . Enter, . , . ţ , . . , . Now sit back while debian-installer detects some of your hardware, and loads the rest of the installation image. DHCP. DHCP, . Setting up the network is followed by the creation of user accounts. By default you are asked to provide a password for the ?root? (administrator) account and information necessary to create one regular user account. If you do not specify a password for the ?root? user, this account will be disabled but the sudo package will be installed later to enable administrative tasks to be carried out on the new system. By default, the first user created on the system will be allowed to use the sudo command to become root. . , . , , . . (. ̚6.3.4.2, ? ?). . , . , . . , , . /. ̚6.3.4, ? ? ; ŚC, Debian . debian-installer Σしぐま , . . , , , . , ̣ . , apt. ? ? . ? ?, . ̚6.3.6.2, ? ?. The last step is to install a boot loader. If the installer detects other operating systems on your computer, it will add them to the boot menu and let you know. debian-installer , . - Enter . . 7, Debian. , 6, Debian. A.4. ޣ debian-installer, , ޣ. ޣ -- reportbug (apt install reportbug), reportbug ̚8.4.2, ? ? reportbug installation-reports. , debian-installer. , , , , . ޣ , ; , ̚5.4.4, ? ?. A.5. ... , Debian ģ Debian . , 8, . B. B.1. B.1.1. B.1.2. B.2. B.2.1. B.2.2. B.2.3. B.2.4. B.2.5. Examples of boot prompt preseeding B.2.6. DHCP B.3. B.4. ( bookworm) B.4.1. B.4.2. B.4.3. B.4.4. - B.4.5. ޣ B.4.6. B.4.7. B.4.8. B.4.9. Apt B.4.10. B.4.11. B.4.12. B.5. B.5.1. B.5.2. B.5.3. , debian-installer . , , https://www.debian.org/releases/bookworm/ example-preseed.txt. B.1. . , , . . , , . ( !) . B.1.1. : initrd, . initrd , ϣ. . . +-----------------------------------------------------------------------------+ | | initrd | | | |----------------------------------------+---------+--------------+-----------| |CD/DVD/USB | | |^[a] | |----------------------------------------+---------+--------------+-----------| |netboot | | | | |----------------------------------------+---------+--------------+-----------| |hd-media | | |^[a] | |-----------------------------------------------------------------------------| |^[a] preseed/url| +-----------------------------------------------------------------------------+ An important difference between the preseeding methods is the point at which the preconfiguration file is loaded and processed. For initrd preseeding this is right at the start of the installation, before the first question is even asked. Preseeding from the kernel command line happens just after. It is thus possible to override configuration set in the initrd by editing the kernel command line (either in the bootloader configuration or manually at boot time for bootloaders that allow it). For file preseeding this is after the installation image has been loaded. For network preseeding it is only after the network has been configured. , , , ( , , ). , ̚B.2.2, ? ?. , Σしぐま , ?auto?. , (, , ), . , . ̚B.2.3, ? ?. B.1.2. debian-installer , . () ; . B.2. You will first need to create a preconfiguration file and place it in the location from where you want to use it. Creating the preconfiguration file is covered later in this appendix. Putting it in the correct location is fairly straightforward for network preseeding or if you want to read the file off a usb-stick. If you want to include the file in an installation ISO image, you will have to remaster the image. How to get the preconfiguration file included in the initrd is outside the scope of this document; please consult the developers' documentation for debian-installer. , https:// www.debian.org/releases/bookworm/example-preseed.txt. , ޣ . B.2.1. initrd, , preseed.cfg initrd. . . , (, syslinux.cfg) append . , , . syslinux timeout 1 syslinux.cfg. , , . md5sum, , , . Boot parameters to specify: - if you're netbooting: preseed/url=http://host/path/to/preseed.cfg preseed/url/checksum=5da499872becccfeda2c4872f9171c3d - or preseed/url=tftp://host/path/to/preseed.cfg preseed/url/checksum=5da499872becccfeda2c4872f9171c3d - if you're booting a remastered installation image: preseed/file=/cdrom/preseed.cfg preseed/file/checksum=5da499872becccfeda2c4872f9171c3d - if you're installing from USB media (put the preconfiguration file in the toplevel directory of the USB stick): preseed/file=/hd-media/preseed.cfg preseed/file/checksum=5da499872becccfeda2c4872f9171c3d , preseed/url url, preseed/file -- file, preseed/file/checksum -- preseed-md5, . B.2.2. , ӣ ݣ , . , , ̣ . . , debian-installer, //= , . , ^[18], , ://=. , debconf . , , . , ??=? ?=?. ̚B.5.2, ? ?. , , , . , . , preseed/url url. ݣ : tasks tasksel:tasksel/first. ?---? . , ?---?, ( ). (, ), . linux (2.6.9 ) 32 32 , , . , . ( .) , vga=normal, , . , . B.2.3. Debian, , . Automated install , auto . auto , . : auto url=autoserver DHCP autoserver DNS, , DHCP. example.com, DHCP, http://autoserver.example.com/d-i/bookworm/./ preseed.cfg. url (d-i/bookworm/./preseed.cfg) ң auto-install/ defaultroot. ޣ bookworm, ϣ , . /./ , ( preseed/ include preseed/run). URL (, /) , . , , USB-, -. , preseed/run /scripts/late_command.sh, http://autoserver.example.com/d-i/bookworm/./scripts/ late_command.sh. DHCP DNS, , preseed.cfg, ӣ ݣ url, , /./, ( / URL). , : auto url=http://192.168.1.2/path/to/mypreseed.file : * URL , http, * , , DHCP, * / , . , url, , debian-installer, , preseed/run . , , auto-install/classes classes. : auto url=example.com classes=class_A;class_B classes, , . , , , ͣ auto-install. auto-install/style, . , , < debian-boot@lists.debian.org>, ͣ, , . auto ̣ . auto=true priority=critical . auto -- auto-install/enable true , , priority debconf/priority, critical . DHCP : interface=auto netcfg/dhcp_timeout=60, , DHCP . , , . , , . B.2.4. ( auto) . , , ݣ . , auto=true interface=eth0. priority debconf/priority fb debian-installer/framebuffer auto auto-install/enable classes auto-install/classes preseed/file url preseed/url theme debian-installer/theme language debian-installer/language country debian-installer/country locale debian-installer/locale keymap keyboard-configuration/xkb-keymap modules anna/choose_modules firmware hw-detect/firmware-lookup interface netcfg/choose_interface domain netcfg/get_domain hostname netcfg/get_hostname protocol mirror/protocol suite mirror/suite recommends base-installer/install-recommends tasks tasksel:tasksel/first desktop ( ) tasksel:tasksel/desktop preseed-md5 preseed/file/checksum B.2.5. Examples of boot prompt preseeding Here are some examples of how the boot prompt might look like (you will need to adapt this to your needs). # To set French as language and France as country: /install.amd/vmlinuz vga=788 initrd=/install.amd/gtk/initrd.gz language=fr country=FR --- quiet # To set English as language and Germany as country, and use a German keyboard layout: /install.amd/vmlinuz vga=788 initrd=/install.amd/gtk/initrd.gz language=en country=DE locale=en_US.UTF-8 keymap=de --- quiet # To install the MATE desktop: /install.amd/vmlinuz vga=788 initrd=/install.amd/gtk/initrd.gz desktop=mate-desktop --- quiet # To install the web-server task: /install.amd/vmlinuz initrd=/install.amd/initrd.gz tasksel:tasksel/first=web-server --- B.2.6. DHCP DHCP , . DHCP . , , URL, , , URL . , dhcpd.conf ISC DHCP (Debian isc-dhcp-server). if substring (option vendor-class-identifier, 0, 3) = "d-i" { filename "http://host/preseed.cfg"; } , DHCP ?d-i?, DHCP , . ̣ , . DHCP , , - Debian. -, . DHCP Debian , . B.3. debconf-set-selections. : <> < > < > <> #_preseed_V1 , . * (tab): ޣ . * , (?\?) . ; -- . / . * debconf (), , ?d-i?; , , , debconf. debconf , , ?d-i?. * , . , (, partman), . * , . * #_preseed_V1 * A comment consists of a line which starts with a hash character (?#?) and extends up to the length of that line. ̚B.4, ? ( bookworm)? . -- , , debconf-get-selections debconf-utils, debconf cdebconf : $ echo "#_preseed_V1" > $ debconf-get-selections --installer >> $ debconf-get-selections >> , , , ӣ- . , , cdebconf /var/log/installer/ cdebconf. , , . /var/log/installer Σしぐま installation-report. nano /var/lib/cdebconf . templates.dat , questions.dat -- , . , debconf-set-selections -c preseed.cfg. B.4. ( bookworm) , , https://www.debian.org/releases/bookworm/ example-preseed.txt. , Intel x86. , (, ) debconf . , Debian Installer, ̚6.3, ? ?. B.4.1. , initrd . (̚B.2.3, ? ?) auto-install/enable=true (, auto). , . ; , debian-installer, . , , . , locale=ru_RU. , , ^[19]. . . # , . d-i debian-installer/locale string en_US # . #d-i debian-installer/language string en #d-i debian-installer/country string NL #d-i debian-installer/locale string en_GB.UTF-8 # , . #d-i localechooser/supported-locales multiselect en_US.UTF-8, nl_NL.UTF-8 ( ) US. . ; dpkg-reconfigure keyboard-configuration. # . d-i keyboard-configuration/xkb-keymap select ru # d-i keyboard-configuration/toggle select No toggling keymap skip-config. . B.4.2. Of course, preseeding the network configuration won't work if you're loading your preconfiguration file from the network. But it's great when you're booting from optical disc or USB stick. If you are loading preconfiguration files from the network, you can pass network config parameters by using kernel boot parameters. ̣ , interface=eth1. ( ?preseed/url?), , , . ݣ , ?preseed/run? : kill-all-dhcp; netcfg debconf . # Disable network configuration entirely. This is useful for cdrom # installations on non-networked devices where the network questions, # warning and long timeouts are a nuisance. #d-i netcfg/enable boolean false # netcfg will choose an interface that has link if possible. This makes it # skip displaying a list if there is more than one interface. d-i netcfg/choose_interface select auto # To pick a particular interface instead: #d-i netcfg/choose_interface select eth1 # To set a different link detection timeout (default is 3 seconds). # Values are interpreted as seconds. #d-i netcfg/link_wait_timeout string 10 # If you have a slow dhcp server and the installer times out waiting for # it, this might be useful. #d-i netcfg/dhcp_timeout string 60 #d-i netcfg/dhcpv6_timeout string 60 # Automatic network configuration is the default. # If you prefer to configure the network manually, uncomment this line and # the static network configuration below. #d-i netcfg/disable_autoconfig boolean true # If you want the preconfiguration file to work on systems both with and # without a dhcp server, uncomment these lines and the static network # configuration below. #d-i netcfg/dhcp_failed note #d-i netcfg/dhcp_options select Configure network manually # Static network configuration. # # IPv4 example #d-i netcfg/get_ipaddress string 192.168.1.42 #d-i netcfg/get_netmask string 255.255.255.0 #d-i netcfg/get_gateway string 192.168.1.1 #d-i netcfg/get_nameservers string 192.168.1.1 #d-i netcfg/confirm_static boolean true # # IPv6 example #d-i netcfg/get_ipaddress string fc00::2 #d-i netcfg/get_netmask string ffff:ffff:ffff:ffff:: #d-i netcfg/get_gateway string fc00::1 #d-i netcfg/get_nameservers string fc00::1 #d-i netcfg/confirm_static boolean true # Any hostname and domain names assigned from dhcp take precedence over # values set here. However, setting the values still prevents the questions # from being shown, even if values come from dhcp. d-i netcfg/get_hostname string unassigned-hostname d-i netcfg/get_domain string unassigned-domain # If you want to force a hostname, regardless of what either the DHCP # server returns or what the reverse DNS entry for the IP is, uncomment # and adjust the following line. #d-i netcfg/hostname string somehost # Disable that annoying WEP key dialog. d-i netcfg/wireless_wep string # The wacky dhcp hostname that some ISPs use as a password of sorts. #d-i netcfg/dhcp_hostname string radish # If you want to completely disable firmware lookup (i.e. not use firmware # files or packages that might be available on installation images): #d-i hw-detect/firmware-lookup string never # If non-free firmware is needed for the network or other hardware, you can # configure the installer to always try to load it, without prompting. Or # change to false to disable asking. #d-i hw-detect/load_firmware boolean true , netcfg , netcfg/get_netmask. , seen . netcfg , netcfg/get_gateway. : netcfg/get_gateway ?none?, , . B.4.3. # , # network-console ̣ SSH. , # . #d-i anna/choose_modules string network-console #d-i network-console/authorized_keys_url string http://10.0.0.1/openssh-key #d-i network-console/password password r00tme #d-i network-console/password-again password r00tme More information related to network-console can be found in ̚6.3.10, ?Installation over network-console?. B.4.4. - , /etc /apt/sources.list -. mirror/suite . mirror/udeb/suite . , initrd, ͣ . , . # Mirror protocol: # If you select ftp, the mirror/country string does not need to be set. # Default value for the mirror protocol: http. #d-i mirror/protocol string ftp d-i mirror/country string manual d-i mirror/http/hostname string http.us.debian.org d-i mirror/http/directory string /debian d-i mirror/http/proxy string # Suite to install. #d-i mirror/suite string testing # Suite to use for loading installer components (optional). #d-i mirror/udeb/suite string testing B.4.5. ޣ . crypt(3). , , . , DES MD5, . SHA-256 SHA512. # ޣ ( ޣ # sudo). #d-i passwd/root-login boolean false # ޣ . #d-i passwd/make-user boolean false # , #d-i passwd/root-password password r00tme #d-i passwd/root-password-again password r00tme # crypt(3). #d-i passwd/root-password-crypted password [ crypt(3)] # ޣ . #d-i passwd/user-fullname string Debian User #d-i passwd/username string debian # , #d-i passwd/user-password password insecure #d-i passwd/user-password-again password insecure # crypt(3). #d-i passwd/user-password-crypted password [ crypt(3)] # ޣ UID # . #d-i passwd/user-uid string 1010 # ޣ . # -- . #d-i passwd/user-default-groups string audio cdrom video , passwd/root-password-crypted passwd/ user-password-crypted ?!?. , ޣ . ޣ , , (, SSH sudo). ( whois) SHA-512 crypt(3) : mkpasswd -m sha-512 B.4.6. # , . d-i clock-setup/utc boolean true # $TZ; # /usr/share/zoneinfo/. d-i time/zone string US/Eastern # , NTP d-i clock-setup/ntp boolean true # NTP. . #d-i clock-setup/ntp-server string ntp.example.com B.4.7. ֣ ; partman-auto. . , . RAID, LVM , . . partman-auto-recipe.txt partman-auto-raid-recipe.txt debian-installer. debian-installer. , . . , , . B.4.7.1. # If the system has free space you can choose to only partition that space. # This is only honoured if partman-auto/method (below) is not set. #d-i partman-auto/init_automatically_partition select biggest_free # Alternatively, you may specify a disk to partition. If the system has only # one disk the installer will default to using that, but otherwise the device # name must be given in traditional, non-devfs format (so e.g. /dev/sda # and not e.g. /dev/discs/disc0/disc). # For example, to use the first SCSI/SATA hard disk: #d-i partman-auto/disk string /dev/sda # In addition, you'll need to specify the method to use. # The presently available methods are: # - regular: use the usual partition types for your architecture # - lvm: use LVM to partition the disk # - crypto: use LVM within an encrypted partition d-i partman-auto/method string lvm # You can define the amount of space that will be used for the LVM volume # group. It can either be a size with its unit (eg. 20 GB), a percentage of # free space or the 'max' keyword. d-i partman-auto-lvm/guided_size string max # If one of the disks that are going to be automatically partitioned # contains an old LVM configuration, the user will normally receive a # warning. This can be preseeded away... d-i partman-lvm/device_remove_lvm boolean true # The same applies to pre-existing software RAID array: d-i partman-md/device_remove_md boolean true # And the same goes for the confirmation to write the lvm partitions. d-i partman-lvm/confirm boolean true d-i partman-lvm/confirm_nooverwrite boolean true # You can choose one of the three predefined partitioning recipes: # - atomic: all files in one partition # - home: separate /home partition # - multi: separate /home, /var, and /tmp partitions d-i partman-auto/choose_recipe select atomic # Or provide a recipe of your own... # If you have a way to get a recipe file into the d-i environment, you can # just point at it. #d-i partman-auto/expert_recipe_file string /hd-media/recipe # If not, you can put an entire recipe into the preconfiguration file in one # (logical) line. This example creates a small /boot partition, suitable # swap, and uses the rest of the space for the root partition: #d-i partman-auto/expert_recipe string \ # boot-root :: \ # 40 50 100 ext3 \ # $primary{ } $bootable{ } \ # method{ format } format{ } \ # use_filesystem{ } filesystem{ ext3 } \ # mountpoint{ /boot } \ # . \ # 500 10000 1000000000 ext3 \ # method{ format } format{ } \ # use_filesystem{ } filesystem{ ext3 } \ # mountpoint{ / } \ # . \ # 64 512 300% linux-swap \ # method{ swap } format{ } \ # . # The full recipe format is documented in the file partman-auto-recipe.txt # included in the 'debian-installer' package or available from D-I source # repository. This also documents how to specify settings such as file # system labels, volume group names and which physical devices to include # in a volume group. ## Partitioning for EFI # If your system needs an EFI partition you could add something like # this to the recipe above, as the first element in the recipe: # 538 538 1075 free \ # $iflabel{ gpt } \ # $reusemethod{ } \ # method{ efi } \ # format{ } \ # . \ # # The fragment above is for the amd64 architecture; the details may be # different on other architectures. The 'partman-auto' package in the # D-I source repository may have an example you can follow. # This makes partman automatically partition without confirmation, provided # that you told it what to do using one of the methods above. d-i partman-partitioning/confirm_write_new_label boolean true d-i partman/choose_partition select finish d-i partman/confirm boolean true d-i partman/confirm_nooverwrite boolean true # Force UEFI booting ('BIOS compatibility' will be lost). Default: false. #d-i partman-efi/non_efi_system boolean true # Ensure the partition table is GPT - this is required for EFI #d-i partman-partitioning/choose_label select gpt #d-i partman-partitioning/default_label string gpt # When disk encryption is enabled, skip wiping the partitions beforehand. #d-i partman-auto-crypto/erase_disks boolean false B.4.7.2. RAID RAID. RAID 0, 1, 5, 6 10, (degraded arrays) . . debian-installer. ( , ) . -- . /var/log/syslog. # "raid". #d-i partman-auto/method string raid # . , # , . #d-i partman-auto/disk string /dev/sda /dev/sdb # . #d-i partman-auto/expert_recipe string \ # multiraid :: \ # 1000 5000 4000 raid \ # $primary{ } method{ raid } \ # . \ # 64 512 300% raid \ # method{ raid } \ # . \ # 500 10000 1000000000 raid \ # method{ raid } \ # . # , ̣ # RAID. # . RAID 0, 1, 5, 6 10; # "#". # : # \ # #d-i partman-auto-raid/recipe string \ # 1 2 0 ext3 / \ # /dev/sda1#/dev/sdb1 \ # . \ # 1 2 0 swap - \ # /dev/sda5#/dev/sdb5 \ # . \ # 0 2 0 ext3 /home \ # /dev/sda6#/dev/sdb6 \ # . # partman-auto-raid-recipe.txt, # ޣ debian-installer D-I. # partman , . d-i partman-md/confirm boolean true d-i partman-partitioning/confirm_write_new_label boolean true d-i partman/choose_partition select finish d-i partman/confirm boolean true d-i partman/confirm_nooverwrite boolean true B.4.7.3. , (UUID); , . UUID- , , , , . , UUID. , LVM, ͣ, UUID-. - , , . , , USB-, , . # , UUID, # "traditional", # "label", , # UUID-. #d-i partman/mount_style select uuid B.4.8. , , . . # APT . # # , # . #d-i base-installer/install-recommends boolean false # () ; ?none?, # . #d-i base-installer/kernel/image string linux-image-686 B.4.9. Apt /etc/apt/sources.list . () . # Choose, if you want to scan additional installation media # (default: false). d-i apt-setup/cdrom/set-first boolean false # You can choose to install non-free firmware. #d-i apt-setup/non-free-firmware boolean true # You can choose to install non-free and contrib software. #d-i apt-setup/non-free boolean true #d-i apt-setup/contrib boolean true # Uncomment the following line, if you don't want to have the sources.list # entry for a DVD/BD installation image active in the installed system # (entries for netinst or CD images will be disabled anyway, regardless of # this setting). #d-i apt-setup/disable-cdrom-entries boolean true # Uncomment this if you don't want to use a network mirror. #d-i apt-setup/use_mirror boolean false # Select which update services to use; define the mirrors to be used. # Values shown below are the normal defaults. #d-i apt-setup/services-select multiselect security, updates #d-i apt-setup/security_host string security.debian.org # Additional repositories, local[0-9] available #d-i apt-setup/local0/repository string \ # http://local.server/debian stable main #d-i apt-setup/local0/comment string local server # Enable deb-src lines #d-i apt-setup/local0/source boolean true # URL to the public key of the local repository; you must provide a key or # apt will complain about the unauthenticated repository and so the # sources.list line will be left commented out. #d-i apt-setup/local0/key string http://local.server/key # or one can provide it in-line by base64 encoding the contents of the # key file (with `base64 -w0`) and specifying it thus: #d-i apt-setup/local0/key string base64://LS0tLS1CRUdJTiBQR1AgUFVCTElDIEtFWSBCTE9DSy0tLS0tCi4uLgo= # The content of the key file is checked to see if it appears to be ASCII-armoured. # If so it will be saved with an ".asc" extension, otherwise it gets a '.gpg' extension. # "keybox database" format is currently not supported. (see generators/60local in apt-setup's source) # By default the installer requires that repositories be authenticated # using a known gpg key. This setting can be used to disable that # authentication. Warning: Insecure, not recommended. #d-i debian-installer/allow_unauthenticated boolean true # Uncomment this to add multiarch configuration for i386 #d-i apt-setup/multiarch string i386 B.4.10. . : * standard ( ) * desktop ( ) * gnome-desktop ( Gnome) * xfce-desktop ( XFCE) * kde-desktop ( KDE Plasma) * cinnamon-desktop ( Cinnamon) * mate-desktop ( MATE) * lxde-desktop ( LXDE) * web-server (-) * ssh-server ( SSH) - . standard. Or if you don't want the tasksel dialog to be shown at all, preseed pkgsel/ run_tasksel (no packages are installed via tasksel in that case). , , pkgsel/include. , . #tasksel tasksel/first multiselect standard, web-server, kde-desktop # Or choose to not get the tasksel dialog displayed at all (and don't install # any packages): #d-i pkgsel/run_tasksel boolean false # Individual additional packages to install #d-i pkgsel/include string openssh-server build-essential # Whether to upgrade packages after debootstrap. # Allowed values: none, safe-upgrade, full-upgrade #d-i pkgsel/upgrade select none # You can choose, if your system will report back on what software you have # installed, and what software you use. The default is not to report back, # but sending reports helps the project determine what software is most # popular and should be included on the first CD/DVD. #popularity-contest popularity-contest/participate boolean false B.4.11. # # (VT1-VT6) /etc/inittab. # , . #d-i finish-install/keep-consoles boolean true # , . d-i finish-install/reboot_in_progress note # CD , . #d-i cdrom-detect/eject boolean false # , # . #d-i debian-installer/exit/halt boolean true # , ţ. #d-i debian-installer/exit/poweroff boolean true B.4.12. # , - ģ # , # . , . # , , # , : # debconf-get-selections --installer > # debconf-get-selections >> B.5. B.5.1. -- ̣ . , /target. CD, , /cdrom. # d-i . # # . # ģ ! , # , # . # , # . #d-i preseed/early_command string anna-install --udeb # . # # , ( # preseed/early_command). #d-i partman/early_command \ # string debconf-set partman-auto/disk "$(list-devices disk | head -n1)" # , ݣ # /target. chroot /target # , # apt-install in-target # . #d-i preseed/late_command string apt-install zsh; in-target chsh -s /bin/zsh B.5.2. , ӣ . seen ?false? . d-i foo/bar string value d-i foo/bar seen false , preseed/ interactive=true . . , ?d-i? , . , , . . ̚B.2.2, ? ?. , ??=?, foo/bar?=value ( owner:foo/bar?=value). , , , ?? . , DEBCONF_DEBUG=5. T debconf . B.5.3. . , , , . , , , ̣ . # , ; # . , , # preseed/include. , # , # , . #d-i preseed/include string x.cfg # # . # md5sums; md5sums , # . #d-i preseed/include/checksum string 5da499872becccfeda2c4872f9171c3d # # , . #d-i preseed/include_command \ # string if [ "`hostname`" = bob ]; then echo bob.cfg; fi # -- . # , , debconf-set # debconf. # , # , , # , . #d-i preseed/run string foo.sh initrd , , preseed/url . ģ , . , , , , ģ preseed/early : , . ------------------------------------------------------------------------------- ^[18] debconf ( ) -- , , , debconf. ?d-i?. , debconf . ^[19] locale en_NL, , ģ en_US.UTF-8. , , en_GB.UTF-8, . C. Debian C.1. Debian C.2. C.3. C.4. Linux C.5. Debian C.1. Debian , GNU/Linux . , , . , , . ? (swap)? -- , ? ?. Linux , . Linux , . GNU/Linux . , . -- . - , . , ( , ) . , ? ?. . ģ, ӣ GNU/Linux . . , , . , , , . /var/mail , . , , . , ģ - . , , , - ݣ. ģ, ? C.2. Debian GNU/Linux Filesystem Hierarchy Standard ͣ . . /. , Debian : +--------------------------------------------------------------------+ || | |-------+------------------------------------------------------------| |bin | | |-------+------------------------------------------------------------| |boot | | |-------+------------------------------------------------------------| |dev | | |-------+------------------------------------------------------------| |etc | | |-------+------------------------------------------------------------| |home | | |-------+------------------------------------------------------------| |lib | | |-------+------------------------------------------------------------| |media | ߣ | |-------+------------------------------------------------------------| |mnt | | |-------+------------------------------------------------------------| |proc | | |-------+------------------------------------------------------------| |root | | |-------+------------------------------------------------------------| |run | | |-------+------------------------------------------------------------| |sbin | | |-------+------------------------------------------------------------| |sys | | |-------+------------------------------------------------------------| |tmp | | |-------+------------------------------------------------------------| |usr | | |-------+------------------------------------------------------------| |var | | |-------+------------------------------------------------------------| |srv | , | |-------+------------------------------------------------------------| |opt | | +--------------------------------------------------------------------+ . , -, . . * The root partition / must always physically contain /etc, /bin, /sbin, / lib, /dev and /usr, otherwise you won't be able to boot. This means that you should provide at least 600-750MB of disk space for the root partition including /usr, or 5-6GB for a workstation or a server installation. * /var : , , -, , .. , . ӣ, Debian, ޣ , 2 3 /var . ( , , , X, ...), 300-500 . ֣ , 30 40 . * /tmp : . 40-100 . -- , CD/DVD -- /tmp . , /tmp . * /home : , . . 100 , . , (, MP3, ) ϣ . C.3. For new users, personal Debian boxes, home systems, and other single-user setups, a single / partition (plus swap) is probably the easiest, simplest way to go. The recommended partition type is ext4. /var, /tmp /home , /. You might need a separate /usr/local partition if you plan to install many programs that are not part of the Debian distribution. If your machine will be a mail server, you might need to make /var/mail a separate partition. If you are setting up a server with lots of user accounts, it's generally good to have a separate, large /home partition. In general, the partitioning situation varies from computer to computer depending on its uses. Multi Disk HOWTO. Σしぐま , , . With respect to the issue of swap partition size, there are many views. One rule of thumb which works well is to use as much swap as you have system memory. It also shouldn't be smaller than 512MB, in most cases. Of course, there are exceptions to these rules. As an example, an older home machine might have 512MB of RAM and a 20GB SATA drive on /dev/sda. There might be a 8GB partition for another operating system on /dev/sda1, a 512MB swap partition on /dev/sda3 and about 11.4GB on /dev/sda2 as the Linux partition. , , ; ̚D.2, ? , ?. C.4. Linux Linux ͣ . Linux. : * ֣ /dev/sda. * ֣ /dev/sdb . * SCSI CD-ROM /dev/scd0, /dev/sr0. : sda1 sda2 SCSI . . , 2- SCSI , SCSI 2, SCSI 4. ( 2) sda, sdb. sda 3 , sda1, sda2 sda3. sdb . , SCSI ( , ), . ; , / ߣ. C.5. Debian ֣ Debian . , . partman Debian. , . fdisk Linux, . , FreeBSD. , fdisk . Linux+FreeBSD HOWTO cfdisk , . , cfdisk FreeBSD, ݣ , . , ( ). VT2, . D. D.1. Linux D.1.1. D.2. , D.3. Debian GNU/Linux Unix/Linux D.3.1. D.3.2. debootstrap D.3.3. debootstrap D.3.4. D.3.5. D.3.6. D.3.7. ̣ : SSH D.3.8. D.4. Debian GNU/Linux PPP Ethernet (PPPoE) D.1. Linux Linux /dev . . Unix , . , ( Linux), . , . . +-------------------------------------------+ |sda | ֣ | |----+--------------------------------------| |sdb | ֣ | |----+--------------------------------------| |sda1| ֣ | |----+--------------------------------------| |sdb7| ֣ | +-------------------------------------------+ +------------------+ |sr0| CD-ROM | |---+--------------| |sr1| CD-ROM | +------------------+ +------------------------------------------------------------------+ |ttyS0 | 0, COM1 MS-DOS | |-------+----------------------------------------------------------| |ttyS1 | 1, COM2 MS-DOS | |-------+----------------------------------------------------------| |psaux | PS/2 | |-------+----------------------------------------------------------| |gpmdata|-, GPM ()| +------------------------------------------------------------------+ +--------------------------------------------------+ |cdrom| CD-ROM | |-----+--------------------------------------------| |mouse| | +--------------------------------------------------+ +-----------------------------------------------------+ |null|ӣ, , | |----+------------------------------------------------| |zero| | +-----------------------------------------------------+ D.1.1. Linux ( gpm) X window. , gpm X-. /dev/input/mice . gpm exps2, X -- ExplorerPS/2. /etc/gpm.conf /etc/X11/ xorg.conf. , ̣ . , , , ^[20], . Linux, : +--------------------------------------------------------------------+ | | | |--------+-----------------------------------------------------------| |psmouse | PS/2 ( ) | |--------+-----------------------------------------------------------| |usbhid | USB ( ) | |--------+-----------------------------------------------------------| |sermouse| , | |--------+-----------------------------------------------------------| |logibm |, Logitech | |--------+-----------------------------------------------------------| |inport |, ATI Microsoft InPort| +--------------------------------------------------------------------+ , modconf ( ) kernel/drivers/input/mouse. D.2. , amd64 , 1242 . ? ? 1012 . -- , . , , , . , . , tasksel. aptitude. , , , , . By default the installer will install the GNOME desktop environment, but alternative desktop environments can be selected either by using one of the special installation images, or by specifying the desired desktop environment during installation (see ̚6.3.6.2, ? ?). , ޣ . ? ? /usr /lib, ? ? () /var. +-----------------------------------------------------------------------------+ | | | | | | | () | () | () | |-----------------+-------------------+--------------+------------------------| | | | | | | | | | | |-----------------+-------------------+--------------+------------------------| |?GNOME ( |3216 |859 |4075 | |) | | | | |-----------------+-------------------+--------------+------------------------| |?KDE Plasma |4584 |1316 |5900 | |-----------------+-------------------+--------------+------------------------| |?Xfce |2509 |683 |3192 | |-----------------+-------------------+--------------+------------------------| |?LXDE |2539 |693 |3232 | |-----------------+-------------------+--------------+------------------------| |?MATE |2851 |762 |3613 | |-----------------+-------------------+--------------+------------------------| |?Cinnamon |4676 |1324 |6000 | |-----------------+-------------------+--------------+------------------------| | |85 |19 |104 | |-----------------+-------------------+--------------+------------------------| |SSH- |2 |1 |3 | +-----------------------------------------------------------------------------+ , tasksel , . ; 350 . D.3. Debian GNU/Linux Unix/Linux , Debian GNU/Linux Unix Linux , ncurses, . ?? HOWTO , Debian GNU/Linux Redhat, Mandriva SUSE. *nix . $ , , # , Debian chroot. Debian, , ( ) ţ . Debian GNU/Linux ? ? (zero downtime). , . , , , , ģ , Debian Linux , . , , . , . / . D.3.1. *nix , , (swap). 1012 2539 , X ( ݣ , GNOME KDE Plasma). . , ext3 /dev/sda6 ( ): # mke2fs -j /dev/sda6 ext2, -j. ( ): # mkswap /dev/sda5 # sync # swapon /dev/sda5 /mnt/debinst ( , (/) ). . # mkdir /mnt/debinst # mount /dev/sda6 /mnt/debinst (, /usr) , , . D.3.2. debootstrap , Debian Debian debootstrap. wget ar, /bin/sh Unix/Linux^[21]. wget ar, ݣ , debootstrap. . .deb: # mkdir work # cd work debootstrap Debian (, , ). debootstrap .deb , . (root). # ar -x debootstrap_0.X.X_all.deb # cd / # zcat /full-path-to-work/work/data.tar.gz | tar xv D.3.3. debootstrap debootstrap . http.us.debian.org/debian - Debian, . http://www.debian.org/mirror/list. If you have a bookworm Debian GNU/Linux installation image mounted at /cdrom, you could substitute a file URL instead of the http URL: file:/cdrom/debian/ ARCH debootstrap : amd64, arm64, armel, armhf, i386, mips64el, mipsel, ppc64el, s390x. # /usr/sbin/debootstrap --arch ARCH bookworm \ /mnt/debinst http://ftp.us.debian.org/debian , --foreign. D.3.4. Debian , . chroot ţ: # LANG=C.UTF-8 chroot /mnt/debinst /bin/bash , qemu-user-static: # cp /usr/bin/qemu-ARCH-static /mnt/debinst/usr/bin # LANG=C.UTF-8 chroot /mnt/debinst qemu-ARCH-static /bin/bash chroot, Debian, : # export TERM=xterm-color TERM, ncurses-term . , : /debootstrap/debootstrap --second-stage D.3.4.1. /dev/ . . ; : a) , ; ) ; ) (, udev) . : * makedev ( chroot) # apt install makedev # mount none /proc -t proc # cd /dev # MAKEDEV generic * MAKEDEV * /dev /dev ; , postinst , D.3.4.2. You need to create /etc/fstab. # editor /etc/fstab Here is a sample you can modify to suit: # /etc/fstab: static file system information. # # file system mount point type options dump pass /dev/XXX / ext3 defaults 0 1 /dev/XXX /boot ext3 ro,nosuid,nodev 0 2 /dev/XXX none swap sw 0 0 proc /proc proc defaults 0 0 /dev/cdrom /media/cdrom iso9660 noauto,ro,user,exec 0 0 /dev/XXX /tmp ext3 rw,nosuid,nodev 0 2 /dev/XXX /var ext3 rw,nosuid,nodev 0 2 /dev/XXX /usr ext3 rw,nodev 0 2 /dev/XXX /home ext3 rw,nosuid,nodev 0 2 Use mount -a to mount all the file systems you have specified in your /etc/ fstab, or, to mount file systems individually, use: # mount /path # e.g.: mount /usr Current Debian systems have mountpoints for removable media under /media, but keep compatibility symlinks in /. Create these as as needed, for example: # cd /media # mkdir cdrom0 # ln -s cdrom0 cdrom # cd / # ln -s media/cdrom You can mount the proc file system multiple times and to arbitrary locations, though /proc is customary. If you didn't use mount -a, be sure to mount proc before continuing: # mount -t proc proc /proc ls /proc , . , proc chroot: # mount -t proc proc /mnt/debinst/proc D.3.4.3. /etc/adjtime ?UTC? ?LOCAL? -- UTC . . # editor /etc/adjtime : 0.0 0 0.0 0 UTC . # dpkg-reconfigure tzdata D.3.4.4. , /etc/network/interfaces, /etc/resolv.conf, / etc/hostname /etc/hosts. # editor /etc/network/interfaces /usr/share/doc/ifupdown/examples: ###################################################################### # /etc/network/interfaces -- configuration file for ifup(8), ifdown(8) # See the interfaces(5) manpage for information on what options are # available. ###################################################################### # The loopback interface isn't really required any longer, but can be used # if needed. # # auto lo # iface lo inet loopback # To use dhcp: # # auto eth0 # iface eth0 inet dhcp # An example static IP setup: (network, broadcast and gateway are optional) # # auto eth0 # iface eth0 inet static # address 192.168.0.42 # network 192.168.0.0 # netmask 255.255.255.0 # broadcast 192.168.0.255 # gateway 192.168.0.1 ͣ /etc/resolv.conf: # editor /etc/resolv.conf /etc/resolv.conf: search hqdom.local nameserver 10.1.1.36 nameserver 192.168.9.100 ( 2 63 ): # echo DebianHostName > /etc/hostname /etc/hosts IPv6: 127.0.0.1 localhost 127.0.1.1 DebianHostName # The following lines are desirable for IPv6 capable hosts ::1 ip6-localhost ip6-loopback fe00::0 ip6-localnet ff00::0 ip6-mcastprefix ff02::1 ip6-allnodes ff02::2 ip6-allrouters ff02::3 ip6-allhosts , /etc/modules . (eth0, eth1 ..) . D.3.4.5. Apt Debootstrap /etc/apt/sources.list, . , , : deb-src http://ftp.us.debian.org/debian bookworm main deb http://security.debian.org/ bookworm-security main deb-src http://security.debian.org/ bookworm-security main apt update . D.3.4.6. , , . locales . UTF-8 . # apt install locales # dpkg-reconfigure locales ( ): # apt install console-setup # dpkg-reconfigure keyboard-configuration , , chroot, . D.3.5. , Linux . : # apt search linux-image , . # apt install linux-image-arch-etc D.3.6. Debian GNU/Linux , . , debootstrap , apt Debian chroot, . , , /dev/sda . grub2, . D.3.7. ̣ : SSH , . , SSH . # apt install ssh ݣ, root : # passwd # editor /etc/ssh/sshd_config : PermitRootLogin yes , ޣ root ssh: # mkdir /root/.ssh # cat << EOF > /root/.ssh/authorized_keys ssh-rsa .... EOF , , : # adduser joe # passwd joe D.3.8. , . , ??: # tasksel install standard , apt . /var/cache/apt/ archives/. : # apt clean D.4. Debian GNU/Linux PPP Ethernet (PPPoE) PPP Ethernet (PPPoE) Σしぐま (ADSL ) . PPPoE, . . PPPoE , , ( 7, Debian). To have the option of setting up and using PPPoE during the installation, you will need to install using one of the CD-ROM/DVD images that are available. It is not supported for other installation methods (e.g. netboot). PPPoE . . * modules=ppp-udeb. , PPPoE (ppp-udeb) . * ( , ; ^[22]). * Ethernet. * PPPoE. PPPoE ( PPPoE) Ethernet. , . - . ; ݣ , PPPoE- . * , ( PPPoE). * PPPoE. ӣ , PPPoE ( ). - , , ݣ PPPoE-. ------------------------------------------------------------------------------- ^[20] , , ߣ 9 ; 8- ߣ, 6- ߣ PS/2 4- ߣ ADB. ^[21] GNU sed, grep, tar gzip. ^[22] ppp-udeb . ( ), ppp-udeb, ? modules? . E. E.1. E.2. E.3. , Σしぐま E.4. E.1. debian-installer Sarge, c boot-floppies Woody, Debian, Progeny, GPL 2003 . DocBook XML. docbook-xml docbook-xsl. , XML, (entities) (profiling attributes). , . XML- , - . E.2. , installation-guide. reportbug Debian. , - . , , XXXX -- ݣ . ݣ DocBook . installation-guide salsa. DocBook, : , . DocBook html, , . debian-boot ( ) . , git, README, . -- debian-installer, . Debian , . . E.3. , Σしぐま , (Bruce Perens), (Sven Rudolph), (Igor Grobman), (James Treacy) (Adam Di Carlo). (Sebastian) " ". (Miroslav Ku?e) debian-installer Sarge. (Frans Pop) Etch, Lenny Squeeze. Debian . (Michael Schmitz) ( m68k), (Frank Neumann) ( Amiga), (Arto Astala), (Eric Delaunay), (Ben Collins) ( -- SPARC), (Tapio Lehtonen) (St?phane Bortzmeyer) . (Pascal Le Bail) USB- . HOWTO (Jim Mintha) (URL ), Debian FAQ, Linux/m68k FAQ, FAQ Linux SPARC, Linux/Alpha FAQ . . chroot (̚D.3, ? Debian GNU/ Linux Unix/Linux?) , . (Karsten M. Self). E.4. . F. GNU General Public License Version 2, June 1991 Copyright (C) 1989, 1991 Free Software Foundation, Inc. 51 Franklin St, Fifth Floor, Boston, MA 02110-1301, USA. Everyone is permitted to copy and distribute verbatim copies of this license document, but changing it is not allowed. F.1. Preamble The licenses for most software are designed to take away your freedom to share and change it. By contrast, the gnu General Public License is intended to guarantee your freedom to share and change free software -- to make sure the software is free for all its users. This General Public License applies to most of the Free Software Foundation's software and to any other program whose authors commit to using it. (Some other Free Software Foundation software is covered by the gnu Library General Public License instead.) You can apply it to your programs, too. When we speak of free software, we are referring to freedom, not price. Our General Public Licenses are designed to make sure that you have the freedom to distribute copies of free software (and charge for this service if you wish), that you receive source code or can get it if you want it, that you can change the software or use pieces of it in new free programs; and that you know you can do these things. To protect your rights, we need to make restrictions that forbid anyone to deny you these rights or to ask you to surrender the rights. These restrictions translate to certain responsibilities for you if you distribute copies of the software, or if you modify it. For example, if you distribute copies of such a program, whether gratis or for a fee, you must give the recipients all the rights that you have. You must make sure that they, too, receive or can get the source code. And you must show them these terms so they know their rights. We protect your rights with two steps: (1) copyright the software, and (2) offer you this license which gives you legal permission to copy, distribute and /or modify the software. Also, for each author's protection and ours, we want to make certain that everyone understands that there is no warranty for this free software. If the software is modified by someone else and passed on, we want its recipients to know that what they have is not the original, so that any problems introduced by others will not reflect on the original authors' reputations. Finally, any free program is threatened constantly by software patents. We wish to avoid the danger that redistributors of a free program will individually obtain patent licenses, in effect making the program proprietary. To prevent this, we have made it clear that any patent must be licensed for everyone's free use or not licensed at all. The precise terms and conditions for copying, distribution and modification follow. F.2. GNU GENERAL PUBLIC LICENSE TERMS AND CONDITIONS FOR COPYING, DISTRIBUTION AND MODIFICATION 0. This License applies to any program or other work which contains a notice placed by the copyright holder saying it may be distributed under the terms of this General Public License. The ?Program?, below, refers to any such program or work, and a ?work based on the Program? means either the Program or any derivative work under copyright law: that is to say, a work containing the Program or a portion of it, either verbatim or with modifications and/or translated into another language. (Hereinafter, translation is included without limitation in the term ?modification?.) Each licensee is addressed as ?you?. Activities other than copying, distribution and modification are not covered by this License; they are outside its scope. The act of running the Program is not restricted, and the output from the Program is covered only if its contents constitute a work based on the Program (independent of having been made by running the Program). Whether that is true depends on what the Program does. 1. You may copy and distribute verbatim copies of the Program's source code as you receive it, in any medium, provided that you conspicuously and appropriately publish on each copy an appropriate copyright notice and disclaimer of warranty; keep intact all the notices that refer to this License and to the absence of any warranty; and give any other recipients of the Program a copy of this License along with the Program. You may charge a fee for the physical act of transferring a copy, and you may at your option offer warranty protection in exchange for a fee. 2. You may modify your copy or copies of the Program or any portion of it, thus forming a work based on the Program, and copy and distribute such modifications or work under the terms of Section 1 above, provided that you also meet all of these conditions: a. You must cause the modified files to carry prominent notices stating that you changed the files and the date of any change. b. You must cause any work that you distribute or publish, that in whole or in part contains or is derived from the Program or any part thereof, to be licensed as a whole at no charge to all third parties under the terms of this License. c. If the modified program normally reads commands interactively when run, you must cause it, when started running for such interactive use in the most ordinary way, to print or display an announcement including an appropriate copyright notice and a notice that there is no warranty (or else, saying that you provide a warranty) and that users may redistribute the program under these conditions, and telling the user how to view a copy of this License. (Exception: if the Program itself is interactive but does not normally print such an announcement, your work based on the Program is not required to print an announcement.) These requirements apply to the modified work as a whole. If identifiable sections of that work are not derived from the Program, and can be reasonably considered independent and separate works in themselves, then this License, and its terms, do not apply to those sections when you distribute them as separate works. But when you distribute the same sections as part of a whole which is a work based on the Program, the distribution of the whole must be on the terms of this License, whose permissions for other licensees extend to the entire whole, and thus to each and every part regardless of who wrote it. Thus, it is not the intent of this section to claim rights or contest your rights to work written entirely by you; rather, the intent is to exercise the right to control the distribution of derivative or collective works based on the Program. In addition, mere aggregation of another work not based on the Program with the Program (or with a work based on the Program) on a volume of a storage or distribution medium does not bring the other work under the scope of this License. 3. You may copy and distribute the Program (or a work based on it, under Section 2) in object code or executable form under the terms of Sections 1 and 2 above provided that you also do one of the following: a. Accompany it with the complete corresponding machine-readable source code, which must be distributed under the terms of Sections 1 and 2 above on a medium customarily used for software interchange; or, b. Accompany it with a written offer, valid for at least three years, to give any third party, for a charge no more than your cost of physically performing source distribution, a complete machine-readable copy of the corresponding source code, to be distributed under the terms of Sections 1 and 2 above on a medium customarily used for software interchange; or, c. Accompany it with the information you received as to the offer to distribute corresponding source code. (This alternative is allowed only for noncommercial distribution and only if you received the program in object code or executable form with such an offer, in accord with Subsection b above.) The source code for a work means the preferred form of the work for making modifications to it. For an executable work, complete source code means all the source code for all modules it contains, plus any associated interface definition files, plus the scripts used to control compilation and installation of the executable. However, as a special exception, the source code distributed need not include anything that is normally distributed (in either source or binary form) with the major components (compiler, kernel, and so on) of the operating system on which the executable runs, unless that component itself accompanies the executable. If distribution of executable or object code is made by offering access to copy from a designated place, then offering equivalent access to copy the source code from the same place counts as distribution of the source code, even though third parties are not compelled to copy the source along with the object code. 4. You may not copy, modify, sublicense, or distribute the Program except as expressly provided under this License. Any attempt otherwise to copy, modify, sublicense or distribute the Program is void, and will automatically terminate your rights under this License. However, parties who have received copies, or rights, from you under this License will not have their licenses terminated so long as such parties remain in full compliance. 5. You are not required to accept this License, since you have not signed it. However, nothing else grants you permission to modify or distribute the Program or its derivative works. These actions are prohibited by law if you do not accept this License. Therefore, by modifying or distributing the Program (or any work based on the Program), you indicate your acceptance of this License to do so, and all its terms and conditions for copying, distributing or modifying the Program or works based on it. 6. Each time you redistribute the Program (or any work based on the Program), the recipient automatically receives a license from the original licensor to copy, distribute or modify the Program subject to these terms and conditions. You may not impose any further restrictions on the recipients' exercise of the rights granted herein. You are not responsible for enforcing compliance by third parties to this License. 7. If, as a consequence of a court judgment or allegation of patent infringement or for any other reason (not limited to patent issues), conditions are imposed on you (whether by court order, agreement or otherwise) that contradict the conditions of this License, they do not excuse you from the conditions of this License. If you cannot distribute so as to satisfy simultaneously your obligations under this License and any other pertinent obligations, then as a consequence you may not distribute the Program at all. For example, if a patent license would not permit royalty-free redistribution of the Program by all those who receive copies directly or indirectly through you, then the only way you could satisfy both it and this License would be to refrain entirely from distribution of the Program. If any portion of this section is held invalid or unenforceable under any particular circumstance, the balance of the section is intended to apply and the section as a whole is intended to apply in other circumstances. It is not the purpose of this section to induce you to infringe any patents or other property right claims or to contest validity of any such claims; this section has the sole purpose of protecting the integrity of the free software distribution system, which is implemented by public license practices. Many people have made generous contributions to the wide range of software distributed through that system in reliance on consistent application of that system; it is up to the author/donor to decide if he or she is willing to distribute software through any other system and a licensee cannot impose that choice. This section is intended to make thoroughly clear what is believed to be a consequence of the rest of this License. 8. If the distribution and/or use of the Program is restricted in certain countries either by patents or by copyrighted interfaces, the original copyright holder who places the Program under this License may add an explicit geographical distribution limitation excluding those countries, so that distribution is permitted only in or among countries not thus excluded. In such case, this License incorporates the limitation as if written in the body of this License. 9. The Free Software Foundation may publish revised and/or new versions of the General Public License from time to time. Such new versions will be similar in spirit to the present version, but may differ in detail to address new problems or concerns. Each version is given a distinguishing version number. If the Program specifies a version number of this License which applies to it and ?any later version?, you have the option of following the terms and conditions either of that version or of any later version published by the Free Software Foundation. If the Program does not specify a version number of this License, you may choose any version ever published by the Free Software Foundation. 10. If you wish to incorporate parts of the Program into other free programs whose distribution conditions are different, write to the author to ask for permission. For software which is copyrighted by the Free Software Foundation, write to the Free Software Foundation; we sometimes make exceptions for this. Our decision will be guided by the two goals of preserving the free status of all derivatives of our free software and of promoting the sharing and reuse of software generally. NO WARRANTY 11. BECAUSE THE PROGRAM IS LICENSED FREE OF CHARGE, THERE IS NO WARRANTY FOR THE PROGRAM, TO THE EXTENT PERMITTED BY APPLICABLE LAW. EXCEPT WHEN OTHERWISE STATED IN WRITING THE COPYRIGHT HOLDERS AND/OR OTHER PARTIES PROVIDE THE PROGRAM ?AS IS? WITHOUT WARRANTY OF ANY KIND, EITHER EXPRESSED OR IMPLIED, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE. THE ENTIRE RISK AS TO THE QUALITY AND PERFORMANCE OF THE PROGRAM IS WITH YOU. SHOULD THE PROGRAM PROVE DEFECTIVE, YOU ASSUME THE COST OF ALL NECESSARY SERVICING, REPAIR OR CORRECTION. 12. IN NO EVENT UNLESS REQUIRED BY APPLICABLE LAW OR AGREED TO IN WRITING WILL AND COPYRIGHT HOLDER, OR ANY OTHER PARTY WHO MAY MODIFY AND/OR REDISTRIBUTE THE PROGRAM AS PERMITTED ABOVE, BE LIABLE TO YOU FOR DAMAGES, INCLUDING ANY GENERAL, SPECIAL, INCIDENTAL OR CONSEQUENTIAL DAMAGES ARISING OUT OF THE USE OR INABILITY TO USE THE PROGRAM (INCLUDING BUT NOT LIMITED TO LOSS OF DATA OR DATA BEING RENDERED INACCURATE OR LOSSES SUSTAINED BY YOU OR THIRD PARTIES OR A FAILURE OF THE PROGRAM TO OPERATE WITH ANY OTHER PROGRAMS), EVEN IF SUCH HOLDER OR OTHER PARTY HAS BEEN ADVISED OF THE POSSIBILITY OF SUCH DAMAGES. END OF TERMS AND CONDITIONS F.3. How to Apply These Terms to Your New Programs If you develop a new program, and you want it to be of the greatest possible use to the public, the best way to achieve this is to make it free software which everyone can redistribute and change under these terms. To do so, attach the following notices to the program. It is safest to attach them to the start of each source file to most effectively convey the exclusion of warranty; and each file should have at least the ?copyright? line and a pointer to where the full notice is found. one line to give the program's name and a brief idea of what it does. Copyright (C) year name of author This program is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation; either version 2 of the License, or (at your option) any later version. This program is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY OR FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details. You should have received a copy of the GNU General Public License along with this program; if not, write to the Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA. Also add information on how to contact you by electronic and paper mail. If the program is interactive, make it output a short notice like this when it starts in an interactive mode: Gnomovision version 69, Copyright (C) year name of author Gnomovision comes with absolutely no warranty; for details type show w. This is free software, and you are welcome to redistribute it under certain conditions; type show c for details. The hypothetical commands ?show w? and ?show c? should show the appropriate parts of the General Public License. Of course, the commands you use may be called something other than ?show w? and ?show c?; they could even be mouse-clicks or menu items -- whatever suits your program. You should also get your employer (if you work as a programmer) or your school, if any, to sign a ?copyright disclaimer? for the program, if necessary. Here is a sample; alter the names: Yoyodyne, Inc., hereby disclaims all copyright interest in the program Gnomovision (which makes passes at compilers) written by James Hacker. signature of Ty Coon, 1 April 1989 Ty Coon, President of Vice This General Public License does not permit incorporating your program into proprietary programs. If your program is a subroutine library, you may consider it more useful to permit linking proprietary applications with the library. If this is what you want to do, use the GNU Lesser General Public License instead of this License.