В Рабочем столе ПОМОЩНИКА "Системный монитор" я вижу процесс, названный md. Но я немного не уверен относительно того, является ли это на самом деле "несколькими устройством" (RAID) драйвер.
В первую очередь, это имеет необычный значок. Это - прямоугольник с тремя по-другому цветными вертикальными дорожками: сначала синий, затем желтый, затем красный, со своего рода знаками отличия поверх желтого. Это вполне походит на флаг Андорры, как замечено в этой ссылке:
https://www.quora.com/What-countries-have-blue-yellow-and-red-flags/answer/Milorad-Boti%C4%87-1
(Я не могу сказать наверняка, поскольку значок является очень маленьким.)
Во-вторых, насколько я могу сказать, что "md" имеет отношение конкретно к программному обеспечению RAID. Однако это - ноутбук только с одним HD (хотя разделено на несколько разделов.)
Этот процесс, по-видимому, не имеет никаких открытых файлов или карт распределения памяти и выполнения
$ which md
в терминале не поднимает результатов.
Кроме того, md не показывает в выводе lsmod, и существует нет
/dev/md*
/dev/md/*
/dev/md/name
файлы в моей системе, заставляя меня задаться вопросом, является ли это действительно md.
Возможно, я параноик, но это кажется немного подозрительным мне! Кто-либо может пролить какой-либо свет, особенно на возможных способах получить взгляд на полноразмерную версию необычного значка?
Обновления в ответ на комментарии - 1
$ grep CONFIG_MD /boot/config-$(uname -r)
CONFIG_MD=y
CONFIG_MD_AUTODETECT=y
CONFIG_MD_LINEAR=m
CONFIG_MD_RAID0=m
CONFIG_MD_RAID1=m
CONFIG_MD_RAID10=m
CONFIG_MD_RAID456=m
CONFIG_MD_MULTIPATH=m
CONFIG_MD_FAULTY=m
CONFIG_MD_CLUSTER=m
#snip all the CONFIG_MDIO results
$ ps -ef | grep -e '\[md\]' -e '\[kthreadd\]'
root 2 0 0 19:06 ? 00:00:00 [kthreadd]
root 47 2 0 19:06 ? 00:00:00 [md]
На основе низкого PID, что Вы, вероятно, видите, поток ядра. Например, в моей системе (который также не имеет никаких устройств RAID, ни любого из пакетов набега mdadm
dmraid
установленный), я вижу следующее:
$ ps -ef | grep -e '\[md\]' -e '\[kthreadd\]'
root 2 0 0 Mar10 ? 00:00:00 [kthreadd]
root 35 2 0 Mar10 ? 00:00:00 [md]
(отметьте md
PPID процесса является PID kthreadd
).
Смотря на мой файл конфигурации ядра, я вижу это MD
настроен как встроенное (таким образом, Вы не будете видеть, что он использует lsmod
):
$ grep CONFIG_MD= /boot/config-`uname -r`
CONFIG_MD=y
хотя большая часть другой возможности RAID обеспечивается модулями. Согласно Руководящему RAID на Linux, CONFIG_MD
также требуется для LVM - поэтому, возможно, именно поэтому он включен по умолчанию.
Для выяснения, почему системный монитор показывает, другой значок для этого потока ядра в особенности берет некоторых выслеживание. Рассмотрение исходного кода для gnome-system-monitor
(на котором я полагаю, что системный монитор Помощника базируется), мы видим в ./src/prettytable.cpp
следующая функция:
void
PrettyTable::set_icon(ProcInfo &info)
{
typedef Glib::RefPtr<Gdk::Pixbuf>
(PrettyTable::*Getter)(const ProcInfo &);
static std::vector<Getter> getters;
if (getters.empty())
{
getters.push_back(&PrettyTable::get_icon_from_gio);
#ifdef HAVE_WNCK
getters.push_back(&PrettyTable::get_icon_from_wnck);
#endif
getters.push_back(&PrettyTable::get_icon_from_theme);
getters.push_back(&PrettyTable::get_icon_from_default);
getters.push_back(&PrettyTable::get_icon_from_name);
if (has_kthreadd())
{
procman_debug("kthreadd is running with PID 2");
getters.push_back(&PrettyTable::get_icon_for_kernel);
}
getters.push_back(&PrettyTable::get_icon_dummy);
}
Glib::RefPtr<Gdk::Pixbuf> icon;
for (size_t i = 0; not icon and i < getters.size(); ++i) {
try {
icon = (this->*getters[i])(info);
}
catch (std::exception& e) {
g_warning("Failed to load icon for %s(%u) : %s", info.name.c_str(), info.pid, e.what());
continue;
}
catch (Glib::Exception& e) {
g_warning("Failed to load icon for %s(%u) : %s", info.name.c_str(), info.pid, e.what().c_str());
continue;
}
}
info.set_icon(icon);
}
Суть, кажется, что это создает список значка "методы считывания" и затем пробует каждого в свою очередь, пока это не находит соответствие, в конечном счете падающее до get_icon_for_kernel
в случае процессов потока ядра - это - то, которое возвращает значение по умолчанию applications-system
значок "зубчатого колеса", что Вы видите другие процессы:
Glib::RefPtr<Gdk::Pixbuf>
PrettyTable::get_icon_for_kernel(const ProcInfo &info)
{
if (is_kthread(info))
return Glib::wrap(gtk_icon_theme_load_icon (gtk_icon_theme_get_default (), "applications-system", APP_ICON_SIZE, GTK_ICON_LOOKUP_USE_BUILTIN, NULL));
return Glib::RefPtr<Gdk::Pixbuf>();
}
Таким образом, кажется вероятным, что один из более высокого приоритета "методы считывания" ошибочно возвращает несвязанный значок для md
процесс. Если мы предполагаем, что это могло бы быть основано на имени процесса, то мы ищем некоторый пакет программного обеспечения, который устанавливает названный значок md
. Один кандидат из стандартных репозиториев Ubuntu
mate-icon-theme: /usr/share/icons/mate/scalable/animations/md.svg
который является флагом Республики Молдова, альфа ISO 3166-1 которой 2 кода являются md.
Первый шаг, как всегда, читается man md
. или https://manpages.ubuntu.com/manpages/bionic/en/man4/md.4.html
Был бы, загружаясь с параматерью ядра raid=noautodetect
(как описано в man md
) помогите Вам?