Подробный гайд по исправлению ошибки «Невозможно найти пакет telnetd» в Linux - Часть 1
Ошибка «Невозможно найти пакет telnetd»
Обычно ошибка выглядит так:
E: Unable to locate package telnetd
или:
No package telnetd available.
или:
Package telnetd is not available, but is referred to by another package.
Это означает, что пакетный менеджер не может найти пакет с именем telnetd в подключённых репозиториях.
Коротко: что делать
Для большинства случаев:
# Debian/Ubuntu
sudo apt update
sudo apt install telnetd
# CentOS/RHEL/Rocky/Alma/Fedora
sudo dnf install telnet-server
# openSUSE
sudo zypper install telnet-server
# Arch/Manjaro
sudo pacman -S inetutils
# Alpine
apk add busybox-extras
Но важно понимать: во многих дистрибутивах сервер Telnet называется не telnetd, а по-другому.
Почему возникает ошибка
Основные причины:
1. Неправильное имя пакета
Во многих системах сервер Telnet называется не telnetd, а, например, telnet-server.
2. Не обновлён кэш пакетов
Пакетный менеджер не знает о доступных пакетах, пока не выполнена команда обновления.
3. Не подключён нужный репозиторий
Например, в Ubuntu пакет может находиться в компоненте universe.
4. Telnet удалён из современных репозиториев
В новых дистрибутивах его могут не поставлять по соображениям безопасности.
5. Используется минимальная установка системы
Репозитории могут быть отключены или ограничены.
6. Не та система или не тот менеджер пакетов
Например, apt install telnetd не работает в CentOS/RHEL, там нужен dnf или yum.
Шаг 1. Определите дистрибутив и пакетный менеджер
Выполните:
cat /etc/os-release
Пример вывода для Ubuntu:
NAME="Ubuntu"
VERSION="22.04.3 LTS (Jammy Jellyfish)"
ID=ubuntu
ID_LIKE=debian
...
Проверьте менеджер пакетов:
which apt dnf yum zypper pacman apk
Варианты:
| Система | Менеджер пакетов |
|---|---|
| Debian | apt |
| Ubuntu | apt |
| Linux Mint | apt |
| Fedora | dnf |
| CentOS / RHEL / Rocky / Alma | dnf или yum |
| openSUSE | zypper |
| Arch / Manjaro | pacman |
| Alpine | apk |
Шаг 2. Обновите список пакетов
Это нужно сделать в первую очередь.
Debian / Ubuntu / Linux Mint
sudo apt update
Fedora / CentOS 8+ / RHEL 8+ / Rocky / Alma
sudo dnf makecache
CentOS 7 / старые RHEL
sudo yum makecache
openSUSE
sudo zypper refresh
Arch / Manjaro
sudo pacman -Sy
Alpine
sudo apk update
Шаг 3. Найдите правильное имя пакета
Не устанавливайте сразу telnetd. Сначала найдите, как пакет называется в вашей системе.
Поиск в Debian/Ubuntu
apt-cache search telnet
Или более точно:
apt-cache search telnet | grep -i server
Пример вывода:
telnetd - telnet server
telnet - telnet client
inetutils-telnetd - GNU telnet daemon
Проверить конкретный пакет:
apt-cache policy telnetd
Если пакет доступен, вывод будет примерно таким:
telnetd:
Installed: (none)
Candidate: 0.17+2.4-2
Version table:
0.17+2.4-2 500
500 http://archive.ubuntu.com/ubuntu jammy/universe amd64 Packages
Если вывод пустой — пакет не найден.
Мы делимся этой технической информацией, чтобы помочь вам в решении задач — используйте её с пониманием. Статья носит рекомендательный характер, поэтому, пожалуйста, применяйте описанные методы осмотрительно.