LINUX.ORG.RU

Избранные сообщения VovanE

TRIM для raid5

Форум — Admin

Доброго времени суток! Есть софт-raid5 на SSD дисках. Заметил что скорость чтения деградировала до 30Мб в сек т.е. хуже чем обычный HDD :( посмотрел скорости по hdparm для каждого диска в рейде - полный пипец. Оказывается, xfs которую я выбрал для этого рейда не поддерживает TRIM, да косяк, справлюсь, но пока не могу. Все диски в рейде поддерживают trim - проверено.

Попробовал fstrim / отрабатывает, но не для рейда и его дисков. Т.е. скорость можно восстановить, но путем добаления диска в spare потом его применения и вывода другого диска из рейда. тогда диск восстанавливает свои скоростные характеристики. снова завожу его в рейд и ну и так далее.

Т.е. добавил новый диск в рейд и заменил им самый деградировавший. Скорость возросла, а деградировавший после вывода из рейда сразу показал нормальные скорости 500Мб/с, завожу его обратно и повторяю процедуру со следующим диском в рейде.

Вообщем треш какойто :(( Копал тырнет - но нифига не могу найти, как сделать TRIM для всех дисков в рейде??

В LVM есть описание, в рейде - нифига :((

Помогите разобраться, как в данном случае сделать трим для дисков в рейде, без их вытаскивания из рейда, сброса партишенов и последующего ввода в рейд.

Перемещено hobbit из general

 , ,

ssnakess
()

GPIO events

Форум — Development

Добрый день, коллеги!

Скажу честно, с GPIO столкнулся впервые.

Смотрел 2 способа работы: через /sys и через libgpiod. Через файлы мне понравилось куда как больше.

Чего удалось достичь: инициализировать линии, мыргать светодиодом и даже получать информацию о том в каком состоянии линия.

Остались непонятки: как выяснить какие линии являются IN и какие OUT? Выяснить не методом ручного контроля, а автоматически.

Еще, по ТЗ, требуется постоянный опрос с частотой до 10 раз в секунду, что здорово нагружает процессор.

Начал рыть и нашел некие намеки, что можно как-то сделать через event, т.е. не заниматься постоянным опросом, а использовать нечто, реагируещее на изменение состояния линии.

Нашел пример на python, там, как я понял, при возникновении изменения состояния линии, вызывается функция, которая выполняется в новом потоке.

Подскажите как «присесть» на event при работе через /sys?

 ,

HighMan
()

dracut-ng

Форум — Talks

Тут увидел: https://github.com/void-linux/void-packages/pull/51344

Как пишут в NEWS:

Release 100 of dracut-ng serves as a drop-in replacement for the original dracut project. This release marks a significant milestone in our commitment to providing an alternative, community-driven solution for creating an initramfs image. The original dracut project is no longer actively maintained (its last tagged release dates back to 2022). Forking allows the community to take ownership of the project and address maintenance issues independently.

This release includes fixes for compatibility with the latest Linux kernel (v6.8), Linux firmware, and systemd (v255).

A new dracut module named net-lib has been added to enhance networking support.

Support for new Linux kernel modules have been added to support new devices, including the Surface Laptop 4 and MacBook Pro.

The project builds test containers daily for the following Linux distributions: Arch Linux, Debian, Fedora, Gentoo, openSUSE, and Ubuntu, in various configurations (systemd, OpenRC, glibc, musl). All enabled integration tests have passed at the time of this release.

  1. https://github.com/dracutdevs/dracut
  2. https://github.com/dracut-ng/dracut-ng

 , ,

dataman
()

Отваливается USB-Serial адаптер на Rasspberry Pi 4

Форум — Linux-hardware

Есть проект в котором к Raspberry Pi 4 подключены по USB: K-line адаптер (для получения диагностической информации от двигателя, на чипе ftdi), микроконтроллер stm32 в CDC режиме (определяется как последовательный порт) и 4G модем. RPI питается от автомобильного аккумулятора через преобразователь 12-5v 3А такой вот Сам аккумулятор заряжается от автомобильного же генератора. В чем проблема: При повышении оборотов двигателя до 2500 и более: диагностический адаптер начинает отваливаться. В dmesg вижу: ftdi_sio ttyUSB0: usb_serial_generic_read_bulk_callback - urb stopped: -32 При оборотах около 4000, также отваливается STM32. Само устройство на месте /dev/ttyACM0, сообщений в dmesg нет, но данные из него просто перестают поступать. Лечится только перезагрузкой RPI. 4G модем при этом нормальной работает всегда. Именно с USB-Serial девайсами начинаются проблемы. Я пробовал подключать совершенно другой диагностический адаптер (ELM 327 с интерфейсным чипом CH340). Ситуация точно такая же. Причем, если адаптер выдернуть из USB вообще, то STM32 перестает отваливаться. Магия. Не могу понять как это все между собой связано. Если не хватает питания на USB, то почему 4G модем не реагирует? И с чего бы вдруг питания должно не хватать, ведь при повышении оборотов генератор наоборот активнее работает. Адаптер на 3A, USB периферия ничего не потребляет особо. Плату RPI менял на другую - разницы нет.

 

pavepasha
()

Shadowsocks почти всё, какие есть альтернативы?

Форум — Admin

Ну, здравствуйте, админы всея руси!)

Вкратце: shadowsocks 2022 как-то странно работает, может детект какой-то или шейп.

Что ещё есть в наличии на сегодняшний день с шифрованием? Насколько помню xtls от китайцев, вроде, без оного, всякие vmess, openvpn, wireguard, естественно, давно в блоке.

 ,

Reptile
()

Купил 2 новых 4 терабайтника... Одинаковых, но не сразу и в разных конторах. Показывают в SMART разный размер.

Форум — Linux-hardware

Первая покупка:

Model Family:     Toshiba 3.5" MG03ACAxxx(Y) Enterprise HDD
Device Model:     TOSHIBA MG03ACA400
Serial Number:    Z4FEK62FF
LU WWN Device Id: 5 000039 5fbd822f6
Firmware Version: FL1A
User Capacity:    4 000 785 948 160 bytes [4,00 TB]
Sector Size:      512 bytes logical/physical
Rotation Rate:    7200 rpm
Form Factor:      3.5 inches

Вторая покупка:
Model Family:     Toshiba 3.5" MG03ACAxxx(Y) Enterprise HDD
Device Model:     TOSHIBA MG03ACA400
Serial Number:    Z494K77TF
LU WWN Device Id: 5 000039 5fb88138a
Firmware Version: FL1A
User Capacity:    4 000 787 030 016 bytes [4,00 TB]
Sector Size:      512 bytes logical/physical
Rotation Rate:    7200 rpm
Form Factor:      3.5 inches


Почему первый: 4 000 785 948 160 bytes
а второй: 4 000 787 030 016 bytes?
Разница 918144 байта.

Этот вопрос заинтересовал в плане создания zfs рейда на всё устройство, путём создания обычного тома, а затем подключениия зеркального устройства. Ведь оно может потом заявить. «Слишком маленькое устройство».
Думаю всё же придётся создать разделы по 4000000000000 байт, а хвосты сделать отдельными разделами для всякого мусора. Или докинуть туда ещё 750Мб?

P.S. Долго обсуждали, пока Dimez не написал:

Ты написал очень много букв вместо простой проверки HPA.

И тут всё встало на места, я «посыпал голову пеплом», за 33+ года работы с компами я знал аббревиатуру HPA, но НИ РАЗУ не использовал и не знал сути.

#hdparm -N /dev/sda
/dev/sda:
max sectors = 7814035055/7814037168, HPA is enabled

#hdparm -N p7814037168 /dev/sda

# hdparm -N /dev/sda

/dev/sda:
 max sectors   = 7814037168/7814037168, HPA is disabled

ВСЁ! ВОПРОС ИСЧЕРПАН!
Но появились новые вопросы.
С этим диском сразу случился цирк.
Получил с WB новый винт, в пакетике, не вскрытый.
Вскрыл, этикетка наклеена с пузырями.
Запустил smartctl и он показал размер 3Тб
Я начал делать заявку на возврат, для приложения логов подключил этот винт через SATA<->USB адаптер, запустил smartctl и увидел 4Т.
Возврат отложился.
Разметил, сделал zfs рейд с десктопной 3Т Тошибой, но тоже косяк.
Десктопные винты имеют физический размер сектора 4К, а серверные 512 байт. Пришлось долго уговаривать zfs рейд, иначе он отказывался с совершенно левой диагностикой:
cannot attach /dev/sdc2 to /dev/sda3: can only attach to mirrors and top-level disks

Уговорил, указав ashift=12, но в итоге zpool status пишет:
	NAME        STATE     READ WRITE CKSUM
	zer0-safe   ONLINE       0     0     0
	  mirror-0  ONLINE       0     0     0
	    sda3    ONLINE       0     0     0
	    sdc2    ONLINE       0     0     0  block size: 512B configured, 4096B native

Вернемся к нашим баранам.
Наконец получил второй такой же 4T, из другой конторы, посмотрел SMART и родился этот топик.
Теперь этот топик дал решение: просто отключить HPA у первого винта. Экстрасенсы задержались, а надо было просто мне предложить показать: hdparm -N /dev/sda

Остался простор для исследования почему этот первый винт, достатый из запечатанного пакета от Тошибы, показал сначала размер 3Т, потом неожиданно стал 4Т, но немного меньше чем другой такой же пришедший позже. Куда я его включил и кто менял ему HPA? Но сначала включил в тот же компьютер что и второй, увидел 3Т и началась «истерика» попыток воткнуть его в разные места, загрузки разных систем и запуска разных диагностических средств. В процессе он неожиданно стал 4Т.
Последовательности операций не записывал, а с памятью у меня плохо.
Покупать ещё один такой винт? :)))

 ,

n0mad
()

Linux kernel обработка прерываний

Форум — Development

Народ, а вот кто в прерываниях понимает что-нибудь? Нужна помощь.

Номер прерывания в таблице IDT, и номер линии прерывания – это не одно и то же?

Такие дела – линукс ядро, при регистрации обработчика прерывания требует именно номер линии прерывания. А я знаю только номер из IDT. Если они совпадают и это одно и тоже – тогда без проблем. Но если не совпадают, то как мне найти номер линии?

Случай, когда они не совпадают я уже знаю – например, NMI (немаскируемое прерывание). Оно имеет номер 2 в таблице IDT, но вот линия номер 2 отдана под каскадное подключение другого контроллера прерываний. У NMI нет линии, оно отдельно.

А для остальных прерываний, которые обычные, маскируемые, как найти их линии?

 

hibou
()

Шифрование

Форум — Admin

Привет всем, появился повод поставить зашифрованую систему почитав гайды и инструкции понял что не все так просто а именно:

нельзя зашифровывать граб так он по сути расшифровывает как и сам раздел /boot

но в теории можно просто положить граб а ядро положить в отдельную дерикторию или так нельзя

еще есть что на подобие подписей чтобы можно было как то защититься, но так и не понял как это работает

есть шифровка через файл и без файла, это как?

буду шифровать два носителя nvme

Перемещено hobbit из general

 ,

SPRATAY
()

Подключение к существующей X-сессии

Форум — Admin

Привет, ЛОР.

Представим локальную сеть, в которой есть админская рабочая станция и удалённая машина, на обоих — линуксы с иксами. На удалённой машине есть пользователь sidorov, к которому можно подключиться, например, по ssh.

Если я подключаюсь с админской машины по ssh -X, будет задействован её же X-сервер, и программы будут отображать свой GUI на админской же машине.

А есть ли решение, позволяющее подключиться к УЖЕ запущенной сессии того же пользователя sidorov на удалённой машине, чтобы программы запускались в его сессии и на удалённой же машине отображались? Пока на ум приходит только мысль написать простенькую программу-агента и вставлять её в автозапуск сессии, и чтобы она принимала команды по сети. Но может есть уже что-то:

  • готовое;
  • не кривое;
  • с хоть сколько-нибудь проработанной безопасностью (если этого агента писать по уму, придётся в него фактически целый SSH-сервер вставлять);
  • опенсорсное (скорее всего это придётся компилировать под свою систему)?

P.S. Всем спасибо, помогло явное указание DISPLAY=:0 перед вызовом нужной команды (спасибо @einhander). Да, в моём случае был нужен именно запуск, совместная работа с одним экраном — тема отдельная.

 , ,

hobbit
()

Что можно использовать для синхронизации времени через GPS/ГЛОНАСС?

Форум — Linux-hardware

Хочется настроить синхронизацию времени через GPS или ГЛОНАСС. Что их оборудования (работающего с Linux) для этого можно использовать? Сейчас экспериментирую с USB GPS-приёмником u-Blox 7, но в помещении он не особо работает (спутники видит, но, видимо, уровня сигнала недостаточно чтобы определить координаты). А есть ли возможность за разумную цену приобрести что-то более работоспособное, что будет работать в помещении? Или нормальной точности с USB-приёмником всё равно не достичь?

 , ,

askh
()

Как дать разрешение управлять systemd юнитом?

Форум — Admin

Создал юзера, не имеющего никаких прав, не привязанного к группе sudo. Можно ли ему дать управление ОПРЕДЕЛЕННЫМ systemd юнитом? Речь идёт о серверном ubuntu 22.04

 , ,

XNordWindX
()

OpenLdap proxy

Форум — Admin

Добрый день, настраиваю openldap proxy на debian 11. Первый раз, и как обычно ничего не получается. Задача - авторизацию сервисов запулить через лдап проски, ибо админ АД выдает только одну учетку служебную для прокси, а пользователи сервисов (юзеры АД) должны логиниться через свои доменные учетки в этих сервисах. Сами сервисы умеют бегать в лдап, но для них админ АД не выдаёт учетки. Причины есть, связанные с космической секьюрностью. На хабре есть статья там команда делала подобную штуку. Что делал:

1.apt install libnss-ldapd libpam-ldapd ldap-utils

  1. dpkg-reconfigure slapd - тут задал свой тестовый домен, который подразумевается будет прокси.

  2. Убедился, что есть файлик back_ldap.la в директории /usr/lib/ldap/

4.Показал сущности cn=config что надо подгружать бэкенд модуль :

-файлик backend.ldif

objectClass: olcModuleList
cn: module
olcModulePath: /usr/lib/ldap
olcModuleLoad: back_ldap.la

-команда, чтобы этот файлик внести в конфиг ldapadd -Y EXTERNAL -H ldapi:/// -f backend.ldif

  1. Пока всё в порядке.

вот конфиг весь, тут видно, что модуль back_ldap.la подгружен. (лапша cn=core и cn=schema убраны)

objectClass: olcGlobal
cn: config
olcArgsFile: /var/run/slapd/slapd.args
olcLogLevel: none
olcPidFile: /var/run/slapd/slapd.pid
olcToolThreads: 1
structuralObjectClass: olcGlobal
entryUUID: adf5cee0-00e6-103e-93ff-19c1b1debbf8
creatorsName: cn=config
createTimestamp: 20231017031159Z
entryCSN: 20231017031159.210589Z#000000#000#000000
modifiersName: cn=config
modifyTimestamp: 20231017031159Z

( читать дальше... )

  1. Добавляем базу с ldap сервером, т.е. где все пользователи и живут. Т.е. добавляем backend-базу типа ldap, в качестве которой будет выступать Active Directory:

файлик ldap_db.ldif

dn: olcDatabase=ldap,cn=config
objectClass: olcDatabaseConfig
objectClass: olcLDAPConfig
olcDatabase: ldap
olcDbIDAssertBind: bindmethod="simple" binddn="CN=userNameStaff,CN=Users,DC=company-ad,DC=good-ad,DC=ru" credentials="yY0987654321"
olcDbURI: ldap://company-ad01.company-ad.good-ad.ru
olcReadOnly: TRUE
olcRootDN: cn=admin,dc=localproxy,dc=company2,dc=goodldap,dc=ru
olcRootPW: NH32Ofo5lm9ul4Ofo4r/a6uh+nYI/esd
olcSuffix: dc=localproxy,dc=company2,dc=goodldap,dc=ru
olcDbChaseReferrals: FALSE

Здесь userNameStaff - это логин для просмотра внешнего каталога ldap, в поле credentials его пароль. Эти данные дал владелец АД. Пока в режиме настройки 636 порт не используется. Вот описание с хабра + мои вопросы:

olcDbIDAssertBind: Указание метода подключения, distinguishedName и пароля УЗ для подключения к контроллеру MS Active Directory.

olcDbURI: URI контроллера AD.

olcReadOnly: Режим работы (чтение/запись) с MS Active Directory.

olcRootDN: Сервисная УЗ OpenLDAP. С помощью нее к OpenLDAP будут подключаться сервисы. Я еще добавил credentials, ибо хозяин АД дал учетку с паролем.

olcRootPW: Пароль от сервисной УЗ OpenLDAP. Здесь я указал admin, и его пароль, правильно ли это? или нужно создать нового юзера

olcSuffix: Суффикс домена (какого именно ? домена где прокси? )

olcDbChaseReferrals: Определяет возможность использования механизма отсылок.

Добавляем этот конфиг и сразу ошибка:

root@proxyldap:/etc/ldap# ldapadd -Y EXTERNAL -H ldapi:/// -f ldap_db.ldif
SASL/EXTERNAL authentication started
SASL username: gidNumber=0+uidNumber=0,cn=peercred,cn=external,cn=auth
SASL SSF: 0
adding new entry "olcDatabase=ldap,cn=config"
ldap_add: Other (e.g., implementation specific) error (80)
        additional info: <olcRootPW> can only be set when rootdn is under suffix

root@proxyldap:/etc/ldap#

Уже и удалял строки, иногда добавляется, но ошибка при перезапуске slapd в журнале backend_startup: warning, database 2 (ldap) has no suffix

Перерыл много чего, везде всё по разному и юзают конфиг slapd.conf в папке openldap (типа старый стиль), а с cn=config толком нет инфы. Мне просто нужно пользователей какого-либо сервиса пропускать в базу company-ad01.company-ad.good-ad.ru . Это же пользователи этого АД. Сервисов много, всем [сервисам] учётки не дают для просмотра каталога ldap, дают только дну. Вот нужен некий прокси. Подскажите где поправить чтобы проксирование срабатывало.

 ,

Sv00p
()

Странные китайские платы с мобильными процессорами

Форум — Linux-hardware

В общем, обнаружено месторождение очень странных материнских плат с распаянными мобильными процессорами фирмы интуль, с десятого по тринадцатое поколение, от четырёх до десяти ядер. Всё остальное — полноразмерное, есть PCI-E 4.0 x8 и x4, два SATA-коннектора плюс два места под NVME-накопители. Цена умеренная: если брать ещё память, твердотельник и кулер, то можно уложиться в триста с копейками долларов (десятиядерный обойдётся дороже).

В тут, например.

Что скажут благородные доны? Конфетка, или таки полное кю?

 

Mobutu_Sese_Seko
()

Аналог яндекс почты для привязки своего домена

Форум — Talks

Колллеги, посоветуйте какой бесплатный почтовый хостинг по типу того какой был яндекс , для привязки своего домена

 

pinachet
()

Как работает UDP hole punching?

Форум — Admin

С TCP/IP всё понятно. Есть IP адрес и порт.

А как программа понимает при работе UDP hole punching что пакет адресован именно ей, а не какой-нибудь другой программе, которая размещена на хосте с тем же IP?

Ищу уже час наверное, но везде какие-то мутные пространные рассуждения.

Спасибо.

 ,

zx_gamer
()

Альтерантива Yandex для почты для своего домена? Какой бесплатный сервис выбрать?

Форум — Admin

Альтерантива Yandex для почты для своего домена? Какой бесплатный сервис выбрать? Или свой почтовый сервак лучше поднять? (MTA) Какие лучше на текущий момент серверы?

Перемещено hobbit из general

 

glorsh66
()

Как включить intel_state?

Форум — Linux-hardware

У меня сейчас процессор работает через intel_cpufreq, хотя в ядре опция intel_state включена.

bash-5.1$ cat /sys/devices/system/cpu/cpu*/cpufreq/scaling_driver
intel_cpufreq
intel_cpufreq
intel_cpufreq
intel_cpufreq
intel_cpufreq
intel_cpufreq
intel_cpufreq
intel_cpufreq
intel_cpufreq
intel_cpufreq
intel_cpufreq
intel_cpufreq
intel_cpufreq
intel_cpufreq
intel_cpufreq
intel_cpufreq
intel_cpufreq
intel_cpufreq
intel_cpufreq
intel_cpufreq
intel_cpufreq
intel_cpufreq
intel_cpufreq
intel_cpufreq

uname -a
Linux host 6.1.21 #2 SMP PREEMPT_DYNAMIC Sun Mar 26 14:11:33 UTC 2023 x86_64 GNU/Linux

конфиг ядра - https://pastebin.com/FraZLJx0

В грабе тоже включил - https://pastebin.com/1HChe8vK

Версия ядра 6.1.21

Куда копать?

 ,

vbcnthfkmnth123
()

Есть ли бесплатные публичные серверы zabbix и др. для мониторинга своего ПК?

Форум — General

Я хочу мониторить свой домашний ПК (потребление CPU, RAM, диски, дисковая, сетевая активность, нагрузка на видеокарту и т.д.). И чтобы были красивые графики за ~год.

Ранее я поднимал на своём ПК zabbix\checkmk\prometheus + grafana и т.д. Всё это работало.

Но теперь мне не хочется тратить время на поднятие дополнительных севисов. К тому же, понадобится поднимать и БД для хранения метрик, соответственно, будет тратиться ресурсы моего SSD.

Есть ли какие-нибудь бесплатные публичные сервисы, где я бы мог зарегистрироваться по почте, проставить агентов на своё ПК (zabbix, check-mk и т.д.) и слать свои метрики туда? И заходить на чужой Zabbix\checkmk и смотреть графики?

 

iljuase
()

Как кто запускает sway

Форум — Desktop

Или другой вялендовский WM.

Дело в том, что сейчас у меня lightdm - а это избыточная избыточность в этом плане.

lightdm требует xserver для экрана входа, который я никогда не вижу по причине автологина. Вот и хочется избавиться от лишнего звена. Слышал про запуск средствами системды, в качестве пользовательского юнита. Слышал про greetd и даже сам использовал, но в итоге забросил, даже не помню почему.

Вот и хочется узнать, как это настроено у уважаемых лорчан.

 ,

token_polyak
()

Может ли завершиться успешно команда, на которую ответило ошибкой 4xx?

Форум — Web-development

Объясните, пожалуйста, правила для REST API. В каких случаях должно выдавать какие ошибки?

Есть сервер, на котором крутится задача, которая будет там крутиться ещё несколько минут. Или часов. Приходит команда изменить какие-то исходные данные. Так как команды прерывать текущие задачи не было, а изменяемые данные используются задачей, они будут изменены только по окончании текущей задачи. Поэтому сервер выдаёт ошибку 409 Conflict. Это правильно? Как принято поступать в подобных случаях?

Перемещено hobbit из talks

 

olegd
()