Linux
  •     Как зарежда Linux

  • DEBIAN

  •   Debian 9
  •     Инсталиране на Debian 9
  •     Първоначални настройки (мрежа, VIM, Кирилизация)
  •     Инсталиране и настройка на SSH
  •     Инсталиране и настройка на DNS
  •     Инсталиране и настройка на NTP
  •     Инсталиране и настройка на Apache
  •     Инсталиране и настройка на MySQL (MariaDB)
  •     Инсталиране и настройка на PHPMyAdmin
  •     Инсталиране и настройка на собствен облак
  •     Инсталиране и настройка на SAMBA
  •     Инсталиране и настройка на FTP сървър
  •     Инсталиране и настройка на OSCAM
  •     Инсталиране и настройка на Mail server
  •       Първоначално конфигуриране на базата данни
  •       Инсталиране и конфигуриране на PostFix
  •       Инсталиране и конфигуриране на Dovecot
  •       PostFix дефинира Dovecot да удостоверява
  •       RoundCube
  •       Тестване доставката на поща
  •       Създаване на TLS криптиран ключ и сертификат
  •       WEB администриране
  •       Антиспам със SpamAssassin
  •       Антиспам с RSpmad
  •   Debian 11
  •     Разпределение на диска при BIOS и UEFI
  •     Debian 11 на BIOS върху LVM и RAID
  •     Инсталиране на Debian 11 на BIOS и ZFS
  •     Инсталиране на Debian 11 на BIOS и ZFS-1
  •     Инсталиране на Debian 11 на UEFI и ZFS
  •     ZFS Замяна на развален огледален диск
  •     Ремонт на GRUB и INITRAMFS
  •   Debian 12
  •     Първоначални настройки
  •     DNS Сървър
  •     Добавяне на втори диск
  •     SAMBA + WEBMIN
  •     SAMBA
  •     Инсталиране и настройка на Apache
  •     MySQL и PHPMyAdmin
  •     Инсталиране и настройка на Nginx
  •       Директиви location в Nginx
  •       MYSQL,PHP и PHPMyAdmin в Nginx
  •     Елементарен MAIL сървър
  •       Подобрение SSL/TLS, Maildir, LMTP
  •       Подобрение ВИРТУАЛИЗАЦИЯ без MySQL
  •       Подобрение ВИРТУАЛИЗАЦИЯ и MySQL
  •       Подобрение Антиспам - SpamAssasin
  •       Подобрение Антиспам - RSpamd
  •     Пълноценен MAIL сървър
  •     Пощенски сървър с iRedMail
  •       CertBot 1 домейн
  •       Виртуални хостове, CertBot 2 домейна
  •       DKIM, SPF и DMARK
  •       Допълнителни настройки (спам и т.н.)
  •     MAIL сървър за вътрешна мрежа
  •     NextCloud
  •     Сървър за отдалечен достъп - RustDESK

  • UBUNTU
  •   Ubuntu SERVER 22.04
  •     Инсталиране на Ubuntu 22.04 Server
  •     Първоначални настройки на Ubuntu 22.04 Server

  • ARCH
  •     Минимална базова инсталация на Arch
  •        Настройка на базовата система
  •        Инсталиране на OpenBOX
  •     Инсталиране на Arch на UEFI и ext4
  •     Инсталиране на Arch на UEFI и btrfs
  •       Резервно копиране в Arch
  •     Инсталиране на Arch на UEFI и DualBoot
  •     Инсталиране на Arch с DualBoot и archinstall
  •     KDE в Arch
  •     Инсталиране на KDE1 в Arch
  •     Инсталиране на LXQt върху Arch

  • RAID
  •     BIOS RAID1+MSDOS
  •     BIOS RAID1+MSDOS+LVM
  •     UEFI RAID1
  •     UEFI LVM RAID1

  • ZFS
  •     ZFS теория и малко практика

  • BTRFS
  •     BTRFS - създаване монтиране fstab размер
  •     BTRFS - RAID
  •     BTRFS - subvolume и snapshot

  • КОНТЕЙНЕРИ
  •     Инсталиране на LXC/LXD
  •     Образи (image) в LXC/LXD
  •     Контейнери в LXC/LXD
  •     Команди в LXC/LXD

  • ОТСТРАНЯВАНЕ НА ГРЕШКИ
  •     SWAP
  •     InitRAMFs

  • PROGRAMS
  •   Conky
  •   Sublime Text
  •   PiHole
  •   AdGuard

  • BGPOST
  •     Tar-App-01 SAMBA

  • Инсталиране заедно Arch и Windowsна с archinstall

    В тази статия ще покажа как да се инсталират две операционни системи на един диск. Разликата с предишната статия е, че ще ползваме готов скрипт наречен archinstall. Демонстрацията ще се направи на виртуална машина със следните параметри: CPU: 4 ядра RAM: 4096MB HDD: 99GB BIOS: UEFI Целия твърд диск с размер 99GB ще е зает с операционната система Windows. Ще се постараем да отделим място от Windows, след което на него ще инсталираме Arch linu. Накрая на упражнението ще можем да изберем коя операционна система да стартираме. Ако пък не ни харесате Arch linux, ще демонстрираме как може да се изтрие и да остане пак само Windows.

    Първоначална настройка на Windows

    Самата инсталацията на Windows няма да показвам. Да погледнем какво имаме до тук. В терминален прозорец във Windows като Administrator пишем:

    diskpart list disk Disk ### Status Size Free Dyn Gpt -------- ------------- ------- ------- --- --- Disk 0 Online 99 GB 1024 KB * sel dis 0 Disk 0 is now the selected disk. lis par Partition ### Type Size Offset ------------- ---------------- ------- ------- Partition 1 System 100 MB 1024 KB Partition 2 Reserved 16 MB 101 MB Partition 3 Primary 98 GB 117 MB Partition 4 Recovery 546 MB 98 GB

    Имаме създадени 4 дяла. Partition 1 - системен (EFI) с размер 100 MB Partition 2 - резервиран от системата 16 MB Partition 3 - първичен дял, тук са разположени всички файлове на ОС Windows. Partition 4 - специален дял на Windows, за възстановяване на системата. От това което виждаме, трябва да отделим място за Arch linux от дял 3 (Partition 3) За начало да видим томовете в системата и какви букви са присъединени към тях.

    lis vol Volume ### Ltr Label Fs Type Size Status Info ------------- --- ------------- --------- ------------ ---------- ---------- -------- Volume 0 D ESD-ISO UDF CD-ROM 107 GB Healthy Volume 1 C NTFS Partition 98 GB Healthy Boot Volume 2 FAT32 Partition 100 MB Healthy System Volume 3 NTFS Partition 546 MB Healthy Hidden

    Може малко объркващо да се вижда но да уточним: Partition 3 - дял на който е разположен Windows Volume 1 има присъединена буква C и тук е разположен Windows. От двете таблици се вижда, че размера е 98GB. Да отделим от тези 98GB, едни 35GB и на тях да разположим на по-късен етап Arch linux. Стъпките са: - избираме Partition 3 - избираме Volume 1 - свиваме размера на тома.

    ### Избираме дял 3 sel par 3 Partition 3 is now the selected partition. ### Избираме том 1 sel vol 1 Volume 1 is the selected volume. ### Проверяваме максимално колко място можем да отделим shrink querymax The maximum number of reclaimable bytes is: 80 GB (82333 MB) ### Можем да отделим 80GB, но ние искам само 35GB shr desired=35840 DiskPart successfully shrunk the volume by: 35GB ### Да проверим дяловете lis par Partition ### Type Size Offset ------------- ---------------- ------- ------- Partition 1 System 100 MB 1024 KB Partition 2 Reserved 16 MB 101 MB Partition 3 Primary 63 GB 117 MB Partition 4 Recovery 546 MB 98 GB ### Да проверим томовете lis vol Volume ### Ltr Label Fs Type Size Status Info ------------- --- ------------- --------- ------------ ---------- ---------- -------- Volume 0 D ESD-ISO UDF CD-ROM 107 GB Healthy Volume 1 C NTFS Partition 63 GB Healthy Boot Volume 2 FAT32 Partition 100 MB Healthy System Volume 3 NTFS Partition 546 MB Healthy Hidden ### Да проверим детайлно тома, първо го избираме sel vol 1 Volume 1 is the selected volume. ### Детайлно го проверяваме det vol Disk ### Status Size Free Dyn Gpt -------- --------- ------- --------- ----- ----- * Disk 0 Online 99 GB 35 GB * Read-only : No Hidden : No No Default Drive Letter: No Shadow Copy : No Offline : No BitLocker Encrypted : No Installable : Yes Volume Capacity : 63 GB Volume Free Space : 43 GB

    Забележете, когато даваме информация за дяловете. Дял 3 е с размер 63GB, а дял 4 започва след 98GB. Това означава, че имаме едни 35GB незаети. На последната команда много ясно се вижда. Тях ще използваме за Arch linux. Да видим нагледно в Disk Management

    00

    Наистина имаме заделени 35GB свободно място.

    Инсталиране на Arch linux

    Първо разменяме инсталационния диск. Слагаме на Arch linux. Зареждаме от него. За да можем да влезем отдалечено в системата през SSH е необходимо на root да дадем парола.

    passwd New password: Pa$$ Retype new password: Pa$$ passwd: password updated successfully

    Проверяваме IP адреса на системата.

    ip a 1: lo: <LOOPBACK,UP,LOWER_UP> mtu 65536 qdisc noqueue state UNKNOWN group default qlen 1000 link/loopback 00:00:00:00:00:00 brd 00:00:00:00:00:00 inet 127.0.0.1/8 scope host lo valid_lft forever preferred_lft forever inet6 ::1/128 scope host noprefixroute valid_lft forever preferred_lft forever 2: eth0: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc mq state UP group default qlen 1000 link/ether 00:15:5d:0b:de:00 brd ff:ff:ff:ff:ff:ff altname enx00155d0bde00 inet 192.168.11.83/24 metric 100 brd 192.168.11.255 scope global dynamic eth0 valid_lft 409sec preferred_lft 409sec inet6 fe80::215:5dff:fe0b:de00/64 scope link proto kernel_ll valid_lft forever preferred_lft forever

    Влизаме отдалечено през SSH на IP адреса който имаме. Проверяваме разпределението на диска.

    lsblk NAME MAJ:MIN RM SIZE RO TYPE MOUNTPOINTS loop0 7:0 0 846.7M 1 loop /run/archiso/airootfs sr0 11:0 1 1.2G 0 rom /run/archiso/bootmnt nvme0n1 259:0 0 99G 0 disk ├─nvme0n1p1 259:1 0 100M 0 part ├─nvme0n1p2 259:2 0 16M 0 part ├─nvme0n1p3 259:3 0 63.3G 0 part └─nvme0n1p4 259:4 0 546M 0 part lsblk -f NAME FSTYPE FSVER LABEL UUID FSAVAIL FSUSE% MOUNTPOINTS loop0 squashfs 4.0 0 100% /run/archiso/airootfs sr0 iso9660 Joliet Extension ARCH_202505 2025-05-01-10-09-37-00 0 100% /run/archiso/bootmnt nvme0n1 ├─nvme0n1p1 vfat FAT32 046F-5C0D ├─nvme0n1p2 ├─nvme0n1p3 ntfs 169A6FF19A6FCC35 └─nvme0n1p4 ntfs E87E83527E831908 fdisk /dev/nvme0n1 -l Disk /dev/nvme0n1: 99 GiB, 106300440576 bytes, 207618048 sectors Disk model: VMware Virtual NVMe Disk Units: sectors of 1 * 512 = 512 bytes Sector size (logical/physical): 512 bytes / 512 bytes I/O size (minimum/optimal): 512 bytes / 512 bytes Disklabel type: gpt Disk identifier: 308C0407-3A8B-4A1D-B7CB-135265A61F0A Device Start End Sectors Size Type /dev/nvme0n1p1 2048 206847 204800 100M EFI System /dev/nvme0n1p2 206848 239615 32768 16M Microsoft reserved /dev/nvme0n1p3 239616 133093789 132854174 63.3G Microsoft basic data /dev/nvme0n1p4 206495744 207613951 1118208 546M Windows recovery environment

    Да разпределим свободното пространство за Arch.

    cfdisk /dev/nvme0n1

    1
    2
    3
    4
    5
    6
    7
    8
    9

    Да проверим какво разпределение получихме.

    lsblk NAME MAJ:MIN RM SIZE RO TYPE MOUNTPOINTS loop0 7:0 0 846.7M 1 loop /run/archiso/airootfs sr0 11:0 1 1.2G 0 rom /run/archiso/bootmnt nvme0n1 259:0 0 99G 0 disk ├─nvme0n1p1 259:5 0 100M 0 part ├─nvme0n1p2 259:6 0 16M 0 part ├─nvme0n1p3 259:7 0 63.3G 0 part ├─nvme0n1p4 259:8 0 546M 0 part ├─nvme0n1p5 259:11 0 512M 0 part └─nvme0n1p6 259:12 0 34.5G 0 part lsblk -f NAME FSTYPE FSVER LABEL UUID FSAVAIL FSUSE% MOUNTPOINTS loop0 squashfs 4.0 0 100% /run/archiso/airootfs sr0 iso9660 Joliet Extension ARCH_202505 2025-05-01-10-09-37-00 0 100% /run/archiso/bootmnt nvme0n1 ├─nvme0n1p1 vfat FAT32 046F-5C0D ├─nvme0n1p2 ├─nvme0n1p3 ntfs 169A6FF19A6FCC35 ├─nvme0n1p4 ntfs E87E83527E831908 ├─nvme0n1p5 └─nvme0n1p6 fdisk /dev/nvme0n1 -l Disk /dev/nvme0n1: 99 GiB, 106300440576 bytes, 207618048 sectors Disk model: VMware Virtual NVMe Disk Units: sectors of 1 * 512 = 512 bytes Sector size (logical/physical): 512 bytes / 512 bytes I/O size (minimum/optimal): 512 bytes / 512 bytes Disklabel type: gpt Disk identifier: 308C0407-3A8B-4A1D-B7CB-135265A61F0A Device Start End Sectors Size Type /dev/nvme0n1p1 2048 206847 204800 100M EFI System /dev/nvme0n1p2 206848 239615 32768 16M Microsoft reserved /dev/nvme0n1p3 239616 133093789 132854174 63.3G Microsoft basic data /dev/nvme0n1p4 206495744 207613951 1118208 546M Windows recovery environment /dev/nvme0n1p5 133095424 134143999 1048576 512M EFI System /dev/nvme0n1p6 134144000 206495743 72351744 34.5G Linux filesystem Partition table entries are not in disk order. Partition table entries are not in disk order.

    Ще работим с дялове /dev/nvme0n1p5 и /dev/nvme0n1p6. Забележете, имаме два дяла EFI System. Това са /dev/nvme0n1p1 и /dev/nvme0n1p5. Бихме могли да ползваме само 1 дял, примерно /dev/nvme0n1p1 но той е много малък и няма как да побере няколко ядра, освен това ако не ни хареса Archlinux няма как безболезнено да го изтрием. Затова се налага да създадем втори /dev/nvme0n1p5. Именно в него ще дефинираме двойното зареждане. Да подготвим дяловете които последно създадохме.

    mkfs.vfat -F32 /dev/nvme0n1p5 mkfs.fat 4.2 (2021-01-31) mkfs.ext4 -f /dev/nvme0n1p6 Creating filesystem with 9043968 4k blocks and 2260992 inodes Filesystem UUID: 40e49bad-21b0-4cae-ba28-f71a0a58563f Superblock backups stored on blocks: 32768, 98304, 163840, 229376, 294912, 819200, 884736, 1605632, 2654208, 4096000, 7962624 Allocating group tables: done Writing inode tables: done Creating journal (65536 blocks): done Writing superblocks and filesystem accounting information: done

    Двата дяла са форматирани.

    Инсталиране на Archlinux

    Самата инсталация ще се извърши във вид на скрипт.

    archinstall

    10

    Езика с който ще работим е Английски.

    11

    Настройка на клавиатурата, езика и кодовата таблица.

    12

    Ще настройваме диска.

    13

    Ще настройваме дяловете на диска.

    14

    Ръчно ще указваме кой дял къде да бъде монтиран. Съответно може и да се преформатира самия диск.

    15

    Избираме с кой диск ще работим. В случая имам само един затова избирам него.

    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
    34
    35
    36
    37
    38
    39
    40
    41
    42
    43
    44
    45
    46
    47
    48
    49
    50
    51
    52
    53
    54
    55
    56

    Предлага да продължим оформяне на системата под arch-chroot режим. Просто ще излезем в конзолен режим на arch-chroot. С инсталацията завършихме, но след рестарт на системата ще се зарежда само Windows. Нямаме правилно инсталиран и конфигуриран GRUB. Това лесно може да се провери.

    efibootmgr

    Имаме налично меню само за Windows. Да оправим проблема. Първо да инсталираме GRUB в /boot.

    grub-install --target=x86_64-efi --bootloader-id=GRUB --efi-directory=/boot --removable

    Сега да създадем конфигурационния файл на GRUB.

    rub-mkconfig -o /boot/grub/grub.cfg

    Готови сме за рестарт. Първо излизаме от arch-chroot и след това се рестартираме.

    exit reboot

    След рестарта се получава следната картинка:

    57

    Нямаме меню за зареждане на Windows. Да влезем в Archlinux и да поправим нещата.

    58
    59

    Вече сме в KDE среда на Archlinux. Отваряме конзола и пишем:

    sudo pacman -S bash-completion

    Вече ще можем в конзола автоматично да се допълват командите чрез бутона TAB. Да добавим Windows. За целта ни е необходим допълнителен пакет, който да сканира системата за още операционни система. Пакета се казва os-prober. Да го инсталираме.

    sudo pacman -Sy os-prober

    Да проверим за втора операционна система.

    sudo os-prober /dev/sda1@/EFI/Microsoft/Boot/bootmgfw.efi:Windows Boot Manager:Windows:ef

    Вече откриваме и Windows. Сега да накараме и GRUB да го открие. За целта променяме конфигурационния му файл.

    sudo nano /etc/default/grub GRUB_TIMEOUT=25 # Probing for other operating systems is disabled for security reasons. Read # documentation on GRUB_DISABLE_OS_PROBER, if still want to enable this # functionality install os-prober and uncomment to detect and include other # operating systems. #GRUB_DISABLE_OS_PROBER=false GRUB_DISABLE_OS_PROBER=false

    Преконфигурираме GRUB.

    sudo grub-mkconfig -o /boot/grub/grub.cfg Generating grub configuration file ... Found linux image: /boot/vmlinuz-linux Found initrd image: /boot/initramfs-linux.img Found fallback initrd image(s) in /boot: initramfs-linux-fallback.img Warning: os-prober will be executed to detect other bootable partitions. Its output will be used to detect bootable binaries on them and create new boot entries. Found Windows Boot Manager on /dev/sda1@/EFI/Microsoft/Boot/bootmgfw.efi Adding boot menu entry for UEFI Firmware Settings ... Detecting snapshots ... No snapshots found. If you think an error has occurred, please file a bug report at "https://github.com/Antynea/grub-btrfs" Unmount /tmp/grub-btrfs.sI43gJ1B8F .. Success done

    Открил е и втората операционна система. Рестартираме се. След рестарта се появява Windows меню.

    60

    С това приключваме демонстрацията.