fa
Feedback
GNU/Linux | Notes

GNU/Linux | Notes

رفتن به کانال در Telegram

Open Source, GNU/Linux, Debian/Ubuntu, Dotfiles, Software, Scripts, Notes, Terminal, Shell, Tools, Games, Fun, Misc, Music, Geek, Free Software Movement. Почта: krekhov.dev@gmail.com Кто я: https://t.me/krxnotes/246 GitHub: https://github.com/krekhovx

نمایش بیشتر
2 233
مشترکین
اطلاعاتی وجود ندارد24 ساعت
-27 روز
-330 روز
آرشیو پست ها
Какую основную оболочку рабочего стола вы используете в Linux ?
Anonymous voting

Репозитории и зеркала. Что это и в чем разница. Репозиторий - это сервер или хранилище, где хранятся пакеты программного обеспечения для операционной системы. Зеркало (mirror) - это копия репозитория, распределенная по различным серверам или местоположениям для обеспечения быстрого доступа и загрузки пакетов пользователями. Зеркала позволяют распределять нагрузку, обеспечивать отказоустойчивость и улучшить скорость загрузки пакетов. Другими словами. Репозитории - это оригинальные хранилища кода, где хранится и отслеживается разработка проекта. Зеркала - это копии репозиториев, которые могут использоваться для ускорения скачивания или для обеспечения надежности доступа к коду. ——— @krxnotes

Скачивая свежий образ Debian я часто вижу CD/DVD термины, в чем разница и какой выбрать ? Разница между ними заключается в количестве программного обеспечения, которое включено в них. CD (Net) образ содержит минимальное количество пакетов и программного обеспечения, необходимых для установки базовой системы Debian. Этот образ обычно используется для установки базовой системы и последующего скачивания дополнительных пакетов из Интернета во время установки. DVD образ, напротив, содержит гораздо больше пакетов и программного обеспечения, включая множество дополнительных утилит, программ и драйверов. Этот образ обычно используется для установки полной версии Debian сразу с большим количеством программного обеспечения. ——— @krxnotes

Меня очень мотивирует эта мысль: Поскольку Debian не тратит деньги на маркетинговые и рекламные компании, пользователи дистрибутива играют главную роль в его продвижении, распространяя славу о нём из уст в уста. Выдержка из книги Настольная книга администратора Debian. Книга будет полезна системным администраторам Debian и сопровождающим deb пакетов. ——— @krxnotes

Немного про man, как осуществлять поиск по ключевым словам, как пользоваться. 1. Главные пользовательские команды 2. Системные вызовы 3. Библиотека функции С 4. Устройства и сетевые интерфейсы 5. Формат файла 6. Игры 7. Смешанные файлы 8. Стандартные операции ядра Linux Для создания man используется определенный синтаксис, язык. Маны хранятся обычно в сжатом виде .gz по пути /usr/share/man/* Для того чтобы узнать какой man предоставляет утилита:
$ whatis stdout
Поиск по ключевому слову, примеры:
$ man -k unistd
$ man -K PRIx32
$ man -wK PRIx32
$ man -k '[a-z]' | grep '(3)'
$ man -f open
$ man 0 stdio.h
$ man 3 stdio
Поиск. Искать во всех man, которые касаются системных вызовах по ключевому слову change.
$ man -k [a-z] | grep '(2)' | grep 'change'
Если мануалов мало, можно осуществить обновление базы данных, подтянуть новое:
$ sudo mandb
——— @krxnotes

Частый вопрос на позицию системного Linux программиста. В Linux нет технологии которая бы позволяла залезть процессу в память другого процесса. Но почему это может GDB (GNU Debugger) ? Это возможно благодаря тому, что GDB использует отладочные интерфейсы ядра Linux (например, ptrace (системный вызов -> man 2 ptrace)), которые позволяют отслеживать и изменять состояние других процессов, включая доступ к их памяти для чтения и записи. Таким образом, хотя само ядро Linux не предоставляет прямого доступа к памяти других процессов, GDB может использовать специальные механизмы для отладки и анализа процессов. Файл /proc/sys/kernel/yama/ptrace_scope контролирует степень безопасности работы ptrace. - Значение 0: Разрешает отладку всех процессов - Значение 1: Разрешает отладку только процессов с тем же UID - Значение 2: Запрещает отладку процессов с другим UID ——— @krxnotes

Что такое ГОСТ ? Это государственный стандарт. Криптографические алгоритмы, разработанные в СССР и используемые для защиты информации. Они включают в себя алгоритмы шифрования, хеширования, электронной подписи и другие методы защиты данных. ГОСТ алгоритмы были широко использованы в России и других странах бывшего Советского Союза, и многие из них все еще остаются популярными в сфере информационной безопасности. Если касаться криптографии, то военные не любят пользоваться импортными методиками, для них лучше ГОСТ шифрование, сертифицированное (криптопро и подобное). Некоторые из наиболее известных ГОСТ алгоритмов, которые могут быть использованы с помощью OpenSSL, включают в себя:
* ГОСТ 28147-89 (Magma)
* ГОСТ Р 34.10-2012 (GOST R 34.10-2012)
* ГОСТ Р 34.11-2012 (GOST R 34.11-2012)
$ openssl ciphers -v | grep GOST
Если нет ГОСТ шифров, необходимо собрать openssl с поддержкой данных шифров. ——— @krxnotes

Когда пользователь удаляет файл в Linux, сам файл не удаляется полностью. Вместо этого лишь удаляется его запись в индексе файловой системы, и пространство, которое он занимал, помечается как доступное для записи. Фактическое содержимое файла остается на месте и может быть легко восстановлено, пока на это место не будет записана новая информация. Чтобы этого избежать можно перезаписать область памяти нулями или случайными числами. Можно использовать shred для HDD дисков (для SSD это не актуально), он перезапишет содержимое файла случайными числами перед удалением. И если восстановить файл, то его невозможно будет прочитать. Важно заметить, что перезапись файлов удлиняет интервал удаления файла, делает этот процесс более медленным. Добавить нули перед удалением файла, перезаписать 4 раза:
$ shred -uzn 4 file-with-secrets.txt
Можно посмотреть как это работает:
$ echo "hello world" > my-new-file.txt
$ shred -n 4 my-new-file.txt
$ cat my-new-file.txt
В выводе будет абракадабра (это получит хакер, который восстановит секретный файл с диска). Можно еще добавить alias для этого:
alias rmf='shred -uzn 4'
Уничтожить весь диск:
$ shred /dev/<device>
shred не работает с каталогами, для них можно использовать wipe:
$ wipe -rf <dir>
shred не эффективен для файловых систем AIX, JFS, XFS, Ext3 и NFS из-за определенных особенностей и способа их работы. ——— @krxnotes

Существует масса пакетов, которые тянут за собой зависимости, они называются Recommends. Например, в пакете neofetch есть рекомендации без которых пакет и так отлично работает. Не хотелось бы засорять систему. Как сделать так, чтобы не ставились рекомендованные пакеты ?
$ sudo apt-get install neofetch --no-install-recommends
——— @krxnotes

Если в /etc/apt/sources.list прописаны несколько deb-src разных релизов, например (sid, bookworm, bullseye, buster и т.д) и н
Если в /etc/apt/sources.list прописаны несколько deb-src разных релизов, например (sid, bookworm, bullseye, buster и т.д) и необходимо скачать последнюю версию пакета (например) из buster, можно сделать: Узнаем какие версии пакета доступны:
$ apt-cache madison mc
Получить версию 3:4.8.22-1 (последняя) из buster:
$ apt-get source mc=3:4.8.22-1
Произойдет скачивание исходных пакетов mc из buster. ——— @krxnotes

Кто я ? Меня зовут Кирилл, этот канал является моим хобби (как и GitHub проекты), я занимаюсь этим ради развлечения и саморазвития, здесь хранятся мои рабочие заметки и не только. Я Linux программист и сопровождающий deb пакетов, а так же бывший QA инженер. Я работал в AstraLinux, Сбербанке и многочисленных небольших IT компаниях. Я занимал позиции старшего инженера-программиста. Пишу на C, Bash, Dash, Sh. Меня интересует Open Source разработка и операционная система Debian. У меня нет технического образования, я пришел в эту сферу самостоятельно, по книгам. За эти годы работы в российских компаниях (более 5 лет) у меня сформировалась определенная позиция/философия касаемо программного обеспечения. Я считаю, что ПО должно быть свободным и нести идею, цель, попытку улучшить этот мир, удовлетворить потребности пользователя, а не то, что мы видим сейчас ... Рекламы и мата тут не будет. Спасибо за внимание. Почта: krekhov.dev@gmail.com GitHub: https://github.com/iikrllx
       _,met$$$$$gg.
    ,g$$$$$$$$$$$$$$$P.
  ,g$$P"     """Y$$.".
 ,$$P'              `$$$.
',$$P       ,ggs.     `$$b:
`d$$'     ,$P"'   .    $$$
 $$P      d$'     ,    $$P
 $$:      $$.   -    ,d$$'
 $$;      Y$b._   _,d$P'
 Y$$.    `.`"Y$$$$P"'
 `$$b      "-.__
  `Y$$
   `Y$$.
     `$$b.
       `Y$$b.
          `"Y$b._
              `"""

——— @krxnotes