Большинство из нас, работающих с системами на базе Debian, регулярно используют команду
apt-get для установки и обновления пакетов. Но как часто мы задумываемся об очистке системы? Давайте рассмотрим три полезные команды для очистки ненужных файлов:
apt-get clean, apt-get autoclean и apt-get autoremove.Команда
apt-get clean очищает локальный репозиторий от извлеченных файлов пакетов, находящихся в каталоге /var/cache/apt/archives/. Она удаляет все файлы пакетов, кроме файлов блокировки и пустых подкаталогов. Эта команда полезна для освобождения дискового пространства, особенно если вы часто устанавливаете и удаляете пакеты.
Например, до выполнения команды
apt-get clean в каталоге /var/cache/apt/archives/ могут находиться следующие файлы:/var/cache/apt/archives/db6.1-util_6.1.27+dfsg1-0.7ubuntu2_amd64.deb
/var/cache/apt/archives/db-util_2%3a6.121~exp1ubuntu1_all.deb
/var/cache/apt/archives/lock
/var/cache/apt/archives/postfix_3.4.6-2ubuntu2_amd64.deb
/var/cache/apt/archives/sasl2-bin_2.2.25+dfsg-1build2_amd64.deb
После выполнения команды sudo apt-get clean этот каталог будет очищен, и оставлены будут только файлы блокировки и пустые подкаталоги.
Команда
apt-get autoclean похожа на clean, но она удаляет только те пакеты, которые больше не могут быть загружены из репозиториев и, следовательно, больше не нужны. Это предотвращает переполнение кэша устаревшими файлами.Выполнение следующей команды очистит кэш от бесполезных пакетов, оставляя только актуальные и доступные для загрузки файлы:
sudo apt-get autoclean
Команда
apt-get autoremove удаляет пакеты, которые были установлены автоматически как зависимости для других пакетов, но теперь больше не требуются. Использование этой команды после удаления пакетов помогает поддерживать чистоту системы и предотвращает накопление ненужных файлов.
Пример использования:
sudo apt-get autoremove
После выполнения команды вы увидите список пакетов, которые больше не нужны, например:
The following packages were automatically installed and are no longer required:
g++-8 gir1.2-mutter-4 libapache2-mod-php7.2 libcrystalhd3
libdouble-conversion1 libgnome-desktop-3-17 libigdgmm5 libllvm8
liblouisutdml8 libmutter-4-0 libmysqlclient20 libpoppler85 linsydc++-8-dev
libtagc0 libvpx5 libx265-165 php7.2 php7.2-cli php7.2-common php7.2-json
php7.2-opcache php7.2-readline
Use 'sudo apt-get autoremove' to remove them.
Please open Telegram to view this post
VIEW IN TELEGRAM
🔥6👍3❤1🎉1
Please open Telegram to view this post
VIEW IN TELEGRAM
Для вывода определенных столбцов текстовых файлов удобно пользоваться командой
Эта команда покажет второй и пятый столбцы. Отлично подходит для логов и CSV без кавычек.
#вопросы
awk:awk '{print $2, $5}' data.txtЭта команда покажет второй и пятый столбцы. Отлично подходит для логов и CSV без кавычек.
#вопросы
💋4🔥2❤1🥰1
Команда
scp используется для безопасного копирования файлов между локальным компьютером и удаленным сервером, а также между двумя удаленными серверами, используя протокол SSH. Она позволяет передавать файлы и каталоги по зашифрованному каналу, что гарантирует конфиденциальность данных.scp [опции] <источник> <назначение>
scp file.txt user@remote_host:/path/to/destination
scp user@remote_host:/path/to/file.txt ./
scp -r папка user@remote_host:/path/to/destination
-r — ключ для копирования директорииЕсли вдруг используется нестандартный порт, мы можем его передать установив флаг
-P:scp -P 2222 file.txt user@remote_host:/path/to/destination
-C.Please open Telegram to view this post
VIEW IN TELEGRAM
👍4❤1🔥1
В обычном состоянии, если приложение запущено и пишет в лог файл, его не рекомендуется удалять, поскольку в *nix, открытый файловый дескриптор связан не с именем файла, а с iNode.
И если мы удалим лог-файл, приложение может не начать писать в новый файл с нуля, а продолжать писать в старый, который для нас уже будет недоступен по имени (мы же его удалили). Затем, когда приложение остановится и закроет дескриптор, данные удалятся с файловой системы.
(Большинство программ при записи в лог каждый раз открывают и закрывают файл, и тогда этой проблеме они не подвержены).
Поэтому очистку файла следует делать либо так (очистим файл, не удаляя его):
> application.log
Либо так (файл будет урезан до указанного размера):
truncate --size=1M application.log
Но эта команда именно урежет, т.е. в файле останутся старые данные, а свежие как раз и будут урезаны.
Поэтому можно делать вот так, сохраняя последние 1000 строк:
echo "$(tail -n 1000 application.log)" > application.log
Please open Telegram to view this post
VIEW IN TELEGRAM
👍5🔥1
Многие знают про:
~ для домашнего каталога,cd - — переключение между текущей и предыдущей папками:$ cd -
/home/xoadmin/Documents
$ cd -
/home/xoadmin/Music
Но если вы часто работаете с одними и теми же каталогами, вводить длинные пути быстро надоедает.
Допустим, вы часто заходите в каталог
/home/smith/Family/Memories/Photos
Чтобы попасть туда, каждый раз приходится писать:
cd ~/Family/Memories/Photos
А хотелось бы просто:
cd Photos
Однако, если в текущей папке нет подкаталога Photos, Bash выдаст:
bash: cd: Photos: No such file or directory
Переменная CDPATH говорит Bash, где ещё искать каталоги при выполнении
cd.CDPATH=$HOME/Family/Memories
Теперь, где бы вы ни находились:
$ pwd
/etc
$ cd Photos
/home/smith/Family/Memories/Photos
Работает!
Можно указать сразу несколько мест (через двоеточие):
CDPATH=$HOME:$HOME/Projects:$HOME/Family/Memories:/usr/local
Bash будет проверять их по порядку. Первое совпадение — и переход произойдёт именно туда.
Чтобы не прописывать CDPATH вручную при каждом запуске терминала, добавьте строку в ~/.bashrc (для конкретного пользователя) или /etc/profile (для всех пользователей системы).
export CDPATH=$HOME:$HOME/Sources:/usr/local
Пусть у вас есть каталог ~/Sources, где хранятся проекты:
echo $CDPATH
/home/xoadmin/Sources
Теперь:
$ pwd
/home/xoadmin/Music
$ cd picom
/home/xoadmin/Sources/picom
Без лишнего ввода — просто
cd picom.Если каталог найден через CDPATH,
cd выведет полный путь:$ cd Photos
/home/smith/Family/Memories/Photos
Это нормально — просто признак, что каталог был найден не в текущей директории.
Текущее место (
.) можно тоже включить в CDPATH, чтобы cd вела себя стандартно:export CDPATH=.:$HOME/Projects
CDPATH — это как "умный поиск" для
cd. Если вы часто прыгаете между проектами, архивами или каталогами с данными, он экономит десятки нажатий и делает навигацию в консоли почти мгновенной.Please open Telegram to view this post
VIEW IN TELEGRAM
👍9❤2🔥2
Что произойдет, если пользователь попытается удалить командой rm файл, доступный только для чтения (права доступа 444)?
Anonymous Quiz
17%
Файл будет успешно (и молча) удален
10%
Команда rm запросит подтверждение и после его получения успешно удалит файл
22%
Команда rm запросит подтверждение, но операция удаления провалится из-за недостатка прав доступа
43%
Команда rm не сработает из-за недостатка прав доступа
8%
Посмотреть ответ
😁1🤯1😱1🌭1
170+ вакансий, где упоминается «Linux” : https://talanto.work/jobs/25417942-422f-482e-a0a8-b926e4645104
Посмотреть все вакансии: https://talanto.work/?sort=newest&period=month&offset=0&search_in=title&q=Linux
Посмотреть все вакансии: https://talanto.work/?sort=newest&period=month&offset=0&search_in=title&q=Linux
Talanto
Junior Linux Systems Administrator (Internal Only)
OSC EdgeTech is seeking a Junior Linux Systems Administrator to join the team. The role involves assisting in the administration, maintenance, and support of Linux server environments. The position is open to internal OS...
❤3🔥2
ncdu (NCurses Disk Usage) — это консольная утилита Linux для анализа использования дискового пространства. Она похожа на du, но имеет интерактивный, удобный интерфейс прямо в терминале.sudo apt install ncdu # Debian/Ubuntu
sudo dnf install ncdu # Fedora
sudo pacman -S ncdu # Arch
ncdu показывает, какие каталоги и файлы занимают больше всего места на диске, и позволяет:Результаты сканирования можно сохранить в файл (
ncdu -o out.json) и потом просмотреть (ncdu -f out.json).ncdu без параметров, чтобы проанализировать текущий каталог:ncdu
ncdu /var/log
--exclude:ncdu --exclude '*.log' /var/log
ncdu для сканирования дискового пространства на удалённом сервере через SSH:ssh user@remote-server "ncdu /"
Please open Telegram to view this post
VIEW IN TELEGRAM
🔥5❤1👏1
column — это небольшая, но очень удобная консольная команда Linux, предназначенная для форматирования текста в столбцы. column берет текстовый ввод (обычно строки, разделённые пробелами, табами или другим символом) и выравнивает его в табличный формат.Это особенно удобно при работе с командами вроде
cat, awk, grep, ls, mount, ps и др.column [опции] [файл]
-t — создаёт таблицу, выравнивая столбцы по ширине (самый частый вариант)-s <символ> — указывает разделитель полей (по умолчанию — пробел или таб)-n — не объединяет несколько разделителей, идущих подряд (считает их отдельными)-c <число> — устанавливает максимальную ширину вывода-x — заполняет таблицу построчно, а не по столбцам-o <строка> — задаёт строку-разделитель между столбцамиcat /etc/passwd | column -t -s :
Разделитель в файле /etc/passwd — двоеточие, поэтому с
-s : получаем аккуратную таблицу пользователей.ls -l | column -t
Выравнивает стандартный "грязный" вывод
ls -l в читаемые столбцы.cat data.csv | column -t -s ,
Преобразует CSV-файл в выровненную таблицу прямо в терминале.
mount | column -t
Вывод монтированных файловых систем становится удобнее для восприятия.
echo -e "Name Score\nAlice 90\nBob 85\nCarol 95" | column -t
Создаёт простую таблицу с двумя выровненными столбцами:
Name Score
Alice 90
Bob 85
Carol 95
Please open Telegram to view this post
VIEW IN TELEGRAM
👍2❤1🔥1🥰1
symlinks — это консольный инструмент в Linux, который помогает управлять символьными ссылками (symbolic links, или "ярлыками" в файловой системе). Она позволяет искать, проверять и исправлять ссылки в заданном каталоге.На большинстве систем утилита ставится пакетом
symlinks:sudo apt install symlinks # Ubuntu, Debian
sudo dnf install symlinks # Fedora
sudo pacman -S symlinks # Arch
symlinks [опции] [каталог]
-c — заменить абсолютные / беспорядочные ссылки на относительные-d — удалить битые ссылки-o — предупреждать о ссылках между файловыми системами-r — проверять рекурсивно подкаталоги-s — сокращать длинные ссылки (отображаются в выводе только если не указан параметр -c)-t — показывать, что будет сделано с помощью -c-v — показывать подробный отчет (выводит все ссылки)symlinks -v /usr/local/bin
Команда выведет список ссылок и покажет, какие из них "good" — рабочие, а какие "dangling" — битые (ведут в несуществующий файл).
sudo symlinks -rd /opt/
symlinks -rv /home/user/projects
Please open Telegram to view this post
VIEW IN TELEGRAM
👍4