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

    @rPman
    Делать все из другой системы (например загрузившись livecd)

    Конвертируешь файловую систему /dev/sda2 в btrfs с помощью btrfs-convert
    добавляешь к получившемуся устройству /dev/sdb с помощью btrfs device add /dev/sdb /mnt (на сколько я помню добавится без raid в режиме single, когда диски наполняются по мере необходимости и могнут быть разного размера)
    Правишь /etc/fstab

    p.s. бакапы! подобные операции, какими бы надежными они не казались, могут привести к потере данных
    Ответ написан
    Комментировать
  • Возможно ли сделать прокси-сервер который использует другие прокси? Или делать через VPN?

    @rPman
    Если на машине, чей ip авторизуется в прокси, есть возможность настройки iptables или любого другого фаервола, то можно настроить простой nat port mapping, пропиши в правилах фильтрацию входящих ip адресов чтобы ограничить доступ к прокси только с них.

    И совсем простой вариант, любой ssh умеет настраивать проброс портов в любую сторону (от клиента к серверу или от сервера к клиенту, ключи -L и -R соответственно), т.е. настраиваешь беспарольную авторизацию, и простым скриптом (его можно как службу прописать)
    while(true);do ssh xxx@yyy -L ..... -N;sleep 1;done

    делаешь автопереподключение (в конфиге ssh сервера советую прописать keepalive на случай нестабильного интернета)
    Ответ написан
    2 комментария
  • Как можно организовать проброс тома на работающем docker контейнере?

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

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

    Существует способ организации работы, когда синхронизация идет на блочном уровне файловой системы. Например DRBD (когда несколько блочных устройств в сети настраиваются как raid1 mirror). Или файловые системы типа glusterfs, когда сетевое хранилище организуется на базе файловой системы, в догонку еще варианты типа lustre или ceph.

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

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

    @rPman
    официально бесплатные - livecd/liveusb образы
    https://free.drweb.ru/aid_admin/
    https://www.kaspersky.ru/downloads/thank-you/free-...
    https://www.eset.com/ua-ru/support/sysrescue/

    как минимум drweb сделан на основе linux про касперского я уже не помню, но какая разница, если это готовый загрузочный образ
    Ответ написан
    5 комментариев
  • Можно ли установить Linux на разные диски?

    @rPman
    нет никакой необходимости раскидывать систему по разным дискам (единственное для чего это имело бы смысл - это удобство переустановки и переноса пользовательских файлов между установками,т.е. windows way), даже swap раздел не обязательно делать, так как уже давно он может размещаться в файле. Даже /boot не требуется, если используется стандартная файловая система без нетиповых конфигов llvm/raid/bcache/... это актуально только для mbr, для gpt все же потребуется 1мб раздел biosboot это если тип загрузки legacy mbr, и вне зависимости от типа разбиения, если используется efi, то нужен раздел fat efiboot)

    Корень размещаешь на ssd, а hdd монтируешь в какой-нибудь технический каталог (я обычно завожу в корне что то типа /o, /g или /i, т.е. максимально короткое имя) и в дальнейшем при необходимости переносишь объемные каталоги с помощью симлинков на подкаталог внутри hdd, т.е. ручное управление размещением файлов

    Например кеши файлов пакетов npm или gradle как минимум занимают десятки гигабайт и не требуют быстрого доступа

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

    @rPman
    в linux bash есть инструмент указания файлов для параметров любых утилит, запускаемых.
    например если написать myapp *.txt то в командную строку myapp улетит список txt фалов.

    Конкретно по задаче, чтобы удалить все файлы исключая указанные, то можно использовать следующую запись:
    rm -f !(file.txt|data.dat)

    Для удаления файлов, размер которых больше определенного, можно использовать find (его вообще рекомендуется для многих задач использовать, например исключить каталоги из поиска можно с помощью директивы -not):
    find . -type f -size +5M -exec rm -f {} +

    upd. для windows cmd все грустнее, на столько издевательски неудобного языка еще поискать нужно, штатно утилит которые бы позволили искать файлы и запускать код по заданной команде на сколько я занаю нет, можно написать цикл for и уже в его теле делать проверки, если имя неравно такому то или размер не больше... можешь не помечать ответом, мне просто лень да и проверить негде уже
    нужные команды if, for /? и set /? там будут исчерпывающие примеры
    Ответ написан
    4 комментария
  • Проблема установки GRUB на линукс?

    @rPman
    ты загрузился в режиме EFI (в биосе это может называться secure boot, а старый способ legacy mbr), grub автоматически это обнаруживает и пробует настроить efi загрузку

    Для этого на диске должен быть раздел EFI, fat32 (отформатируй), примерно 100мб, он будет загрузочным, grub его автоматически обнаружит и скопирует нужные файлы.

    p.s. чтобы поставить grub, chroot не обязателен, можно просто указать каталог с рутом системы (/dev /proc и прочие монтировать не придется, но /boot нужен) grub-install /dev/sda --root-directory=/mnt
    Ответ написан
  • Не работает сенсор на пк с android-x86, что делать (ЗАКРЫТО)?

    @rPman
    на 4pda кто то успешно ставил на этот планшетник какую то древнюю сборку android

    могу предположить что проблема с сенсором в том что новые версии android драйверов ее не поддерживают
    Ответ написан
    Комментировать
  • Есть ли офисные программы для терминала?

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

    Табличный процессор наверное нормальный не найти
    посмотри sc а для математики, графиков и анализа используй сторонние средства типа gnuplot, ну и пиши код на свои задачи анализа с использованием библиотек типа gsl.

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

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

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

    Но вот красивого и удобного графического интерфейса для всего сразу нет.
    Ответ написан
    1 комментарий
  • Какой Линукс пойдет на слабый ноутбук?

    @rPman
    на ноутбуке хочу разместить хостинг мини программы(потребление не менее 3-х % ОЗУ и ядра)
    минимальная конфигурация linux (для deb пакетных менеджеров, это debian/ubuntu/mint/...) можно установить с помощью debootstrap, собственно им пользуется и штатный установщик, но он добавляет 100500 дополнительного софта, а так минимальный конфиг занимает на диске примерно 200мб и в оперативной памяти после загрузки где то десяток другой мб ram

    порядок установки:
    * загружаешься в другой linux (любой, но той же архитектуры что и целевая), можно из виртуалки все делать, если пробросить целевой диск внутрь
    * разбить диск на нужные разделы, если будет использоваться стандартная файловая система ext/btrfs/.. и legacy mbr bios то хватит одного корневого раздела, если есть efi то понадобится еще один раздел fat для efi, если нестандартные файловые системы или конфиг к примеру с raid или шифрованием, то понадобится еще /boot, если используется gpt диск (не mbr) то еще понадобится biosboot раздел на 1мб
    * примонтировать корневой и /boot разделы
    * запустить debootstrap с указанием ос и этого каталога
    * установить grub-install /dev/диск_установки --root-directory=/каталог_с_установкой
    * chroot /каталог_с_установкой
    * настроить пароль для passwd root и /etc/fstab

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

    desktop environment с gui для задач хостинга даже не требуется, если что можно поставить что-нибудь максимально простое awesome, openbox, icewm, eEnlightenment, lxde, xfce,... мало того, по умолчанию с xserver должен ставиться совсем уж минималистичный twm, в оперативной памяти эти вещи будут занимать от силы пару сотен мегабайт (на gentoo я настраивал awesome с последними версиями системы на 50мб ram, на машине с 1гб ram запускал современный браузер)

    если тебе нужна графика чтобы только настраивать но для работы не требуется, то можно подключаться к машине удаленно, используя локально установленные DE (например с windows машины в сети установив cygwin xwinserver), это штатный режим работы xserver (в локальной сети можно даже игры запускать)
    Ответ написан
    Комментировать
  • Можно ли ускорить подключение к WI-FI в Linux (Elementary OS)?

    @rPman
    Если я верно понимаю ситуацию, само подключение к сетям со скрытым ssid медленное, причина в скрытности.

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

    @rPman
    Поднять свою инфраструктуру датацентра включая nas, сервера приложений, панели управления и многое другое (один гитхаб у них больше 700 репов) - первый же пример в гугле https://www.openstack.org/ этим пользуются крупные компании для своих нужд, открытое свободное, бесплатное
    p.s. И мне кажется ну очень какое то все это сложное, потому что если исходить от своих частных задач, оказывается что 99% всего предоставленного не нужно, а силы и ресурсы на это тратятся.

    но тебе наверное еще это продавать надо, с панелью управления для конечных пользователей? я как то искал не нашел, точнее есть куча готовых закрытых продуктов, за деньги, за много денег, часто узкоспециализированные (например инструменты по хостингу windows инфраструктуры, с доменами, скайпами, офис 365 и т.п.) всякие Hosting Controller или Virtualizator
    Ответ написан
    Комментировать
  • Как забрать данные из Virtual Console Huawei?

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

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

    @rPman
    btrfs + zstd сжатие
    Ответ написан
    Комментировать
  • Как получить доступ к локальной сети извне если есть белый IP?

    @rPman
    пробрасываешь порт ssh на роутере (скорее всего называется nat - виртуальные сервера) до твоего linux сервера, все остальное можешь делать средствами ssh port forwarding (работает в обе стороны), мало того многие инструменты управления и удаленного администрирования в linux подразумевают что могут подключаться через ssh подключение.

    в довесок у ssh есть штатный vpn
    Ответ написан
    Комментировать
  • Какую систему использовать для бекапов lunix с s3?

    @rPman
    наведете на решение?

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

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

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

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

    По делу, одно время я пользовался в windows bat скриптами (готовые были написаны для win7 и уже не работают в win10, но идея там простая, все переписывается легко) когда на целевом диске создавался снапшот, затем с помощью rsync создавалась полная копия указанных каталогов, но с указанием предыдущей версии реплики, для неизменившихся файлов утилита создавала hardlink на прошлую копию, в результате получается идеальная инкрементальная копия, с которой можно работать как с обычными файлами (не требуется извлечение из сжатых архивов и последовательное принятие патчей инкрементации), причем на любую сохраненную дату, при необходимости можно легко удалить старую или даже любую реплику, благодаря корректной обработки hardlink файловой системой.

    Сам диск можно подключать по сети, на выбор либо средствами windows (.vhd файлы) либо iscsi
    Сжатие - поддерживается, но только слабое ntfs.

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

    Второй недостаток - год ежедневных копий с даже средним количеством файлов в итоговом разделе создаст миллиарды hardlink (лимит на количество hardlink на один файл - 1024, это примерно три года ежедневных бакапов), ну и к примеру, проверка такого диска с помощью chkdsk может потребовать дни и недели.
    ----------------------------------------

    Другой подход, если требуется создание копий общей шары на сервере (linux само собой), выбираешь cow файловые системы, с поддержкой онлайн снапшотов - btrfs/zfs. Каждый день или даже каждый час создаешь снапшот и хранишь так долго как это необходимо, удаляя не нужные тогда когда пожелаешь (операция моментальная, не зависит от объема данных). Это защитит данные от проблем на клиентской стороне, например ошибочные удаления или вирусы-шифровальщики и т.п.

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

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

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

    Проверка бакапов на восстанавливаемость.
    В сети должна быть машина, которая занимается только этим - по очереди поднимает бакапы каждой машины по отдельности или сразу целой инфраструктуры на виртуалках, стартует службы и базы данных и проводит какие то проверки. К сожалению создание адекватных автоматизированных тестов всей инфраструктуры задача слишком сложная и мало кто этим заморачивается, мало того, автоматически развернуть работающую систему из бакапов и запустить ее в работу - уже подвиг, поэтому придется этим кому то заниматься в полуручном режиме (т.е. сервис обеспечивает восстановление файлов, а человеку необходимо запустить и посмотреть на то, работает ли в принципе все как ожидается)
    Ответ написан
  • Проблема при установке ubuntu linux на виртуальной машине. Unabled to boot?

    @rPman
    архитектура должна совпадать
    ты установил x86-64 а в настройках виртуальной машины выбрал 32-битную i686
    иди в настройки 'общие' -> 'версия' и меняй

    если хост система у тебя сама 32-битная, и очень очень надо, то остается только софтварная виртуализация qemu, будет медленней раз в 10 (операционка вообще может минут 15 запускаться)
    Ответ написан
    1 комментарий
  • Какие уникальные параметры системы есть в linux?

    @rPman
    mac адрес сетевой карты
    исторически он был создан именно для этого
    Ответ написан
    5 комментариев