Ответы пользователя по тегу Linux
  • Как восстановить данные с флешки после обновления ядра Linux?

    @rPman
    Немедленно прекратить что либо делать с флешкой, так как любые глупые действия кратно уменьшают вероятность восстановления.
    /dev/sdb1 лежит папка lost+found
    значит файловую систему отформатировали, это значит удалена информация о файловой системе и начальном каталоге.

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

    Что нужно сделать, чтобы восстановить данные самому:
    Первое, снять посекторную копию с диска, причем не раздела а всего диска.. Делать это можно с помощью утилиты dd, внимательно смотреть на сообщения и понимать что они говорят.

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

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

    P.s. весь интернет завален напоминаниями делать бакапы. Помните того парня, что год копался на помойке, а поисках диска от ноутбука? Но нет, люди продолжают хранить важные данные в одной копии на флешке! Которая умирает просто от лежания в ящике просто потому что технология такая
    Ответ написан
    1 комментарий
  • Почему виртуальная машина не получает ип хоста?

    @rPman
    В настройках сетевого устройства VirtualBox выбери тип сети - сетевой мост (bridge) и выбери сетевое устройство хоста, которое подключено к провайдеру (там где стоит dhcp сервер, раздающий нужный тебе ip)

    там же настраивается mac адрес, так как провайдер выдает ip адреса соответственно этому mac.
    Ответ написан
    2 комментария
  • Как пропустить трафик Wireguard через socks5?

    @rPman
    wireguard на халяву не загнать в tcp, так как он udp, поэтому потребуется посредник, типа udptunel

    Вот пример настройки через udp2raw (он еще и этот трафик 'спрячет' за пингами к примеру, само собой это фигня, нормальный dpi это обнаружит)
    Ответ написан
    Комментировать
  • Программный Raid 5 + nwme cache?

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

    у меня так на очень дешевых комплектующих работала следующая схема linux сервер, специально выделенные медленный hdd + 250гб ssd диск в качестве кеша, полученный ускоренный раздел публикуется с помощью iscsi по гигабитной сети, его монтирует windows машина и на этом диске размещены игрушки (ark будь он неладен 400гб с еженедельными обновлениями по 50-100гб), чуть больше чем за год сожрал 250тб ресурса. Итоговая скорость запуска была примерно в 3 раза быстрее чем если hdd подключить напрямую к windows машине.
    Ответ написан
    2 комментария
  • Файл подкачки на другом диске?

    @rPman
    своп настриивается как точка монтирования в /etc/fstab, если тебе автоматически после перезагрузки
    UUID=xxx-xxx-xx-xxx none swap sw 0 0
    UUID=xxx тут способ указания раздела (или всего диска) для свопа, можно указать устройство /dev/sdXY или сразу файл (автоматически подключит loop девайс и будет туда свопаться)

    если тебе однократно, то подключать командой
    swapon устройство

    Однократно своп нужно проинициализировать командой
    mkswap устройство

    p.s. на сколько я знаю, уже давно, своп может размещаться в т.ч. по сети (nfs например или nbd), точно помню был пример размещения свопа в vram gpu, есть где то поддержка сжатия данных на лету и тьма чего то еще
    Ответ написан
    1 комментарий
  • Установка программы через wine?

    @rPman
    wine в каких то случаях пытается перенести ярлыки приложений windows -> linux но возможно это работает в каких то неизвестных мне комбинациях DE и версий wine.

    у wine есть понятие WINE_PREFIX, это каталог (по умолчанию ~/.wine/ ) где в каталоге ~/.wine/drive_c лежат файлы windows (там еще есть симлинки на диски, например dosdevices/z: это ссылка на домашний каталог пользователя, можно оставлять свои).

    чтобы запустить приложение, нужно написать wine полный_или_относительный_путь_до_приложения т.е. к примеру
    wine ~/.wine/drive_c/Program\ Files\ \(x86\)/WinRAR/WinRAR.exe

    можно кстати написать
    wine "c:\Program Files (x86)\WinRAR\WinRAR.exe"
    Ответ написан
    Комментировать
  • Использование Linux?

    @rPman
    Первая проблема любого linux - это драйвера, пока производители не пошевелятся, доля этой ос будет не выше 3-5% а пользователи будет играть в рулетку - заведется/не заведется.

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

    Ну и по поводу запуска приложений, библиотеки устанавливать надо и на windows. Если разработчик не позаботился чтобы отметить нужные в зависимостях, ставить из вручную. Те что идут в репозитории обычно корректно настроены.
    Ответ написан
    1 комментарий
  • Почему после компиляции своего ядра linux его размер в разы больше?

    @rPman
    Если я верно помню, oldconfig берет конфигурацию из предыдущей сборки (а что там будет по умолчанию не совпадает с тем что выбрал мейнтейнер), т.е. из каталога с исходниками, а тебе, если ты хочешь подправить те что уже в дистрибутиве идут, то бери из /boot/config... (кстати помню для gentoo брал и копировал конфиг у ubuntu, решая таким образом проблемы с видео).

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

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

    p.s. ложка дегтя, за обновлениями придется следить самостоятельно, никакого функционала обычно в ОС для этого не встраивают
    Помню в gentoo для этого была утилита genkernel но ее все равно запускать вручную
    Ответ написан
  • Есть ли какая то программа для визуальной работы с html?

    @rPman
    Eclipse Web Developer Tools, установка прямо из eclipse - help - eclipse marketplace, в настройках General - WebBrowser включаешь Use Internal Web Browser. Чтобы его открыть, жмешь правую кнопку на .html файле в Project Explorer и выбираешь Open With - Web Browser, и при желании включаешь autorefresh в нем (слева от адресной строки рядом с кнопкой refresh меню, с галочкой autorefresh), будет обновлять браузер при сохранении файлов (проверь, корректно ли он считывает разные зависимости)

    Не уверен, на сколько хорошо это работает с отладкой nodejs/php по уму должно, но как я понимаю тебе статику нужно редактировать, тут все работает как надо.

    p.s. так красиво, как было реализовано в dreamviewer не будет

    p.p.s. Microsoft Visual Studio точно таскало с собой редактор html с браузером и кажется быстрым переходом по клику в браузере в редактор, собственно больше я такого нигде кроме dreamvewer этого не видел.
    Ответ написан
    Комментировать
  • Запуск приложений с другой OC на диске?

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

    Штатно с linux идут два независимых проекта виртуализации x86 машины - qemu (с расширением kvm, это полнофункциональный вариант, включающих инструменты проброса оборудования внутрь виртуалки) и virtualbox (в поставке идет community версия, без поддержки проброса usb портов, иначе топать vitualbox.org)

    gui для qemu - virt-manager (libvirt)
    virtualbox идет со своим gui

    Недостатки, начиная с windows 10 поддержки даже ограниченного 3d ускорителя в windows guest больше нет (раньше с virtualbox шли драйвера и даже работало, на win7, с оговорками но cad приложения использовались). С kvm можно попытаться пробросить второй видеоускоритель внутрь виртуалки, с большими шансами это работает но потребуются танцы с бубном

    Есть лайфхак, не устанавливаешь в virtualbox поддержку 3d ускорителя (при установке дополнений отключаешь чекбоксик), но работаешь с windows через подключение rdp (рабочие windows разрешают 1 подключение для администраторского аккаунта). Некоторые программы так работают.

    p.s. wine - настоятельно рекоменудую использовать proton, а чтобы совсем не заморачиваться и делать все из gui, рекомендую lutris.net, приложение управляет разными версиями wine, обновляет, позволяет для разных приложений использовать разные версии ранера

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

    @rPman
    Не путай размер дистрибутива и размер установленной системы на диске

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

    Например одно время ubuntu server альтернативно можно было установить, загрузившись в примерно 100-200мб iso образ, с установщиком, который с удобным текстовым интерфейсом устанавливал абсолютно все пакеты по сети из репозитария..

    Место, занимаемое установленной ОС зависит не от выбора мейнтейнера, а от выбора софта, который тебе нужен. Что бы ты не выбрал, пример - если тебе нужно ставить пакеты для разработки нейронных сетей (tensorflow) на nvidia gpu, то качать тебе минимум 5 гигабайт всего что с этим связано (а то и больше).

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

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

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

    @rPman
    для неопытного пользователя никаких вариантов кроме debian based дистрибутивов типа xubuntu или лучше mint, вопрос даже не философии, а тупо больше пользовательская база и инструкции в интернете рассчитаны именно на ubuntu

    браузер firefox, он немного быстрее работает на слабых машинах (это хорошо что у тебя 4гб ram) чем chromium браузеры (но чистый chromium тоже неплохо бы поставить)

    для просмотра видео используй mpv, он умеет youtube и другие облачные видеохостинги (но навигация вручную в браузере), так же можно скачивать видео каким-нибудь yt-dlp (он тоже не только youtube)
    Ответ написан
    2 комментария
  • Какой и где взять дистрибутив Linux под старый ноутбук?

    @rPman
    Я на eeepc900 с 1гб ram ставил gentoo, минималистичный DE awesome (он рассчитан что все приложения запускаются в kiosk mode), потребление памяти было 54мб. Для сравнения ubuntu отъедал 300мб и браузеру уже не хватало.

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

    По уму тебе подойдет штатный xfce или openbox. Плеер mpv (он же умеет к примеру youtube и еще несколько десятков видеохостингов, но только просмотр, навигацию по сайту сам). С браузером беда, у тебя нет вариантов кроме firefox и chromium.
    Ответ написан
  • «sudo -i» работает, но выводит сообщение «bash: n: command not found...». Почему и как устранить?

    @rPman
    Еще смотри в ~/.profile (или ~/.bash_login если его нет), /etc/profile, /etc/bash.bashrc, файлы в /etc/profile.d/
    n это может быть node version manager, его удалил а в скриптах его вызов остался (зачем правда непонятно)
    Ответ написан
  • Кто сталкивался с сертифицированным ПО для скриншотов?

    @rPman
    на windows воспользуйся скриптом powershell (нагуглил первое попавшееся, не рповерял)
    на linux используй штатную утилиту imagemagic
    import -window root /path/filename.png
    еще проще, штатная утилита xwindow - xwd
    xwd -silent -root > /path/filename.xwd
    а там изображения в этом формате можно конвертировать уже со своей машины с помощью imagemagic

    написать скрипт из 2 строчек, который будет периодически делать скриншоты сумеешь?

    Ты не обязан сертифицировать свои же powershell/bat скрипты (хотя возможно в последние годы на windows свои скрипты powershell надо будет подписывать, меня вообще очень веселит, в сотне гигабайт мусора windows есть тысячи способов сделать нужное, но оно недоступно без документации, т.е. есть библиотеки где этот функционал реализован но ими воспользоваться не получится, они сохранены только для мифического легаси)
    Ответ написан
    Комментировать
  • Какую использовать утилиту на linux для создания waweform?

    @rPman
    sox (штатно идет с любым linux), если я верно понимаю ключ synth
    Ответ написан
  • Есть диски, бывшие частью массива, как начать использовать?

    @rPman
    ты отключи сначала mdadm, он же монопольно держит диск и не отдает (но тогда должны были бы быть ошибки!)
    cat /proc/mdstat
    выдаст что то типа

    Personalities : [raid1] [raid6] [raid5] [raid4]
    md1 : active raid1 sdb2[1] sda2[0]
    136448 blocks [2/2] [UU]

    md2 : active raid1 sdb3[1] sda3[0]
    129596288 blocks [2/2] [UU]

    md3 : active raid5 sdl1[9] sdk1[8] sdj1[7] sdi1[6] sdh1[5] sdg1[4] sdf1[3] sde1[2] sdd1[1] sdc1[0]
    1318680576 blocks level 5, 1024k chunk, algorithm 2 [10/10] [UUUUUUUUUU]

    md0 : active raid1 sdb1[1] sda1[0]
    16787776 blocks [2/2] [UU]

    unused devices:

    определяешь какой из массивов из твоихдисков попытался построиться (но не смог скорее всего) и делаешь ему stop
    mdadm --stop /dev/md1

    и вот тогда уже манипулируешь с дисками и стираешь их
    Ответ написан
    Комментировать
  • Как ввести ограничения для использования сети для windows10?

    @rPman
    Штатно задача решается с помощью cgroup, но настраивать сложно.
    Просто - виртуализация или паравиртуализация lxc (собственно это фактически gui к cgroup).

    Недостатки виртуализации - придется заморочиться с настройкой gui, обычная виртуализация будет работать но 3d ускоритель не будет доступен и можно встретить проблемы даже с проигрыванием видео выше fullhd@30

    Все это есть в любых linux, почему бы и не ubuntu (lxc доставляется вручную в libvirt, создание файловой системы виртуальной машины тоже вручную, но зато максимальная производительность и почти ноль накладных расходов).

    Кстати snap предлагает так же систему контейнеризации приложений, основанную на cgroup, т.е. установив приложение из snap оно уже сидит в своей песочнице, и ей нужно выдавать соответствующие права для доступа ко всему, от принтера до файлов на диске (рабочая директория пользователя доступна но все иное кроме root нет, т.е. нет флешек, нет смонтированных дисков и т.п.). В ubuntu firefox например уже поставляется в snap.
    p.s. лично мне не нравится, но скорее всего я не умею его настраивать

    Для доступа к gui из lxc песочницы есть 2 способа, настроить доступ к xserver (при использовании xubuntu например) или использовать ssh с ключом -X, в этом случае песочница воспринимается как удаленная машина и трафик gui шифруется и сжимается как бы по сети (правда localhost)

    Главный принцип - размести опасные приложения внутрь песочницы. К сожалению игры это отдельная проблема и правильно их размещать на другой физической машине. Настройка сети в данном сценарии это просто не давать доступ к ней всем кроме избранных, на уровне виртуальной машины/песочницы достаточно не прописать или выдать неверный шлюз по умолчанию. Обновлять такие машины придется вручную (например настроив свой сервер обновлений, либо временно включать для них интернет)
    Ответ написан
    Комментировать
  • Как перенести базу данных из СУБД Postgresql в MySQL?

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

    Судя по тому что структуру таблиц ты уже перенес, заморачиваться с этим тебе не понадобится.

    p.s. экспортировать и импортировать данные в своем формате умеют некоторые универсальные GUI для баз данных, например та же WorkBench, там тоже можно сделать экспорт отдельно в виде insert-ов и отдельно структуру.

    p.p.s. ну перенесли вы данные, но данные это самое легкое, запросы тоже переносить нужно, а вот тут совместимость может быть слабая.
    Ответ написан
    Комментировать
  • Как настроить инкрементное резервное копирование папки linux?

    @rPman
    rsync -avh --link-dest=previous_backup/ source_directory/ new_backup_directory/

    добавить ключей по вкусу

    Эта команда будет делать резервную копию source_directory/ копируя файлы в new_backup_directory/ проверяя параллельно предыдущую копию в previous_backup/ и пропуская копирование не изменившихся файлов, создавая для них символические/жесткие ссылки.

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

    По сети чтобы все работало рекомендуется установить rsync демона (как минимум создавать жесткие ссылки через всякие nfs оно не умеет но можно проверить ssh scp/sftp)

    Недостаток, на диске с бакапами созадется миллионы файлов, проверка такого диска в случае чего затягивается на часы. Так же процесс копирования сканирует весь исходный каталог каждый раз, но это делают все инструменты копирования, за исключением btrfs/zfs...

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