Архив метки: Linux

🚀 13 Docker‑трюков, которые стоит знать каждому программисту

Docker Multi-stage builds

1. Multi-stage builds

Позволяет собирать образы в несколько этапов, оставляя в финальном образе только нужное:

FROM golang:1.22 AS builder
WORKDIR /app
COPY . .
RUN go build -o myapp .

FROM alpine:3.20
COPY —from=builder /app/myapp /usr/local/bin/
ENTRYPOINT [«myapp»]

🔹 Зачем: уменьшаем размер финального образа и избавляемся от лишнего ПО (компиляторов, зависимостей).
🔹 Когда: при сборке любого backend-приложения, особенно Go, Rust, Java. Читать

🖧 Как определить пользователя запущенной службы с помощью systemctl

Сервис – это единица в утилите SystemD, которая представляет собой любой ресурс, который наша операционная система может распознать и управлять им.

Это могут быть программные компоненты, устройства и т.д.

В связи с широким распространением SystemD в качестве системы инициализации и системного менеджера в дистрибутивах Linux, мы все чаще видим ее использование в управлении сервисами. Читать

Как использовать .local-имена хостов в Arch Linux?

Если я использую Ubuntu или Linux Mint (единственные две версии, которые я пробовал и знаю, что они работают наверняка), я могу выполнить что-то подобное:

wayne@myhost$ ssh vasilipupkin@otherhost.local

И имя автоматически разрешается до IP-адреса otherhost в моей локальной сети.

Я решил попробовать другие дистрибутивы, и у меня на ноутбуке работает Arch, но если я пытаюсь использовать предыдущую команду, получаю Не удалось разрешить имя хоста otherhost.local: Имя или служба не известны. Читать

Как правильно установить (сбросить) $DISPLAY?

Вопрос или проблема

Я подключаюсь с Windows PC к Linux PC через ssh, используя MobaXTerm.

В ssh-сессии у меня есть tmux-сессия с несколькими окнами и панелями.

Сессия ssh обычно разрывается после нескольких часов бездействия (я пытался изменить, казалось бы, соответствующие настройки keep-alive в MobaXTerm, но это никогда не работало). Читать

Удаление /dev/fd из резервной копии

Вопрос или проблема

Я случайно использовал rsync (с следованием символьных ссылок) для копирования всего / на другой диск.

Я запускал rsync как обычный пользователь.

Осознав свою ошибку, я хотел очистить резервную копию.
Это удалило все файлы, кроме (сохраненных) файлов в BACKUPFOLDER/dev/fd

Было поздно, и я был нетерпелив, поэтому я применил sudo rm -rf * внутри BACKUPFOLDER, и это избавило меня от них.

Теперь я задумался: почему я не мог удалить эти резервные копии файловых дескрипторов (они имели моего пользователя как владельца), и не повредил ли я что-либо, запустив sudo rm -rf на этой копии? Читать

Как размонтировать диск, пока контейнер работает?

Вопрос или проблема

У меня есть машина Linux (6.6.x) с шасси с горячей заменой, которое позволяет вставлять и извлекать диски без простоя.

В системе стоят следующие диски:

  • /dev/sda (операционная система)
  • /dev/sdb (съемное хранилище)

В каталоге, где смонтирован /dev/sda, я запускаю любое контейнерное приложение с помощью docker, podman и т. д. Оно касается только файлов, которые хранятся на /dev/sda. Читать