Задать вопрос
  • Нужен совет опытных WEB разработчиков?

    @rPman
    Самый неправильный способ обучения - с конца. Это очень неэффективно если не бессмысленно, изучать программирование непоследовательно.

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

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

    Советую изучать с низов, самостоятельно, чтобы было понимание каждого шага, всего что происходит.
    * операционные системы, процессор и многопоточность, сети,...
    глубоко изучать это не требуется но базовые понимания нужны чтобы не получать медленное приложение только потому что не знал что каждый твой запрос в tcp это 'туда-сюда', и это медленно (десятки миллисекунд), что одновременно два человека пытающиеся что то изменить на сайте нужно разруливать чтобы не было конфликтов и т.п.
    * бакэнд и фронтэнд
    буквально что значит запрос и генерация ответа, какие бывают способы организации этого бакэнда (http rest и к примеру websocket), не понимание разницы между бакэндом и фронтэндом у новичков рождает абсурдные вопросы как из javascript изменить переменную php (и наоборот)... в чем разница между генерацией страницы на сервере и в браузере.
    * html, css,..
    верстка и дизайн, отдельный мир браузерных стандартов, исторических наслоений,. когда стоит применять фреймы, почему шрифты по разному выглядят, разные устройства и размеры экранов, разные способы взаимодействия (сенсорный экран, мышь, клавиатура)...
    * базы данных
    еще более огромный мир атомарных транзакций, индексов, нормальных форм и прочего
    * девопс
    без умения выбрать инструмент, настроить тулчейны, среду разработки, среду исполнения (веб сервер), настроить бакапы и прочее пытаться что то разрабатывать это как в слепую гулять по лесу, будешь постоянно на ветки натыкаться
    ...
    это я еще про системную аналитику не сказал, обычно прежде чем что то создавать, нужно продумать как это все делать, что такое технический долг и т.п., а еще есть тестирование, обслуживание, работа с отказами (сервер сдох, база упала, как все восстановить), обновление на живую и прочие веселья

    без понимания всего этого, даже поверхностного, будешь натыкаться на огромные дыры в разработке.
    Ответ написан
    7 комментариев
  • Как поднять интерфейс в linux чтобы он был SOCKS5 proxy?

    @rPman
    curl -x socks5://socks_ip:socks_port http://your_server_address/your_big_file -o /dev/null

    выведет на экран (можнов файл ключ -O ) подробно информацию о размере скорости и т.п.

    your_server_address/your_big_file - ссылка на файл на веб сервере, до которого меряешь скорость
    Ответ написан
    2 комментария
  • Как написать SELECT запрос c добавлением столбца?

    @rPman
    читать про left join
    условие на null - поле is null это для фильтрации или использовании в case ... then ..., еще есть функция nullif

    либо в программе ноль проверяй средствами бакэнда или фронтэнда, это зависит от используемых языков ли фреймворков
    Ответ написан
  • Как работает VPS?

    @rPman
    Допустим нужно дать российским пользователям регистрироваться в зарубежном сервисе.
    только проксирование запросов (в упрощенном виде всех), когда создается сайт, который все (или часть) запросы тупо перенаправляет на целевой, и возвращает результат как есть (бывает с подменой). Простое проксирование запросов поддерживается всеми веб серверами.

    Намекну, что в этой схеме логины и пароли пользователей станут доступны этому прокси-сервису
    Например так работают мошеннические сайты использующие атаку фишинг
    Ответ написан
  • Как настроить скрипт для rsync?

    @rPman
    Не уверен по причинам проблем у тебя, скорее всего либо с правами доступа проблемы либо с настройками сети.

    Добавь сохранение логов ( 2>>errors.log >>info.log ) к вызовам tar и rsync

    Но есть совет!
    Так как ты передаешь один единственный файл - .tar архив, нет смысла использовать rsync, достаточно scp, мало того, нет смысла даже сохранять промежуточно архив у себя. Достаточно передавать архив по ssh сразу в момент его создания, а успешность доставки проверять по коду ошибки, примерно так
    tar -cvf - $BACKUPDIR |  ssh -p 55422 -i /home/pisarev/.ssh/id_rsa rsync@192.168.1.1 "cat /dev/stdin > /volume1/NetBackup/site/backup_$date.tar"
    Ответ написан
    Комментировать
  • Как хранить большие видео на сервере?

    @rPman
    Файлы! С доступом как статика на веб сервере, при необходимости права разруливать через basic auth (само собой https обязателен), добавляя пароли в url. При БОЛЬШОМ количестве файлов и сложной структуры по их управлению, заводи в базе данных прослойку а имена файлов пусть будут завязаны на идентификаторы из этой базы (или как некоторые делают - хеши от содержимого, как бонус дубликаты отлавливать)

    Этот подход самый простой для реализации и самый эффективный по затратам ресурсов сервера. Все остальные будут либо требовать больше процессора и больше времен на кодинг
    Ответ написан
    Комментировать
  • Какую выбрать плату управления шаговыми двигателями, для управления с компьютера?

    @rPman
    Именно так, всей начинки 3d принтера тебе хватит для описываемой задачи (исключение - вес того что ты будешь перемещать, драйвера на таких платах очень слабые)

    Для того чтобы тягать что то по тежелее, механику и платы нужно брать как для станков чпу
    Кстати самые первые 3d принтеры рулили через lpt порт компьютера, можно даже софт для этого найти - LinuxCNC.

    Управление с компьютера по usb (штатно поддерживают почти все опенсорс платы принтеров) с помощью gcode - промышленный стандарт управления
    Ответ написан
    2 комментария
  • Какая нужна модель для описания каждой конкретной монеты на счету?

    @rPman
    У криптовалют типа bitcoin (не etherum) именно так и реализовано - баланс на аккаунте пользователя это сумма не потраченных выходов, т.е. буквально каждый входящий перевод (сдачи от исходящих)

    Для реализации у тебя должен быть лог всех переводов монет (от кого к кому), причем каждая транзакция это ссылка на предыдущие переводы и список адресов источников с указанием количества по каждому, а чтобы каждый раз не считать сумму - вычислять ее триггером на добавление новой транзакции. Само собой при каждой транзакции нужно проверять что сумма указанных входов равнялась (или была не меньше) суммы исходящих.

    Кстати, в этой модели способов сформировать один и тот же по сумме перевод может быть несколько (можно брать разные входящие переводы), и можно (судя по всему твоя задача именно такая?) можно формировать лишние выходы, например по каждому входу от разных пользователей создавать точно такое же количество (или объединять по пользователю) выходов.
    ------------------

    Формально, у тебя матрица, столбцы и колонки - это пользователи, а ячейки - текущий баланс, полученный от соответствующего пользователя. Можешь использовать эту модель, но историю придется так или иначе сохранять, причем в зависимости от целей, ее можно сохранять в каждой ячейке (например чтобы восстанавливать всю матрицу на момент времени в прошлом)
    Ответ написан
  • Что в Windows занимает почти 50 ГБ?

    @rPman
    c:\AMD - содержит временные файлы установщика драйверов (например на видеокарту), можно (нужно) удалить
    c:\$WinREAgent содержит бакап системы перед очередным крупным обновлением, должен удалиться через некоторое время сам, если у тебя все работает - удаляй
    c:\Recovery смело удаляй, содержит бакап с обновления с другой версии (типа win8 -> win10), на сколько я понимаю крупные обновления win10 так же туда попадают
    c:\Users - пользовательские файлы (документы, рабочий стол), временные и часто приложения, для установки которых не требовались права администратора, чистить этот каталог сложно но там легко десяток гигабайт найти
    например %localappdata%\Temp (можно прямо так в проводнике написать) - временный каталог, где скапливается гигабайтами мусор который надо удалять
    hiberfil.sys — размером с ОЗУ. Если оно вам не надо powercfg -h off.
    используется для быстрого включения/выключения машины без закрытия программ (по умолчанию оно используется даже при обычном выключении, пользовательские программы закрываются но службы и др. остаются и делается hibernate (очень удобно на ноутбуках настроить гибернацию при закрытии крышки)
    Отключить это безопасно, но скорость включения компьютера заметно увеличится (не секунды а минуты на слабом железе).
    c:\System Volume Information - системный каталог, содержит файлы точек восстановления, удалять не надо но можно регулировать процент занимаемого места в настройках восстановления

    p.s. запусти штатный cleanmgr (Освобождение места на диске за счет удаления ненужных файлов) в нем кнопку Очистить системные файлы, и внимательно посмотри на чекбоксики, почти всегда достаточно их отметить все, и нажми ОК

    p.p.s. после чистки лишних файлов, можно еще нажать чекбоксик - Сжимать этот диск для экономии места в свойствах диска, это освободит примерно 30% занятого места (будет долго думать, до неск. часов, выдаст несколько раз ошибки, их можно игнорировать), делать это безопасно, в очень редких случаях (медленный процессор + ssd) будет легкое замедление записи, во всех остальных случаях даже ускорится работа с диском
    Ответ написан
    2 комментария
  • Как исправить падение частот процессора при низких температурах (не тротлинг, ноутбук)?

    @rPman
    это нормальное поведение почти любого современного процессора

    подсистема питания (чипа) тупо не справляется и понижает частоту.... тем более у ноутбуков, мобильные процессоры по своей сути спринтеры, их максимум достигается только на коротких дистанциях (секунды) а под непрерывной нагрузкой (а у тебя 3D ускоритель еще загружен) роняет скорость
    Ответ написан
  • Как возвращать систему в эталонное состояние образа Windows?

    @rPman
    Попробуй теневые копии

    в win10 это теперь доступно только из интерфейса (свойства 'мой компьютер' - системная защита - включить, создать тут же кнопка восстановить)

    Инструмент теневых копий работает с любым ntfs диском, но системный диск теперь так просто не восстановишь (он как то хитро выборочно файлы восстанавливает, пытаясь не удалить пользовательские данные), но можно это делать из соседней ОС, там восстановление должно работать как ожидается
    Ответ написан
    2 комментария
  • Как освободить пространство с LVM?

    @rPman
    Настучать бы тем кто дает советы дробить ОДИН диск на разделы и раскидывать файловую систему linux по нему, причем используя lvm который тут ну совсем не нужен.

    Настоятельно рекомендую избавиться от этой формы разбиения диска, сделать резервную копию всего корня / диска (tar, например сделав отдельно для каждого раздела, добавив ключ --one-file-system) и удалить lvm. Абсолютно все фичи, которые дает lvm можно получить с помощью btrfs или zfs, при этом это будет еще и быстрее (снапшоты у этих cow файловых систем бесплатные, а у lvm за 2х понижение записи)

    настоятельно рекомендую следующий конфиг:
    gpt таблица разделов
    * 1Мб biosboot - раздел нужен если используешь legacy mbr в биосе
    * 100Мб EFIboot - раздел нужен если используешь UEFI secure boot в биосе
    * 512Мб ext4 /boot - раздел не обязательный, нужен только если используется нестандартная фйловая система или странные конфиги (типа bcache ssd кеш для hdd), так же он нужен для дисков больше 2Тб
    * сколько надо btrfs / - раздел куда установишь систему
    благодаря btrfs можно точно так же наклепать в нем виртуальных разделов для /var /home /tmp причем можно даже не указывать лимиты (будет использоваться общее место)

    btrfs прекрасно умеет grub и не считается экзотикой (/boot раздел не требуется)

    p.s. кстати, если загрузчик grub можно установить на другой диск (например карта памяти или другой диск), то системный диск nvme даже не придется разбивать на разделы и использовать буквально весь под файловую систему

    p.p.s. btrfs мощная файловая система но настоятельно не рекомендую использовать его raid5, он еще нестабилен, хотя критичных багов, ведущих к потере данных нет, но есть сообщения о потерях свободного места в экзотических ситуациях

    для софтварного рейда лучше пользоваться mdadm
    Ответ написан
    Комментировать
  • Ошибка no bootable device каждый раз?

    @rPman
    попробуй поменять порядок ssd дисков физически переключив провода, так чтобы apaser (ему доверия больше чем нонейму с алиэкспресс) был первым (в первый sata порт!) как минимум это исключит постоянный сброс порядка

    еще момент, попробуй ssd с aliexpress вставить в последний порт sata (если у тебя есть отдельный sata контроллер, то в него)

    если что, корявый контроллер на ssd диске может гадить другим ssd дискам на том же контроллере на материнской плате, и если есть возможность их разнести по дальше, от лучше сделать это.

    p.s. кстати загрузочный раздел и место размещения всей операционной системы могут отличаться, это можно сделать как во время установки так и после переносом файлов (с помощью средства резервного копирования) и настройкой bcedit
    Ответ написан
    1 комментарий
  • Программа видеомонтажа для полуавтоматического создания целой копии видео из двух битых?

    @rPman
    Вижу решение этой задачи скриптами к GIMP или любому другому редактору изображений с фишкой
    мажешь по кадру кисточкой, и там, где помажешь, на первом видео проступают фрагменты из второго.
    на основе слоев.

    с помощью ffmpeg разбиваешь оба видео на изображения покадрово, а скриптом в редакторе загружаешь каждый кадр в два слоя и выбираешь какой оставить (срипт по кнопке сохраняет текущий кадр, увеличивает индекс картинок для обоих видео и загружает их, можно сделать еще кнопки делающие то же самое но один из индексов не меняется или меняется в другую сторону, так можно будет подправить рассинхронизацию кадров)
    Ответ написан
  • UEFI перестал видеть OS. В чём причина? Как исправить?

    @rPman
    после отключения Secure Boot и перехода в режим Legacy
    это буквально отключение поддержки UEFI и перевод системы в режим загрузки с MBR

    Для того чтобы он работал на выбираемом загрузочном диске должен быть установлен загрузчик (например grub), делать это нужно, загрузившись к примеру с флешки/компакт диска livecd версию linux той же архитектуры и битности (и желательно версии) что установлена на машине, в том же режиме (legacy), смонтировать системный диск в какой-нибудь каталог (например /mnt) и выполнить команду:
    sudo grub-install /dev/sda --root-directory=/mnt
    где /dev/sda это тот диск, который должен быть загрузочным (обычно на него и ставят ос хотя с linux это не обязательно)

    Теперь важный момент! если на диске таблица разделов GPT (это нужно для дисков больше 2Тб) то необходимо заранее создать 1Мб раздел biosboot (например в gparted или fdisk или любом другом менеджере дисков, кроме майкрософтовского, он не умеет), для старых (или всех) биос расположение этого раздела должно попадать на первые 2Тб диска (т.е. если его засунуть в конец диска, загрузка может не сработать).

    p.s. кстати, если нужна загрузка в режиме UEFI, то делать нужно то же самое, но livecd должен быть загружен в режиме UEFI, biosboot раздел не требуется но нужен EFI раздел (fat32 ~100Мб) с типом EFI Boot, grub-install его обнаружит и скопирует на него загрузчик и самое главное - пропишет диск в таблицу загрузочных дисков биоса (теперь это обязательное условие, за исключением флешек и других removable дисков), некоторые биосы делают это сами при настройке диска, с которого грузиться.
    Ответ написан
  • Почему Hyper-v не работает?

    @rPman
    погуглил код ошибки для тебя
    кажется это какое то обновление куче народу поломало.

    попробуй включить/выключить удалить/добавить виртуализацию и wsl с последующими перезагрузками машины
    Ответ написан
    1 комментарий
  • Как удалить файл источник после его загрузки?

    @rPman
    rsync --remove-source-files -checksum

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

    на сколько я помню при использовании rsync сервера докачка будет наиболее эффективной по ресурсам
    Ответ написан
    Комментировать
  • Существуют ли реализации Telnet over SSL?

    @rPman
    openssl в качестве reverse proxy - сервера и клиента, т.е. telnet клиента подключается к локальному openssl , который в свою очередь через шифрованное соединение подключается к удаленному серверу openssl а тот в свою очередь к локальному telnet

    в коментах пример с tftp
    Ответ написан
    2 комментария
  • Как так оказалось, что часть Windows 10 не русифицирована?

    @rPman
    у всех так (точнее зависит от драйверов на звуковую карту)

    раньше этой закладки не было, а для расширенных настроек звуковой карты требовалось запускать утилиту от производителя (если помните к примеру релтековская с ужасным скин дизайном), похоже майкрософт занялись стандартизацией этого, но до правильной локлизации руки не дошли
    Ответ написан
  • Могу ли я использовать эти дистрибутивы для повседневной жизни и разработки, и есть ли в них какие либо сборы данных и информации?

    @rPman
    есть ли в них какие либо сборы данных и информации
    да
    телеметрию собирают ВСЕ операционные системы (точнее приложения в них), в подавляющем большинстве случаев при использовании ТОЛЬКО открытого программного обеспечения (это позволят сделать debian и к примеру gentoo, но повторяю, даже эти ос позволяют установить проприетарные приложения) у тебя есть возможность разобраться и настроить эту телеметрию и какой уровень данных будет собираться.

    p.s. настраиваешь логи в фаерволе и наслаждаешься потоком неконтролируемых соединений после запуска того или иного приложения, например firefox при запуске сразу отправляет кучу запросов, включая на incoming.telemetry.mozilla.org, и это настраивается.

    Есть нюанс, разработчики opensource приложений для linux пока еще не сильно наглеют, и стараются не собирать слишком уж критичные данные (это майкрософт в наглую шлет все нажатые клавиши, и на каждое запускаемое приложение тоже отправляет пакет данных, или гугл, может легко по своему желанию сделать снимок на смартфоне и отправить непонятные зашифрованные данные размером в пару сотен килобайт, просто при включении)
    Ответ написан