• Как подключиться к локальному юзеру Linux через filezilla?

    xotkot
    @xotkot
    хорошо есть и хорошо весьма
    поднимите ssh-сервер на локальном компьютере
    а в поле Нost ведите 127.0.0.1 или localhost или ваш IP адрес выданный DHCP роутера(если есть)
    Ответ написан
  • Awk, как объединить столбцы при передаче в shell?

    xotkot
    @xotkot
    хорошо есть и хорошо весьма
    $ echo "a1 a2 a3 15-Aug-2019 00:24:38 a6 ..." | awk '{z="date -d \""$4" "$5"\" \"+%s\""; z | getline z; print z}'
    1565817878

    ну или вывести в самой строке
    $ echo "a1 a2 a3 15-Aug-2019 00:24:38 a6 ..." | awk '{z="date -d \""$4" "$5"\" \"+%s\""; z | getline z; $4=z;$5="";print}'
    a1 a2 a3 1565817878  a6 ...

    немного покороче
    $ echo "a1 a2 a3 15-Aug-2019 00:24:38 a6 ..." | awk '{"date -d \""$4" "$5"\" \"+%s\""|getline $4;$5="";print}'
    a1 a2 a3 1565817878  a6 ...


    upd. (исправление)
    $ echo "a1 a2 a3 15-Aug-2019 00:24:38 a6 ..." | awk '{"date -d \""$4" "$5"\" \"+%s\"" | getline z; $4=z;$5="";print}'
    a1 a2 a3 1565817878  a6 ...
    Ответ написан
    4 комментария
  • Какой лучше использовать тип архива gz или bz2?

    xotkot
    @xotkot
    хорошо есть и хорошо весьма
    для сохранения прав можно запрячь rsync или tar а для сжатия лучше xz
    как пример https://wiki.archlinux.org/title/Rsync#Full_system...
    Ответ написан
  • Как использовать регулярные выражения в цикле консоли Линукс?

    xotkot
    @xotkot
    хорошо есть и хорошо весьма
    Или есть более простой способ, чтобы сохранить картинки в новой папке?

    cp $(cat images_file) --target-directory="new_path/"
    Ответ написан
    Комментировать
  • Как найти файлы, у которых в содержимом встречаются 2 слова?

    xotkot
    @xotkot
    хорошо есть и хорошо весьма
    grep --max-count=1 -z -l "СЛОВО1.*СЛОВО2" ФАЙЛ1 ФАЙЛ2 ...
    Ответ написан
    1 комментарий
  • Как открыть плеер vlc из bash?

    xotkot
    @xotkot
    хорошо есть и хорошо весьма
    Дано:
    "пару прямых ссылок на аудио и видеопоток 1080p из youtube" ,
    полученных через youtube-dl -g

    с чего вы взяли что там будет 1080p ?)
    возможные отдачи форматов можно глянуть так:
    $ youtube-dl --list-formats "https://www.youtube.com/watch?v=fTMXYj_a0Wo"

    spoiler

    [youtube] fTMXYj_a0Wo: Downloading webpage
    [info] Available formats for fTMXYj_a0Wo:
    format code extension resolution note
    249 webm audio only tiny 51k , webm_dash container, opus @ 51k (48000Hz), 2.13MiB
    250 webm audio only tiny 71k , webm_dash container, opus @ 71k (48000Hz), 3.00MiB
    251 webm audio only tiny 128k , webm_dash container, opus @128k (48000Hz), 5.39MiB
    140 m4a audio only tiny 129k , m4a_dash container, mp4a.40.2@129k (44100Hz), 5.41MiB
    394 mp4 256x144 144p 62k , mp4_dash container, av01.0.00M.08@ 62k, 30fps, video only, 2.60MiB
    160 mp4 256x144 144p 73k , mp4_dash container, avc1.4d400c@ 73k, 30fps, video only, 3.08MiB
    278 webm 256x144 144p 82k , webm_dash container, vp9@ 82k, 30fps, video only, 3.46MiB
    395 mp4 426x240 240p 116k , mp4_dash container, av01.0.00M.08@ 116k, 30fps, video only, 4.85MiB
    133 mp4 426x240 240p 121k , mp4_dash container, avc1.4d4015@ 121k, 30fps, video only, 5.08MiB
    242 webm 426x240 240p 142k , webm_dash container, vp9@ 142k, 30fps, video only, 5.96MiB
    396 mp4 640x360 360p 225k , mp4_dash container, av01.0.01M.08@ 225k, 30fps, video only, 9.40MiB
    134 mp4 640x360 360p 238k , mp4_dash container, avc1.4d401e@ 238k, 30fps, video only, 9.96MiB
    243 webm 640x360 360p 250k , webm_dash container, vp9@ 250k, 30fps, video only, 10.46MiB
    135 mp4 854x480 480p 369k , mp4_dash container, avc1.4d401f@ 369k, 30fps, video only, 15.44MiB
    244 webm 854x480 480p 379k , webm_dash container, vp9@ 379k, 30fps, video only, 15.87MiB
    397 mp4 854x480 480p 386k , mp4_dash container, av01.0.04M.08@ 386k, 30fps, video only, 16.13MiB
    136 mp4 1280x720 720p 606k , mp4_dash container, avc1.4d401f@ 606k, 30fps, video only, 25.36MiB
    247 webm 1280x720 720p 667k , webm_dash container, vp9@ 667k, 30fps, video only, 27.90MiB
    398 mp4 1280x720 720p 798k , mp4_dash container, av01.0.05M.08@ 798k, 30fps, video only, 33.36MiB
    18 mp4 640x360 360p 639k , avc1.42001E, 30fps, mp4a.40.2 (44100Hz), 26.72MiB
    22 mp4 1280x720 720p 740k , avc1.64001F, 30fps, mp4a.40.2 (44100Hz) (best)

    где видно что для данного видео 1080p нету и в помине )
    к сведению youtube-dl по умолчанию всегда берет best
    то есть в данном случае это будет как раз 720p
    $ youtube-dl --list-formats "https://www.youtube.com/watch?v=fTMXYj_a0Wo" | grep best
    22           mp4        1280x720   720p  740k , avc1.64001F, 30fps, mp4a.40.2 (44100Hz) (best)

    при желании можно выбрать нужный формат вручную, например для данного видео mp4 480p:
    youtube-dl --format="397+bestaudio" -g "https://www.youtube.com/watch?v=fTMXYj_a0Wo"

    где 397 это номер потока из --list-formats
    также указываем +bestaudio так как поток 397 идет только как video only поэтому говорим что нужно прицепить к данному видео еще и аудиодорожку с наилучшим качеством

    но чтобы каждый раз не мучатся и не искать подходящий формат или не отдавать на волю случая(то что гугл считает за best) можно просто прописать в формате необходимые условия, например:
    youtube-dl --format="bestvideo[height<=?1080]+bestaudio" -g "https://www.youtube.com/watch?v=fTMXYj_a0Wo"

    будет брать(из --list-formats) видео максимально близко к расширению(высота) 1080 (равным или меньше)
    можно даже указывать кодеки и fps а также через слэшь(/) указывать дополнительные условия, например:
    youtube-dl --format="bestvideo[height<=?1080][vcodec^=h264]+bestaudio/best[height<=?1080]/best" -g "https://www.youtube.com/watch?v=fTMXYj_a0Wo"

    первое условие
    bestvideo[height<=?1080][vcodec^=h264]+bestaudio
    высота меньше или равна 1080 и кодек h264 (хорош для слабого железа так как есть поддержка железа даже в утюге в отличии от новомодных av1, vp9 ...)
    далее второе условие если не сработало первое
    best[height<=?1080]
    то есть если нету с кодеком h264 то грузить с любым но тока если есть разрешение 1080 или меньше
    также просто best включает в себя как bestvideo так и bestaudio

    п.с.
    Попробовал youtube-dl + MPV плеер.
    Работает по умолчанию, без танцев с бубном. )))

    чтобы в mpv не вводить каждый раз формат можно в конфиге mpv.conf указать нужные значения в переменной
    ytdl-format="...."
    у ytdl-format такой же формат как и описанный выше для ключа --format

    п.с.2
    если пользуетесь firefox то поставьте это расширение
    позволит запускать плеер(mpv?) просто выбрав в контекстном меню(правый клик мыши на ютуб-ссылке), чертовски удобно
    Ответ написан
  • Нужно открыть youtube в плеере VLC, в чём ошибка?

    xotkot
    @xotkot
    хорошо есть и хорошо весьма
    погляжу народ обожает трудности
    x=($(youtube-dl -g https://www.youtube.com/watch?v=yfHQCNPTios)) && vlc ${x[0]} --input-slave ${x[1]}


    Чтобы открыть youtube 1080p в плеере VLC

    для этого нужно выставить нужные параметры в ключе --format
    x=($(youtube-dl -g --format="bestvideo[height<=?1080]+bestaudio" https://www.youtube.com/watch?v=yfHQCNPTios)) && vlc ${x[0]} --input-slave ${x[1]}

    подробнее об этом написал тебе в твоём предыдущем вопросе

    для mpv будет проще:
    mpv --ytdl-format="bestvideo[height<=?1080]+bestaudio" https://www.youtube.com/watch?v=yfHQCNPTios
    Ответ написан
    23 комментария
  • Как правильно устанавливать linux с двумя жёсткими дисками?

    xotkot
    @xotkot
    хорошо есть и хорошо весьма
    как люди любят себе усложнять жизнь )
    lvm, btrfs, zfs, рейды, 100500 разделов ... брр
    ставьте на nvme одни(/) раздел (или два[+ /boot] если у вас UEFI), не отделяя хомяк в отдельный раздел
    а на ssd можно будет скидывать тяжелые файлы - фильмы, музыка, виртуальные машины и др., а также бекап важных данных с nvme
    По поводу рут и Хоум на nvme - это же очень много для системы и кофигов. 90% будет пустовать на этом диске.

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

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

    п.с.
    вместе с диском докупил ещё планку памяти

    раз ОЗУ у вас с избытком то чтобы меньше мучать диск можно в fstab добавить параметр commit=60 что позволит системе производить запись на диск раз в минуту держа эти данные в памяти, в принципе можно и больше, у себя например довел до двух минут и вроде пока нормально.
    Ответ написан
    5 комментариев
  • Как проверить версию GCC в составе дистрибутива Ubuntu последней desktop версии?

    xotkot
    @xotkot
    хорошо есть и хорошо весьма
    Ответ написан
    Комментировать
  • Как удалить файл в FTP хранилище с помощью bash?

    xotkot
    @xotkot
    хорошо есть и хорошо весьма
    Как удалить одной командой файл из FTP хранилища с помощью bash? Или предложите свой способ.

    думаю для этого лучше подойдёт lftp
    HOST="192.168.1.1"
    USER="root"
    PASS="12345"
    DATE=$(date +%y%m%d)
    
    CMD="\
    echo 'Начинаю очищать хранилище';\
    ls /;\
    echo 'Очищаю .. rm -rf lalala';\
    echo 'Хранилище очищено '$DATE;\
    exit"
    
    lftp -e "$CMD" --user $USER --password $PASS $HOST


    ну или одной командой

    lftp -e "ls /;rm -rf file.txt;exit" --user root --password 12345 192.168.1.1
    Ответ написан
    Комментировать
  • Monjaro xfce не устанавливатеся. Что делать?

    xotkot
    @xotkot
    хорошо есть и хорошо весьма
    так установка или запуск системы со скачанного образа ?
    судя по ошибке /run/miso/sfs/livefs похоже что не может нормально примонтироваться fs с live-системы(iso)
    проверьте скачанный образ, возможно он не совсем целый
    у него должно совпадать контрольная сумма
    SHA1: 058930ae297906a8611e6db501d68cc34b710ba1
    под линукс проверяется так:
    $ sha1sum manjaro-xfce-21.0.4-210506-linux510.iso
    058930ae297906a8611e6db501d68cc34b710ba1  manjaro-xfce-21.0.4-210506-linux510.iso

    под виндой не знаю, погуглите, возможно нужно скачать отдельную программу для этого
    Ответ написан
    Комментировать
  • Bash, head и tail: Невозможно открыть для чтения?

    xotkot
    @xotkot
    хорошо есть и хорошо весьма
    осталась одна ошибка в 7 строке: ./analiz.sh: строка 7: *1: синтаксическая ошибка: ожидается операнд (неверный маркер «*1»)

    cpuload=$(($var*1))
    во первых можно визуально немного упростить
    cpuload=$[var*1]
    во вторых, ругается из за того что переменная var пустая
    можно задать значение для var если она будет пуста
    cpuload=$[${var:=999}*1]
    здесь если переменная var не заданна то её значение для этого выражение станет равным 999
    Ответ написан
    Комментировать
  • Linux на старый ПК?

    xotkot
    @xotkot
    хорошо есть и хорошо весьма
    памяти для самой системы конечно хватит с запасом, но вот для современных монструозных программ которые любят кушать эту самую память как вне себя этого будем маловато
    самым оптимальным вариантом будет использовать Zram or zswap
    а если сильно упороться то и Swap on video RAM пустить в топку тем более у вас её там целый гиг простаивает без толку
    Ответ написан
    Комментировать
  • Как мне написать скрипт который будет выводить на экран СОДЕРЖИМОЕ файлов директории?

    xotkot
    @xotkot
    хорошо есть и хорошо весьма
    [[ -d $1 ]] && cat $1/* 2>/dev/null
    Ответ написан
    Комментировать
  • Увеличение img образа до 32 мегабайт?

    xotkot
    @xotkot
    хорошо есть и хорошо весьма
    немного поигрался с колибри
    зачем вам гемор с этим img ?
    я сделал проще, подключил в носителях контроллер IDE и создал диск на 2 ГБ
    можно в принципе подключить диск и через контроллер AHCI но тогда нужно будет при загрузке Колибри вначале включить пункт: [b] Добавить диски видимые через Bios

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

    xotkot
    @xotkot
    хорошо есть и хорошо весьма
    в простом случае будет по новому разметить новый диск и склонировать туда Manjaro
    # rsync -aAXHv --exclude={"/dev/*","/proc/*","/sys/*","/tmp/*","/run/*","/mnt/*","/media/*","/lost+found"} / /path/to/backup

    подробнее смотри Rsync#Full_system_backup
    потом правим /etc/fstab и обновляем grub
    когда система заведётся на новом диске далее уже думать об удалении ненужностей на старом диске
    Ответ написан
    2 комментария
  • Grub error: unknown filesystem?

    xotkot
    @xotkot
    хорошо есть и хорошо весьма
    похоже вы не ведали что творили :)
    полагаю вы сделали общий динамический диск

    п.с.
    да и картинку хотя бы какую-то приложили (желательно где управление дисками)

    п.с.2
    Что такое динамические диски
    5. Как преобразовать динамический диск в базовый
    Windows может преобразовывать диски из базового типа в динамический с сохранением их разметки и содержимого. А вот с обратным направлением будем иметь головную боль: оно работает, если только жёсткий полностью неразмечен. Чтобы не терять данные, придётся прибегнуть к помощи стороннего софта – например, AOMEI Dynamic Disk Manager, AOMEI Dynamic Disk Converter или Acronis Disk Director.
    Ответ написан
    Комментировать
  • Как разметить память на ubuntu 16.04?

    xotkot
    @xotkot
    хорошо есть и хорошо весьма
    если нужно расширить раздел на диске то обычно делается так:
    сначала нужно узнать какой диск и какой на нём раздел нужно расширить
    какой диск можно глянуть командой
    lsblk
    допустим это будет диск /dev/sda
    по занимаемому разделами месту можно глянуть
    занято
    sfdisk -l /dev/sda
    свободно
    sfdisk -F /dev/sda
    или просто воспользоваться cfdisk которая покажет всё в псевдо-графическом режиме
    cfdisk /dev/sda
    пусть это будет второй раздел (/dev/sda2) на диске который нужно расширить до конца диска
    если раздел /dev/sda2 примонтирован то его нужно размонтировать:
    umount /dev/sda2

    далее идут два этапа
    1) изменить таблицу разделов(ТР) диска указав нужный размер для разделов
    2) изменить сам размер файловой системы(ФС) для данного раздела

    1.
    на всякий случай сохраним дамп ТР чтобы в случае чего можно было восстановить
    sfdisk --dump /dev/sda > sda.dump
    потом если нужно будет восстановить
    sudo sfdisk /dev/sda < sda.dump
    кстати --dump генерирует простой человеко-читаемый формат
    теперь в ТР указываем новые границы для раздела /dev/sda2
    echo ", +" | sudo sfdisk -N 2 /dev/sda
    где -N 2 это второй раздел, ", +" == "начало, размер" раздела, а + это сокращенная запись указывающая на размер который нужно задать по умолчанию, это максимально возможный размер, то есть если после второго раздела идёт пустое пространство вплоть до конца диска то sfdisk растянет раздел до конца диска ну или до начала следующего раздела если он там будет.
    проверяем ТР на возможные ошибки
    sfdisk -V /dev/sda
    вместо вышеописанных манипуляций с sfdisk можно воспользоваться всё той же псевдографической утилитой сfdisk, там довольно просто можно разобраться как изменить ТР (см. [Resize])

    2.
    теперь нужно растянуть ФС до размеров указанных в ТР
    для начала удостоверимся что с ФС всё в порядке
    e2fsck -f /dev/sda2
    далее идёт само расширение
    sudo resize2fs /dev/sda2
    данная команда расширяет ФС раздела /dev/sda2 до границ указанных в ТР
    ну и напоследок еще раз проверим
    e2fsck -f /dev/sda2
    Ответ написан
    Комментировать
  • Как передавать видео с камеры в приложение андроид?

    xotkot
    @xotkot
    хорошо есть и хорошо весьма
    думаю для начала нужно знать протокол по которому камера отдаёт видеопоток
    если есть поддержка rtsp (а если нету) то это в принципе неплохой вариант
    многие программы могут легко с ним работать, как пример:
    mpv --aid=no rtsp://login:password@192.168.1.100/0
    также есть много клиентов под андроид для воспроизведения rtsp

    на боле низком уровне можно использовать тот же ffmpeg - How to Use FFmpeg in Android with Example?
    Ответ написан
    Комментировать