Команди за дисково пространство в Ubuntu

Команди за дисково пространство в Ubuntu

Ubuntu е популярна Linux операционна система. Управлението на дисковото пространство е важна част от работата с Ubuntu. Тази статия ще ви запознае с основните команди за работа с дисково пространство.

Съдържание

Основни концепции

Какво е дисково пространство?

Дисковото пространство е мястото за съхранение на вашия компютър. То се измерва в байтове, килобайти, мегабайти, гигабайти и терабайти. Всички ваши файлове, програми и операционната система заемат дисково пространство.

Файлова система в Ubuntu

Ubuntu използва йерархична файлова система. Всичко започва от главната директория, означена с наклонена черта (/). Различните дискови дялове се "монтират" към тази структура.

Команди за проверка на дисково пространство

1. df (Disk Free)

Командата df показва свободното място на всички монтирани дискове.

Основно използване:

df

С опция за човешки четим формат:

df -h

Какво показва изходът:

  • Filesystem: името на дисковия дял
  • Size: общ размер
  • Used: използвано пространство
  • Avail: свободно пространство
  • Use%: процент на използване
  • Mounted on: точка на монтиране

2. du (Disk Usage)

Командата du показва колко пространство заемат директориите.

Основно използване за текуща директория:

du

За определена директория:

du /home

С опции за по-добра четимост:

du -sh *

Опции на du:

  • -s: обобщен изглед
  • -h: човешки четим формат
  • *: всички файлове и директории

3. ncdu

ncdu е интерактивен инструмент за анализ на дисковото пространство.

Инсталиране:

sudo apt install ncdu

Стартиране:

ncdu

Предимства на ncdu:

  • Интерактивен интерфейс
  • Лесна навигация
  • Визуално представяне на данните

[предишните секции остават непроменени]

Разширени команди за анализ на дисково пространство

1. Сортиране и филтриране на резултати

Намиране на най-големите директории:

du -sh * | sort -h | tail -n 5

Какво прави тази команда:

  • du -sh *: показва размера на всички файлове и директории
  • sort -h: сортира резултатите по размер
  • tail -n 5: показва само последните 5 (най-големи) резултата

Варианти на командата:

du -sh * | sort -rh | head -n 5    # Показва 5-те най-големи в обратен ред
du -sh * | grep "^[0-9]*G"         # Показва само директории в гигабайти

2. Намиране на големи файлове

Търсене на файлове над определен размер:

find / -type f -size +100M -exec ls -lh {} \; | sort -k5 -rh

Обяснение на командата:

  • find /: търси от главната директория
  • -type f: търси само файлове
  • -size +100M: търси файлове над 100 мегабайта
  • -exec ls -lh {} \;: изпълнява ls -lh за всеки намерен файл
  • sort -k5 -rh: сортира по петата колона (размер) в обратен ред

3. Анализ на специфични типове файлове

Намиране на дублирани файлове:

fdupes -r /home

Инсталиране на fdupes:

sudo apt install fdupes

Търсене на специфични файлови разширения:

find /home -type f -name "*.log" -size +10M

4. Визуализация на дисковото пространство

Инсталиране на Filelight (графичен инструмент):

sudo apt install filelight

Стартиране:

filelight

Предимства на Filelight:

  • Кръгова диаграма на използването на диска
  • Интерактивно навигиране
  • Лесно идентифициране на големи файлове и директории

5. Проследяване на промените в дисковото пространство

Създаване на скрипт за ежедневен отчет:

#!/bin/bash
date >> disk_usage_log.txt
df -h >> disk_usage_log.txt
echo "-------------------" >> disk_usage_log.txt

Добавяне към crontab за ежедневно изпълнение:

0 0 * * * /path/to/script.sh

Практически сценарии

1. Почистване на системата

Цялостно почистване:

sudo apt clean
sudo apt autoremove
sudo journalctl --vacuum-time=3d

Почистване на временни файлове:

sudo rm -rf /tmp/*
sudo rm -rf ~/.cache/thumbnails/*

2. Компресиране на големи директории

Архивиране на неизползвани файлове:

tar -czf archive.tar.gz directory_to_compress

3. Анализ на лог файлове

Намиране и компресиране на големи лог файлове:

find /var/log -type f -name "*.log" -size +50M -exec gzip {} \;

Допълнителни съвети

  1. Използвайте ncdu с различни опции:
ncdu -x /     # Сканира само локалната файлова система
ncdu -rx /    # Само за четене, предотвратява случайни изтривания
  1. Създайте алиаси за често използвани команди:
echo 'alias diskspace="df -h"' >> ~/.bashrc
echo 'alias dirsize="du -sh * | sort -h"' >> ~/.bashrc
  1. Използвайте iotop за мониторинг на дисковата активност:
sudo apt install iotop
sudo iotop

[останалите секции остават непроменени]

Управление на дисковото пространство

1. Освобождаване на място

Команди за почистване:

sudo apt clean
sudo apt autoremove

Какво правят:

  • apt clean: изтрива изтеглените пакетни файлове
  • apt autoremove: премахва ненужните пакети

2. Добавяне на нов диск

Стъпки за добавяне:

  1. Физическо свързване на диска
  2. Идентифициране с:
lsblk
  1. Форматиране (ако е необходимо):
sudo mkfs.ext4 /dev/sdX
  1. Създаване на точка за монтиране:
sudo mkdir /mnt/newdisk
  1. Монтиране:
sudo mount /dev/sdX /mnt/newdisk

3. Автоматично монтиране при стартиране

За постоянно монтиране, редактирайте файла /etc/fstab:

sudo nano /etc/fstab

Добавете ред:

/dev/sdX  /mnt/newdisk  ext4  defaults  0  2

Мониторинг на дисковото пространство

1. Автоматични известия

Можете да настроите известия за пълен диск:

sudo apt install quota

2. Периодична проверка

Създайте скрипт за проверка:

#!/bin/bash
df -h | grep -vE '^Filesystem|tmpfs|cdrom'

Добавете го към cron за автоматично изпълнение:

crontab -e

Често срещани проблеми

1. Пълен диск

Решения при пълен диск:

  • Изтрийте ненужни файлове
  • Преместете данни на външен диск
  • Добавете ново дисково пространство

2. Бавна работа на диска

Причини за бавна работа:

  • Фрагментация на файловата система
  • Остаряващ хардуер
  • Прекалено много процеси, четящи/пишещи на диска

Добри практики

  1. Редовно наблюдавайте дисковото пространство
  2. Поддържайте поне 10% свободно място
  3. Архивирайте важните данни
  4. Използвайте подходящи файлови системи
  5. Планирайте нуждите от дисково пространство предварително

Заключение

Управлението на дисковото пространство е важно умение за всеки Ubuntu потребител. С правилните команди и знания, можете ефективно да следите и управлявате вашето дисково пространство.

Благодарим ви за прочитането на статията! Ако намерихте информацията за полезна, можете да дарите посредством бутоните по-долу: