dotfiles-debian
В репозитории находятся различные конфигурации инструментов, которые я использую при разработке в окружении XFCE для Debian: bash, vim, vifm, mc, tmux, gdb, git, newsboat, dircolors, bash-completion, xfce4-terminal, различные цветовые схемы для терминала, .bash_aliases, .bashrc, локальные скрипты и т.д.
> GitHub
#shell #terminal #dotfiles #debian #info
В репозитории находятся различные конфигурации инструментов, которые я использую при разработке в окружении XFCE для Debian: bash, vim, vifm, mc, tmux, gdb, git, newsboat, dircolors, bash-completion, xfce4-terminal, различные цветовые схемы для терминала, .bash_aliases, .bashrc, локальные скрипты и т.д.
> GitHub
#shell #terminal #dotfiles #debian #info
✍6👎4❤2👌1
Частый вопрос на позицию системного инженера Linux
В Linux нет технологии которая бы позволяла залезть процессу в память другого процесса. Но почему это может GDB (GNU Debugger)? Это возможно благодаря тому, что GDB использует отладочные интерфейсы ядра Linux (например, системный вызов
Файл
- Значение 0: Разрешает отладку всех процессов
- Значение 1: Разрешает отладку только процессов с тем же UID
- Значение 2: Запрещает отладку процессов с другим UID
#kernel #theory #security
В Linux нет технологии которая бы позволяла залезть процессу в память другого процесса. Но почему это может GDB (GNU Debugger)? Это возможно благодаря тому, что GDB использует отладочные интерфейсы ядра Linux (например, системный вызов
ptrace), которые позволяют отслеживать и изменять состояние других процессов, включая доступ к их памяти для чтения и записи. Таким образом, хотя само ядро Linux не предоставляет прямого доступа к памяти других процессов, GDB может использовать специальные механизмы для отладки и анализа процессов.Файл
/proc/sys/kernel/yama/ptrace_scope контролирует степень безопасности работы ptrace.- Значение 0: Разрешает отладку всех процессов
- Значение 1: Разрешает отладку только процессов с тем же UID
- Значение 2: Запрещает отладку процессов с другим UID
#kernel #theory #security
✍7❤3🙏2👍1
umask
Только владелец должен иметь доступ, достаточный для полноценной работы с файлами и каталогами, а остальные вообще не должны иметь прав. Эту ситуацию можно исправить изменением маски. Я рекомендую установить ее в 077. В этом случае для каталогов права будут определены так: 777 - 077 = 700 (drwx------), а для файлов: 666 - 077 = 600 (или -rw-------). Тогда доступ к файлу имеет только владелец. Все остальные - отдыхают.
Выдержка из книги Linux глазами хакера, 4 издание - Михаил Фленов.
Можно прописать в
Ссылка на калькулятор: https://wintelguy.com/umask-calc.pl
#shell #books #security #dotfiles
Только владелец должен иметь доступ, достаточный для полноценной работы с файлами и каталогами, а остальные вообще не должны иметь прав. Эту ситуацию можно исправить изменением маски. Я рекомендую установить ее в 077. В этом случае для каталогов права будут определены так: 777 - 077 = 700 (drwx------), а для файлов: 666 - 077 = 600 (или -rw-------). Тогда доступ к файлу имеет только владелец. Все остальные - отдыхают.
Выдержка из книги Linux глазами хакера, 4 издание - Михаил Фленов.
Можно прописать в
~/.bashrc для обычного пользователя:# set a secure umask to 077
# files: 600 (rw-------)
# directories: 700 (rwx------)
umask 077
Ссылка на калькулятор: https://wintelguy.com/umask-calc.pl
#shell #books #security #dotfiles
👍12🔥2🤯2
GNU GPL License (General Public License)
Это свободная лицензия, которая позволяет свободно использовать, изменять и распространять программное обеспечение. Она устанавливает условия, при которых можно использовать программу и ее исходный код. Свободное использование в контексте GNU GPL лицензии означает, что пользователи имеют право свободно запускать программу в любых целях, изучать ее и изменять по своему усмотрению, а также распространять ее исходный код или измененные версии программы.
Использование GNU GPL лицензии позволяет разработчикам и пользователям программного обеспечения свободно обмениваться идеями, улучшать и дополнять программы, а также создавать новые продукты на их основе. Это способствует развитию открытого и свободного программного обеспечения, а также способствует распространению знаний и технологий.
Пользователи, которые получили программу под GNU GPL лицензией и внесли изменения в исходный код программы, обязаны предоставить доступ к своим изменениям исходного кода. Это означает, что они должны распространять свои измененные версии программы также под GNU GPL лицензией и предоставить доступ к своему исходному коду другим пользователям. Этот принцип обеспечивает сохранение свободы программы и позволяет другим разработчикам изучать, улучшать и распространять эти изменения.
#misc #opensource
Это свободная лицензия, которая позволяет свободно использовать, изменять и распространять программное обеспечение. Она устанавливает условия, при которых можно использовать программу и ее исходный код. Свободное использование в контексте GNU GPL лицензии означает, что пользователи имеют право свободно запускать программу в любых целях, изучать ее и изменять по своему усмотрению, а также распространять ее исходный код или измененные версии программы.
Использование GNU GPL лицензии позволяет разработчикам и пользователям программного обеспечения свободно обмениваться идеями, улучшать и дополнять программы, а также создавать новые продукты на их основе. Это способствует развитию открытого и свободного программного обеспечения, а также способствует распространению знаний и технологий.
Пользователи, которые получили программу под GNU GPL лицензией и внесли изменения в исходный код программы, обязаны предоставить доступ к своим изменениям исходного кода. Это означает, что они должны распространять свои измененные версии программы также под GNU GPL лицензией и предоставить доступ к своему исходному коду другим пользователям. Этот принцип обеспечивает сохранение свободы программы и позволяет другим разработчикам изучать, улучшать и распространять эти изменения.
#misc #opensource
✍6❤4👍4
Debian философия
Debian - это операционная система, основанная на свободном и открытом программном обеспечении. Философия Debian, известная как Debian Social Contract, включает в себя следующие принципы:
Свобода: Debian стремится к созданию операционной системы, которая полностью основана на свободном программном обеспечении. Это означает, что пользователи имеют право использовать, изучать, изменять и распространять программное обеспечение без каких-либо ограничений.
Независимость: Debian не зависит от коммерческих интересов или корпоративных спонсоров. Он остается независимым проектом, основанным на принципах свободного программного обеспечения.
Стабильность: Debian стремится к созданию стабильной и надежной операционной системы, которая будет поддерживаться и обновляться на протяжении длительного времени.
Сотрудничество: Debian активно поддерживает сотрудничество и обмен идеями с другими проектами и сообществами, чтобы создать лучшее программное обеспечение для всех.
#debian #opensource
Debian - это операционная система, основанная на свободном и открытом программном обеспечении. Философия Debian, известная как Debian Social Contract, включает в себя следующие принципы:
Свобода: Debian стремится к созданию операционной системы, которая полностью основана на свободном программном обеспечении. Это означает, что пользователи имеют право использовать, изучать, изменять и распространять программное обеспечение без каких-либо ограничений.
Независимость: Debian не зависит от коммерческих интересов или корпоративных спонсоров. Он остается независимым проектом, основанным на принципах свободного программного обеспечения.
Стабильность: Debian стремится к созданию стабильной и надежной операционной системы, которая будет поддерживаться и обновляться на протяжении длительного времени.
Сотрудничество: Debian активно поддерживает сотрудничество и обмен идеями с другими проектами и сообществами, чтобы создать лучшее программное обеспечение для всех.
#debian #opensource
❤19❤🔥7🥰4😁1🤣1
Сообщения каналу
Теперь канал принимает сообщения. Стоимость сообщения — 1 звезда.
Эта функция предназначена для личных чатов, групп и каналов и позволяет ограничивать доступ к сообщениям от незнакомых контактов или участников.
#info
Теперь канал принимает сообщения. Стоимость сообщения — 1 звезда.
Эта функция предназначена для личных чатов, групп и каналов и позволяет ограничивать доступ к сообщениям от незнакомых контактов или участников.
#info
❤4🤔2🤣2💋1
Instagram
Это запрещенная социальная сеть в России, Китае и Иране. Она признана экстремистской. Instagram используют не только для общения, но и во вред людям — для распространения фейков, мошенничества, пропаганды и даже для координации действий различных экстремистских и террористических группировок.
Всё, что вы видите в Instagram, — красиво. Это очень "глянцевая" социальная сеть, где любая идея может быть подана под привлекательным углом. Если вы не заметили, в Instagram почти нет настоящих, жизненных фотографий: всё тщательно фильтруется, ретушируется и подбирается для создания иллюзии идеальной жизни. Такая подача позволяет даже опасные и разрушительные мысли продвигать в массы, изменяя представления о морали и нравственности.
Например, некоторое время назад в Instagram активно пропагандировалась нездоровая женская худоба — это выглядело "красиво" и "трендово", и многие девушки по всему миру, насмотревшись этих постов, начинали изнурять себя диетами, следуя навязанным стандартам. Instagram формирует и продвигает свои стандарты "красоты", влияя на психику и самооценку миллионов людей, это опасный виртуальный сахар. И таких примеров куча!
- Романтизация суицида и селф-харма среди подростков (например, распространение контента о самоповреждениях и депрессии, который может подтолкнуть уязвимых людей к опасным поступкам).
- Кибербуллинг, травля и психологическое давление, особенно среди молодежи.
- Распространение фейковых новостей, мошеннических схем и рекламы сомнительных товаров (например, "волшебных" средств для похудения, чудо-диет и опасных челленджей).
- Продвижение наркотиков, запрещённых препаратов и нелегальных услуг через скрытые группы и сторис.
- Распространение порнографии, в том числе детской, несмотря на политику модерации.
- Вовлечение несовершеннолетних в опасные челленджи и флешмобы, которые могут привести к травмам или гибели.
- Формирование навязчивых комплексов и расстройств пищевого поведения из-за постоянного сравнения себя с искусственно "идеальными" образами.
- Нарушение приватности, слив личных данных и фотографий пользователей.
- Использование платформы для вербовки в радикальные группировки и секты.
- Продвижение азартных игр и мошеннических лотерей.
- Продвижение ЛГБТ-тематики, использование радужной символики, предоставление пространства для самовыражения представителей этого сообщества.
- Романтизация эскорт-услуг, создание глянцевого образа "содержанок" и популяризация идей о легком заработке через интимные отношения, что может подтолкнуть девушек к опасным и сомнительным решениям.
Кроме всего прочего, Instagram постепенно меняет представления пользователей о морали и нравственности. В этой социальной сети традиционные ценности часто подменяются новыми, навязанными нормами поведения. То, что ещё недавно считалось неприемлемым или аморальным, теперь может быть подано как что-то модное, безобидное или даже желательное.
За яркой картинкой часто скрываются опасные сообщества, сектанты, мошенники и пропагандисты, которые используют доверие аудитории в своих целях. Миллионы людей даже не догадываются, что это социальная сеть очень опасна.
#thoughts
Это запрещенная социальная сеть в России, Китае и Иране. Она признана экстремистской. Instagram используют не только для общения, но и во вред людям — для распространения фейков, мошенничества, пропаганды и даже для координации действий различных экстремистских и террористических группировок.
Всё, что вы видите в Instagram, — красиво. Это очень "глянцевая" социальная сеть, где любая идея может быть подана под привлекательным углом. Если вы не заметили, в Instagram почти нет настоящих, жизненных фотографий: всё тщательно фильтруется, ретушируется и подбирается для создания иллюзии идеальной жизни. Такая подача позволяет даже опасные и разрушительные мысли продвигать в массы, изменяя представления о морали и нравственности.
Например, некоторое время назад в Instagram активно пропагандировалась нездоровая женская худоба — это выглядело "красиво" и "трендово", и многие девушки по всему миру, насмотревшись этих постов, начинали изнурять себя диетами, следуя навязанным стандартам. Instagram формирует и продвигает свои стандарты "красоты", влияя на психику и самооценку миллионов людей, это опасный виртуальный сахар. И таких примеров куча!
- Романтизация суицида и селф-харма среди подростков (например, распространение контента о самоповреждениях и депрессии, который может подтолкнуть уязвимых людей к опасным поступкам).
- Кибербуллинг, травля и психологическое давление, особенно среди молодежи.
- Распространение фейковых новостей, мошеннических схем и рекламы сомнительных товаров (например, "волшебных" средств для похудения, чудо-диет и опасных челленджей).
- Продвижение наркотиков, запрещённых препаратов и нелегальных услуг через скрытые группы и сторис.
- Распространение порнографии, в том числе детской, несмотря на политику модерации.
- Вовлечение несовершеннолетних в опасные челленджи и флешмобы, которые могут привести к травмам или гибели.
- Формирование навязчивых комплексов и расстройств пищевого поведения из-за постоянного сравнения себя с искусственно "идеальными" образами.
- Нарушение приватности, слив личных данных и фотографий пользователей.
- Использование платформы для вербовки в радикальные группировки и секты.
- Продвижение азартных игр и мошеннических лотерей.
- Продвижение ЛГБТ-тематики, использование радужной символики, предоставление пространства для самовыражения представителей этого сообщества.
- Романтизация эскорт-услуг, создание глянцевого образа "содержанок" и популяризация идей о легком заработке через интимные отношения, что может подтолкнуть девушек к опасным и сомнительным решениям.
Кроме всего прочего, Instagram постепенно меняет представления пользователей о морали и нравственности. В этой социальной сети традиционные ценности часто подменяются новыми, навязанными нормами поведения. То, что ещё недавно считалось неприемлемым или аморальным, теперь может быть подано как что-то модное, безобидное или даже желательное.
За яркой картинкой часто скрываются опасные сообщества, сектанты, мошенники и пропагандисты, которые используют доверие аудитории в своих целях. Миллионы людей даже не догадываются, что это социальная сеть очень опасна.
#thoughts
👍28❤13👀5👎4😱3💊3😁2🤔2🤪2🗿2💯1
pushd / popd / dirs
Показывают всю красоту стека и его логику, например:
~/main/notes ~/main ~
~/main ~
#utils
Показывают всю красоту стека и его логику, например:
$ pushd ~/main
$ pushd ~/main/notes
$ dirs
~/main/notes ~/main ~
$ popd
~/main ~
#utils
❤7🤔4👍1
Git по умолчанию не отслеживает пустые папки
Чтобы добавить пустую папку:
Так git будет сохранять папку через наличие файла
#git
Чтобы добавить пустую папку:
$ touch dir/.gitkeep
$ git add dir/
$ git commit -m "add empty 'dir' folder"
Так git будет сохранять папку через наличие файла
.gitkeep#git
✍9❤5👍4🆒1
Когда пользователь удаляет файл в Linux, сам файл не удаляется полностью. Вместо этого лишь удаляется его запись в индексе файловой системы, и пространство, которое он занимал, помечается как доступное для записи. Фактическое содержимое файла остается на месте и может быть легко восстановлено, пока на это место не будет записана новая информация. Чтобы этого избежать можно перезаписать область памяти нулями или случайными числами.
Можно использовать shred для HDD дисков (для SSD это не актуально), он перезапишет содержимое файла случайными числами перед удалением. И если восстановить файл, то его невозможно будет прочитать. Важно заметить, что перезапись файлов удлиняет интервал удаления файла, делает этот процесс более медленным.
Добавить нули перед удалением файла, перезаписать 4 раза:
Можно посмотреть как это работает:
В выводе будет абракадабра (это получит хакер, который восстановит секретный файл с диска).
Можно еще добавить alias для этого:
Уничтожить весь диск:
shred не работает с каталогами, для них можно использовать wipe:
shred не эффективен для файловых систем AIX, JFS, XFS, Ext3 и NFS из-за определенных особенностей и способа их работы.
#utils #security
Можно использовать 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 из-за определенных особенностей и способа их работы.
#utils #security
👍18❤7✍1🔥1
Что такое ГОСТ?
Это государственный стандарт. Криптографические алгоритмы, разработанные в СССР и используемые для защиты информации. Они включают в себя алгоритмы шифрования, хеширования, электронной подписи и другие методы защиты данных. ГОСТ алгоритмы были широко использованы в России и других странах бывшего Советского Союза, и многие из них все еще остаются популярными в сфере информационной безопасности.
Если касаться криптографии, то военные не любят пользоваться импортными методиками, для них лучше ГОСТ шифрование, сертифицированное (криптопро и подобное).
Некоторые из наиболее известных ГОСТ алгоритмов, которые могут быть использованы с помощью OpenSSL, включают в себя:
Если нет ГОСТ шифров, необходимо собрать openssl с поддержкой данных шифров.
#utils #security
Это государственный стандарт. Криптографические алгоритмы, разработанные в СССР и используемые для защиты информации. Они включают в себя алгоритмы шифрования, хеширования, электронной подписи и другие методы защиты данных. ГОСТ алгоритмы были широко использованы в России и других странах бывшего Советского Союза, и многие из них все еще остаются популярными в сфере информационной безопасности.
Если касаться криптографии, то военные не любят пользоваться импортными методиками, для них лучше ГОСТ шифрование, сертифицированное (криптопро и подобное).
Некоторые из наиболее известных ГОСТ алгоритмов, которые могут быть использованы с помощью 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 с поддержкой данных шифров.
#utils #security
👍12⚡3🔥3👎1😁1
Немного про man, как осуществлять поиск по ключевым словам, как пользоваться
1. Главные пользовательские команды
2. Системные вызовы
3. Библиотека функции С
4. Устройства и сетевые интерфейсы
5. Формат файла
6. Игры
7. Смешанные файлы
8. Стандартные операции ядра Linux
Для создания man используется определенный синтаксис, язык. Маны хранятся обычно в сжатом виде
Поиск по ключевому слову, примеры:
Поиск. Искать во всех man, которые касаются системных вызовах по ключевому слову change.
Если мануалов мало, можно осуществить обновление базы данных, подтянуть новое:
#utils
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'
Если мануалов мало, можно осуществить обновление базы данных, подтянуть новое:
$ mandb
#utils
✍10👍4👌1
Поскольку Debian не тратит деньги на маркетинговые и рекламные компании, пользователи дистрибутива играют главную роль в его продвижении, распространяя славу о нём из уст в уста.
Выдержка из книги Настольная книга администратора Debian. Книга будет полезна системным администраторам Debian и сопровождающим deb пакетов.
#debian #books
Выдержка из книги Настольная книга администратора Debian. Книга будет полезна системным администраторам Debian и сопровождающим deb пакетов.
#debian #books
✍11👍6🆒3🔥1
CD vs DVD
Скачивая свежий образ Debian я часто вижу CD/DVD термины, в чем разница и какой выбрать? Разница между ними заключается в количестве программного обеспечения, которое включено в них.
CD (Net) образ содержит минимальное количество пакетов и программного обеспечения, необходимых для установки базовой системы Debian. Этот образ обычно используется для установки базовой системы и последующего скачивания дополнительных пакетов из Интернета во время установки.
DVD образ, напротив, содержит гораздо больше пакетов и программного обеспечения, включая множество дополнительных утилит, программ и драйверов. Этот образ обычно используется для установки полной версии Debian сразу с большим количеством программного обеспечения.
#debian
Скачивая свежий образ Debian я часто вижу CD/DVD термины, в чем разница и какой выбрать? Разница между ними заключается в количестве программного обеспечения, которое включено в них.
CD (Net) образ содержит минимальное количество пакетов и программного обеспечения, необходимых для установки базовой системы Debian. Этот образ обычно используется для установки базовой системы и последующего скачивания дополнительных пакетов из Интернета во время установки.
DVD образ, напротив, содержит гораздо больше пакетов и программного обеспечения, включая множество дополнительных утилит, программ и драйверов. Этот образ обычно используется для установки полной версии Debian сразу с большим количеством программного обеспечения.
#debian
👍19🤔2
Репозитории и зеркала. Что это и в чем разница
Репозиторий - это сервер или хранилище, где хранятся пакеты программного обеспечения для операционной системы.
Зеркало (mirror) - это копия репозитория, распределенная по различным серверам или местоположениям для обеспечения быстрого доступа и загрузки пакетов пользователями. Зеркала позволяют распределять нагрузку, обеспечивать отказоустойчивость и улучшить скорость загрузки пакетов.
Другими словами. Репозитории - это оригинальные хранилища кода, где хранится и отслеживается разработка проекта. Зеркала - это копии репозиториев, которые могут использоваться для ускорения скачивания или для обеспечения надежности доступа к коду.
#misc
Репозиторий - это сервер или хранилище, где хранятся пакеты программного обеспечения для операционной системы.
Зеркало (mirror) - это копия репозитория, распределенная по различным серверам или местоположениям для обеспечения быстрого доступа и загрузки пакетов пользователями. Зеркала позволяют распределять нагрузку, обеспечивать отказоустойчивость и улучшить скорость загрузки пакетов.
Другими словами. Репозитории - это оригинальные хранилища кода, где хранится и отслеживается разработка проекта. Зеркала - это копии репозиториев, которые могут использоваться для ускорения скачивания или для обеспечения надежности доступа к коду.
#misc
👍16💯6
Существует масса пакетов, которые тянут за собой зависимости, они называются Recommends. Например, в пакете
#debian #utils
neofetch есть рекомендации без которых пакет и так отлично работает. Не хотелось бы засорять систему. Как сделать так, чтобы не ставились рекомендованные пакеты?$ apt-get install neofetch --no-install-recommends
#debian #utils
👍11✍7🔥3
eatmydata
В мейнтейнерской среде часто используется инструмент eatmydata для ускорения установки пакетов и выполнения операций. Этот инструмент позволяет временно отключить синхронизацию данных на диске, что может значительно ускорить выполнение операций ввода-вывода. eatmydata обходит использование системных вызовов, связанных с синхронизацией данных на диске, таких как fsync(), fdatasync() и msync(). Он также может обходить вызовы, связанные с блокировками файлов, такие как flock().
Однако, следует помнить, что использование eatmydata может повлечь за собой потерю данных в случае аварийного отключения компьютера или других проблем. Поэтому его использование следует рассматривать с осторожностью и только в тех случаях, когда ускорение работы действительно необходимо.
#debian #utils
В мейнтейнерской среде часто используется инструмент eatmydata для ускорения установки пакетов и выполнения операций. Этот инструмент позволяет временно отключить синхронизацию данных на диске, что может значительно ускорить выполнение операций ввода-вывода. eatmydata обходит использование системных вызовов, связанных с синхронизацией данных на диске, таких как fsync(), fdatasync() и msync(). Он также может обходить вызовы, связанные с блокировками файлов, такие как flock().
Однако, следует помнить, что использование eatmydata может повлечь за собой потерю данных в случае аварийного отключения компьютера или других проблем. Поэтому его использование следует рассматривать с осторожностью и только в тех случаях, когда ускорение работы действительно необходимо.
$ apt-get install eatmydata
$ eatmydata apt-get install <a lot of packages>
#debian #utils
✍4👍2
Foo и Bar — смысл, традиция, история
Это часто используемые метасинтаксические переменные в программировании и компьютерной литературе. Они служат для обозначения абстрактных переменных, функций, или других объектов, когда конкретные имена не важны или не известны. Использование этих терминов помогает разработчикам сосредоточиться на структуре и логике кода, а не на именах переменных.
Вот несколько причин, почему foo и bar так часто используются:
1. Традиция: Эти термины существуют с самого начала эры программирования и используются в учебниках, документации и примерах кода. Эта традиция продолжается и по сей день, потому что многие разработчики уже знакомы с этими терминами.
2. Универсальность: foo и bar не несут в себе никакого конкретного значения, что делает их идеальными для использования в качестве временных имен. Они могут обозначать что угодно — от переменных и функций до классов и объектов.
3. Легкость в запоминании: Эти короткие и простые слова легко запомнить и набрать, что делает их удобными для использования в примерах и тестовом коде.
4. Избежание конфликтов: Поскольку foo и bar не используются в реальных проектах, они минимизируют вероятность конфликтов с именами переменных, которые уже могут быть в коде.
История этих метасинтаксических переменных восходит к ранним дням компьютерной науки и хакерской культуры. Они, вероятно, происходят от военных терминов "FUBAR" (fouled up beyond all recognition -> испорченный до неузнаваемости), используемых во время Второй мировой войны, которые потом были адаптированы в область компьютерных наук.
Вместе с "foo" и "bar" иногда используются и другие похожие термины, такие как "baz", "qux", "quux" и так далее, особенно когда требуется несколько абстрактных имен.
#misc #theory
Это часто используемые метасинтаксические переменные в программировании и компьютерной литературе. Они служат для обозначения абстрактных переменных, функций, или других объектов, когда конкретные имена не важны или не известны. Использование этих терминов помогает разработчикам сосредоточиться на структуре и логике кода, а не на именах переменных.
Вот несколько причин, почему foo и bar так часто используются:
1. Традиция: Эти термины существуют с самого начала эры программирования и используются в учебниках, документации и примерах кода. Эта традиция продолжается и по сей день, потому что многие разработчики уже знакомы с этими терминами.
2. Универсальность: foo и bar не несут в себе никакого конкретного значения, что делает их идеальными для использования в качестве временных имен. Они могут обозначать что угодно — от переменных и функций до классов и объектов.
3. Легкость в запоминании: Эти короткие и простые слова легко запомнить и набрать, что делает их удобными для использования в примерах и тестовом коде.
4. Избежание конфликтов: Поскольку foo и bar не используются в реальных проектах, они минимизируют вероятность конфликтов с именами переменных, которые уже могут быть в коде.
История этих метасинтаксических переменных восходит к ранним дням компьютерной науки и хакерской культуры. Они, вероятно, происходят от военных терминов "FUBAR" (fouled up beyond all recognition -> испорченный до неузнаваемости), используемых во время Второй мировой войны, которые потом были адаптированы в область компьютерных наук.
Вместе с "foo" и "bar" иногда используются и другие похожие термины, такие как "baz", "qux", "quux" и так далее, особенно когда требуется несколько абстрактных имен.
#misc #theory
👾8❤6👍4✍3
Free Software Movement и Open Source — это схожие, но разные концепции
Free Software Movement (движение за свободное программное обеспечение) фокусируется на свободах пользователей: запускать, изучать, изменять и распространять программы. Его основоположник - Ричард Столлман. Free Software Movement использует термин "свободное программное обеспечение" (free software), где "free" означает свободу, а не отсутствие стоимости.
Open Source (открытое ПО) подчеркивает практические преимущества открытого кода: улучшенная безопасность, гибкость и сотрудничество. Оно менее акцентируется на этических вопросах по сравнению с Free Software Movement.
#software #opensource
Free Software Movement (движение за свободное программное обеспечение) фокусируется на свободах пользователей: запускать, изучать, изменять и распространять программы. Его основоположник - Ричард Столлман. Free Software Movement использует термин "свободное программное обеспечение" (free software), где "free" означает свободу, а не отсутствие стоимости.
Open Source (открытое ПО) подчеркивает практические преимущества открытого кода: улучшенная безопасность, гибкость и сотрудничество. Оно менее акцентируется на этических вопросах по сравнению с Free Software Movement.
#software #opensource
✍7👍3🆒2