Мало кто знает про CDPATH — и зря.
Это переменная окружения в bash и zsh, которая работает как PATH, только для команды cd. Объясняю на пальцах.
Допустим, у тебя есть куча проектов в ~/projects, и ты постоянно делаешь:
cd ~/projects/myapp
cd ~/projects/backend
cd ~/projects/frontend
Надоедает. Добавляешь в .bashrc или .zshrc одну строчку:
export CDPATH=.:~:~/projects
И теперь из любой директории пишешь просто:
cd myapp
cd backend
cd frontend
Шелл сам найдёт нужную папку, пробежавшись по путям в CDPATH слева направо. Если нашёл — переходит и печатает полный путь, чтобы ты не потерялся. Точка в начале означает "сначала смотри в текущей директории" — это важно, иначе поведение cd станет неожиданным.
Можно добавить несколько корневых папок через двоеточие. Например, если работаешь ещё и с конфигами:
export CDPATH=.:~:~/projects:~/work/configs
Zsh дружит с этим ещё приятнее — автодополнение по Tab учитывает CDPATH и подсказывает папки из всех указанных мест. Bash тоже умеет, но чуть хуже из коробки.
Маленький нюанс: если в двух папках из CDPATH есть одноимённые директории — победит та, чей родитель стоит левее в списке. Поэтому порядок важен.
Простая штука, настраивается за 30 секунд, а экономит кучу нажатий каждый день. Такие мелочи и делают работу в терминале приятной 🙂
📍 Подпишись на создателей: https://t.me/linuxexex
Это переменная окружения в bash и zsh, которая работает как PATH, только для команды cd. Объясняю на пальцах.
Допустим, у тебя есть куча проектов в ~/projects, и ты постоянно делаешь:
cd ~/projects/myapp
cd ~/projects/backend
cd ~/projects/frontend
Надоедает. Добавляешь в .bashrc или .zshrc одну строчку:
export CDPATH=.:~:~/projects
И теперь из любой директории пишешь просто:
cd myapp
cd backend
cd frontend
Шелл сам найдёт нужную папку, пробежавшись по путям в CDPATH слева направо. Если нашёл — переходит и печатает полный путь, чтобы ты не потерялся. Точка в начале означает "сначала смотри в текущей директории" — это важно, иначе поведение cd станет неожиданным.
Можно добавить несколько корневых папок через двоеточие. Например, если работаешь ещё и с конфигами:
export CDPATH=.:~:~/projects:~/work/configs
Zsh дружит с этим ещё приятнее — автодополнение по Tab учитывает CDPATH и подсказывает папки из всех указанных мест. Bash тоже умеет, но чуть хуже из коробки.
Маленький нюанс: если в двух папках из CDPATH есть одноимённые директории — победит та, чей родитель стоит левее в списке. Поэтому порядок важен.
Простая штука, настраивается за 30 секунд, а экономит кучу нажатий каждый день. Такие мелочи и делают работу в терминале приятной 🙂
📍 Подпишись на создателей: https://t.me/linuxexex
Один лайфхак для терминала, который реально экономит время
Если ты часто работаешь в командной строке, то наверняка знаешь боль: набрал длинную команду, нажал Enter — и только потом заметил опечатку. Или хочешь повторить команду из прошлой недели, но уже не помнишь её целиком.
Вот что реально помогает — интерактивный поиск по истории через fzf.
Стандартный Ctrl+R в bash работает, но неудобно: ищет по одному результату, нужно жать снова и снова. fzf меняет это полностью.
Ставишь fzf:
На Ubuntu/Debian — sudo apt install fzf
На Arch — sudo pacman -S fzf
На macOS — brew install fzf
Добавляешь в ~/.bashrc или ~/.zshrc одну строку:
source /usr/share/doc/fzf/examples/key-bindings.bash
(для zsh путь может отличаться, смотри документацию пакета)
Перезапускаешь шелл — и теперь Ctrl+R открывает интерактивное окно поиска прямо в терминале. Начинаешь печатать любое слово из команды — список фильтруется в реальном времени. Нашёл нужное — Enter, и команда вставляется в строку ввода. Можно ещё отредактировать перед запуском.
Это не всё. fzf цепляется и к Ctrl+T — интерактивный поиск файлов в текущей директории. И к Alt+C — быстрый переход в любую поддиректорию без cd и табов.
Казалось бы, мелочь. Но когда перестаёшь тратить время на листание истории стрелками и вспоминание точного синтаксиса — замечаешь, насколько быстрее идёт работа.
Особенно ценно, если работаешь на нескольких серверах по SSH и история у каждого своя. fzf одинаково хорошо работает везде, где его поставил.
Попробуй один день с ним — обратно уже не захочешь 🙂
📍 Подпишись на создателей: https://t.me/linuxexex
Если ты часто работаешь в командной строке, то наверняка знаешь боль: набрал длинную команду, нажал Enter — и только потом заметил опечатку. Или хочешь повторить команду из прошлой недели, но уже не помнишь её целиком.
Вот что реально помогает — интерактивный поиск по истории через fzf.
Стандартный Ctrl+R в bash работает, но неудобно: ищет по одному результату, нужно жать снова и снова. fzf меняет это полностью.
Ставишь fzf:
На Ubuntu/Debian — sudo apt install fzf
На Arch — sudo pacman -S fzf
На macOS — brew install fzf
Добавляешь в ~/.bashrc или ~/.zshrc одну строку:
source /usr/share/doc/fzf/examples/key-bindings.bash
(для zsh путь может отличаться, смотри документацию пакета)
Перезапускаешь шелл — и теперь Ctrl+R открывает интерактивное окно поиска прямо в терминале. Начинаешь печатать любое слово из команды — список фильтруется в реальном времени. Нашёл нужное — Enter, и команда вставляется в строку ввода. Можно ещё отредактировать перед запуском.
Это не всё. fzf цепляется и к Ctrl+T — интерактивный поиск файлов в текущей директории. И к Alt+C — быстрый переход в любую поддиректорию без cd и табов.
Казалось бы, мелочь. Но когда перестаёшь тратить время на листание истории стрелками и вспоминание точного синтаксиса — замечаешь, насколько быстрее идёт работа.
Особенно ценно, если работаешь на нескольких серверах по SSH и история у каждого своя. fzf одинаково хорошо работает везде, где его поставил.
Попробуй один день с ним — обратно уже не захочешь 🙂
📍 Подпишись на создателей: https://t.me/linuxexex
📰 /cyb/+/psg/: Кибerpunk, безопасность и приватность
«Чем дальше общество отдаляется от правды, тем сильнее оно будет ненавидеть тех, кто её говорит.»
— Джордж Оруэлл
> Кибerpunk
FAQ: https://archive.is/mkDpa
Что такое /cyb/erpunk?: https://pastebin.com/pmn9vzWZ
Как войти в /cyb/erpunk?: https://pastebin.com/5tpNFQds
Огромный список киберпанк-медиа: https://archive.is/6pQt6
Cyberdeck: https://pastebin.com/7fE4BVBg
Cyberlife: https://jinteki.industries/files/cyberlife.7z
Библиотека (Bibliothek): https://www.mediafire.com/folder/4m5hd2065hde8/Bibliothek
> Сети
Tor: https://www.torproject.org/download/
I2P: https://i2p.net/en/
Freenet: https://www.hyphanet.org/
> Приватность
Инструменты: https://www.privacyguides.org/en/tools/
Железо с открытым ПО: https://ryf.fsf.org/products
Приватные фронтенды: https://igwiki.lyci.de/wiki/Privacy_friendly_frontends
Гайд по OSINT: https://inteltechniques.com/index.html
Прошивки: https://libreboot.org/
РМС о Facebook: https://stallman.org/facebook.html
Проверь, утекли ли твои данные: https://haveibeenpwned.com/
> Безопасность
«Всё стало серьёзно»: https://pastebin.com/rqrLK6X0
Основы кибербезопасности: https://igwiki.lyci.de/wiki/Cybersecurity_-_/sec/_guide
Базовый арсенал: https://igwiki.lyci.de/wiki/Cybersecurity_-_basics_and_armory
Обучение / новости / CTF: https://igwiki.lyci.de/wiki/Cybersecurity_-_Learning/News/CTFs
PDF-подборка /sec/: https://mega.nz/#F!zGJT1QQQ!O-8yiH845GN26ajAvkoLkA
EFF — самозащита от слежки: https://ssd.eff.org/
Дополнительная библиотека: https://mega.nz/file/UCgEGAjb#rwNcnMAQCUUbSp8supsFvn9QEHCWUW86eLcZa16ZG4Y
Актуальные ссылки для удаления себя из баз данных брокеров:
https://pastebin.com/cDbDXQvh
https://pastebin.com/raw/cDbDXQvh
Источник (4chan /g/): https://boards.4chan.org/g/thread/109387207
📍 Подпишись на создателей: https://t.me/linuxexex
«Чем дальше общество отдаляется от правды, тем сильнее оно будет ненавидеть тех, кто её говорит.»
— Джордж Оруэлл
> Кибerpunk
FAQ: https://archive.is/mkDpa
Что такое /cyb/erpunk?: https://pastebin.com/pmn9vzWZ
Как войти в /cyb/erpunk?: https://pastebin.com/5tpNFQds
Огромный список киберпанк-медиа: https://archive.is/6pQt6
Cyberdeck: https://pastebin.com/7fE4BVBg
Cyberlife: https://jinteki.industries/files/cyberlife.7z
Библиотека (Bibliothek): https://www.mediafire.com/folder/4m5hd2065hde8/Bibliothek
> Сети
Tor: https://www.torproject.org/download/
I2P: https://i2p.net/en/
Freenet: https://www.hyphanet.org/
> Приватность
Инструменты: https://www.privacyguides.org/en/tools/
Железо с открытым ПО: https://ryf.fsf.org/products
Приватные фронтенды: https://igwiki.lyci.de/wiki/Privacy_friendly_frontends
Гайд по OSINT: https://inteltechniques.com/index.html
Прошивки: https://libreboot.org/
РМС о Facebook: https://stallman.org/facebook.html
Проверь, утекли ли твои данные: https://haveibeenpwned.com/
> Безопасность
«Всё стало серьёзно»: https://pastebin.com/rqrLK6X0
Основы кибербезопасности: https://igwiki.lyci.de/wiki/Cybersecurity_-_/sec/_guide
Базовый арсенал: https://igwiki.lyci.de/wiki/Cybersecurity_-_basics_and_armory
Обучение / новости / CTF: https://igwiki.lyci.de/wiki/Cybersecurity_-_Learning/News/CTFs
PDF-подборка /sec/: https://mega.nz/#F!zGJT1QQQ!O-8yiH845GN26ajAvkoLkA
EFF — самозащита от слежки: https://ssd.eff.org/
Дополнительная библиотека: https://mega.nz/file/UCgEGAjb#rwNcnMAQCUUbSp8supsFvn9QEHCWUW86eLcZa16ZG4Y
Актуальные ссылки для удаления себя из баз данных брокеров:
https://pastebin.com/cDbDXQvh
https://pastebin.com/raw/cDbDXQvh
Источник (4chan /g/): https://boards.4chan.org/g/thread/109387207
📍 Подпишись на создателей: https://t.me/linuxexex
archive.is
The alt.cyberpunk FAQ - sizeof(cat)
archived 26 Jun 2025 19:48:57 UTC
Один лайфхак для терминала, который я использую каждый день
Если ты часто работаешь в терминале, то наверняка знаешь эту боль — набираешь длинную команду, понимаешь что ошибся в начале строки, и начинаешь долбить стрелку влево или зажимаешь Backspace.
Стоп. Есть способ лучше.
Ctrl+A — переходит в начало строки
Ctrl+E — переходит в конец строки
Ctrl+W — удаляет слово слева от курсора
Alt+B — прыгает на слово назад
Alt+F — прыгает на слово вперёд
Это базовые шорткаты bash/readline, которые работают везде — в zsh, fish (частично), в psql, python REPL, даже в gdb.
Но вот лайфхак, который реально меняет жизнь 👇
Набери в терминале:
set -o vi
Теперь твой bash работает в vi-режиме. Нажимаешь Esc — и ты в командном режиме. Жмёшь b, w, 0, $, x, dd — всё как в vim, прямо в строке ввода. Хочешь отредактировать длинную команду по-человечески — нажимаешь v, и она открывается в полноценном редакторе.
Назад к обычному режиму:
set -o emacs
Чтобы vi-режим сохранился навсегда, добавь в ~/.bashrc:
set -o vi
Если ты уже на vi-режиме — есть ещё один трюк. Нажми Esc, потом k — и ты листаешь историю команд в стиле vim. Нажми / — и можешь искать по истории как в vim-поиске.
Бонус для тех, кто не хочет vi-режим, но хочет удобный поиск по истории:
Ctrl+R — интерактивный поиск назад по истории. Начинаешь вводить фрагмент команды — терминал сам находит последнее совпадение. Ctrl+R ещё раз — следующее совпадение.
Это, пожалуй, самый недооценённый шорткат вообще. Люди по 5 лет работают в Linux и не знают про Ctrl+R 🙈
Попробуй прямо сейчас — Ctrl+R и начни вводить docker или git. Увидишь магию.
📍 Подпишись на создателей: https://t.me/linuxexex
Если ты часто работаешь в терминале, то наверняка знаешь эту боль — набираешь длинную команду, понимаешь что ошибся в начале строки, и начинаешь долбить стрелку влево или зажимаешь Backspace.
Стоп. Есть способ лучше.
Ctrl+A — переходит в начало строки
Ctrl+E — переходит в конец строки
Ctrl+W — удаляет слово слева от курсора
Alt+B — прыгает на слово назад
Alt+F — прыгает на слово вперёд
Это базовые шорткаты bash/readline, которые работают везде — в zsh, fish (частично), в psql, python REPL, даже в gdb.
Но вот лайфхак, который реально меняет жизнь 👇
Набери в терминале:
set -o vi
Теперь твой bash работает в vi-режиме. Нажимаешь Esc — и ты в командном режиме. Жмёшь b, w, 0, $, x, dd — всё как в vim, прямо в строке ввода. Хочешь отредактировать длинную команду по-человечески — нажимаешь v, и она открывается в полноценном редакторе.
Назад к обычному режиму:
set -o emacs
Чтобы vi-режим сохранился навсегда, добавь в ~/.bashrc:
set -o vi
Если ты уже на vi-режиме — есть ещё один трюк. Нажми Esc, потом k — и ты листаешь историю команд в стиле vim. Нажми / — и можешь искать по истории как в vim-поиске.
Бонус для тех, кто не хочет vi-режим, но хочет удобный поиск по истории:
Ctrl+R — интерактивный поиск назад по истории. Начинаешь вводить фрагмент команды — терминал сам находит последнее совпадение. Ctrl+R ещё раз — следующее совпадение.
Это, пожалуй, самый недооценённый шорткат вообще. Люди по 5 лет работают в Linux и не знают про Ctrl+R 🙈
Попробуй прямо сейчас — Ctrl+R и начни вводить docker или git. Увидишь магию.
📍 Подпишись на создателей: https://t.me/linuxexex
Расскажу про одну штуку в bash и zsh, которую большинство людей просто не замечают, хотя пользуются терминалом каждый день.
Это модификаторы истории. Знак восклицательного знака — не только для эмоций 😄
Допустим, ты только что запустил длинную команду:
rsync -avz --progress /home/user/projects/ backup@192.168.1.100:/mnt/backup/
И теперь хочешь повторить её, но с другим путём. Можно стрелку вверх, потом долго ёлозить курсором. А можно вот так:
!! — повторяет последнюю команду целиком. Классика, многие знают.
Но вот что знают единицы:
!$ — последний аргумент предыдущей команды.
Пример. Создал директорию и хочешь сразу в неё зайти:
mkdir /tmp/very/long/path/here
cd !$
Всё, не надо ничего перепечатывать. !$ подставит /tmp/very/long/path/here автоматически.
!^ — первый аргумент. Если аргументов несколько и нужен самый первый — вот он.
!:2, !:3 и так далее — конкретный аргумент по номеру. Нумерация с нуля, где 0 — сама команда, 1 — первый аргумент и так далее.
Например:
cp file1.txt file2.txt file3.txt /destination/
!:1 вернёт file1.txt, !:2 — file2.txt, и так далее.
!:1-3 — диапазон аргументов. В примере выше вернёт file1.txt file2.txt file3.txt без пути назначения.
!:* — все аргументы без самой команды. Удобно когда хочешь выполнить другую команду с теми же файлами.
Ещё одна вещь — модификатор замены ^старое^новое^
Опечатался в команде:
git comit -m "fix"
Жмёшь Enter, получаешь ошибку. Вместо того чтобы лезть в историю, просто:
^comit^commit^
bash/zsh возьмёт последнюю команду и заменит первое вхождение. Готово.
И последнее — !строка
!git найдёт последнюю команду, которая начиналась на git, и выполнит её. Без лишних поисков по истории.
!?строка? — то же самое, но ищет вхождение строки в любом месте команды, не только в начале.
Всё это работает в bash и zsh одинаково. В zsh ещё есть глобальные псевдонимы и расширения, но это уже отдельная история.
Попробуй !$ прямо сейчас — это одна из тех вещей, после которых уже не понимаешь, как жил без неё раньше 🐚
📍 Подпишись на создателей: https://t.me/linuxexex
Это модификаторы истории. Знак восклицательного знака — не только для эмоций 😄
Допустим, ты только что запустил длинную команду:
rsync -avz --progress /home/user/projects/ backup@192.168.1.100:/mnt/backup/
И теперь хочешь повторить её, но с другим путём. Можно стрелку вверх, потом долго ёлозить курсором. А можно вот так:
!! — повторяет последнюю команду целиком. Классика, многие знают.
Но вот что знают единицы:
!$ — последний аргумент предыдущей команды.
Пример. Создал директорию и хочешь сразу в неё зайти:
mkdir /tmp/very/long/path/here
cd !$
Всё, не надо ничего перепечатывать. !$ подставит /tmp/very/long/path/here автоматически.
!^ — первый аргумент. Если аргументов несколько и нужен самый первый — вот он.
!:2, !:3 и так далее — конкретный аргумент по номеру. Нумерация с нуля, где 0 — сама команда, 1 — первый аргумент и так далее.
Например:
cp file1.txt file2.txt file3.txt /destination/
!:1 вернёт file1.txt, !:2 — file2.txt, и так далее.
!:1-3 — диапазон аргументов. В примере выше вернёт file1.txt file2.txt file3.txt без пути назначения.
!:* — все аргументы без самой команды. Удобно когда хочешь выполнить другую команду с теми же файлами.
Ещё одна вещь — модификатор замены ^старое^новое^
Опечатался в команде:
git comit -m "fix"
Жмёшь Enter, получаешь ошибку. Вместо того чтобы лезть в историю, просто:
^comit^commit^
bash/zsh возьмёт последнюю команду и заменит первое вхождение. Готово.
И последнее — !строка
!git найдёт последнюю команду, которая начиналась на git, и выполнит её. Без лишних поисков по истории.
!?строка? — то же самое, но ищет вхождение строки в любом месте команды, не только в начале.
Всё это работает в bash и zsh одинаково. В zsh ещё есть глобальные псевдонимы и расширения, но это уже отдельная история.
Попробуй !$ прямо сейчас — это одна из тех вещей, после которых уже не понимаешь, как жил без неё раньше 🐚
📍 Подпишись на создателей: https://t.me/linuxexex
⚡ Терминальный лайфхак: Ctrl+R
Вместо того чтобы листать историю стрелкой вверх, нажми Ctrl+R и начни вводить кусок старой команды.
Например, вводишь ssh или docker, и shell сразу ищет совпадение в истории. Ещё одно Ctrl+R — следующее совпадение.
Это особенно удобно для длинных команд с флагами, путями и портами.
Бонус: в zsh можно усилить поиск через fzf, но даже встроенный Ctrl+R уже заметно ускоряет работу.
📍 Подпишись на создателей: https://t.me/linuxexex
Вместо того чтобы листать историю стрелкой вверх, нажми Ctrl+R и начни вводить кусок старой команды.
Например, вводишь ssh или docker, и shell сразу ищет совпадение в истории. Ещё одно Ctrl+R — следующее совпадение.
Это особенно удобно для длинных команд с флагами, путями и портами.
Бонус: в zsh можно усилить поиск через fzf, но даже встроенный Ctrl+R уже заметно ускоряет работу.
📍 Подпишись на создателей: https://t.me/linuxexex
📰 JPEG XL [JXL] Thread
JPEG XL - Новый свободный формат изображений, который мы заслуживаем.
Из распространённых форматов на сегодняшний день мы имеем старый добрый JPEG, который немного омолодила Mozilla, когда выпустила кодировщик MOZ JPEG; PNG (для изображений без потерь) и GIF, который давно пора отправить на свалку истории.
Также есть несколько относительно свежих форматов изображений, которые являются побочным продуктом, полученным при разработки видеокодеков. К примеру HEIС (HEIF) который так любит Apple происходит из видеокодека HEVC. Та же история с форматами WebP и AVIF, которые произошли из VP9 (VP8) и AV1 соответственно.
Но так как эти кодировщики делались изначально для видео, они концептуально не настолько эффективны для хранения изображений.
Джва года назад собрались компании Google и JPEG и решили, что так дальше дела не могут идти и создали новый свободный формат, который должен стать новым мировым стандартом, как когда-то стал JPEG. И у него есть все шансы. Он одновременно может заменить JPEG, в случаях сжатия с потерями (например фотки), PNG, в случаях сжатия без потерь (скриншоты), GIF (коротенькие анимации), ведь он может это всё гораздо лучше их самих.
Основные фичи формата:
- Сжимает на 60% лучше, чем JPEG.
- Сжимает без потерь на 35% лучше, чем PNG.
- Он может транскодировать jpeg изображение без потерь туда и обратно. Транскодированное JPEG XL изображение весит на ~20% меньше оригинала. Это значит, что можно спокойно пережать все свои фотки, не потеряв ни бита информации. Таким больше никто не может похвастаться.
- Поддержка прогрессивного декодирования (актуально для веба. Наполовину загруженная пикча уже выглядит хорошо)
- Анимации (замена гифок).
- Почти полнота по Тьюрингу (если бы не ограничения на максимальный размер обрабатываемых пикселей). Это позволит почти бесконечно оптимизировать формат. Пикрил в формате JPEG XL весит всего 117 байтов! И по факту является программой по его генерации, написанной вручную. Больше подобных пикч можно найти в комьюнити Discord сервере.
- Свободный формат, а это значит, что его может использовать кто и как угодно. Его уже можно активировать в Chrome, если включить флаг enable-jxl, и в ночных сборках Firefox. Также его поддержка уже добавлена в Gnome. Для винды тоже есть вьюеры. Про Plasma вообще без понятия (скорее всего тоже есть).
Сайт сообщества: https://jpegxl.info/ https://jpegxl.info/
Там все нужные ссылки, картинки и более подробное объяснение всего.
Источник (2ch /s/): https://2ch.org/s/res/3213710.html
📍 Подпишись на создателей: https://t.me/linuxexex
JPEG XL - Новый свободный формат изображений, который мы заслуживаем.
Из распространённых форматов на сегодняшний день мы имеем старый добрый JPEG, который немного омолодила Mozilla, когда выпустила кодировщик MOZ JPEG; PNG (для изображений без потерь) и GIF, который давно пора отправить на свалку истории.
Также есть несколько относительно свежих форматов изображений, которые являются побочным продуктом, полученным при разработки видеокодеков. К примеру HEIС (HEIF) который так любит Apple происходит из видеокодека HEVC. Та же история с форматами WebP и AVIF, которые произошли из VP9 (VP8) и AV1 соответственно.
Но так как эти кодировщики делались изначально для видео, они концептуально не настолько эффективны для хранения изображений.
Джва года назад собрались компании Google и JPEG и решили, что так дальше дела не могут идти и создали новый свободный формат, который должен стать новым мировым стандартом, как когда-то стал JPEG. И у него есть все шансы. Он одновременно может заменить JPEG, в случаях сжатия с потерями (например фотки), PNG, в случаях сжатия без потерь (скриншоты), GIF (коротенькие анимации), ведь он может это всё гораздо лучше их самих.
Основные фичи формата:
- Сжимает на 60% лучше, чем JPEG.
- Сжимает без потерь на 35% лучше, чем PNG.
- Он может транскодировать jpeg изображение без потерь туда и обратно. Транскодированное JPEG XL изображение весит на ~20% меньше оригинала. Это значит, что можно спокойно пережать все свои фотки, не потеряв ни бита информации. Таким больше никто не может похвастаться.
- Поддержка прогрессивного декодирования (актуально для веба. Наполовину загруженная пикча уже выглядит хорошо)
- Анимации (замена гифок).
- Почти полнота по Тьюрингу (если бы не ограничения на максимальный размер обрабатываемых пикселей). Это позволит почти бесконечно оптимизировать формат. Пикрил в формате JPEG XL весит всего 117 байтов! И по факту является программой по его генерации, написанной вручную. Больше подобных пикч можно найти в комьюнити Discord сервере.
- Свободный формат, а это значит, что его может использовать кто и как угодно. Его уже можно активировать в Chrome, если включить флаг enable-jxl, и в ночных сборках Firefox. Также его поддержка уже добавлена в Gnome. Для винды тоже есть вьюеры. Про Plasma вообще без понятия (скорее всего тоже есть).
Сайт сообщества: https://jpegxl.info/ https://jpegxl.info/
Там все нужные ссылки, картинки и более подробное объяснение всего.
Источник (2ch /s/): https://2ch.org/s/res/3213710.html
📍 Подпишись на создателей: https://t.me/linuxexex
jpegxl.info
JPEG XL: Superior Image Compression
Explore JPEG XL, the next-generation image format delivering superior compression, fast encoding/decoding, and seamless JPEG transcoding. The future of image compression is here.
📜 Open source факт: Linux начинался не как «большой проект»
В 1991 году Линус Торвальдс выложил ядро как личный эксперимент для своего компьютера. Никакого плана захватить серверы, облака, Android и embedded-мир тогда не было.
Сила Linux оказалась не только в коде, а в модели разработки: тысячи людей могли читать, чинить, портировать и улучшать систему под свои задачи.
Итог: сегодня Linux работает в серверах, роутерах, телефонах, суперкомпьютерах и куче устройств, о которых пользователь даже не думает.
📍 Подпишись на создателей: https://t.me/linuxexex
В 1991 году Линус Торвальдс выложил ядро как личный эксперимент для своего компьютера. Никакого плана захватить серверы, облака, Android и embedded-мир тогда не было.
Сила Linux оказалась не только в коде, а в модели разработки: тысячи людей могли читать, чинить, портировать и улучшать систему под свои задачи.
Итог: сегодня Linux работает в серверах, роутерах, телефонах, суперкомпьютерах и куче устройств, о которых пользователь даже не думает.
📍 Подпишись на создателей: https://t.me/linuxexex
Совет по безопасности, который многие игнорируют 🔐
Вы когда-нибудь запускали скрипт из интернета вот так:
curl https://example.com/install.sh | bash
Да, это удобно. Да, так делают почти все туториалы. И да, это один из самых рискованных способов что-либо установить.
Проблема в том, что вы не видите, что именно выполняется. Скрипт может вести себя по-разному в зависимости от того, качаете вы его или пайпите напрямую в bash — некоторые авторы вредоносов это учитывают. Скачанный файл будет выглядеть безобидно, а в реальном выполнении сделает что-то совсем другое.
Как надо делать:
Сначала скачать, потом читать, потом запускать.
curl -O https://example.com/install.sh
less install.sh
bash install.sh
Да, это три команды вместо одной. Зато вы знаете, что именно запускаете.
Ещё несколько вещей, которые стоит держать в голове 👇
sudo без понимания — зло. Перед тем как дать скрипту рут-права, убедитесь, что он реально их требует и вы понимаете зачем.
umask по умолчанию часто слишком мягкий. Проверьте командой umask — если видите 0022, новые файлы создаются с правами 644, а директории с 755. Для домашних каталогов лучше поставить 0077, тогда файлы будут доступны только вам.
SSH без пароля — это норм, но только если ключи хранятся правильно. Права на ~/.ssh должны быть 700, на authorized_keys — 600. Иначе SSH просто проигнорирует файл.
Проверяйте, кто слушает порты. Команда ss -tlnp покажет, какие процессы висят на каких портах. Иногда после установки какого-нибудь пакета неожиданно обнаруживается сервис, смотрящий наружу.
И последнее — AppArmor или SELinux. Многие отключают их сразу после установки системы, потому что они мешают. Но именно они ограничивают ущерб, если что-то пойдёт не так. Лучше потратить время на настройку профилей, чем потом разбираться с последствиями.
Безопасность — это не паранойя, это привычка 🛡️
📍 Подпишись на создателей: https://t.me/linuxexex
Вы когда-нибудь запускали скрипт из интернета вот так:
curl https://example.com/install.sh | bash
Да, это удобно. Да, так делают почти все туториалы. И да, это один из самых рискованных способов что-либо установить.
Проблема в том, что вы не видите, что именно выполняется. Скрипт может вести себя по-разному в зависимости от того, качаете вы его или пайпите напрямую в bash — некоторые авторы вредоносов это учитывают. Скачанный файл будет выглядеть безобидно, а в реальном выполнении сделает что-то совсем другое.
Как надо делать:
Сначала скачать, потом читать, потом запускать.
curl -O https://example.com/install.sh
less install.sh
bash install.sh
Да, это три команды вместо одной. Зато вы знаете, что именно запускаете.
Ещё несколько вещей, которые стоит держать в голове 👇
sudo без понимания — зло. Перед тем как дать скрипту рут-права, убедитесь, что он реально их требует и вы понимаете зачем.
umask по умолчанию часто слишком мягкий. Проверьте командой umask — если видите 0022, новые файлы создаются с правами 644, а директории с 755. Для домашних каталогов лучше поставить 0077, тогда файлы будут доступны только вам.
SSH без пароля — это норм, но только если ключи хранятся правильно. Права на ~/.ssh должны быть 700, на authorized_keys — 600. Иначе SSH просто проигнорирует файл.
Проверяйте, кто слушает порты. Команда ss -tlnp покажет, какие процессы висят на каких портах. Иногда после установки какого-нибудь пакета неожиданно обнаруживается сервис, смотрящий наружу.
И последнее — AppArmor или SELinux. Многие отключают их сразу после установки системы, потому что они мешают. Но именно они ограничивают ущерб, если что-то пойдёт не так. Лучше потратить время на настройку профилей, чем потом разбираться с последствиями.
Безопасность — это не паранойя, это привычка 🛡️
📍 Подпишись на создателей: https://t.me/linuxexex
📰 Расследование о бандах грумеров опубликовано — всё хуже, чем вы думали
Британский депутат Руперт Лоу опубликовал масштабный независимый доклад о бандах грумеров в Великобритании. Доклад получил название «Расследование банд насильников» (The Rape Gang Inquiry), вышел 16 июня, насчитывает около 218 страниц и основан на показаниях выживших, судебных материалах и предыдущих расследованиях.
Лоу, возглавляющий движение Restore Britain (ранее — Reform UK), руководил расследованием. Финансирование шло за счёт публичного краудфандинга.
Согласно докладу, организованные банды насильников действовали как минимум в 149 районах местного самоуправления. При этом полиция, социальные службы, школы, медицинские учреждения и политики намеренно не защищали уязвимых девочек, что позволило подвергнуть около 250 000 из них многократным изнасилованиям, групповому насилию, торговле людьми, пыткам, принудительному обращению в другую веру — с пожизненными психологическими последствиями.
В докладе описывается чудовищное насилие на протяжении многих лет в таких городах, как Ротерем, Рочдейл, Телфорд и десятках других мест. Выжившие дали шокирующие показания о насилии, торговле людьми, наркотиках и пытках. Большинство насильников — мужчины пакистанского мусульманского происхождения. Банды намеренно выбирали уязвимых девочек из неблагополучных семей.
Источник (4chan /news/): https://boards.4chan.org/news/thread/1520026
📍 Подпишись на создателей: https://t.me/linuxexex
Британский депутат Руперт Лоу опубликовал масштабный независимый доклад о бандах грумеров в Великобритании. Доклад получил название «Расследование банд насильников» (The Rape Gang Inquiry), вышел 16 июня, насчитывает около 218 страниц и основан на показаниях выживших, судебных материалах и предыдущих расследованиях.
Лоу, возглавляющий движение Restore Britain (ранее — Reform UK), руководил расследованием. Финансирование шло за счёт публичного краудфандинга.
Согласно докладу, организованные банды насильников действовали как минимум в 149 районах местного самоуправления. При этом полиция, социальные службы, школы, медицинские учреждения и политики намеренно не защищали уязвимых девочек, что позволило подвергнуть около 250 000 из них многократным изнасилованиям, групповому насилию, торговле людьми, пыткам, принудительному обращению в другую веру — с пожизненными психологическими последствиями.
В докладе описывается чудовищное насилие на протяжении многих лет в таких городах, как Ротерем, Рочдейл, Телфорд и десятках других мест. Выжившие дали шокирующие показания о насилии, торговле людьми, наркотиках и пытках. Большинство насильников — мужчины пакистанского мусульманского происхождения. Банды намеренно выбирали уязвимых девочек из неблагополучных семей.
Источник (4chan /news/): https://boards.4chan.org/news/thread/1520026
📍 Подпишись на создателей: https://t.me/linuxexex
boards.4chan.org
/news/ - Grooming Gang Inquiry Released: It's Worse Than you Think - Current News - 4chan
Grooming Gang Inquiry Released: It's Worse Than you Think - "/news/ - Current News; is 4chan's board for current news.
Знаешь, откуда взялось название «Linux»?
Линус Торвальдс изначально хотел назвать своё ядро Freax — от слов free, freak и unix. Серьёзно. Именно под таким именем он и хранил файлы у себя на диске в 1991 году.
Но когда его друг Ари Лемке предоставил Линусу место на FTP-сервере Хельсинкского университета, чтобы опубликовать исходники, он без ведома Торвальдса назвал директорию linux. Ари счёл Freax слишком странным названием и самовольно использовал рабочее прозвище проекта — то, как Линус называл ядро в личной переписке.
Торвальдс поначалу был против. Он думал, что название Linux звучит слишком самонадеянно и эгоистично — типа называть проект своим именем. Но потом смирился. А дальше имя просто прижилось само собой — люди начали его использовать, и переименовывать что-либо уже не имело смысла.
Так что если бы не решение одного человека на FTP-сервере в Финляндии, мы сегодня могли бы запускать Freax, писать скрипты для Freax и спорить, произносить ли букву «x» на конце 😄
Маленькие случайные решения иногда меняют историю целой индустрии.
📍 Подпишись на создателей: https://t.me/linuxexex
Линус Торвальдс изначально хотел назвать своё ядро Freax — от слов free, freak и unix. Серьёзно. Именно под таким именем он и хранил файлы у себя на диске в 1991 году.
Но когда его друг Ари Лемке предоставил Линусу место на FTP-сервере Хельсинкского университета, чтобы опубликовать исходники, он без ведома Торвальдса назвал директорию linux. Ари счёл Freax слишком странным названием и самовольно использовал рабочее прозвище проекта — то, как Линус называл ядро в личной переписке.
Торвальдс поначалу был против. Он думал, что название Linux звучит слишком самонадеянно и эгоистично — типа называть проект своим именем. Но потом смирился. А дальше имя просто прижилось само собой — люди начали его использовать, и переименовывать что-либо уже не имело смысла.
Так что если бы не решение одного человека на FTP-сервере в Финляндии, мы сегодня могли бы запускать Freax, писать скрипты для Freax и спорить, произносить ли букву «x» на конце 😄
Маленькие случайные решения иногда меняют историю целой индустрии.
📍 Подпишись на создателей: https://t.me/linuxexex
Вот фишка, которую большинство узнаёт случайно спустя годы работы в терминале.
В bash и zsh есть встроенная замена подстрок прямо внутри переменных. Никаких sed, никаких awk — просто фигурные скобки и немного магии.
Допустим, у тебя есть переменная:
file="hello_world_2024.log"
Хочешь заменить первое вхождение подстроки:
echo ${file/world/linux}
→ hello_linux_2024.log
Хочешь заменить все вхождения сразу — ставишь двойной слеш:
str="aaa_bbb_aaa"
echo ${str//aaa/xxx}
→ xxx_bbb_xxx
Это работает прямо в присваивании, в цикле, в условии — везде, где живёт переменная.
Но это ещё не всё. Там целый маленький язык:
${var#prefix} — срезать короткий префикс
${var##prefix} — срезать длинный (жадный) префикс
${var%suffix} — срезать короткий суффикс
${var%%suffix} — срезать длинный суффикс
Пример из реальной жизни. Нужно сменить расширение у файла:
f="report.txt"
echo "${f%.txt}.pdf"
→ report.pdf
Или вытащить имя файла без пути (аналог basename, но без fork):
path="/home/user/docs/notes.md"
echo "${path##*/}"
→ notes.md
Или наоборот — только директорию (аналог dirname):
echo "${path%/*}"
→ /home/user/docs
Всё это работает без запуска отдельных процессов. В скриптах, где обрабатываются тысячи файлов в цикле, это реально ускоряет работу — каждый вызов basename или sed это fork, а встроенная замена это просто операция в памяти текущего шелла.
Ещё один приятный трюк — приведение регистра (zsh и bash 4+):
name="Hello World"
echo ${name,,} → hello world
echo ${name^^} → HELLO WORLD
echo ${name^} → Hello world (только первый символ)
На маках с дефолтным bash 3 это не работает, но если поставить нормальный bash через homebrew или пользоваться zsh — всё ок.
Почему об этом мало говорят? Потому что все сразу тянутся к sed и awk — они мощнее, документация лучше, примеры везде. А эта встроенщина выглядит как синтаксический шум и пугает новичков. Но как только привыкаешь — обратно не хочется.
Сохрани себе, пригодится в следующем скрипте 🐚
📍 Подпишись на создателей: https://t.me/linuxexex
В bash и zsh есть встроенная замена подстрок прямо внутри переменных. Никаких sed, никаких awk — просто фигурные скобки и немного магии.
Допустим, у тебя есть переменная:
file="hello_world_2024.log"
Хочешь заменить первое вхождение подстроки:
echo ${file/world/linux}
→ hello_linux_2024.log
Хочешь заменить все вхождения сразу — ставишь двойной слеш:
str="aaa_bbb_aaa"
echo ${str//aaa/xxx}
→ xxx_bbb_xxx
Это работает прямо в присваивании, в цикле, в условии — везде, где живёт переменная.
Но это ещё не всё. Там целый маленький язык:
${var#prefix} — срезать короткий префикс
${var##prefix} — срезать длинный (жадный) префикс
${var%suffix} — срезать короткий суффикс
${var%%suffix} — срезать длинный суффикс
Пример из реальной жизни. Нужно сменить расширение у файла:
f="report.txt"
echo "${f%.txt}.pdf"
→ report.pdf
Или вытащить имя файла без пути (аналог basename, но без fork):
path="/home/user/docs/notes.md"
echo "${path##*/}"
→ notes.md
Или наоборот — только директорию (аналог dirname):
echo "${path%/*}"
→ /home/user/docs
Всё это работает без запуска отдельных процессов. В скриптах, где обрабатываются тысячи файлов в цикле, это реально ускоряет работу — каждый вызов basename или sed это fork, а встроенная замена это просто операция в памяти текущего шелла.
Ещё один приятный трюк — приведение регистра (zsh и bash 4+):
name="Hello World"
echo ${name,,} → hello world
echo ${name^^} → HELLO WORLD
echo ${name^} → Hello world (только первый символ)
На маках с дефолтным bash 3 это не работает, но если поставить нормальный bash через homebrew или пользоваться zsh — всё ок.
Почему об этом мало говорят? Потому что все сразу тянутся к sed и awk — они мощнее, документация лучше, примеры везде. А эта встроенщина выглядит как синтаксический шум и пугает новичков. Но как только привыкаешь — обратно не хочется.
Сохрани себе, пригодится в следующем скрипте 🐚
📍 Подпишись на создателей: https://t.me/linuxexex
watch — команда, которую знают не все, но потом не могут без неё жить
Суть простая: watch запускает любую команду повторно с заданным интервалом и выводит результат прямо в терминале. Никаких скриптов с while true, никаких sleep — одна строчка и готово.
Базовый пример:
watch df -h
Теперь использование дискового пространства обновляется каждые 2 секунды. Видишь изменения в реальном времени.
Полезные флаги:
-n — задать интервал в секундах
watch -n 5 free -m
обновление памяти каждые 5 секунд
-d — подсвечивает изменения между обновлениями. Очень удобно когда следишь за логами или счётчиками — сразу видно что именно поменялось
-t — убирает заголовок с названием команды и временем. Полезно если хочется чистый вывод
--no-title — то же самое в длинной форме
Реальные сценарии где это спасает:
Следишь за очередью задач:
watch -d -n 2 'ls -lh /var/spool/somequeue'
Мониторинг сетевых соединений:
watch -n 1 'ss -tulnp'
Наблюдаешь за процессами без htop:
watch -n 2 'ps aux --sort=-%cpu | head -15'
Ждёшь когда файл появится в директории:
watch -d ls /tmp/results/
Проверяешь температуру CPU:
watch -n 3 'cat /sys/class/thermal/thermal_zone0/temp'
Фишка которую мало кто знает — флаг -g. Он завершает watch автоматически когда вывод команды меняется. Запустил, дождался события, вышел. Удобно в скриптах.
watch -g -n 1 'cat /proc/loadavg'
Как только нагрузка изменится — watch завершится и можно делать что-то дальше.
Ограничение одно: watch не понимает алиасы из твоего .bashrc. Если нужен алиас — оборачивай в bash -c:
watch -n 2 bash -c 'твоя_команда_с_алиасом'
Инструмент простой, без магии, но экономит кучу времени когда надо за чем-то понаблюдать не городя полноценный мониторинг. Ставишь, смотришь, идёшь дальше. 👀
📍 Подпишись на создателей: https://t.me/linuxexex
Суть простая: watch запускает любую команду повторно с заданным интервалом и выводит результат прямо в терминале. Никаких скриптов с while true, никаких sleep — одна строчка и готово.
Базовый пример:
watch df -h
Теперь использование дискового пространства обновляется каждые 2 секунды. Видишь изменения в реальном времени.
Полезные флаги:
-n — задать интервал в секундах
watch -n 5 free -m
обновление памяти каждые 5 секунд
-d — подсвечивает изменения между обновлениями. Очень удобно когда следишь за логами или счётчиками — сразу видно что именно поменялось
-t — убирает заголовок с названием команды и временем. Полезно если хочется чистый вывод
--no-title — то же самое в длинной форме
Реальные сценарии где это спасает:
Следишь за очередью задач:
watch -d -n 2 'ls -lh /var/spool/somequeue'
Мониторинг сетевых соединений:
watch -n 1 'ss -tulnp'
Наблюдаешь за процессами без htop:
watch -n 2 'ps aux --sort=-%cpu | head -15'
Ждёшь когда файл появится в директории:
watch -d ls /tmp/results/
Проверяешь температуру CPU:
watch -n 3 'cat /sys/class/thermal/thermal_zone0/temp'
Фишка которую мало кто знает — флаг -g. Он завершает watch автоматически когда вывод команды меняется. Запустил, дождался события, вышел. Удобно в скриптах.
watch -g -n 1 'cat /proc/loadavg'
Как только нагрузка изменится — watch завершится и можно делать что-то дальше.
Ограничение одно: watch не понимает алиасы из твоего .bashrc. Если нужен алиас — оборачивай в bash -c:
watch -n 2 bash -c 'твоя_команда_с_алиасом'
Инструмент простой, без магии, но экономит кучу времени когда надо за чем-то понаблюдать не городя полноценный мониторинг. Ставишь, смотришь, идёшь дальше. 👀
📍 Подпишись на создателей: https://t.me/linuxexex
📰 can humans give orcas hands via genetic engineering?
Можно ли дать косаткам руки с помощью генной инженерии?
Создали бы косатки космическую цивилизацию, если бы у них были руки?
Источник (4chan /sci/): https://boards.4chan.org/sci/thread/17024830
📍 Подпишись на создателей: https://t.me/linuxexex
Можно ли дать косаткам руки с помощью генной инженерии?
Создали бы косатки космическую цивилизацию, если бы у них были руки?
Источник (4chan /sci/): https://boards.4chan.org/sci/thread/17024830
📍 Подпишись на создателей: https://t.me/linuxexex
boards.4chan.org
/sci/ - can humans give orcas hands via genetic engineerin - Science & Math - 4chan
can humans give orcas hands via genetic engineering? - "/sci/ - Science & Math" is 4chan's board for the discussion of science and math.
Один и тот же ноутбук, четыре дистрибутива. Смотрим, кто как себя ведёт 🖥️
Взял старый ThinkPad X220: Core i5-2520M, 8 ГБ RAM, SSD 120 ГБ. Задача — поставить систему, настроить окружение разработчика (git, Python, Docker, VSCode), и замерить что получилось. Без лирики, только факты.
Ubuntu 22.04 LTS
Установка — 12 минут, всё нашлось само. Docker из коробки ставится через apt без танцев. Python 3.10 есть сразу. Но система жрёт около 900 МБ RAM в простое — это Gnome с кучей фоновых служб. Snap раздражает: VSCode через snap стартует на 3-4 секунды дольше, чем через deb. В целом — приходишь и работаешь, не думаешь о системе.
Fedora 38
Установка — 14 минут. SELinux включён по умолчанию, и первые полчаса ты с ним знакомишься вплотную, когда Docker отказывается монтировать volumes. Решается через `setsebool -P container_manage_cgroup 1` и ещё пара команд. RAM в простое — ~750 МБ. Dnf работает медленнее apt субъективно, но зато пакеты свежее. Fedora — это Ubuntu для тех, кто хочет чуть поближе к ядру, но не готов страдать по-настоящему.
Arch Linux
Установка — 40 минут если знаешь что делаешь, и это с archinstall. RAM в простое — 380 МБ (поставил i3, минималистично). Всё свежее, AUR закрывает любые пробелы. Docker, git, Python, VSCode — всё ставится ровно в той версии, которая нужна. Но: обновление через полгода сломало nvidia-драйвер, пришлось разбираться. Arch — это когда ты хочешь контролировать каждый байт и готов платить временем.
Debian 12 Bookworm
Установка — 10 минут, самая быстрая. RAM в простое — ~600 МБ. Стабильность железобетонная. Но Python тут 3.11, Docker из официального репо подключается вручную, и некоторые пакеты ощутимо старее. На продакшн-сервере — идеал. На рабочей машине разработчика — немного скучно и иногда приходится тянуть что-то из backports или собирать руками.
Итого по RAM в простое:
Arch (i3) — 380 МБ
Debian (Xfce) — 600 МБ
Fedora (Gnome) — 750 МБ
Ubuntu (Gnome) — 900 МБ
Время до рабочего окружения (установка + настройка dev-инструментов):
Ubuntu — ~25 минут
Debian — ~35 минут
Fedora — ~40 минут с SELinux
Arch — ~70 минут
Вывод простой: если нужно просто работать — Ubuntu или Debian. Если нравится держать руку на пульсе — Fedora. Если хочешь систему под себя и не жалко времени — Arch.
Какой у вас основной дистр на рабочей машине? 👇
📍 Подпишись на создателей: https://t.me/linuxexex
Взял старый ThinkPad X220: Core i5-2520M, 8 ГБ RAM, SSD 120 ГБ. Задача — поставить систему, настроить окружение разработчика (git, Python, Docker, VSCode), и замерить что получилось. Без лирики, только факты.
Ubuntu 22.04 LTS
Установка — 12 минут, всё нашлось само. Docker из коробки ставится через apt без танцев. Python 3.10 есть сразу. Но система жрёт около 900 МБ RAM в простое — это Gnome с кучей фоновых служб. Snap раздражает: VSCode через snap стартует на 3-4 секунды дольше, чем через deb. В целом — приходишь и работаешь, не думаешь о системе.
Fedora 38
Установка — 14 минут. SELinux включён по умолчанию, и первые полчаса ты с ним знакомишься вплотную, когда Docker отказывается монтировать volumes. Решается через `setsebool -P container_manage_cgroup 1` и ещё пара команд. RAM в простое — ~750 МБ. Dnf работает медленнее apt субъективно, но зато пакеты свежее. Fedora — это Ubuntu для тех, кто хочет чуть поближе к ядру, но не готов страдать по-настоящему.
Arch Linux
Установка — 40 минут если знаешь что делаешь, и это с archinstall. RAM в простое — 380 МБ (поставил i3, минималистично). Всё свежее, AUR закрывает любые пробелы. Docker, git, Python, VSCode — всё ставится ровно в той версии, которая нужна. Но: обновление через полгода сломало nvidia-драйвер, пришлось разбираться. Arch — это когда ты хочешь контролировать каждый байт и готов платить временем.
Debian 12 Bookworm
Установка — 10 минут, самая быстрая. RAM в простое — ~600 МБ. Стабильность железобетонная. Но Python тут 3.11, Docker из официального репо подключается вручную, и некоторые пакеты ощутимо старее. На продакшн-сервере — идеал. На рабочей машине разработчика — немного скучно и иногда приходится тянуть что-то из backports или собирать руками.
Итого по RAM в простое:
Arch (i3) — 380 МБ
Debian (Xfce) — 600 МБ
Fedora (Gnome) — 750 МБ
Ubuntu (Gnome) — 900 МБ
Время до рабочего окружения (установка + настройка dev-инструментов):
Ubuntu — ~25 минут
Debian — ~35 минут
Fedora — ~40 минут с SELinux
Arch — ~70 минут
Вывод простой: если нужно просто работать — Ubuntu или Debian. Если нравится держать руку на пульсе — Fedora. Если хочешь систему под себя и не жалко времени — Arch.
Какой у вас основной дистр на рабочей машине? 👇
📍 Подпишись на создателей: https://t.me/linuxexex
Один и тот же ноутбук, разные дистрибутивы — смотрим что происходит
Взял старый ThinkPad X230, 8 ГБ RAM, SSD на 120 ГБ. Поставил поочерёдно четыре дистрибутива и замерил время загрузки, потребление памяти в простое и время установки пакета (взял ffmpeg — он с зависимостями и хорошо показывает разницу).
Ubuntu 22.04 LTS
Загрузка: 18 секунд
RAM в простое: 820 МБ
Установка ffmpeg: 34 секунды
Всё работает с первого раза, Wi-Fi поднялся автоматически, Bluetooth тоже. Snap-версии пакетов бесят, но apt никуда не делся. Для человека, которому просто надо работать — вариант без вопросов.
Fedora 38
Загрузка: 15 секунд
RAM в простое: 760 МБ
Установка ffmpeg: 28 секунд
dnf субъективно шустрее apt на этой машине. SELinux включён по умолчанию — первые полчаса немного удивляешься, потом привыкаешь. Свежее ядро и свежие пакеты: это и плюс, и минус одновременно. Если хочешь актуальный софт и не боишься изредка ловить регрессии — Fedora хороша.
Arch Linux
Загрузка: 9 секунд
RAM в простое: 310 МБ
Установка ffmpeg: 19 секунд (с AUR через yay)
Установка заняла у меня 40 минут — руками, по вики. Зато система весит ровно столько, сколько ты сам положил. pacman летает, AUR закрывает почти любой вопрос с пакетами. Подходит тем, кто хочет понимать что происходит, а не просто пользоваться.
Debian 12 Bookworm
Загрузка: 14 секунд
RAM в простое: 490 МБ
Установка ffmpeg: 31 секунда
Стабильность — это не маркетинг, это буквально политика проекта. Пакеты старее чем в Ubuntu, зато проверены до дыр. На сервере Debian — почти идеальный выбор. На десктопе немного скучно, но надёжно как советский холодильник.
Что в итоге
Если нужна скорость и минимализм — Arch. Если важна стабильность и предсказуемость — Debian. Если хочешь свежий софт и не заморачиваться — Fedora. Если надо быстро поставить и забыть — Ubuntu.
Один и тот же железный конь, четыре разных характера. Правильного ответа нет — есть задача и контекст под неё 🙂
А вы на чём сидите и почему именно на нём?
📍 Подпишись на создателей: https://t.me/linuxexex
Взял старый ThinkPad X230, 8 ГБ RAM, SSD на 120 ГБ. Поставил поочерёдно четыре дистрибутива и замерил время загрузки, потребление памяти в простое и время установки пакета (взял ffmpeg — он с зависимостями и хорошо показывает разницу).
Ubuntu 22.04 LTS
Загрузка: 18 секунд
RAM в простое: 820 МБ
Установка ffmpeg: 34 секунды
Всё работает с первого раза, Wi-Fi поднялся автоматически, Bluetooth тоже. Snap-версии пакетов бесят, но apt никуда не делся. Для человека, которому просто надо работать — вариант без вопросов.
Fedora 38
Загрузка: 15 секунд
RAM в простое: 760 МБ
Установка ffmpeg: 28 секунд
dnf субъективно шустрее apt на этой машине. SELinux включён по умолчанию — первые полчаса немного удивляешься, потом привыкаешь. Свежее ядро и свежие пакеты: это и плюс, и минус одновременно. Если хочешь актуальный софт и не боишься изредка ловить регрессии — Fedora хороша.
Arch Linux
Загрузка: 9 секунд
RAM в простое: 310 МБ
Установка ffmpeg: 19 секунд (с AUR через yay)
Установка заняла у меня 40 минут — руками, по вики. Зато система весит ровно столько, сколько ты сам положил. pacman летает, AUR закрывает почти любой вопрос с пакетами. Подходит тем, кто хочет понимать что происходит, а не просто пользоваться.
Debian 12 Bookworm
Загрузка: 14 секунд
RAM в простое: 490 МБ
Установка ffmpeg: 31 секунда
Стабильность — это не маркетинг, это буквально политика проекта. Пакеты старее чем в Ubuntu, зато проверены до дыр. На сервере Debian — почти идеальный выбор. На десктопе немного скучно, но надёжно как советский холодильник.
Что в итоге
Если нужна скорость и минимализм — Arch. Если важна стабильность и предсказуемость — Debian. Если хочешь свежий софт и не заморачиваться — Fedora. Если надо быстро поставить и забыть — Ubuntu.
Один и тот же железный конь, четыре разных характера. Правильного ответа нет — есть задача и контекст под неё 🙂
А вы на чём сидите и почему именно на нём?
📍 Подпишись на создателей: https://t.me/linuxexex
📰 Иран отверг предложение Омана о разделе судоходства в Ормузском проливе 50 на 50
Источник (r/worldnews): https://www.reddit.com/r/worldnews/comments/1v9d0be/iran_rejects_omans_5050_hormuz_shipping_plan/
📍 Подпишись на создателей: https://t.me/linuxexex
Источник (r/worldnews): https://www.reddit.com/r/worldnews/comments/1v9d0be/iran_rejects_omans_5050_hormuz_shipping_plan/
📍 Подпишись на создателей: https://t.me/linuxexex
Reddit
From the worldnews community on Reddit: Iran rejects Oman’s 50-50 Hormuz shipping plan
Explore this post and more from the worldnews community
Мало кто знает про CDPATH — переменную окружения, которая делает cd умнее.
Обычно когда пишешь cd projects, шелл ищет папку только в текущей директории. Но если задать CDPATH, он будет искать ещё и в других местах — как PATH, только для директорий.
Пример: добавь в ~/.bashrc или ~/.zshrc строку
export CDPATH=".:~:~/projects:~/work"
Теперь из любой папки на системе можно написать просто cd backend — и если такая директория есть в ~/projects/backend, шелл туда прыгнет сам. Не надо писать полный путь.
Шелл при этом честно скажет куда перешёл, чтобы не запутаться:
/home/user/projects/backend
Это реально экономит время если работаешь с кучей проектов в разных местах файловой системы.
Бонус для zsh: там cd вообще умеет заменять часть пути на лету. Допустим ты находишься в
/home/user/projects/frontend/src/components
и хочешь попасть в аналогичную папку backend. Пишешь
cd frontend backend
zsh сам заменит кусок пути и перейдёт в
/home/user/projects/backend/src/components
Одна команда вместо cd ../../.. и потом снова вглубь. Это работает из коробки, никаких плагинов не нужно.
Ещё одна штука — автодополнение с точками. В bash если написать cd ....... (много точек), это не сработает как ожидаешь, но в zsh можно добавить такой трюк в конфиг:
setopt AUTO_CD
После этого можно вообще не писать cd — просто вводишь имя директории и зет-шелл туда переходит. Минималистично до предела.
Пользуетесь чем-то из этого или у вас свои лайфхаки для навигации? 👇
📍 Подпишись на создателей: https://t.me/linuxexex
Обычно когда пишешь cd projects, шелл ищет папку только в текущей директории. Но если задать CDPATH, он будет искать ещё и в других местах — как PATH, только для директорий.
Пример: добавь в ~/.bashrc или ~/.zshrc строку
export CDPATH=".:~:~/projects:~/work"
Теперь из любой папки на системе можно написать просто cd backend — и если такая директория есть в ~/projects/backend, шелл туда прыгнет сам. Не надо писать полный путь.
Шелл при этом честно скажет куда перешёл, чтобы не запутаться:
/home/user/projects/backend
Это реально экономит время если работаешь с кучей проектов в разных местах файловой системы.
Бонус для zsh: там cd вообще умеет заменять часть пути на лету. Допустим ты находишься в
/home/user/projects/frontend/src/components
и хочешь попасть в аналогичную папку backend. Пишешь
cd frontend backend
zsh сам заменит кусок пути и перейдёт в
/home/user/projects/backend/src/components
Одна команда вместо cd ../../.. и потом снова вглубь. Это работает из коробки, никаких плагинов не нужно.
Ещё одна штука — автодополнение с точками. В bash если написать cd ....... (много точек), это не сработает как ожидаешь, но в zsh можно добавить такой трюк в конфиг:
setopt AUTO_CD
После этого можно вообще не писать cd — просто вводишь имя директории и зет-шелл туда переходит. Минималистично до предела.
Пользуетесь чем-то из этого или у вас свои лайфхаки для навигации? 👇
📍 Подпишись на создателей: https://t.me/linuxexex
Один и тот же ноутбук, разные дистрибутивы — что получилось
Взял старый ThinkPad X230, 8 ГБ RAM, SSD на 120 ГБ. Поставил по очереди четыре дистрибутива и замерил время загрузки, потребление памяти в простое и то, сколько времени ушло от скачивания ISO до рабочего состояния системы. Без виртуалок, всё честно на железе.
Ubuntu 22.04 LTS
Установка — 12 минут, всё само. Загрузка — 28 секунд. RAM в простое — 1,1 ГБ (GNOME с собой тащит много). Из коробки работало всё: Wi-Fi, звук, подсветка клавиатуры. Плюс огромное сообщество и PPA на любой чих. Минус — Snap-пакеты раздражают, Firefox при первом запуске открывается секунд 7.
Fedora 38
Установка — 14 минут. Загрузка — 24 секунды. RAM — 1,0 ГБ. Тоже GNOME, но свежее и без лишних патчей от Canonical. Всё завелось, кроме Wi-Fi — нужен был проприетарный драйвер, пришлось подключить RPM Fusion. Зато dnf работает быстрее apt субъективно, и система ощущается аккуратнее.
Arch Linux
Установка — 47 минут с archinstall, ещё 30 ушло на настройку окружения. Загрузка — 18 секунд. RAM — 420 МБ (i3 + минимум). Полный контроль над тем, что стоит в системе. Но если хочешь воспроизвести результат быстро — забудь, каждый раз надо думать. AUR закрывает 99% потребностей в пакетах.
Linux Mint 21
Установка — 11 минут. Загрузка — 22 секунды. RAM — 800 МБ (Cinnamon). Вот где реально приятно работать без настройки. Всё завелось сразу, интерфейс интуитивный, кодеки предустановлены. Для старого железа — один из лучших вариантов. Минус — ядро обновляется консервативно, и некоторые свежие драйверы надо тянуть руками.
Итог
Если нужно быстро — Mint или Ubuntu. Если хочешь свежий софт и при этом не собирать всё руками — Fedora. Если время есть и хочется понять систему изнутри — Arch даёт это лучше всего и не врёт про потребление ресурсов.
Нет универсального ответа, но есть конкретные задачи. Под задачу и выбирай, а не по советам рандомов в комментариях 😄
А вы на чём сидите и почему именно на этом?
📍 Подпишись на создателей: https://t.me/linuxexex
Взял старый ThinkPad X230, 8 ГБ RAM, SSD на 120 ГБ. Поставил по очереди четыре дистрибутива и замерил время загрузки, потребление памяти в простое и то, сколько времени ушло от скачивания ISO до рабочего состояния системы. Без виртуалок, всё честно на железе.
Ubuntu 22.04 LTS
Установка — 12 минут, всё само. Загрузка — 28 секунд. RAM в простое — 1,1 ГБ (GNOME с собой тащит много). Из коробки работало всё: Wi-Fi, звук, подсветка клавиатуры. Плюс огромное сообщество и PPA на любой чих. Минус — Snap-пакеты раздражают, Firefox при первом запуске открывается секунд 7.
Fedora 38
Установка — 14 минут. Загрузка — 24 секунды. RAM — 1,0 ГБ. Тоже GNOME, но свежее и без лишних патчей от Canonical. Всё завелось, кроме Wi-Fi — нужен был проприетарный драйвер, пришлось подключить RPM Fusion. Зато dnf работает быстрее apt субъективно, и система ощущается аккуратнее.
Arch Linux
Установка — 47 минут с archinstall, ещё 30 ушло на настройку окружения. Загрузка — 18 секунд. RAM — 420 МБ (i3 + минимум). Полный контроль над тем, что стоит в системе. Но если хочешь воспроизвести результат быстро — забудь, каждый раз надо думать. AUR закрывает 99% потребностей в пакетах.
Linux Mint 21
Установка — 11 минут. Загрузка — 22 секунды. RAM — 800 МБ (Cinnamon). Вот где реально приятно работать без настройки. Всё завелось сразу, интерфейс интуитивный, кодеки предустановлены. Для старого железа — один из лучших вариантов. Минус — ядро обновляется консервативно, и некоторые свежие драйверы надо тянуть руками.
Итог
Если нужно быстро — Mint или Ubuntu. Если хочешь свежий софт и при этом не собирать всё руками — Fedora. Если время есть и хочется понять систему изнутри — Arch даёт это лучше всего и не врёт про потребление ресурсов.
Нет универсального ответа, но есть конкретные задачи. Под задачу и выбирай, а не по советам рандомов в комментариях 😄
А вы на чём сидите и почему именно на этом?
📍 Подпишись на создателей: https://t.me/linuxexex
📰 Суперкраткое руководство по сборке Linux From Scratch
Привет всем. Я написал инструкции и скрипты для сборки LFS (Linux From Scratch) версии 13.0 — максимально просто (ну, насколько это вообще возможно с LFS). По сути это сильно сжатая версия официальной книги LFS. Инструкции и скрипты можно найти в моём репозитории на GitHub.
Ключевые моменты:
Во-первых, это руководство не заменяет чтение полной книги LFS. Я настойчиво рекомендую прочитать её хотя бы один раз. И только потом пользоваться скриптами автоматизации, которые здесь предоставлены.
Весь процесс сборки происходит внутри VirtualBox. К виртуальной машине нужно подключить два жёстких диска: один для хостовой системы, второй — для самой сборки LFS.
Большинство шагов выполняются через Shell-скрипты — их четыре штуки. Часть шагов придётся запускать вручную.
В итоге вы сможете создать отдельную виртуальную машину и загрузиться прямо с неё.
Не могу поверить, что этот проект до сих пор живёт — первый коммит был сделан 6 лет назад, и я рад продолжать работу над ним. Надеюсь, вам понравится. Фидбек приветствуется 🙂
Источник (r/linux): https://www.reddit.com/r/linux/comments/1vassee/a_super_summarized_version_of_the_linux_from/
📍 Подпишись на создателей: https://t.me/linuxexex
Привет всем. Я написал инструкции и скрипты для сборки LFS (Linux From Scratch) версии 13.0 — максимально просто (ну, насколько это вообще возможно с LFS). По сути это сильно сжатая версия официальной книги LFS. Инструкции и скрипты можно найти в моём репозитории на GitHub.
Ключевые моменты:
Во-первых, это руководство не заменяет чтение полной книги LFS. Я настойчиво рекомендую прочитать её хотя бы один раз. И только потом пользоваться скриптами автоматизации, которые здесь предоставлены.
Весь процесс сборки происходит внутри VirtualBox. К виртуальной машине нужно подключить два жёстких диска: один для хостовой системы, второй — для самой сборки LFS.
Большинство шагов выполняются через Shell-скрипты — их четыре штуки. Часть шагов придётся запускать вручную.
В итоге вы сможете создать отдельную виртуальную машину и загрузиться прямо с неё.
Не могу поверить, что этот проект до сих пор живёт — первый коммит был сделан 6 лет назад, и я рад продолжать работу над ним. Надеюсь, вам понравится. Фидбек приветствуется 🙂
Источник (r/linux): https://www.reddit.com/r/linux/comments/1vassee/a_super_summarized_version_of_the_linux_from/
📍 Подпишись на создателей: https://t.me/linuxexex
Reddit
From the linux community on Reddit: A super summarized version of the Linux From Scratch (LFS) book
Explore this post and more from the linux community
📰 >epstein was one of the richest and most influential people alive
>epstein was one of the richest and most influential people alive
>he still elected to play vidya in his free time
>I'm not rich or influential
>I play vidya in my free time
is vidya the ultimate cope in this economy? is that why they gotta ruin it?
what's the point of making it if the end goal is always gonna be the best cope available, vidya?
Источник (4chan /biz/): https://boards.4chan.org/biz/thread/62542275
📍 Подпишись на создателей: https://t.me/linuxexex
>epstein was one of the richest and most influential people alive
>he still elected to play vidya in his free time
>I'm not rich or influential
>I play vidya in my free time
is vidya the ultimate cope in this economy? is that why they gotta ruin it?
what's the point of making it if the end goal is always gonna be the best cope available, vidya?
Источник (4chan /biz/): https://boards.4chan.org/biz/thread/62542275
📍 Подпишись на создателей: https://t.me/linuxexex
boards.4chan.org
/biz/ - >epstein was one of the richest and most influenti - Business & Finance - 4chan
>epstein was one of the richest and most influential people alive - "/biz/ - Business & Finance" is 4chan's imageboard for the discussion of business and finance, and cryptocurrencies such as Bitcoin and Dogecoin.