Задать вопрос
  • Как сменить дистрибутив Linux через SSH без доступа к веб-панели?

    @Drno
    Я такое делал, но с помощью clonezilla и авторазвертывания образа...
    Общий смысл что правился grub. загружал образ clonezilla со скриптами которые монтировали webdav каталог, и потом из него восстанавливали образ на диск...
    но это такое себе. не на 5 минут развлечение. и надо предварительно образ сделать под нужный размер диска и прочее

    Так что для Вас самый просто вариант просто написать в саппорт и попросить переставить систему
    Ответ написан
    Комментировать
  • Как правильно собрать сеть в квартире?

    SignFinder
    @SignFinder
    Wintel\Unix Engineer\DevOps
    Нужен один мощный роутер Keenetic на arm64, можно на даже входе, лучше конечно в комнате в центре квартиры. И от него несколько жгутов витой 6 категории, либо если дешевле, то 5е. Главное, чтобы от роутера была витая пара в другие концы квартиры, чтобы подключить один или два ретранслятора в mesh сеть. Скорее всего они вообще не понадобятся.
    Идея с коммутатором и 3 роутерами выглядит донельзя странной. Либо вы что-то не договорили, либо есть фундаментальное непонимание. Ибо как минимум загадить и так забитые в МКД диапазоны WIFI, особенно 2.4 тремя источниками на разных каналах вместо одного - очень и очень плохая идея.
    Ответ написан
    9 комментариев
  • Как правильно собрать сеть в квартире?

    xez
    @xez
    TL Junior Roo
    Вам нужен один хороший роутер и проложить провода до стационарных потребителей (например до ПК или телевизора).
    На 55квм этого будет достаточно.
    Ответ написан
    13 комментариев
  • Как перенести Пользователя на другой диск?

    @elderl
    перенести пользователя
    С другой учётной записью с правами администратора перенести профиль на другой диск и создать символьную ссылку на первоначальный диск.

    зайти на старого пользователя в новой системе
    Невозможно. SID другой.

    Но есть способ как создать пользователя на основе профиля другого:
    Переименовываете Default в Default.temp
    Нужный профиль в Default
    Создаёте нового пользователя. И входите.
    Из Default создаётся копия с нужным именем.
    Переименовываете Default.temp обратно в Default.
    Ответ написан
    Комментировать
  • Почему скрипт запуска виртуальной машины перестал работать?

    @rPman
    какое красивое садамаза, скрипт запускает сам себя на javascript являясь bat, да еще и внутри powershell, как это читать и отлаживать, известно только его разработчику :)

    И самое главное, вам точно нужно GUI для смены даты? И уж точно для этого не требуется ни powershell ни повышение прав доступа (хотя может у вас там так настроено)

    У virtualbox есть соответствующие команды VBoxManage, которые можно было просто прописать в текстовом файлике, назвать blablabla.bat и запускать
    upd. нужно считать разницу в миллисекундах между текущим временим и целевым, на bat это сложно, поэтому лучше сразу писать на чем то типа javascript, не изобретая паровоза (и от туда же запускать vboxmanage)

    p.s. кайфую с современного ИИ, который это сумел разобрать и по полочкам разложить этот кошмар
    anthropic:claude sonnet 3.5
    ...
    проанализируй этот скрипт для windows, почему тут сместь cmd и javascript, и начни описание, что именно делают первые строчки
    Давайте разберем этот интересный гибридный скрипт:

    Первые строки скрипта представляют собой "полиглот" - код, который может быть интерпретирован несколькими языками программирования:

    ```
    set @x=0; /*
    @echo off
    ver |>NUL find /v "5." && if "%~1"=="" cscript.exe //nologo //e:jscript "%~f0"& exit /b
    ```

    Это хитрая конструкция, которая:
    1. Начинается как cmd-скрипт (`@set @x=0;`)
    2. Открывает многострочный комментарий в JavaScript (`/*`)
    3. Выключает вывод команд в cmd (`@echo off`)
    4. Проверяет версию Windows и если скрипт запущен без параметров, перезапускает сам себя через cscript.exe в режиме JavaScript

    Последняя строка скрипта:
    ```javascript
    */new ActiveXObject('Shell.Application').ShellExecute (WScript.ScriptFullName,'Admin','','runas',1);
    ```
    закрывает JavaScript-комментарий и содержит код для повышения привилегий - перезапуска скрипта с правами администратора.

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

    Основная часть скрипта написана на PowerShell и использует Windows Forms для создания графического интерфейса. Согласно документации [learn.microsoft.com](https://learn.microsoft.com/en-us/dotnet/api/syste...), скрипт создает форму для ввода даты, которая будет использоваться для настройки BIOS времени виртуальной машины VirtualBox.

    Такая сложная структура используется для:
    1. Обеспечения запуска с правами администратора
    2. Совместимости с разными версиями Windows
    3. Комбинирования возможностей разных языков скриптования Windows

    продолжай дальше анализ, почему там еще и powershell?
    PowerShell используется в этом скрипте для основной функциональности, и его часть начинается после строк:

    ```
    ;@echo off
    ;@Findstr -bv ;@ "%~f0" | powershell -noprofile -command - & goto:eof
    ```

    Эта конструкция особенно интересна, потому что:
    1. Использует Findstr для фильтрации содержимого файла, пропуская строки, начинающиеся с `;@`
    2. Передает отфильтрованное содержимое в PowerShell через пайп (`|`)
    3. Запускает PowerShell без профиля (`-noprofile`) для ускорения загрузки

    PowerShell был выбран для основной части скрипта по нескольким причинам:

    1. **Объектная модель**: Как отмечается в [thenewandshiny.com](https://thenewandshiny.com/powershell-everywhere/), PowerShell работает с объектами, а не с текстом, что делает его более надежным для работы с системными компонентами.

    2. **Удобство работы с GUI**: PowerShell позволяет легко создавать Windows Forms для пользовательского интерфейса, что используется в функции `CustomInputBox`

    3. **Управление VirtualBox**: PowerShell предоставляет удобные средства для запуска процессов и управления VirtualBox через `VBoxManage`

    4. **Работа с датами**: PowerShell имеет мощные средства для работы с датами и временем, что критично для этого скрипта

    Важно отметить, что в скрипте используется разделение на Windows PowerShell и PowerShell Core. Как упоминается в [get-powershellblog.blogspot.com](https://get-powershellblog.blogspot.com/2017/10/wh...), это важно учитывать при работе с разными версиями PowerShell.

    Скрипт использует стандартный формат командлетов PowerShell `Verb-Noun`, хотя, как отмечается в [scoop-docs.vercel.app](https://scoop-docs.vercel.app/docs/misc/Why-PowerS...), такой формат может казаться излишне многословным, но он обеспечивает четкую структуру и понятность команд.

    Основная функциональность скрипта:
    1. Создает GUI для ввода даты
    2. Проверяет корректность введенной даты
    3. Настраивает время BIOS для виртуальной машины VirtualBox
    4. Запускает виртуальную машину с модифицированными настройками времени

    какими строчками настраивается время
    В скрипте время настраивается несколькими ключевыми командами:

    1. Сначала отключается синхронизация времени с хостом:
    ```powershell
    start-process $VB_MANAGE 'setextradata', $vmname, 'VBoxInternal/Devices/VMMDev/0/Config/GetHostTimeDisabled 1' -NoNewWindow
    ```

    2. Затем вычисляется смещение времени в миллисекундах:
    ```powershell
    $timeoffset_milliseconds='{0:0}' -f ([datetime]$date - [datetime]::Now).TotalMilliseconds
    ```

    3. И наконец, применяется смещение времени BIOS:
    ```powershell
    start-process $VB_MANAGE 'modifyvm', $vmname, '--biossystemtimeoffset', $timeoffset_milliseconds -NoNewWindow
    ```

    Здесь важно отметить несколько моментов:
    - Используется VBoxManage - утилита командной строки VirtualBox (путь хранится в переменной `$VB_MANAGE`)
    - Смещение вычисляется как разница между желаемым временем (`$date`) и текущим системным временем
    - Параметр `--biossystemtimeoffset` устанавливает смещение времени BIOS в миллисекундах

    После установки времени виртуальная машина запускается командой:
    ```powershell
    start-process $VB_MANAGE startvm, $vmname
    ```

    Похожий подход используется в проекте [github.com/bitbank2/rtc_setter](https://github.com..., где также реализована настройка времени, но для реального RTC (часов реального времени), а не виртуальной машины.

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

    Ответ написан
    5 комментариев
  • Установка windows 10 требует поворачивать разные предметы, куда указывает рука - iso?

    @Drno
    Винду надо ставить без подключения к интернету
    Облачные учетки лучше не использовать, создавать надо обычную локальную
    Ответ написан
    3 комментария
  • Как преднастроить zabbix agent 2 для быстрой установки на множество windows машин без домена?

    radioactivetoy
    @radioactivetoy
    А в чем сложность через терминал со своей конфигурацией?

    Я себе делал следующим образом - папка с файлами zabbix-agent, в файле конфига вписан сервер и основные данные, установочный скрипт на повершеле (прописывает службу, тип запуска и т.п. + файрвол)
    И дальше алгоритм элементарный - копируем файлы на компы, скриптом делаем установку и собстывенно имеем работающие агенты
    На сервер добавлять можно через autodiscovery
    Ответ написан
    Комментировать
  • Может ли выключатель не полностью проводить электрический ток?

    @rPman
    Срочно менять!
    Если искрит и шумит значит есть шанс возгорания.
    Ответ написан
    Комментировать
  • Может ли выключатель не полностью проводить электрический ток?

    VoidVolker
    @VoidVolker
    Dark side eye. А у нас печеньки! А у вас?
    Плохой контакт:
    • Между контактами самого выключателя
    • В колодках, куда подключены провода в выключателе

    В первом варианте - следует заменить выключатель на новый. Во втором - почистить контакты и затянуть. Но лучше заменить полностью. И третий, менее вероятный, но вполне возможный случай: проблемы в самой линии - в этом случае вызывайте электриков из коммунальной службы.
    Ответ написан
    Комментировать
  • Добрый день! Нужен калькулятор для расчёта сервера, где будет Windows Server 2019 или 2022. C AD, DNS и прочим. Где можно скачать?

    hint000
    @hint000
    у админа три руки
    Пока что он будет как Domain Controler, но возможно, потом придётся добавить на него новые роли
    1. Категорически не следует добавлять на AD DC какие-то роли, кроме ролей AD (любых), DNS и DHCP. Прочие роли нужно поднимать на отдельном сервере. Кто игнорирует эту рекомендацию Microsoft, тот "сам себе злобный Буратино". Для тренировки можно, на реальном предприятии нельзя.

    2. Категорически рекомендуется (это тоже официальная рекомендация Microsoft, и не менее важная, чем предыдущая) иметь более одного AD DC в сети. При этом можно разместить разные AD DC в разных зданиях (разных частях города, разных городах), если локальная сеть предприятия распределённая. Может быть достаточно иметь две виртуальных машины, на каждой из которых AD DC. И даже рекомендую именно на виртуальных машинах это и строить - упростит жизнь вам, как системному администратору. Но крутить две таких VM на одном железном сервере - довольно бессмысленно, т.к. если "упал" физический сервер, то оба DC недоступны.

    3.
    рассчитать ёмкость сервера, его процессор и сколько оперативки.
    Давайте так. Я не верю, что у вас на предприятии 1000+ пользователей (иначе уже очень давно был бы AD). Официальныая информация: https://learn.microsoft.com/en-us/windows-server/a...
    CPU 1000 concurrent users for each core
    т.е. до 1000 пользователей AD DC тянет одно ядро. Но лично моя рекомендация: если ресурсы позволяют, лучше выделить виртуальной машине для AD DC всё-таки 2 ядра, даже если пользователей всего 10, просто потому, что для админа интерфейс не комфортный, слишком тупящий на одном ядре, хотя на работе именно DC это не сказывается. Что касается оперативки, я выделяю виртуальной машине для AD DC 2 ГБ памяти, хватает, роли - только AD DC и DNS (всегда поднимаю их вместе). Что касается диска - выделяю 20..25 ГБ такой виртуальной машине, за много лет не потребовалось больше, а если бы и потребовалось, то добавить диска - минутное дело.

    4. Повторюсь насчёт единственного AD DC. Два AD DC, поднятых на любом хламе типа двух Целеронов или Атлонов 10-летней давности - это лучше, чем один AD DC, поднятый на крутейшем новейшем топовом серверном железе за сто тысяч миллионов. Просто потому, что их два против одного, а мощности Целерона или Атлона хватит за глаза (придётся поднимать на голом железе, а не на вирталке, если старое железо не поддерживает виртуализацию).

    5. Ну вы уже поняли, что калькулятор не нужен.
    Ответ написан
    5 комментариев
  • Что выбрать LVM или mdadm для организации дискового пространства на сервере или все же аппаратный?

    begemot_sun
    @begemot_sun
    Программист в душе.
    Аппаратный рейд таит в себе неприятности. Когда рейд-контроллер выходит из строя вы начинаете с большими глазами бегать, чтобы найти такой-же. А вот если у вас софт-рейд, то вы просто поднимаете систему с теми же настройками, втыкаете диски и у вас все работает.
    Ответ написан
    9 комментариев
  • Почему компьютеры перебирают IP адреса?

    @SunTechnik
    Режим зануды:
    1. Нанять амина / стать им.
    2. Научится различать проблемы и не валить все в одну кучу.
    3. Читать документацию по используемым технологиям.

    По сути:
    1. В одном сегменте сети должен быть только один DHCP сервер. В ограниченный случаях допустимо иметь несколько, но тогда они должны иметь непересекающиеся пулы адресов. Выключите все dhcp сервера, которые не планируете использовать.
    Windows показывает какой dhcp сервер выдал ip адрес (ipconfig /all ) . Проверьте, совпадает ли это с вашими планами.

    2. Пул адресов должен быть больше, чем число компьютеров, которые получают адрес по dhcp.
    3. Если используются статические адреса, они не должны включаться в dhcp pool.

    Проблема петель решается аудитом сети.
    t1600-28ts это коммутатор, а не маршрутизатор.
    Dlink 1016 —это неуправляемый коммутатор, а не hub.

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

    Adamos
    @Adamos
    Асер - не только дерьмовый производитель, но и сволочь, залочившая свои ноуты так, чтобы юзеры на них не могли поставить ничего, кроме Окошек. Банальный картельный сговор.
    Фишка в том, что этот SSD подключен как настолько кривой RAID, что его только предварительно предупрежденная винда и понимает.
    Нужно сменить настройку - изменить SATA mode в BIOS.
    Но уроды из Асера подгадили и здесь: эта опция по умолчанию в BIOS не отображается вовсе.
    Нужно зайти в BIOS и в закладке Main нажать Ctrl-S. Только тогда появится возможность открыть этот капкан - и после этого можете ставить на него, что угодно, системы диск увидят.
    Ответ написан
    9 комментариев
  • Как в bash содержимое файла передать как аргумент другой команде, сохранив переносы строк?

    Driver86
    @Driver86 Автор вопроса
    Немодератор toster.ru
    Оказывается, переменную при передаче надо взять в кавычки.
    Ответ на вопрос, зачем это надо, вот: https://www.altlinux.org/SMART-%D0%BE%D0%BF%D0%BE%...
    Там переменная в кавычках передаётся (text="$MSG"). Если бы я внимательнее смотрел, то и вопроса бы не возникло изначально
    Ответ написан
    7 комментариев
  • Как и от каких атак защитить свой сервер, находящийся на чужом гипервизоре?

    MvcBox
    @MvcBox
    Software Engineer [C/C++/JS(for Node.js)/etc]
    Не рассматривали вариант с добавлением системы лицензирования в софт как дополнительной меры?
    Чтобы, к примеру, при запуске софт ходил на Ваш сервер лицензий.
    Ответ написан
    3 комментария
  • Как и от каких атак защитить свой сервер, находящийся на чужом гипервизоре?

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

    Все же дешевле будет приобрести отдельный компьютер, разместить его в сейфе с пломбами и добавить контроль за целостностью корпуса - при вскрытии выключать компьютер... и да, оперативную памяти перед выключением нужно очищать, в linux вроде помню можно было даже при панике это сделать, а в windows хз (потому что содержимое ram можно восстановить если заморозить его и оперативно извлечь из компьютера). Кстати про оперативную память, если запустить свой гипервизор, в котором есть поддержка шифрования памяти (в современные процессоры эту фичу уже встроили AMD SME/SEV, Intel TME/MKTME) то это защитит от атаки извечения памяти.

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

    upd. компьютеры с поддержкой TPM 2.0 поддерживают шифрование на уровне биос, т.е. загрузчик можно зашифровать, ключи залить в биос, и никто даже реверсить не сможет. Пример как это с дебианом сделали
    Ответ написан
    Комментировать
  • AHCI VS RAID на уровне команд?

    @rPman
    scsi, ide и ahci это способы, которыми операционная система общаеися с дисковыми устройствами (кстати не обязательно диски, но на практике ничего кроме cd/dvd экзотического не подключить, помню для scsi были сканеры)

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

    ahci - современный полнофункциональный интерфейс, например trim для ssd послать не получится через ide.

    raid это не интерфейс, это функционал контроллера, который создаёт виртуальный диск на основе нескольких, доступ к нему будет скорее всего по ahci (по уму не должно было бы ограничений, но в bios все поголовно совместили эту опцию в одну)

    P.s. существуют контроллеры, обычно это дешевле sata-usb которые умудряются так плохо транслировать команда, что не только trim не доходит, но даже smart становится не доступен (который и по ide доступен)
    Ответ написан
  • Как ограничить доступ к папке Samba по ip?

    @Measurer01
    Сделать файл smb.conf.192.168.1.166

    В основном конфиге прописать:
    include = /etc/samba/smb.conf.%I

    Содержимое файла:
    [MyData]
    path = /media/MyData
    browseable = Yes


    Все, кто зайдёт с IP 192.168.1.166 будут видеть шару.
    Ответ написан
    8 комментариев