LINUX.ORG.RU

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

Вопросик по конфигурации certbot

Форум — Admin

certbot --nginx добавляет в конфиг nginx редирект на https на все сайты. Нигде это не редактируется? Мне нужно чтобы сайт по http\https тоже был доступен. Спрашивается: на кой х..р такая медвежья услуга?! Просто бесит! Просто нелюди делали, какие-то мутанты!

 ,

gobot
()

Учёт траты электроэнергии на каждой точке

Форум — Talks

Господа, приветствую вас.

У меня такой вопрос, есть ли устройства учёта потребления электроэнергии в компактном виде. В компактном, я имею ввиду что бы можно было поставить устройство, допустим на выключатель в кухне, в прихожей, и всю информацию передавать в Linux для записи. Желательно недорогие, так как предполагается установка таких счётчиков минимум в пяти точках. А почему именно в Linux? А потому что Windows у меня уже давно нет, только через виртуалку.

 , , , ,

unixnik
()

А есть способ убедить systemd не убивать screen при logout?

Форум — General

Доброго времени суток

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

Теперь systemd убивает все процессы пользователя при logout. Ну ладно, в этом есть смысл. Но как теперь запустить, чтобы не прибило?

 ,

router
()

Книга «История моей страны. Записки военного инженера-программиста»

Форум — Talks

В продаже появилась книга В.Н. Орлова «История моей страны. Записки военного инженера программиста».

Книга интересна тем, что её написал программист, который ступил на путь программирования в далёком 1971 году и остаётся активным программистом до сегодняшнего дня.

Особый интерес вызывает рассказ о том, как пробивали себе дорогу язык программирования Си и операционная система Unix. Значительная часть книги посвящена описанию событий, связанных с созданием вычислительных сетей, тому, что сегодня стало совсем обыденным и привычным, а тогда в 80-х об этом только мечтали и делали первые шаги.

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

Интересны приложения в книге, среди которых нужно выделить Приложение 2 «Советские программы противодействия ПРО» (стр. 393-412). Фактически в нем изложено содержание по сути последней комплексной программы Советского Союза, в которой были расписаны основные этапы развития и вычислительной техники и космических систем различного назначения. К сожалению, это Программа была до конца не реализована, но один пункт был реализован - это полёт «Бурана».

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

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

 , вычислительные сети, , ,

TclTk
()

Шифрованный IP туннель средствами iproute2

Форум — Admin

А можно ли сделать туннель между двумя машинами с шифрованием (без паранойи, можно просто psk, авторизация тоже не нужна) без демонов в юзерспейсе? Очень желательно что-то вроде foo-over-udp, чтобы снаружи оно было похоже на обычный трафик.

 , ,

sergej
()

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
()