Как кушать вилкой. ... или о fork() в двух словах
Статья о создании процессов в Linux
( читать дальше... )
Статья о создании процессов в Linux
( читать дальше... )
Поделитесь музыкой, треком, тем что вас зацепило переслушивать по несколько раз.
Вот моё: Вивальди - Зима, рок-обработка
Если внезапно кто-то захочет пройти этим путём… В общем держу в курсе.
NixOS with Flakes, Disko, impermanence rootless (aka Erase your darlings), home-manager а главное Nix flake for a fully declarative NixOS on Raspberry Pi
Ванильное ядро Linux не увидит PCIe а соотвественно и nvme/ssd диски. В то же время nvmd/nixos-raspberrypi сделал нам хорошо опакетив форк ядра и загрузчик от малины.
Пациент Raspberry Pi 5 16GB.
Корпус P579
Охлаждение H505 active cooler
Накопители данных X1004 PCIe to Dual 2280 NVMe SSD shield + Samsung SSD 990 EVO 2TB + NE-4TB 2280
https://www.raspberrypi.com/documentation/computers/raspberry-pi.html#enable-pcie
В configtxt.nix
pciex1 = {
enable = true;
value = "on";
};
https://www.raspberrypi.com/documentation/computers/raspberry-pi.html#pcie-gen-3-0
В configtxt.nix
pciex1_gen = {
enable = true;
value = "3";
};
https://www.raspberrypi.com/documentation/computers/configuration.html usb_max_current_enable
Zero if the USB port current limiter was set to the low-limit during boot; or non-zero if the high limit was enabled. The high level is automatically enabled if the power supply claims 5A max-current OR usb_max_current_enable=1 is forced in config.txt
В configtxt.nix
usb_max_current_enable = {
enable = lib.mkDefault true;
value = lib.mkDefault true;
};
Cклонировали репу, внимательно прочитали README.md, Да modules/configtxt.nix добавили ssh ключи и нужный софт. Собственно сборка nix build .#installerImages.rpi5
Результат:
> du -h result/sd-image/nixos-installer-rpi5-kernel.img.zst
1,5G result/sd-image/nixos-installer-rpi5-kernel.img.zst
Дальше банально:
> unxz result/sd-image/nixos-installer-rpi5-kernel.img.zst
> dd if=result/sd-image/nixos-installer-rpi5-kernel.img | pv | dd of=/dev/СМОТРИ_НЕ_ПЕРЕПУТАЙ_КУДА
Абстрактный однако, при этом, рабочий пример Disko.nix для двух дисковой установки (ssd поменьше под ОС, ssd побольше под данные) с корнем в ram.
{
disko.devices = {
nodev."/" = {
fsType = "tmpfs";
mountOptions = [
"defaults"
"size=2G"
"mode=755"
];
};
disk = {
main = {
type = "disk";
device = "/dev/nvme0n1";
content = {
type = "gpt";
partitions = {
ESP = {
priority = 1;
name = "ESP";
label = "ESP";
start = "1M";
end = "2048M";
type = "EF00";
content = {
type = "filesystem";
format = "vfat";
mountOptions = [
"noatime"
"nodiratime"
"umask=077"
];
mountpoint = "/boot";
};
};
nyx = {
size = "100%";
name = "MY_NAME";
label = "MY_NAME";
content = {
type = "btrfs";
extraArgs = [
"--label MY_NAME"
"-f"
"--csum xxhash64"
"--features"
"block-group-tree"
];
subvolumes = {
"home" = {
mountpoint = "/home";
mountOptions = [
"subvol=home"
"compress=zstd"
"noatime"
"ssd"
"discard=async"
"space_cache=v2"
];
};
"nix" = {
mountpoint = "/nix";
mountOptions = [
"subvol=nix"
"compress=zstd"
"noatime"
"ssd"
"discard=async"
"space_cache=v2"
"nodev"
"nosuid"
];
};
"log" = {
mountpoint = "/var/log";
mountOptions = [
"subvol=log"
"compress=zstd"
"noatime"
"ssd"
"space_cache=v2"
];
};
tmp = {
mountpoint = "/tmp";
mountOptions = [ "noatime" ];
};
};
};
};
};
};
};
};
disk = {
media = {
type = "disk";
device = "/dev/nvme1n1";
content = {
type = "gpt";
partitions = {
media = {
size = "100%";
name = "media";
label = "media";
content = {
type = "btrfs";
extraArgs = [
"--label media"
"-f"
"--csum xxhash64"
"--features"
"block-group-tree"
];
subvolumes = {
"media" = {
mountpoint = "/NAS";
mountOptions = [
"subvol=media"
"compress=zstd"
"noatime"
"ssd"
"discard=async"
"space_cache=v2"
];
};
};
};
};
};
};
};
};
};
fileSystems = {
"/var/log".neededForBoot = true;
};
}
Уничтожение (!!!) всех данных и создание всех разделов на всех дисках:
nix --experimental-features "nix-command flakes" run github:nix-community/disko/latest -- --mode destroy,format,mount Disko.nix
Монтирование всех разделов на всех дисках из live sdcart
nix --experimental-features "nix-command flakes" run github:nix-community/disko/latest -- --mode mount Disko.nix
Из остального, что является существенным, я поправил:
boot.tmp.useTmpfs = true;
boot.loader.raspberryPi.bootloader = "kernel";
boot.loader.raspberryPi.firmwarePath = "/boot"; # /boot/firmware
boot.kernelParams = [ "console=serial0,115200n8" "console=tty1" "cfg80211.ieee80211_regdom=RU" ];
Всё прочее банально, зависит от привычек и вкуса и не требует пояснений.
Пациент с описанным сетапом жив. Однако да решение требует пердолинга, свободного времени и желания. За полумесячный период эксплуатации замечены два полных внезапных вайпа системы после обновлений nixos-rebuild switch --flake .#${HOSTNAME} -L и последующей перезагрузки. Причины не выяснены. Мой прогноз - пока что аппстрим NixOS это не примет. Возможно примет позже когда 5ю малину будет поддерживать uboot и ванильное ядро. Всем чмоки в этам чатики. Поздравляю всех выживших с наступившим.
Запускаем
nmap -p 22 --script ssh-auth-methods localhost
Запускаем
nmap -p 30022 --script ssh-auth-methods localhost
А виноват какой-то «Devin Bjelland» который прибил гвоздями
portrule = shortport.ssh
Заменил эту строку на
portrule = function(host, port)
if port.protocol == "tcp" and port.state == "open" then
return true
end
return false
endТам есть еще 3 скрипта этого автора в которых ssh прибит гвоздями к порту 22.
/usr/share/nmap/scripts/ssh-brute.nse:author = "Devin Bjelland"
/usr/share/nmap/scripts/ssh-brute.nse:portrule = shortport.ssh
/usr/share/nmap/scripts/ssh-publickey-acceptance.nse:author = "Devin Bjelland"
/usr/share/nmap/scripts/ssh-publickey-acceptance.nse:portrule = shortport.ssh
/usr/share/nmap/scripts/ssh-run.nse:author = "Devin Bjelland"
/usr/share/nmap/scripts/ssh-run.nse:portrule = shortport.ssh
Вопрос: нахрена так делать? Автор не знает, что ssh бывает на нестандартных портах?
PS Nmap version 7.95
https://www.moddb.com/mods/diffusion
Краткая подводка к сюжету:
Вы играете за Джеймса Смита, бывшего бойца SWAT, который отправился в отпуск… но его машина сломалась посреди пустынной местности штата Юта.
В поисках помощи герой находит заброшенный перерабатывающий завод и очень быстро понимает, что место это совсем не такое, каким кажется.
Автор проекта - Богдан Макаров (Aynekko), который в одиночку вытащил гигантский хобби-проект, сделав настоящую тотал-конверсию с собственной историей, картами, моделями и атмосферой.
Что внутри:
Автор использует часть моделей и текстур, найденных в свободном доступе, но открыт к корректировкам и и указаниям авторства.
Помимо всего остального, музыку автор писал сам, послушать, скачать или купить можно тут: https://traceline.bandcamp.com/
Есть нативная сборка под GNU/Linux amd64. Примечателен тем, что сделан на основе кроссплатформенного движка Xash3D FWGS, форка оригинального Xash3D, к которому причастны я,
mittorn и ещё множество других людей, которые вроде как не зарегистрированы на ЛОРе.
Исходники от игровой части скорее всего будут в начале следующего года.
Может быть кто-нибудь видел нечто похожее в продаже в России (желательно на qmk, с возможностью беспроводного подключения, 40%-65%)?
Нашёл https://github.com/ph-design/PH60-SC, но там придётся заказывать плату и нет беспроводного подключения. Ещё из похожего видел lofree flow, но хотелось бы что-то поменьше.
Привет, ЛОР.
Посоветуйте, пожалуйста, что-то из старенького: стрелялку/бродилку/бегалку/гонялку/. Пусть это будет не слишком требовательное к ресурсам, лишь бы увлекало и было НАТИВНОЕ. Раньше ведь столько всего годного было и со смыслом. Либо какие-то старые открытые движки, на основе которых слепили что-то интересное. Не особо слежу просто. У меня одна игра на десктопе - OpenArena, но уже подзадолбала, мягко говоря. Нет, вру: есть еще первый и второй Quake.
Хотелось бы еще что-то, во что можно было бы побегать/погонять.
З.Ы. Можно проприетарные, главное, нативные игры и без всяких стимов!
Когда тебе перевалило за полтинник, сталкиваешься с совершенно неожиданной проблемой. А именно - становится очень нетривиальной задачей отдых. Дело не в том, что ты быстрее устаешь, а в том, что не можешь до конца отдохнуть. Встанешь утром, собираешься на работу - и ты УЖЕ устал. Патологически не хватает выходных и т.д.
Нужно кардинально менять стратегию релаксации. Физические нагрузки при умственном переутомлении только ухудшают положение. Другим важным фактором, не дающим отключиться от фоновых размышлений, является сохраняющийся (несмотря на любую усталость) ИНТЕРЕС к решаемым проблемам. Собственно, этим выгорание и отличается от тупого интеллектуального истощения. Интерес не даёт забросить задачу куда подальше. И даже когда ты вроде уже «отдыхаешь», фоновый процесс размышления продолжается и продолжает выматывать.
Решением видятся фильмы и книги. Стоящие фильмы и сериалы уже засмотрены до дыр. А вот книги просто не могу найти. Их много, но они или пафосные, или заумные или депрессивные. Нужно лёгкое чтиво, которое было бы настолько захватывающим, чтобы вытащить из текущей проблематики. Выручайте!
Если апп на сервере, который лежит на сокете и обрабатывает (udp/tcp) по разным протоколам. Хочу проверить работу. Запускал тесты на локалхосте, норм., держит соединения норм, не отваливаются, сам апп живой. Запускал тесты через свой комп, но проблема в том, что мой роутер начинает гнать и отваливается сеть(видимо из за pps).
Как проверить (benchmark) на хотя бы 1000 устройств с реальными адресами, сетями, типа бот фермы ддос? Какой сервис есть? Ну и желательно в РФ, ибо платить картой сейчас нереал
Я просто оставлю это здесь
import re
import argparse
def parse_msi_afterburner_profile(profile_path):
"""Parses an MSI Afterburner profile and extracts the VF curve data."""
try:
with open(profile_path, 'r') as f:
profile_content = f.read()
except FileNotFoundError:
print(f"Error: Profile file not found at {profile_path}")
return None
# Regex to find VF points (adjust regex if needed for your profile format)
vf_point_regex = r"\[VF Curve Point (\d+)\]\nVoltage=(\d+)\nFrequency=(\d+)"
vf_points = []
for match in re.finditer(vf_point_regex, profile_content):
index = int(match.group(1))
voltage = int(match.group(2))
frequency = int(match.group(3))
vf_points.append((index, voltage, frequency))
# Sort by index to ensure correct order
vf_points.sort(key=lambda x: x[0]) # Important to keep the order!
return vf_points
def generate_nvidia_settings_script(vf_points, device_id=0): # device_id is usually 0
"""Generates an nvidia-settings script to set the VF curve."""
script = "#!/bin/bash\n\n"
for _, voltage, frequency in vf_points:
# Important: Nvidia-settings uses millivolts and MHz. Afterburner is sometimes different
mv = voltage # Afterburner voltage may already be in mV, if not, adjust here.
mhz = frequency
# Important: You must set the coolbits option to allow adjusting the voltage.
script += f"nvidia-settings -a '[gpu:{device_id}]/GPUVoltageOffset[0]={mv}'\n" # Offset voltage
script += f"nvidia-settings -a '[gpu:{device_id}]/GPUMemoryOffset[0]=0'\n" # Memory offset - optional
script += f"nvidia-settings -a '[gpu:{device_id}]/GPUTargetFanSpeed[0]=70'\n" # Fan speed - optional
script += f"nvidia-settings -a '[gpu:{device_id}]/GpuClockOffset[0]={mhz}'\n" # Clock offset
# Alternative method for setting voltage (less common):
# script += f"nvidia-settings -a '[gpu:{device_id}]/GPUVoltage[0]={mv}'\n" # Absolute voltage
return script
if __name__ == "__main__":
parser = argparse.ArgumentParser(description="Convert MSI Afterburner profile to nvidia-settings script.")
parser.add_argument("profile_path", help="Path to the MSI Afterburner profile file.")
parser.add_argument("-o", "--output", help="Output script file (default: vf_curve.sh)", default="vf_curve.sh")
parser.add_argument("-d", "--device", type=int, help="GPU device ID (default: 0)", default=0)
args = parser.parse_args()
vf_points = parse_msi_afterburner_profile(args.profile_path)
if vf_points:
script = generate_nvidia_settings_script(vf_points, args.device)
try:
with open(args.output, 'w') as outfile:
outfile.write(script)
print(f"Script saved to {args.output}")
print(f"Don't forget to make it executable: chmod +x {args.output}")
except Exception as e:
print(f"Error writing script to file: {e}")
Под оффтопиком в MSI Afterburner делаете понижение напруги, потом запускаете это. Оно вам выдаст скрипт который в онтопике нарисует ту же курву
DevOps # #CI/CD #Docker #вакансия
Название компании: BTS Digital
Формат работы: удаленный
Занятость: полная
Вилка: от 1400$ до 4000$
Контакты: aidana.bissekenova@btsdigital.kz, telegram - @aidana.bisseken Мы большой казахстанский IT startup, наши продукты:
Digital ID (3 млн. юзеров), Aitu Messenger (1млн.) а также платежная система, smartgov, сервис кэшбеков Dosmart и много что еще @ https://btsdigital.kz/. Ищем Middle+ DevOps engineer. Куда стремимся? Казахстан, Центральная Азия, крутые удобные продукты, превращение идей в реальность - это все про нас.
Чтобы достичь этой цели быстрее, мы приглашаем к себе лучших профессионалов.
Стремимся, чтобы через 2 года с помощью наших цифровых решений хотя бы 750 000 казахстанцев (определенный % от малообеспеченных слоев населения) начали зарабатывать по 10$ в день. Через наши платформы, или с помощью наших платформ. Нас 250 со всего СНГ.
У нас нет долгих совещаний, важных начальников и «закрытых кабинетов». Полностью удаленная работа. Мед.страховка, обучение, доплата за интернет и т.д. Let's go к нам диджитализировать Казахстан и нести хорошую миссию людям? Используемый стек технологий: ● Опыт работы с виртуализацией на базе гипервизора KVM;
● Глубокие навыки и опыт администрирования ОС ● Опыт автоматизации процессов в ОС
● Знание ландшафта его компонентов, а так же сильных/слабых сторон каждого продукта;
● Опыт автоматизации при помощи shell, python скриптов;
● Опыт работы с СУБД PostgreSQL, и т.д;
● Понимание взаимодействия между HW, операционной системой и приложениями в ● Опыт выявления и устранения неисправностей;
● Опыт развёртывания и интеграции SDN;
● Умение самостоятельно контролировать ход выполнения своих задач, инициативность;
● Опыт работы со средствами автоматизации развертывания ( ).
● Опыт работы с CI/CD Опыт работы (не менее 3 лет)
● Создания необходимых условий в инфраструктуре для нормального функционирования ПО;
● Объединение всех процессов из разработки в поставку;
● Организация общей среды для произведения изменений;
● Мониторинг серверов и сервисов
● Обеспечение стабильности работы
● Автоматизирование всех процессов.
Сабж
Хочу изучить тему как хобби, чтобы мочь рисовать разное самостоятельно, без магии игрового движка.
Уровень нужен «для идиотов», для школьного уровня подготовки. Возможно, в учебниках для вузов такое есть? Тут кто-нибудь учится в вузе, или это уже не модно?
С меня как всегда ничего. Заранее спасибо)
Как отправить сообщение из python или терминала?
Пробовал
xmpppy - перекати поле. Толи с новым Python разломан, пишет про непонятную ошибку сплитинга строк или типа того
slixmpp - тяжело ставится с кучей зависимостей. До документации руки не доходят явно. Всё обмазано как попало асинхронными вызовами. В итоге вся эта ерунда виснет даже на тестовых примерах (наверно какая-то гонка ресурсов).
sendxmpp - Jabber - sendxmpp не отправляются сообщения
Короче третий день уже ковыряюсь, чтобы такую элементарную задачу сделать… И зачем я с уютненьких Telegram ботов вылез в эти технологии для старых пердунов…
Как?
UPDATE: Короче использовал aioxmpp. При завершении выбивает исключения OpenSSL, ну и ладно - работает.
Играл в игру в steam через протон. Скорей всего упал nvidia-driver, который ребутнул систему. Но надо точно это промониторить
в syslog
Dec 5 20:23:14 debian-home dhclient[2607]: send_packet: Operation not permitted
Dec 5 20:23:14 debian-home dhclient[2607]: dhclient.c:2755: Failed to send 300 byte long packet over fallback interface.
^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@
^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@
^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@
^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@
^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@
^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@Dec 5 20:24:59 debian-home systemd[1]: Mounted RPC Pipe File System.
Dec 5 20:24:59 debian-home kernel: [ 0.000000] microcode: microcode updated early to revision 0x28, date = 2019-11-12
Dec 5 20:24:59 debian-home kernel: [ 0.000000] Linux version 4.19.0-12-amd64 (debian-kernel@lists.debian.org) (gcc version 8.3.0 (Debian 8.3.0-6)) #1 SMP Debian 4.19.152-1 (2020-10-18)
Dec 5 20:24:59 debian-home kernel: [ 0.000000] Command line: BOOT_IMAGE=/boot/vmlinuz-4.19.0-12-amd64 root=UUID=cb141726-00ba-4b79-833c-526f8dfe2494 ro quiet
Dec 5 20:24:59 debian-home kernel: [ 0.000000] x86/fpu: Supporting XSAVE feature 0x001: 'x87 floating point registers'
Dec 5 20:24:59 debian-home kernel: [ 0.000000] x86/fpu: Supporting XSAVE feature 0x002: 'SSE registers'
Dec 5 20:24:59 debian-home systemd[1]: Starting Flush Journal to Persistent Storage...
Dec 5 20:24:59 debian-home kernel: [ 0.000000] x86/fpu: Supporting XSAVE feature 0x004: 'AVX registers'
Dec 5 20:24:59 debian-home kernel: [ 0.000000] x86/fpu: xstate_offset[2]: 576, xstate_sizes[2]: 256
Dec 5 20:24:59 debian-home systemd-modules-load[295]: Inserted module 'lp'
Dec 5 20:24:59 debian-home kernel: [ 0.000000] x86/fpu: Enabled xstate features 0x7, context size is 832 bytes, using 'standard' format.
Dec 5 20:24:59 debian-home kernel: [ 0.000000] BIOS-provided physical RAM map:
Dec 5 20:24:59 debian-home kernel: [ 0.000000] BIOS-e820: [mem 0x0000000000000000-0x000000000009d7ff] usable
Dec 5 20:24:59 debian-home kernel: [ 0.000000] BIOS-e820: [mem 0x000000000009d800-0x000000000009ffff] reserved
Dec 5 20:24:59 debian-home systemd[1]: Started udev Coldplug all Devices.
Dec 5 20:24:59 debian-home kernel: [ 0.000000] BIOS-e820: [mem 0x00000000000e0000-0x00000000000fffff] reserved
Dec 5 20:24:59 debian-home kernel: [ 0.000000] BIOS-e820: [mem 0x0000000000100000-0x00000000c6b41fff] usable
Dec 5 20:24:59 debian-home kernel: [ 0.000000] BIOS-e820: [mem 0x00000000c6b42000-0x00000000c6b48fff] ACPI NVS
Dec 5 20:24:59 debian-home systemd[1]: Starting Helper to synchronize boot up for ifupdown...
где еще можно посмотреть, из-за чего пк перезагрузился? В dmesg лог запуска текущего ядра
Ищу пакет или кусок кода который можно впихнуть в конфиг, который реализует перемещение между окнами расположенными по краям фрейма. Т.е. иметь возможность перейти в крайнее левое\правое\верхнее\нижнее окно.
В данный момент использую:
windmove-left
windmove-down
windmove-up
windmove-right
Но мне нужно нечто на подобие:
evil-window-move-far-left
evil-window-move-far-right
evil-window-move-very-bottom
evil-window-move-very-top
но только не перемещая текущее окно, а всего лишь переместить курсор, т.е. переместиться в окно, не перемещая само окно.
ЗЫ. Гугль поиск ничего не дал( либо руки кривые.
Хочется посмотреть какой-нибудь сериал, чтобы разгрузить мозг. Без какой-нибудь драмы, без какой-нибудь серьезной глубинной идеи, без серьезной психологии. Но не уровня Воронины или какого-то бутора. Какие-нибудь приключения чтоли, чтобы позитивно было. А то все эти полицейские разборки, семейные драмы, моральность аморальность, борьба добра со злом и психоанализ вызывают рвотный рефлекс. Сериалы в топ 100 популярных как раз из этой серии. Все эти карточные домики, острые козырьки, во все тяжкие, черные зеркала, настоящие детективы как раз из этой серии. Хочется просто включить, чтобы посмотреть на мир со светлой стороны
было # hdparm -Tt /dev/sdb
Timing cached reads: 9508 MB in 1.99 seconds = 4767.90 MB/sec
Timing buffered disk reads: 336 MB in 3.01 seconds = 111.75 MB/sec
стало # hdparm -Tt /dev/sdb
Timing cached reads: 9310 MB in 1.99 seconds = 4667.70 MB/sec
Timing buffered disk reads: 206 MB in 3.02 seconds = 68.16 MB/sec
и было даже замечено:
# hdparm -Tt /dev/sdb
Timing cached reads: 9648 MB in 1.99 seconds = 4838.87 MB/sec
Timing buffered disk reads: 2 MB in 6.72 seconds = 304.98 kB/sec
т.е. временами падает скорость без предупреждения. Торренты, облако прочее, да есть, но сейчас когда это писал клиенты не были запущены и показывал Timing buffered disk reads: 40-60 MB/sec
Через Live-CD какой-нибудь без подмонтированных разделов (просто, мало ли) аналогично. Симптомы похожи на эти (unixforum.org) (но там решение конечно: «После перезагрузки восстановилось назад все», увы не помогает). Сейчас перекидываю какие-то данные на внешний в обще показывает:
# hdparm -t /dev/sdb
/dev/sdb:
Timing buffered disk reads: 4 MB in 4.85 seconds = 845.36 kB/sec
# hdparm -t /dev/sdb
/dev/sdb:
Timing buffered disk reads: 2 MB in 3.10 seconds = 660.69 kB/sec
Есть идеи? Или, если нет, то 2.5_HDD от 1Тб какой бы посоветовал и проверенный, долго живучий для хранилища вторым диском в домашний ноут?
Делитесь:)
Добрый день!
При общении по громкой связи в Telegram (с обеих сторон десктопное приложение) - речь участников, воспроизведенная в динамиках удаленной стороны, возвращается через их микрофон.
Добавлением в /etc/pulse/default.pa следующих строк:
load-module module-echo-cancel source_name=noechosource sink_name=noechosink
set-default-source noechosource
…включил встроенный модуль подавления шума и эха PulseAudio.
Но он не справляется. Хотелось бы узнать, кто как решает данные акустические проблемы.
Собственно: https://youtu.be/fPnbnNX9CPE
Система на HDD, Debian 9 Mate, MemTotal=10GB, swap on zram (disksize=14GB). memavaild, prelockd и nohang-desktop работают в фоне и помогают сохранять отзывчивость несмотря ни на что.
https://github.com/hakavlad/nohang
https://github.com/hakavlad/prelockd
https://github.com/hakavlad/memavaild
Кратко: prelockd - новейшее оружие в борьбе за отзывчивость при нехватке памяти.
Спрашивайте ответы.
| следующие → |