Задать вопрос
Ответы пользователя по тегу Linux
  • Можно ли создать полностью автоновный bash скрипт, не требующий ввода руками?

    xotkot
    @xotkot
    хорошо есть и хорошо весьма
    Большинство утилит в linux могут работать в режиме "скрипта"(например, parted -s ...), то есть производить автоматизированное принятие заданного ответа или действия по умолчанию(например, rm -f ... удалять без подтверждения).
    В крайнем случае можно найти утилиты которые это умеют. Например, для задания пароля после создании пользователя вместо passwd можно использовать chpasswd:
    echo "root:1234" | chpasswd

    Если же утилита не поддерживает режим скрипта и нету подходящих замен то можно воспользоваться утилитой expect о которой ранее писал Константин.
    Ответ написан
    Комментировать
  • Почему не работает systemd?

    xotkot
    @xotkot
    хорошо есть и хорошо весьма
    Комментировать
  • Как по фэншую разбить диск на разделы в Linux?

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

    принципиального значения нет

    В теории, swap в начале диска работает быстрее, можно swap первым размещать? Или первым желательно /boot, а потом уже swap и / ?

    я так понимаю вас не интересуют использование в виртуалке и SSD, а конкретное размещение на "железе" HDD ?
    если да, то учтите что скорость чтения у HDD, примерно, в два раза падает от начала к концу диска. Отсюда и стратегия в размещении часто используемой информации ближе к началу диска. Правда также нужно учитывать и ресурсы затраченные на смещения головки при чтении/записи.
    В общем, если немного потериоризировать то можно прийти к выводу что в самое начало следует поместить boot раздел который нам нужен на старте системы. Необходимые файлы будут последовательно, быстро и единожды считаны с диска.
    Если редко используете swap раздел то поместите его после boot что позволит быстро с ним работать, правда в ущерб повышенному износу диска за счет более интенсивных механических нагрузок(постоянное шныряние головки в начало диска).
    Если часто используете swap раздел то лучше поместить его поближе к центру диска в аккурат после корня, что позволит почти также быстро с ним работать но с меньшим износом.
    И да, если есть в наличии несколько дисков то размещайте swap и систему на разных дисках.
    Ответ написан
    2 комментария
  • Почему не выходит сменить DE?

    xotkot
    @xotkot
    хорошо есть и хорошо весьма
    Ответ написан
    Комментировать
  • Установка jdk на Antergos?

    xotkot
    @xotkot
    хорошо есть и хорошо весьма
    Java[en] | Java[ru]
    Примечание: После установки вам может понадобиться обновить переменную окружения $PATH. Для этого отредактируйте файл /etc/profile или перезайдите в среду рабочего стола.
    Ответ написан
    4 комментария
  • Как заставить скрипт запускаться от рута при запуске системы?

    xotkot
    @xotkot
    хорошо есть и хорошо весьма
    сейчас, как универсальный метод, для запуска скриптов при загрузке системы лучше всего использовать systemd
    пример я уже писал в одном из постов - тыц1, тыц2
    Ответ написан
    2 комментария
  • Как объединить два каталога?

    xotkot
    @xotkot
    хорошо есть и хорошо весьма
    до:
    % tree -h test
    test
    ├── [4.0K]  dir1
    │   ├── [4.0K]  a
    │   │   ├── [ 60M]  file1.txt
    │   │   └── [1.0M]  file2.txt
    │   ├── [4.0K]  b
    │   │   └── [ 20M]  file3.txt
    │   └── [4.0K]  c
    │       └── [1.0M]  file4.txt
    └── [4.0K]  dir2
        ├── [4.0K]  a
        │   ├── [ 10M]  file1.txt
        │   └── [1.0M]  file6.txt
        ├── [4.0K]  b
        │   ├── [ 50M]  file3.txt
        │   └── [1.0M]  file8.txt
        └── [4.0K]  c
            ├── [1.0M]  file10.txt
            └── [1.0M]  file9.txt
    
    8 directories, 10 files

    не копируем, а создаём жесткие ссылки:
    % cp -lrf test/dir{1/*,2} && rm -rf test/dir1/*

    после:
    % tree -h test
    test
    ├── [4.0K]  dir1
    └── [4.0K]  dir2
        ├── [4.0K]  a
        │   ├── [ 60M]  file1.txt
        │   ├── [1.0M]  file2.txt
        │   └── [1.0M]  file6.txt
        ├── [4.0K]  b
        │   ├── [ 20M]  file3.txt
        │   └── [1.0M]  file8.txt
        └── [4.0K]  c
            ├── [1.0M]  file10.txt
            ├── [1.0M]  file4.txt
            └── [1.0M]  file9.txt
    
    5 directories, 8 files
    Ответ написан
    1 комментарий
  • Как в bash получить часть названия файла?

    xotkot
    @xotkot
    хорошо есть и хорошо весьма
    ls | awk -F"_|.txt" '{print $2}'
    Ответ написан
    Комментировать
  • Привязка выполнения файла к инициализации в терминале?

    xotkot
    @xotkot
    хорошо есть и хорошо весьма
    если используете оболочку bash, то:
    для пользователя:
    $ echo 'export PATH="$PATH:/usr/local/pgsql/bin"' >> ~/.bashrc
    $ echo 'export PGDATA=/usr/local/pgsql/data' >> ~/.bashrc

    или в ~/.bash_profile

    если нужно для суперпользователя(root), то положите в /etc/profile:
    # echo 'export PATH="$PATH:/usr/local/pgsql/bin"' >>/etc/profile
    # echo 'export PGDATA=/usr/local/pgsql/data' >> /etc/profile

    только не забудьте перезайти
    Ответ написан
  • Почему Transmission создаёт лишние файлы?

    xotkot
    @xotkot
    хорошо есть и хорошо весьма
    как писали выше Transmission создаёт "лишний файл" разряженным, скорее всего для своих каких-то нужд. Данный файл практически никак не будет влиять на заполнение файловой системы, точнее будет но в зависит от степени его наполненности.

    Вот к примеру:
    создаём разряженный файл:
    $ truncate -s 5G ФАЙЛ
    Смотрим его размер через ls:
    $ ls  -l ФАЙЛ
    ... 5G ... ФАЙЛ

    Смотрим его реальный размер через du:
    $ du -h ФАЙЛ                
    0	ФАЙЛ

    Смотрим его нереальный размер через du:
    $ du -h --apparent-size ФАЙЛ                   
    5,0G	ФАЙЛ


    В общем размер данного(здесь он нулевой) ФАЙЛа не влияет на реальное заполнение ФС (к примеру на вывод команды df -h тоже никак не отразится), естественно по мере его заполнения ситуация будет меняться.
    Ответ написан
    Комментировать
  • Таймер/аларм для Ubuntu?

    xotkot
    @xotkot
    хорошо есть и хорошо весьма
    можно сделать еще проще, написать маленькую функцию, для удобного использования, например:
    alarm 10s
    сработает через 10 секунд
    alarm 20m
    сработает через 20 минут
    alarm 1h /путь/к/запускаемому/аудио/видео/файлу
    сработает через час и запустит файл по указанному пути

    сама функция:
    alarm(){
    	_t="$1"
    	_src="$2"
    	_alarm(){
    		sleep $_t && notify-send -u critical "Прошло $_t" && echo -en "\a"
    		if [ "$_src" ];	then mpv "$_src"; fi
    	}
    	_alarm &!
    	echo "ok: напомню через $_t"
      sleep 2
      exit 0
    }

    update: в конце добавлен exit 0 так как bash иногда дает осечку при закрытии терминала.

    вместо mpv можно взять, к примеру, vlc или другой проигрыватель

    Функцию нужно поместить в конец файла инициализации используемой вами консольной оболочки, для zsh будет ~/.zshrc , для bash можно ~/.bashrc или ~/.bashrc_profile
    Ответ написан
    41 комментарий
  • Как в linux узнать точное время создания или изменения файла (чтобы секунды показывались)?

    xotkot
    @xotkot
    хорошо есть и хорошо весьма
    в настройках Double Comander можно указывать отображение разных форматов времени.
    В консоли можно через ls как выше писал Владимир Куц или с помощью утилиты stat, например:
    stat --format="%n %y" *
    или полную информацию по конкретному файлу:
    stat ФАЙЛ
    Ответ написан
    Комментировать
  • Как пофиксить тормоза видео в браузерах под Linux?

    xotkot
    @xotkot
    хорошо есть и хорошо весьма
    скорее всего вам нужно установить(если еще не стоит) проприетарный(предварительно удалив свободный) драйвер nvidia, для Арча это пакеты nvidia-340xx nvidia-340xx-utils nvidia-340xx-libgl которые поддерживают старые видеокарты.

    Ноут с видяхой Nvidia Quadro NVS 160m с исполискими 256 метрами памяти. Аппаратно вроде как сама умеет декодировть видео в 720р (собсно на этом качестве и проверялось, да и не только)

    Ваша видеокарта поддерживает PureVideo HD для аппаратного ускорения видео, для его использования нужна библиотека VDPAU(пакет для арча libva-vdpau-driver).

    всё вышесказанное соотнесите для вашего дистрибутива


    Есть подозрение, что проблема кроется в flash плеере, ибо на ютубе все не так плачевно, а вот на сторонних сайтах, особенно где есть реклама - все плохо

    рекламу можно резать, например с помощью плагина uBloc Origin
    Ответ написан
  • Какой выбрать linux на pentium 4 для youtube?

    xotkot
    @xotkot
    хорошо есть и хорошо весьма
    1) вместо vlc использовать mpv (легче)
    далее, например, можно использовать связку:
    mpv + youtube-dl + плагины mozplugger и mpv-youtube-dl-binding
    2) использовать плагин greasemоnkey + скрипт ViewTube
    3) драйвера стоят на видеокарту ?
    что показывает команда
    lspci -k | grep -i -A3 VGA
    в общем установить драйвер(свободный/проприетарный) и до установить необходимые библиотеки для аппаратного декодирования видео, для Арча смотри здесь
    Ответ написан
  • Как распределить "папки" на HDD?

    xotkot
    @xotkot
    хорошо есть и хорошо весьма
    Как будет более правильно в плане производительности распределить содержимое HDD?

    Бесконечно можно смотреть на три вещи: горящий огонь, бегущую воду и на то, как новички-линуксоиды пытаются "максимально эффективно" распределить дисковое пространство.
    Ответ написан
    1 комментарий
  • Выбор языка для написания скриптов/простеньких приложений под Linux?

    xotkot
    @xotkot
    хорошо есть и хорошо весьма
    чтобы писать "простенькие скрипты/приложения" под linux лучше чем sh/bash вы ничего не найдёте, доступность и простота. При написании более сложных скриптов список можно расширить до python и perl.
    Далее, если вам недостаточно скорости выполнения скриптовых языков то можно уже рассматривать компилируемые в байт-код (java, c# ...) или нативные (с, c++, go ...).
    Ответ написан
    Комментировать
  • Как скопировать больший диск на меньший диск?

    xotkot
    @xotkot
    хорошо есть и хорошо весьма
    Я пробовал
    dd if=/dev/sdBIG of=/dev/sdSMALL bs=64K conv=noerror,sync
    Но система после копирования и загрузки ругается на испорченный второй раздел и требует чтобы я все починил.

    dd копирует весь диск побайтово и естественно будет ругаться на то что не может уместить 128G в 16G.
    dd просто тупо перенёс начальные 16G из 128гигового диска(sdBIG) в 16G(sdSMALL), поэтому у вас не только второй раздел будет повреждён(я так понял первый раздел у вас меньше 16G) но и данные на нём так же будут повреждены.

    Если итоговый раздел меньше чем исходный то вместо dd лучше использовать rsync.
    В начале на sdSMALL создаёте нужные разделы с учётом того чтобы туда уместились все переносимые данные. Далее можно из живой системы или примонтировав нужный раздел перенести данные:
    # rsync -aAXv --exclude={...} /откуда /куда
    --exclude - папки которые исключаем при переносе
    Как я понимаю первый раздел у вас корень, если так, то перенос из живой системы будет выглядеть примерно так:
    # rsync -aAXv --exclude={"/dev/*","/proc/*","/sys/*","/tmp/*","/run/*","/mnt/*","/media/*","/lost+found"} / /куда

    и на последок незабываем сделать корневой (первый) раздел загрузочным и при необходимости подправить загрузчик и fstab
    Ответ написан
    2 комментария
  • Как перенести систему на другой диск большего размера?

    xotkot
    @xotkot
    хорошо есть и хорошо весьма
    dd клонирует диск один в один, так что проблем не должно возникнуть
    единственное это возможно необходимо будет всё же подправить fstab:
    - если у вас используется идентификация разделов по UUID то он сменится
    - или если используется идентификация по именам(/dev/sd{a,b,c...}) и вы добавите еще диск то sda и sdb могут поменяться местами
    в любом случае система попросту не загрузится

    когда убедитесь что все нормально загружается и работает то можете расширить таблицу разделов и задействовать свободное место прибавив его к рядом стоящему разделу(проделывается с live-сd/usb):
    # parted /dev/sda resizepart 2 100%
    # e2fsck -f /dev/sda2
    # resize2fs /dev/sda2

    здесь sda2 (resizepart 2) это крайний раздел который примыкает к свободному пространству и который мы расширяем, естественно ставим свой

    п.с.
    всё описанное верно для традиционных файловых систем
    Ответ написан
    Комментировать
  • Как удалить программу со всеми конфигами в linux?

    xotkot
    @xotkot
    хорошо есть и хорошо весьма
    обычно хватает:
    $ sudo pacman -Rns пакет
    ну и ручками почистить если что осталось в хомяке

    более детально смотри арчвики - удаление пакетов
    Ответ написан
    Комментировать