
- Главная
- Каталог
- Интернет технологии
- PyLinux - Всё о Linux, Python и IT
PyLinux - Всё о Linux, Python и IT
Канал про Python и Linux. Рассматриваются различные библиотеки и скрипты Python, инструменты и техники Linux, безопасность и многое другое. Аудитория интересуется администрированием, программированием на Python и кибербезопасностью.
Статистика канала
... (Ellipsis) — и он полезен
Три точки ... — это не синтаксическая ошибка, а встроенный объект Python. И у него есть реальные применения.
>>> ...
Ellipsis
>>> type(...)
<class 'ellipsis'>
>>> ... is Ellipsis
True{}
def todo():
...
class MyClass:
...{}
from typing import Tuple, Callable
# Кортеж из любого количества int
scores: Tuple[int, ...] = (1, 2, 3, 4, 5)
# Функция с любыми аргументами, возвращает str
func: Callable[..., str]{}
import numpy as np
a = np.zeros((3, 4, 5, 6))
a[..., 0] # все измерения кроме последнего
# то же что a[:, :, :, 0] но короче{}
from typing import Protocol
class Drawable(Protocol):
def draw(self) -> None: ...{}
_MISSING = ...
def get(key, default=...):
if default is ...:
raise KeyError(key)
return default{}
... — не просто пасхалка. Это полноценный объект, который делает type hints чище, numpy короче, а заглушки — элегантнее.
Сохраняй и ставь — touch test.txt пишет: «No space left on device»? Значит, закончились inodes — спец.структуры для хранения метаданных файлов (имя, права, владелец, время, ссылки на данные и т.д.).
Каждый файл, папка, сокет и ссылка требуют свой inode. Если inodes на ФС кончились — новые файлы не создаются, даже если гигабайты свободны.
df -i # отображает количество и занятость inodes
ls -i file # узнать inode файла{}
sudo du --inodes -d 1 /{}
rm -rf ~/.cache/*
sudo journalctl --vacuum-size=100M{}
Добавить inodes нельзя, только пересоздать ФС с другим их числом (пример: mkfs.ext4 -N 1000000 /dev/sdX).
# Создать
ln -s /path/to/file link_name
ln -s /etc/nginx/nginx.conf ~/nginx.conf
# Создать на директорию
ln -s /var/log ~/logs
# Перезаписать существующую
ln -sf /path/to/new_file link_name
# Посмотреть куда ведёт
readlink link_name
readlink -f link_name # полный путь
# Удалить (удаляется только ссылка, не оригинал)
rm link_name
unlink link_name{}
# Создать
ln file hardlink
# Проверить — inode одинаковый
ls -li file hardlink
# 123456 -rw-r--r-- 2 user user ... file
# 123456 -rw-r--r-- 2 user user ... hardlink{}
# Переключение версий Python
ln -sf /usr/bin/python3.12 /usr/bin/python3
# Конфиг nginx — включить сайт
ln -s /etc/nginx/sites-available/mysite \
/etc/nginx/sites-enabled/mysite
# Dotfiles — конфиги в git
ln -s ~/dotfiles/.bashrc ~/.bashrc
ln -s ~/dotfiles/.vimrc ~/.vimrc
# Общая библиотека для нескольких проектов
ln -s /opt/shared/utils.py ~/project1/utils.py
ln -s /opt/shared/utils.py ~/project2/utils.py{}
# Найти все символические ссылки
find / -type l
# Найти битые ссылки
find / -xtype l
# Найти все жёсткие ссылки на файл
find / -inum $(stat -c %i file)
# Найти файлы с несколькими жёсткими ссылками
find / -links +1 -type f
# Показать inode
stat file
ls -i file{}
# ❌ Относительный путь — сломается при переносе
ln -s ../file link
# ✅ Абсолютный путь — работает всегда
ln -s /full/path/to/file link
# ❌ Жёсткая ссылка на директорию
ln /var/log logdir # Permission denied
# ✅ Символическая ссылка на директорию
ln -s /var/log logdir{}
💡 Современные SSD нормально переживают swap, но постоянный своппинг всё равно сильно замедляет систему.
cat /proc/sys/vm/swappiness{}
0 — максимально избегать swap
10 — хорошее значение для десктопа
60 — дефолт большинства дистрибутивов
100 — использовать swap максимально активно{}
# Временно
sudo sysctl vm.swappiness=10
# Постоянно
echo "vm.swappiness=10" | sudo tee -a /etc/sysctl.conf{}
free -h
# или
swapon --show{}
RAM ≤ 8 ГБ → swap ≈ RAM RAM 16 ГБ → swap 4–8 ГБ RAM ≥ 32 ГБ → 0–4 ГБ (если нет гибернации)
sudo fallocate -l 4G /swapfile
sudo chmod 600 /swapfile
sudo mkswap /swapfile
sudo swapon /swapfile{}
Однако стоит помнить, что swap — это страховка, а не замена RAM. Если система активно свопит — пора увеличивать память.
Если хотите больше подобных постов, ставьте — Отзывы канала
всего 10 отзывов
- Добавлен: Сначала новые
- Добавлен: Сначала старые
- Оценка: По убыванию
- Оценка: По возрастанию
Каталог Телеграм-каналов для нативных размещений
PyLinux - Всё о Linux, Python и IT — это Telegam канал в категории «Интернет технологии», который предлагает эффективные форматы для размещения рекламных постов в Телеграмме. Количество подписчиков канала в 11.1K и качественный контент помогают брендам привлекать внимание аудитории и увеличивать охват. Рейтинг канала составляет 35.7, количество отзывов – 10, со средней оценкой 5.0.
Вы можете запустить рекламную кампанию через сервис Telega.in, выбрав удобный формат размещения. Платформа обеспечивает прозрачные условия сотрудничества и предоставляет детальную аналитику. Стоимость размещения составляет 2797.2 ₽, а за 111 выполненных заявок канал зарекомендовал себя как надежный партнер для рекламы в TG. Размещайте интеграции уже сегодня и привлекайте новых клиентов вместе с Telega.in!
Вы снова сможете добавить каналы в корзину из каталога
Комментарий