Задать вопрос
  • Лучший ssh клиент с подсказкой и сохранением команд?

    @rPman
    в корне неверный подход использования инструментов:
    * чтобы не вводить пароли, нужно настраивать беспарольную аутентификацию по ключу
    * для длинных доменов можно настроить алиасы по их адресу в /etc/hosts либо создать локально скрипты или алиасы bash на всю команду подключения (к примеру если часто нужно еще и нестандартный порт указывать)
    * автодополнение команд выполняется не на твоей машине, а на удаленной, штатным инструментом bash completion, так же можно использовать другие шелы типа zsh, 'все в голос' считают его удобнее, но нужно привыкать и настраивать.

    про автодополнение по истории команд, смотри этот вариант
    Ответ написан
    2 комментария
  • Слетает ли гарантия с ноутбука при переустановке ОС?

    @rPman
    Нет, но на гарантию может повлиять к примеру разгон/изменения вольтажа (процессора или видеокарты) плюс смена прошивки видеокарты (при обновлении прошивки биоса материнки на штатный - нет), на это иногда закрывают глаза но формальный повод у сервиса имеется
    Ответ написан
    Комментировать
  • Какой эмулятор мне подойдёт?

    @rPman
    Правильнее сказать какую хост систему выбирать, в windows выбор только с виртуализацией, но для linux есть паравиртуализация, запуска другого linux без виртуализации, на основе lxc есть успешные попытки anbox.io
    Статья
    Ответ написан
  • Не устанавливается .msi, что делать?

    @rPman
    Читай логи устновщика, запустив его вручную, чтобы лог создавался где тебе надо

    msiexec /i "myapp.msi" /l*v "myapp.log"
    Ответ написан
  • Как преобразовать базовый диск с установленной Windows 10 в динамический?

    @rPman
    Если я верно понимаю, windows ограничивает использование динамический дисков на removable drive, именно поэтому вылетает такая ошибка, но даже если нет и тебе удастся сделать диск динамическим (вручную с помощью штатной консольной утилиты diskpart, там нет кучи ограничений ее графического аналога, может и тут прокатит), то есть другое ограничение:
    https://ru.wikipedia.org/wiki/Динамический_диск
    Windows не может быть установлена на Dynamic Disk, что имеет неприятное следствие — из всех RAID-конфигураций Dynamic Disk загрузочным томом Windows может являться только «зеркало» (установка производится на обычный диск, потом он конвертируется в Dynamic, потом создаётся «зеркало» добавлением второй половины, с другими RAID-конфигурациями это невозможно).


    В теории наверное можно будет попытаться поставить windows на второй диск с помощью виртуальной машины, и отключив secure boot и uefi (в биосе это может наызваться legacy boot) загружаться с помощью, к примеру, grub, установленного на первый системный диск, но сам процесс установки может оказаться не простым.

    p.s. если же необходимость расширения системного диска, то можно воспользоваться символическими ссылками, перемещая каталоги, в т.ч. Program files, ProgramData, MSOCache,.. и возможно некоторые из windows (с осторожностью) на другой диск и оставляя на первом только ссылки на него. Еще я помню создавал символические ссылки на каталоги, в которые система складывает крупные обновления ($WINDOWS.~BT кажется) но делать это придется каждый раз как прилетает это обновление, в общем мониторить использование системного диска (я пытался поддерживать работу windows на старенькой машине со встроенным 32гб диском, перенося часть файлов на карту памяти, это реально но муторно).

    обязательно поковыряй профиль пользователя, очень много приложений сохраняют там гигабайты информации, включая само приложение, все прекрасно разруливается символическими ссылками - AppData\Local\переносить_этот_каталог , AppData\Local\Roaming\или_этот

    С каталогом windows есть сложность, его размер порядка 24гб (20гб сжатие ntfs) и переместить что либо от туда сложно. Дело в том что removable диски доступны в системе не сразу и если переместить критичные системные файлы на такой диск, система не сможет быть загружена. Еще проблема - сам процесс копирования, внутри очень активно используются символические ссылки ntfs, права доступа и если я верно понимаю - даже ntfs file stream, но тут я не проверял, и не всякий инструмент копирования способен правильно сдублировать структуру данных, с учетом ссылок, особенно это сложно, так как подобную операцию придется делать из другой ОС (загрузившись с флешки например). В общем я помню ломал установку, делая копирование в Far Commander (т.е. все работало но системный диск тогда стал занимать в итоге сильно больше места).

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

    @rPman
    а соответствующий голос в синтезаторе на машине есть?
    window.speechSynthesis.getVoices()

    на хроме работает
    var u = new SpeechSynthesisUtterance('Ich bin nicht sicher, dass er ein gutes Beispiel wäre.');
    u.voice=speechSynthesis.getVoices()[2]; // SpeechSynthesisVoice {voiceURI: 'Google Deutsch', name: 'Google Deutsch', lang: 'de-DE', localService: false...
    speechSynthesis.speak(u)

    upd. очень странно инициализируется в первый раз в браузере язык, самый первый раз выбирая язык может остаться язык по умолчанию, но повторная попытка через некоторое время срабатывает, полагаю браузер подгружает поддержку локально (она несколько мегабайт вестит)
    Ответ написан
  • Как разбить диск 6tb на разделы по 1tb и зазеркалить каждый либо создать Raid-1 массив?

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

    Советую только софтварный рейд.
    p.s. Об аппаратных думать надо когда контроллеры будут стоимостью с полноценный комп и то я бы дважды подумал и посчитал бы деньги

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

    Про разделы, не создавай себе проблем, не дели разделы по задачам, если это не разные операционные системы (т.е. к примеру установить две разные системы на один диск), так как место оно не резиновое, и выискивать когда оно закончится по остаткам на кучи разделов будет неудобно.
    Ответ написан
  • Как производить переиндексацию в таблице SQLite?

    @rPman
    В ответах все правильно сказали, но не дали собственно решения, вот оно:
    заведи поле num, в котором будет размещаться порядковый номер записи, при запросе записей делай group by num

    при каких то модификациях порядка (удаление или например вставка в середину порядка записи) делай номер с половинкой (например вставить запись между 3 и 4, то num пусть будет 3.5) и обновляй порядок
    update table set
    num = ROW_NUMBER () OVER ( ORDER BY num ) RowNum
    ...


    кстати вместо половинчатых номеров можно сначала сдвинуть все номера больше нужного (например вставить 3-им, добавляешь условие where num>3 а потом вставлять.
    Ответ написан
    Комментировать
  • Как в массив вставить цикл foreach?

    @rPman
    можно использовать array_map, на вход подаешь $_GET[CART] и функцию, обрабатывающую каждый элемент (то что у тебя внутри foreach)

    'items' => array_map(function($v){...},$_GET[CART])
    Ответ написан
    Комментировать
  • Как сделать многостраничный сайт без PHP/python/React?

    @rPman
    Начинать изучение веб технологий нужно было с этого, а не с фреймворков.

    Кстати многостраничным сайт может быть и с одной физической страницей, когда содержимое меняется с помощью javascript. Никаких фреймворков для этого не надо, максимум упростить себе жизнь, используя готовый шаблонизатор (можно найти минимальный в виде простенькой функции из десятков строк, а сами шаблоны хранить тут же в документе внутри <script type='text/html'>).

    Пример, рисуешь в пределах одного документа сразу несколько страниц, буквально разместив каждый в своем контейнере (div), указав им каждому стиль display:none, затем навигацию между страницами реализуешь с помощью anchor # (адрес страницы размещается в ссылке после #, такие ссылки не перегружают страницу с сервера но ловить изменения можно либо на onclick значимых ссылок либо по таймеру), поочередно меняя нужным частям документа на display:block и обратно.

    Если на странице есть информация 'о документе по ссылке', то заполняешь ее тем же скриптом, простейший пример document.getElementbyId('идентификатор').innerText или value позволит поменять значение на нужное.

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

    p.s. 99% бонусов, получаемых от фреймоврков - это решение проблем с кроссплатформенностью и кроссбраузерностью. Мое мнение, все остальное - это проблемы, стоимость решения которых зачастую выше тех профитов, которые получаешь от фреймворка.

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

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

    А вот реализация правильной синхронизации клиент сервера действительно очень сложная задача.

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

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

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

    Еще недостатком является высокая нагрузка на сервер (а она по любому такова должна быть, для борьбы с читами сервер обязан обслуживать все объекты централизовано), высокая нагрузка на сеть сервера (сервер постоянно рассылает информацию всем своим клиентам, а это квадрат от количества игроков).

    Хорошим способом борьбы с нагрузкой на сервер может являться p2p, когда данные об изменения, паралеллельно с сервером обрабатываемые клиентами, рассылаются не через сервер, а напрямую клиентам, а сервер рассылает только хеши результата. Это сильно усложнит код (я не слышал чтобы крупные проекты так делали) но позволит решить кучу проблем как с лагами так и с высокой стоимостью сервера.
    Ответ написан
    Комментировать
  • Можно ли хранить в графовых базах данных JSON?

    @rPman
    Все зависит от двух вещей - какой объем данных (количество объектов со значимыми полями) и какого рода анализ необходимо делать на основе данных. Так же вопрос, как много потребителей этих данных? Возможен ли конкурентный доступ на чтение и запись (так как когда вступает в дело параллелизм и одновременный доступ, все становится сложнее на порядки)

    Второе определит, хватит ли тебе sql баз данных (они лучше подходят для фильтраций и анализа чем документоориентированные) либо придется искать узкоспециализированные решения, в т.ч. графовые бд.

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

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

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

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

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

    Если требования высокие и нужно гигабайты туда сюда и желательно за секунды, то придется раскошеливаться на 10-гигабитную машину (это не так дорого, старые серверные материнки, не шибко старые процессоры intel и цена порядка от 40т.р.).

    Если требования низкие, то в принципе любая офисная машина подойдет (помним про оперативную память без ECC и мизерный шанс порчи данных на такой), только диск ssd даже не обсуждается, в частых случаях можно совместить медленные hdd и кеш на ssd (bcache). Софтварный raid на основе mdadm и/или bcache/zfs желательны.

    Про 1с пока помолчу, нагрузки там тоже бывают не типичные. Но настоятельно рекомендую не смешивать функционал сервера приложений и сервера хранилища, хотя конечно при слабых нагрузках можно и совмещать. Очень хорошей практикой с самого начала размещать задачи на виртуалках (с паравиртуализацией, lxc, оно бесплатно по ресурсам) чтобы было проще потом раскидывать по железо при увеличении нагрузки... да и вообще, очень приятно, когда есть возможность на ходу добавить (хоть временную) машину в кластер виртуальных машин, и с помощью live migration (кстати это хардкор) перекинуть работающий софт на нее, вплоть до возможности выключения основной машины, и пользователи даже не заметят. но для этого NAS сервер-хранилище должен быть отдельной машиной

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

    @rPman
    попробуйте подключить через dvi порты.

    Владислав, там dvi-d, он чисто цифровой, т.е. читай он тот же hdmi, поэтому бери пассивный переходник dvi-hdmi (папа-мама) и уже в него вставляй hdmi-vga

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

    @rPman
    20т записей это маленький файл, большой это миллиарды

    русские номера это начинающиеся на +7 или 8
    еще есть местные городские номера, без кода города, вот что это за номер 58510350

    ты ж программист (судя по вопросам), берешь свой любимый javascript, берешь nodejs и пишешь в 4 строчки фильтр
    Ответ написан
    Комментировать
  • Как поместить содержимое файла в байтовый массив на этапе компиляции?

    @rPman
    файл можно превратить в строку с помощью утилиты xxd -i binary, а ее вывод подключить include добавив в начало что то типа
    unsigned char data[]=
    #include "xxd_result.h"
    };

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

    p.s. gcc линкер может оформлять любые бинарные файлы в объектные (чтобы их можно было подключать во время линковки, а в коде доступ как extern массив байт)
    https://stackoverflow.com/questions/2627004/embedd...
    Ответ написан
    Комментировать
  • Как из файла html вытащить нужные данные?

    @rPman
    Для не программиста в данном случае можно воспользоваться excel

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

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

    @rPman
    ...бездумно не запускать всякие отключаторы и оптимизаторы, блокирующие в hosts домены майкрософт (например так некоторые отключают телеметрию, закидывая в этот список в т.ч. домены скайп, onedrive и т.п.)

    c:\windows\system32\drivers\etc\hosts
    Ответ написан
    2 комментария
  • Безопасно ли пользоваться приложением Binance на андроид через VPN Proton в запрещённой юрисдикции?

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

    Лучше использовать прокси (проще socks), правда не любой браузер на смартфоне умеет работать через него (используй firefox) так как при проблемах на vps браузер просто перестанет подключаться.
    Ответ написан
  • Как распознать в почте/ньюсах где приветствие, подпись, а где важный смысл сообщения?

    @rPman
    99% технического мусора отсеивается:
    * типичные шаблонные сообщения в начале и в конце письма (приветствую, вы писали дата и т.п.) фильтрацию этого нужно кодировать вручную, задав фильтры по словам (и положению в документе), сложнее тем что в конце письма вставляют, чтобы такие выявлять, нужно привязывать эти сообщения к конкретному пользователю, т.е. все что повторяется в большинстве сообщениях пользователя и есть мусор. Так же не пытаться искать этот мусор в середине - он либо в начале письма либо в конце
    * искать цитаты и копии сообщений в письмах-ответах сравнивая по содержанию (только сравнивай не посимвольно а собрав в строчки, выкинув лишние пробелы и символы цитирования и может быть знаки препинания), само собой удалять нужно только полное цитирование сообщения а не частичное, и только если это окончание/начало письма (после удаления шаблонных приветствий), кстати вместо удаления можно оставлять в итоговом интерфейсе гиперссылку

    нормальные почтовые приложения просто сворачивают такие цитаты (если цитата короткая обрамлена текстом - ее не сворачивать)
    Ответ написан
    Комментировать