https://stellar-nexus.ru | also check out https://okturing.com and https://paste.centos.org
Перед сборкой компьютера надо определиться с задачами, которые данная машина должа уметь выполнять. Положим, что собираемая машина представляет собой бездисковый терминал. Терминал должен предоставлять все перефирийные устройства - монитор, устройства серийного ввода и аудио-устройства и также быть способен подключаться к Интернету. Другое, более неформальное требование - нужда в высокой поддержке и прокачке. Безусловно, для бездискового устройства будет полезна функция netboot. Также, бюджетность, в том числе маломощность являются важными факторами для терминала. Для самого компьютера возьмём малопрофильную и маломощную Raspberry Pi 4b 1ГБ. В отличии от предыдущих моделей, она поддерживает настоящий Ethernet и имеет полную поддержку netboot. Сама модель однако не является дешёвой. Альтернативные варианты включают amd64 нэттопы, но они больше потребляют. Другой альтернативный вариант - это модификация существующих одноплатных компьютеров, но это труднозатратно из-за необходимости модифицировать ядро ОС. Raspberry Pi к сожалению по-прежнему имеет мало альтернатив. Для монитора возьмём самый дешёвый новый монитор, который имеет порт DP и матрицу IPS. Для клавиатуры, берём полноразмерную USB клавиатуру. Модификации клавиатуры не входят в рамки данного задания. Для мыши, берём трёхклавишную USB мышь для удобной работы. У Raspberry Pi плохая поддержка звука. Будем использовать динамик с нашего дискового сервера, чтобы сэкономить. Micro-SD карту для настройки одолжим у друга. Кабели были запасные. Итого: RPi4 14011 https://www.ozon.ru/product/mikrokompyuter-raspberry-pi-4-model-b-1gb-1-gb-pamyati-3864153999/ Монитор 9434 https://www.ozon.ru/product/digma-pro-23-8-monitor-ips-1920x1080-144-gts-chernyy-3958327777 Клавиатура 1173 https://www.ozon.ru/product/provodnaya-klaviatura-gembird-kb-8460-polnorazmernaya-103kl-5-dop-12fn-nozhnichnaya-tihaya-1-2190452143 Мышь 2829 https://aliexpress.ru/item/1005007576197501.html Всего 27447 - Таким образом эффективно был собран терминал за сумму гораздо ниже максимальной. Мы добились всех поставленных целей и успешно собрали подходящую нам машину. (P.S. Если было запрещено использовать одноплатные компьютеры, то разрешите переделать)
-- MySQL Script generated by MySQL Workbench
-- Wed Sep 16 16:34:20 2026
-- Model: New Model Version: 1.0
-- MySQL Workbench Forward Engineering
SET @OLD_UNIQUE_CHECKS=@@UNIQUE_CHECKS, UNIQUE_CHECKS=0;
SET @OLD_FOREIGN_KEY_CHECKS=@@FOREIGN_KEY_CHECKS, FOREIGN_KEY_CHECKS=0;
SET @OLD_SQL_MODE=@@SQL_MODE, SQL_MODE='ONLY_FULL_GROUP_BY,STRICT_TRANS_TABLES,NO_ZERO_IN_DATE,NO_ZERO_DATE,ERROR_FOR_DIVISION_BY_ZERO,NO_ENGINE_SUBSTITUTION';
-- -----------------------------------------------------
-- Schema mydb
-- -----------------------------------------------------
-- -----------------------------------------------------
-- Schema mydb
-- -----------------------------------------------------
CREATE SCHEMA IF NOT EXISTS `mydb` DEFAULT CHARACTER SET utf8 ;
USE `mydb` ;
-- -----------------------------------------------------
-- Table `mydb`.`authors`
-- -----------------------------------------------------
CREATE TABLE IF NOT EXISTS `mydb`.`authors` (
`key` INT NOT NULL,
`name` VARCHAR(64) NULL,
PRIMARY KEY (`key`))
ENGINE = InnoDB;
-- -----------------------------------------------------
-- Table `mydb`.`books`
-- -----------------------------------------------------
CREATE TABLE IF NOT EXISTS `mydb`.`books` (
`key` INT NOT NULL,
`name` VARCHAR(64) NULL,
`producer` VARCHAR(64) NULL,
`year` YEAR NULL,
`annotation` TEXT NULL,
FULLTEXT(annotation),
`table2_key` INT NOT NULL,
PRIMARY KEY (`key`, `table2_key`),
INDEX `fk_table1_table2_idx` (`table2_key` ASC) VISIBLE,
CONSTRAINT `fk_table1_table2`
FOREIGN KEY (`table2_key`)
REFERENCES `mydb`.`authors` (`key`)
ON DELETE NO ACTION
ON UPDATE NO ACTION)
ENGINE = InnoDB;
SET SQL_MODE=@OLD_SQL_MODE;
SET FOREIGN_KEY_CHECKS=@OLD_FOREIGN_KEY_CHECKS;
SET UNIQUE_CHECKS=@OLD_UNIQUE_CHECKS;
INSERT INTO books (key, name, producer, year, annotation, table2_key)
VALUES (1, 'Иван Иванов', 'Фабрика 1', 2007, 'автобиография', 2),
(2, 'Шутки', 'Фабрика 1', 2008, 'анекдоты анекдоты2, 2');
SELECT * FROM books WHERE REGEXP_LIKE(name, ´*Иван*');
SELECT * FROM books WHERE MATCH(annotation) AGAINST 'анекдоты');
main: undefined: chartorune (1093) BL ,chartorune+0(SB) main: undefined: strcmp (1122) BL ,strcmp+0(SB) fexec: undefined: exits (1161) BL ,exits+0(SB) fexec: undefined: free (1181) BL ,free+0(SB) fexec: undefined: strstr (1184) BL ,strstr+0(SB) rcexec: undefined: execl (1203) BL ,execl+0(SB) readfile: undefined: malloc (1240) BL ,malloc+0(SB) setenv: undefined: strlen (1276) BL ,strlen+0(SB) wait: undefined: tokenize (1075) BL ,tokenize+0(SB) wait: undefined: atoi (1083) BL ,atoi+0(SB) _fmtcpy: undefined: fullrune (1141) BL ,fullrune+0(SB) too many errors
check checking filsys: main check free list lo = 589260; hi = 589657 nfiles = 22645 fsize = 589658 nused = 299786 ndup = 0 nfree = 397 tfree = 397 nfdup = 0 nmiss = 289473 nbad = 0 nqbad = 0 maxq = 33894 base stack=140737488349800 high stack=140737488348280 deepest recursion=10
check checking filsys: main check free list lo = 84358; hi = 577013 nfiles = 26960 fsize = 588981 nused = 307610 ndup = 0 nfree = 265522 tfree = 265522 nfdup = 0 nmiss = 15847 nbad = 0 nqbad = 0 maxq = 33857 base stack=140737488349800 high stack=140737488348280 deepest recursion=10