Узнаем свободное место на диске в linux

Проверка диска на битые секторы в linux с поддержкою smartmontools

Теперь давайте рассмотрим более современный и надежный способ проверить диск на колоченные секторы linux. Современные накопители ATA/SATA ,SCSI/SAS,SSD имеют встроенную систему самодисциплины S.M.A.R.T (Self-Monitoring, Analysis and Reporting Technology, Технология самоконтроля, анализа и отчетности), которая изготовляет мониторинг параметров накопителя и поможет определить ухудшение параметров работы накопителя на ранешних стадиях. Для работы со S.M.A.R.T в Linux есть утилита smartmontools. Давайте перейдем к работе с утилитой. Включим следующую команду с параметром -H,чтобы утилита показала нам информацию о состоянии накопителя:

Как видим, проверка диска («круглое блюдо») — круг (низкий цилиндр) или предмет в виде круга) на битые секторы linux завершена и утилита говорит нам, что с накопителем все в распорядке! Дополнительно, можно указать следующие параметры -a или —all, чтобы получить еще больше информации о накопителе, или -x и —xall, дабы просмотреть информацию в том числе и об остальных параметрах накопителя.

Подключение Яндекс Диска

Статью с настройкой дисков завершу описанием подключения Яндекс.Диска. Я лично давно и интенсивно его использую. У меня есть статья по созданию резервной копии сайта на яндекс.диск. Статья хоть и старая, но актуальная. Я продолжаю использовать предложенные там решения.

Яндекс диск можно подключить как системный диск по webdav. Скажу сразу, что работает это так себе, я давно им не пользуюсь в таком виде. Мне больше нравится работать с ним через консольный клиент linux.

Устанавливаем консольный клиент yandex-disk на Debian.

# echo "deb http://repo.yandex.ru/yandex-disk/deb/ stable main" | tee -a /etc/apt/sources.list.d/yandex-disk.list > /dev/null
# apt install gnupg
# wget http://repo.yandex.ru/yandex-disk/YANDEX-DISK-KEY.GPG -O- | apt-key add -
# apt update && apt install yandex-disk

Дальше запускаете начальную настройку.

# yandex-disk setup

После этого яндекс диск подключен к системе и готов к работе. Посмотреть его статус можно командой.

# yandex-disk status

Остановить или запустить Яндекс.Диск можно командами.

# yandex-disk stop
# yandex-disk start

Файл конфигурации находится по адресу /root/.config/yandex-disk/config.cfg. Туда, к примеру, можно добавить список папок исключений, которые не нужно синхронизировать.

exclude-dirs="dir1,exclude/dir2,path/to/another/exclude/dir"

Консольный клиент поддерживает символьные ссылки. Я много где использовал его. В основном в скриптах по автоматизации бэкапов. К примеру, я останавливал сервис яндекс диска, готовил бэкапы к отправке. Упаковывал их архиватором с разбивкой архивов по размеру. Потом создавал символьные ссылки в папке яндекс диска и запускал синхронизацию. Когда она заканчивалась, удалял локальные файлы и останавливал синхронизацию.

Яндекс диск сильно тормозит и падает, если у вас много мелких файлов. Мне доводилось хранить в нем бэкапы с сотнями тысяч файлов. Передать их в облако напрямую было невозможно. Я паковал их в архивы по 2-10 Гб и заливал через консольный клиент. Сразу могу сказать, что это решение в пользу бедных. Этот облачный диск хорош для домашних нужд пользователей и хранения семейных фоток и видео. Когда у вас большие потоки данных, которые нужно постоянно обновлять, работа с яндекс диском становится сложной.

Во-первых, трудно мониторить такие бэкапы. Во-вторых, тяжело убедиться в том, что то, что ты залил в облако, потом нормально скачается и распакуется из бэкапа. Как запасной вариант для архивов, куда они будут складываться раз в неделю или месяц, подойдет. Но как основное резервное хранилище точно нет. Какие только костыли я не придумывал для Яндекс.Диска в процессе промышленной эксплуатации. В итоге все равно почти везде отказался. Да, это очень дешево, но одновременно и очень ненадежно. Он иногда падает. Это хорошо, что упал, можно отследить и поднять. Так же он может зависнуть и просто ничего не синхронизировать, при этом служба будет работать. Все это я наблюдал, когда пытался синхронизировать сотни гигабайт данных. Иногда у меня это получалось :)

Поиск общей информации

Давайте найдем актуальную информацию о том, сколько свободного места осталось на жестком диске компьютера. Для этого введем популярную команду.

Чтобы посмотреть интересующие вас данные в Кб, внесите соответствующую правку:

Если диск занят практически «под навязку», пользователю потребуется принять оптимальное решение о дальнейших действиях, поскольку высокая загруженность дискового пространства начнет создавать заметные проблемы в работе с устройством.

Более подробно о df написано в другой статье команда df в линукс

Команда du

Что предпринять далее? Вам следует получить более подробную информацию относительно того, чем именно занят жесткий диск в системе Линукс. В этом поможет команда du (Disk Usage). Она покажет, какие папки и файлы занимают место на дисковом пространстве, и что именно содержится в этих каталогах.

Для начала проанализируем домашний каталог пользователя. Под анализ попадут все каталоги и подпапки, расположенные на /root.

Если указанные данные покажутся вам слишком заумными и сложными, можно воспользоваться опцией иного формата. С её помощью можно получить ту же информацию, только поданную в более простом и понятном для обычного человека виде.

Вам нужно дописать после «du» опцию -h. Оставшийся текст команды дублируется.

Чтобы найти множество дополнительных полезных команд для работы с ОС Линукс, введите в терминале следующий текст:

Команда ncdu

Для новичков существует еще один удобный способ анализа дискового пространства на устройстве Линукс. Это специальная утилита ncdu. С предшественницей их объединяет много общего, но команда du все-таки уступает своей «конкурентке» широтой своего функционала.

Утилита ncdu имеет псевдографический интерфейс. Пользователь почувствует ощутимую разницу в удобстве перемещения по системе.

Данная утилита – это своего рода системный браузер с богатым функционалом. Пользователь имеет возможность настроить интерфейс программы под свои индивидуальные запросы.

Дополнительные опции nsdu:

  • Сортировка файлов;
  • Экспорт/импорт результатов работы различных элементов системы;
  • Экономия трафика;
  • И многое другое.

Если команда ncdu будет прописана в строке терминала без добавления каких-либо параметров, перед пользователем откроется файлов браузер. Далее в нем будет произведено сканирование. Прогресс данного процесса также отобразится на экране. По окончанию сканирования появится перечень папок, подпапок и файлов, по которым можно осуществлять перемещение.

Чтобы провести сканирование дискового пространства в тихом режиме, добавьте к команде специальную опцию -q.

Что такое LVM

Суть его состоит в том, что физические диски ‘Physical Volume’ (возможно различного размера, на разных устройствах) объединяются в ‘Volume Groups’ – группы томов. Группы томов могут уже разделяться на логические тома ‘Logical Volumes’, которые в свою очередь содержат конечные файловые системы. Звучит немного запутанно, но на самом деле всё просто и очень круто. Сейчас объясню на картинке:

Допустим, имеем два жестких диска. Старенький Seagate Barracuda на 80 Гб. И более новый WD на 640 Гб. Мы можем объединить их в единую группу Volume Group 1, суммарный объем которой составит 720 Гб. Затем, эту группу мы “пилим” по своему усмотрению на логические тома. Допустим, два тома по 360 Гб каждый. А затем монтируем первый как /home, второй как /var.

Причем, в некоторых случаях мы можем изменять размер логического диска прямо “на лету”.

Как узнать свободное место в GUI

Новичкам проще обращаться с графическим интерфейсом системы. С него и начнем.

Стандартной утилитой для работы с дисками и разделами в Linux можно считать – Gparted. С помощью этой программы можно не только оценить доступное и использованное место на диске, но и создавать, удалять и изменять размер разделов. Во многих дистрибутивах она уже предустановлена, но если нет, ее можно установить с помощью пакетного менеджера, например, в Ubuntu:

sudo apt-get install gparted

Запускается программа из главного меню. Наберите в поиске gparted или выполните в терминале:

Приставка pexec означает, что будет утилита будет выполняться с правами суперпользователя, поэтому нужно будет ввести пароль. Вот так выглядит главное окно утилиты:

В правом верхнем углу мы можем выбрать диск, с которым хотим работать, а в рабочей области – список разделов на выбранном диске. Здесь указывается название, файловая система, метка, размер и информация об использованном пространстве. Кстати, оценить свободное место можно и визуально, занятое место отмечено желтым, а свободное – белым.

Как я говорил, в этой утилиты еще очень много возможностей, но они выходят за рамки этой статьи.

Узнать свободное место на диске Ubuntu/Gnome можно более простым способом, с помощью утилиты системный монитор. Откройте утилиту системный монитор с помощью Dash или главного меню:

Здесь отображены все подключенные разделы, а также их размер и количество доступного пространства.

В KDE такая функция не поддерживается системным монитором. Но зато кое-какую информацию можно узнать в утилите информация о системе:

Также Dolphin, файловый менеджер KDE, позволяет отображать свободное пространство на текущем разделе в строке состояния. Для этого откройте Настроить Dolphin, Главное, Строка состояния и включите галочку Показывать сведения о свободном месте:

Вот так это будет выглядеть:

Такая же функция раньше была в Nautilus, но в новых версиях строка состояния в этом файловом менеджере отключена.

Еще один способ выполнить просмотр свободного места на диске linux, это воспользоваться утилитой baobab. Это стандартный дисковый анализатор в Ubuntu, утилита показывает не только занятое и свободное место, но и круговую диаграмму размера папок и файлов на диске, что позволяет очень быстро понять куда же делось место:

В KDE есть свой аналог, это fileslight, принцип работы такой же.

Чтобы проверить свободное место на диске linux можно использовать виджеты. Их довольно много, так что детально останавливаться на этом не будем.

Комментарии (6)

gallosha (7 декабря 2015 года, 19:10:35)

Спасибо!
Готовлюсь к похожей операции.
Только один вопрос — а удаленный радел подкачки восстанавливать не надо?

Олег (10 декабря 2015 года, 16:10:19)

Раздел подкачки — на ваше усмотрение. Создавайте если памяти мало (я в любом случае создаю).
Но данные из раздела подкачки — восстанавливать не надо.

Axixa (8 июня 2017 года, 10:11:43)

Олег, добрый день. А как можно уменьшит диск?

Лекс (24 августа 2017 года, 10:40:49)

забыл swapoff -a указать еще

Борис (28 сентября 2017 года, 06:42:43)

стоит FreeBSD на Hyper-V, расширил диск с 30 до 100, но фряха видит прежний размер

# gpart show
=> 40 209715120 da0 GPT (100G)
40 1024 1 freebsd-boot (512K)
1064 39844856 2 freebsd-ufs (19G)
39845920 2097079 3 freebsd-swap (1.0G)
41942999 167772161 — free — (80G)

# growfs -y /dev/da0p2
growfs: requested size 19GB is not larger than the current filesystem size 19GB

ни как не могу увеличить. Подскажите как пожалуйста.

Александр (28 сентября 2017 года, 09:36:23)

Борис
а это

# gpart delete -i 3 da0
# gpart resize -i 2 da0
В приведенном выше листинге, я удалил раздел подкачки и растянул основной раздел на все свободное место.”

Проверка диска на битые секторы Linux

Для поиска битых секторов можно использовать утилиту badblocks. Если вам надо проверить корневой или домашний раздел диска, то лучше загрузится в LiveCD, чтобы файловая система не была смонтирована. Все остальные разделы можно сканировать в вашей установленной системе. Вам может понадобиться посмотреть какие разделы есть на диске. Для этого можно воспользоваться командой fdisk:

Или если вы предпочитаете использовать графический интерфейс, это можно сделать с помощью утилиты Gparted. Просто выберите нужный диск в выпадающем списке:

В этом примере я хочу проверить раздел /dev/sda2 с файловой системой XFS. Как я уже говорил, для этого используется команда badblocks. Синтаксис у неё довольно простой:

$ sudo badblocks опции /dev/имя_раздела_диска

Давайте рассмотрим опции программы, которые вам могут понадобится:

  • -e — позволяет указать количество битых блоков, после достижения которого дальше продолжать тест не надо;
  • -f — по умолчанию утилита пропускает тест с помощью чтения/записи если файловая система смонтирована чтобы её не повредить, эта опция позволяет всё таки выполнять эти тесты даже для смонтированных систем;
  • -i — позволяет передать список ранее найденных битых секторов, чтобы не проверять их снова;
  • -n — использовать безопасный тест чтения и записи, во время этого теста данные не стираются;
  • -o — записать обнаруженные битые блоки в указанный файл;
  • -p — количество проверок, по умолчанию только одна;
  • -s — показывать прогресс сканирования раздела;
  • -v — максимально подробный режим;
  • -w — позволяет выполнить тест с помощью записи, на каждый блок записывается определённая последовательность байт, что стирает данные, которые хранились там раньше.

Таким образом, для обычной проверки используйте такую команду:

Это безопасно и её можно выполнять на файловой системе с данными, она ничего не повредит. В принципе, её даже можно выполнять на смонтированной файловой системе, хотя этого делать не рекомендуется. Если файловая система размонтирована, можно выполнить тест с записью с помощью опции -n:

После завершения проверки, если были обнаружены битые блоки, надо сообщить о них файловой системе, чтобы она не пыталась писать туда данные. Для этого используйте утилиту fsck и опцию -l:

Если на разделе используется файловая система семейства Ext, например Ext4, то для поиска битых блоков и автоматической регистрации их в файловой системе можно использовать команду e2fsck. Например:

Параметр -с позволяет искать битые блоки и добавлять их в список, -f — проверяет файловую систему, -p — восстанавливает повреждённые данные, а -v выводит всё максимально подробно.

Подключить и примонтировать диск

Расскажу, как подключить и настроить новый физический или виртуальный диск в Debian. У меня в системе есть один диск — /dev/sda. Я подключил к ней новый жесткий диск sdb. Хочу его отформатировать в файловую систему xfs и примонтировать в каталог /mnt/backup.

Разметка диска

Вы можете не создавать разделы на жестком диске, а создать файловую систему прямо по всему диску. Делать так не рекомендуется, хотя лично я никаких проблем не получал при таком использовании диска. С разделами просто удобнее, так как ими можно оперировать — изменять, перемещать, расширять. добавлять и т.д.

Создадим один раздел на диске с помощью утилиты cfdisk.

# cfdisk /dev/sdb

Если диск чистый, то вам будет предложено создать таблицу разделов на ней. Я обычно gpt создаю. Дальше через графический интерфейс создайте раздел на весь диск и укажите type — Linux filesystem.

Как закончите, сохраняйте изменения. Вас попросят подтвердить запись, написав yes. Пишите полное слово, не просто y, а именно yes, иначе изменения не будут записаны. Теперь надо обновить таблицу разделов. Иногда система автоматически не видит новые разделы, а требует перезагрузку, чтобы их увидеть. Перезагружаться не обязательно, достаточно запустить программу partprobe.

# partprobe -s

Если ее нет в системе, то установите пакет parted.

# apt install parted

Создание файловой системы ext4, xfs

Раздел на новом диске создали. Теперь его надо отформатировать в файловую систему xfs. Это не родная система для Debian, поэтому нужно поставить отдельный пакет xfsprogs для работы с ней.

# apt install xfsprogs

Создаем файловую систему xfs на новом диске.

# mkfs.xfs /dev/sdb1

Если вам нужно создать файловую систему ext4, то ничего ставить дополнительно не нужно. Сразу форматируете раздел в ext4 командой:

# mkfs -t ext4 /dev/sdb1

Теперь создаем директорию, куда будем монтировать новый диск и подключаем его.

# mkdir /mnt/backup
# mount /dev/sdb1 /mnt/backup

Проверяем, что получилось.

# df -h

Посмотрим, какую метку получил новый раздел с помощью blkid.

Метку будем использовать для того, чтобы монтировать диск автоматически при загрузке системы. Для этого редактируем файл /etc/fstab. Добавляем в самый конец новую строку, чтобы получилось примерно так.

/dev/mapper/debian10--vg-root / ext4 errors=remount-ro 0 1
UUID=88c4c0aa-be17-4fd9-b1b7-5c8be142db77 /boot ext2 defaults 0 2
UUID=415236b0-68bd-4f27-8eaf-5e8ab49d98d7 /mnt/backup xfs defaults 0 1

Обязательно следите за тем, чтобы в конце файла fstab был переход на новую пустую строку

Это важно. Если не сделать переход на пустую строку, система не загрузится.

Очень внимательно редактируйте fstab. Ошибка с этим файлом может привести к тому, что система не будет грузиться. Сам сталкивался с этим неоднократно. Я всегда убеждаюсь, что корректно отредактировал fstab перезагрузкой системы. У меня были ситуации, когда файл правился с ошибкой, а потом система не перезагружалась месяцами. Через пол года сделал ребут и система не загрузилась. Это был гипервизор с кучей виртуалок. Было не по себе от такого сюрприза. Оказалось, что была ошибка в fstab, которую оперативно исправил, благо был доступ к консоли. Внимательно за этим следите.

Поясню еще, почему использовали метку диска, а не название диска в системе — /dev/sdb1. Раньше я всегда так и делал. Ну как раньше — лет 7-10 назад. Потом пошли какие-то изменения и стали возникать ситуации, что после добавления новых дисков в систему, менялись системные названия дисков. Когда сталкиваешься с этим впервые — впадаешь в ступор. Вроде только добавил диск в систему, а у тебя все сломалось. То, что было /dev/sdb стало /dev/sdc со всеми вытекающими последствиями. Выход из этой ситуации — использовать метки разделов, а не названия. Метки не меняются.

7.Работа с программным обеспечением RAID на Linux

Чтобы получить текущее состояние программного RAID в Linux введите следующую команду:

Shell

## get detail on /dev/md0 raid ##
mdadm —detail /dev/md0

## Find status ##
cat /proc/mdstat
watch cat /proc/mdstat

1
2
3
4
5
6

## get detail on /dev/md0 raid ##

mdadm—detail/dev/md0

 
## Find status ##

cat/proc/mdstat

watch cat/proc/mdstat

Вы должны заменить неисправный жесткий диск. В этом примере, я собираюсь заменить /dev/sdb (2-й жесткий диск RAID 6). Это работает, только если ваш сервер поддерживают горячую замену жесткого диска:

Shell

## remove disk from an array md0 ##
mdadm —manage /dev/md0 —fail /dev/sdb1
mdadm —manage /dev/md0 —remove /dev/sdb1

# Do the same steps again for rest of /dev/sdbX ##
# Power down if not hot-swappable hard disk: ##
shutdown -h now

## copy partition table from /dev/sda to newly replaced /dev/sdb ##
sfdisk -d /dev/sda | sfdisk /dev/sdb
fdisk -l

## Add it ##
mdadm —manage /dev/md0 —add /dev/sdb1
# do the same steps again for rest of /dev/sdbX ##

# Now md0 will sync again. See it on screen ##
watch cat /proc/mdstat

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18

## remove disk from an array md0 ##

mdadm—manage/dev/md0—fail/dev/sdb1

mdadm—manage/dev/md0—remove/dev/sdb1

 
# Do the same steps again for rest of /dev/sdbX ##
# Power down if not hot-swappable hard disk: ##

shutdown-hnow

 
## copy partition table from /dev/sda to newly replaced /dev/sdb ##

sfdisk-d/dev/sda|sfdisk/dev/sdb

fdisk-l

 
## Add it ##

mdadm—manage/dev/md0—add/dev/sdb1

# do the same steps again for rest of /dev/sdbX ##
 
# Now md0 will sync again. See it on screen ##

watch cat/proc/mdstat

Работа с файловой системой, или что где лежит в Ubuntu/Debian [Для самых маленьких]

Работая в терминале очень часто приходится работать с файловой системой. В этой статье мы узнаем с помощью каких утилит можно работать с файловой системой и в какой папке что лежит.

Работаем с файловой системой

Для работы с файловой системой существует небольшой набор утилит, которые очень часто используются в повседневной жизни. Вот список этих утилит:

  1. pwd — показывает директорию в которой вы находитесь;
  2. ls — выводит список папок и файлов в текущей директории, так же можно посмотреть список файлов и папок в любой директории просто указав путь к ней — ls /путь/к/папке. По умолчанию список выводится в некрасивом виде, для изменения вида списка необходимо указать аргумент-l — ls -l /путь/к/папке;
  3. cat — выводит содержимое файла, например cat /путь/к/файлу;
  4. cd — переходит в указанную папку, например cd /путь/к/папке;
  5. cp — копирует файл/папку, например cp -R /что/скопировать /куда/скопировать;
  6. mv — перемещает файл/папку, например mv /что/переместить /куда/переместить;
  7. rm — удаляет файл/папку, например rm -r /путь/к/файлу_или_папке;
  8. du — считает размер директории, например du -hc /путь/к/папке;
  9. mkdir — создаёт директорию, например mkdir /путь/к/папке;
  10. touch — создаёт файл, например touch /путь/к/файлу.

Небольшие уловки:

  • Чтоб вернуться в предыдущую директорию, необходимо выполнить cd -;
  • Чтобы перейти на одну директорию вверх, необходимо выполнить cd …;
  • Чтобы перейти в домашнюю директорию, необходимо выполнить cd ~;
  • Чтобы создать папку внутри еще не существующей директории, необходимо выполнить mkdir -p /несуществующая_папка/папка_которую_нужно_создать;
  • ls по умолчанию не показывает скрытые файлы и папки, чтобы он их отобразил необходимо добавить аргумент -a — ls -l -a /путь/к/папке;

Что где лежит и зачем оно там?

… если оно там лежит, значит так и должно быть, не трожь это!

Иерархия файловой система в *nix‐системах кардинально отличается от оной в MS Windows. В ней нету так называемых дисков (A:, C:, D:…), для сравнения, иерархия файловой системы в *nix можно представить как иерархию диска C: в MS Windows.

  •  — корень файловой системы, внутри него располагается всё;
  • /bin, /sbin, /usr/bin — тут располагаются различные исполняемые файлы (программы);
  • /boot — тут располагается ядро linux, и загрузчик (grub, lilo, и т.д.);
  • /dev — тут находятся все физические и виртуальные устройства (диски, клавиатуры, видео- и аудио‐карты, и т.д.);
  • /etc — тут находятся различные файлы настроек различных системных программ, демонов;
  • /home — тут располагаются домашние директории пользователей;
  • /lib — тут находятся модули ядра linux, и тут лучше ничего не трогать :);
  • /media — тут располагаются все примонтированные оптические диски (а так же и флэшки, жёсткие диски);
  • /mnt — тут должны находиться примонтированные жёсткие диски и флешки, но зачастую они оказываются в /media;
  • /opt — тут находятся установленные проприетарные приложения и библиотеки;
  • /proc, /sys — системные директории с виртуальной файловой системой, хранят в себе информацию о системе, ядре, и прочей ерунде;
  • /root — домашняя директория пользователя root;
  • /usr — тут хранятся установленные программы, их ресурсы и библиотеки;
  • /usr/lib, /usr/lib32 — хранят в себе различные библиотеки;
  • /usr/include — хранят в себе заголовочные файлы различных библиотек, которые используются при разработке ПО;
  • /usr/local — имеет такую же структуру как и /usr, только хранит в себе вручную собранные и установленные приложения и библиотеки;
  • /usr/share — тут находятся различные ресурсы библиотек и приложений (изображения, звуки, шрифты, документация)
  • /var — директория в которой хранятся логи, файлы данных различных системных приложений (например базы данных mysql), сокет‐файлы;
  • /tmp — директория для хранения временных файлов, очищается при перезагрузке системы;
  • . — текущая директория;
  • … — директория на один уровень выше текущей.

Более подробную информацию о иерархии файловой системы можно почитать в man hier.

Заключение

Если вы не уверенны в том, что некий файл/папку можно изменить/удалить без последствий, то лучше этого не делайте. Как говорится, «работает не трожь! ».

И как всегда, я не несу никакой ответственности за то, что вы возможно натворите в своей системе. Если вы удалите что нибудь и у вас после этого система не загрузится — не пишите мне о том, что я в этом виноват :).

P.S. Подробную информацию по каждой команде можно посмотреть с помощью man

2.6.3. Установка менеджера загрузки (Boot Manager)

Теперь вам предлагается установить менеджер загрузки. Как правило, нужно выбрать
установку менеджера загрузки если:

  • У вас больше чем один диск и вы устанавливаете FreeBSD не на первый диск.

  • Вы устанавливаете FreeBSD вместе с другой операционной на один и тот же диск, и хотите
    выбирать при загрузке FreeBSD или другую операционную систему.

Если FreeBSD единственная операционная система, установленная на этом компьютере, и
находится на первом жестком диске, подойдет менеджер загрузки Standard. Выберите None если
вы используете менеджер загрузки сторонних разработчиков, способный загрузить
FreeBSD.

Сделайте выбор и нажмите Enter.

Рисунок 2-15. Меню менеджера загрузки Sysinstall

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

Уже не один раз на просторах интернета я встречал людей, которые задавали вопрос о том, как посмотреть свободное место на диске? На первый взгляд простой вопрос для опытных пользователей Linux и очень сложен для новичков. Поэтому есть смысл описать несколько способов, как можно как посмотреть свободное место в Linux, в частности в Ubuntu и других подобных системах.

Все они просты для запоминания и можно выбрать любой понравившийся. Но перед тем как начать свой интересный рассказ о высвобождения свободного места, хочу порекомендовать вам простое решение – приобрести новый БОЛЬШОЙ жесткий диск. Сейчас в Китае можно купить 1 терабайт за смешные деньги – вот вам пример диск HITACHI .

Это в два раза дешевле, чем в магазине в вашем городе. Я себе уже заказал себе подобный диск (правда меньшей емкости, зато SSD) и очень доволен! Да, доставка бесплатна, между прочим. Теперь перейдем к нашему основному вопросу.

1. Самый простой способ посмотреть свободное место в Linux – в терминале.

Для это запускаем терминал, вводим команду :

Как видим, первый корневой раздел (у меня это /dev/sda2) занят на 84%, а домашняя папка (у меня это /dev/sda4) занят на 56%. Если вы обнаружили, что корневой раздел почти весь занят, то нужно очистить Linux от мусора и старых пакетов, чтобы в один прекрасный день она не взбунтовалась, или даже не умерла.

2. Самый простой способ проверить место на диске без терминала – системный монитор.

Как видите, тут всё просто и наглядно.Можно вывести виджет системного монитора на панель Gnome. Начиная с версии Ubuntu 12.04 сделать это не так просто, как раньше. Нужно навести мышкой на панель, а затем нажать клавиши Win + Alt и после этого правую кнопку мышки.

Появится меню, в котором будет пункт “Добавить на панель”. В появившемся окне ищем пункт “Системный монитор”и добавляем его.

Но к сожалению, как и в предыдущем случае, очень мало информации о том, какие же файлы занимают наше драгоценное место на диске. Но это не большая проблема, так как в Ubuntu Linux есть для этого специальная программа.

3. Как посмотреть, какие файлы занимают больше всего места на диске.

Заходим в Приложения – Системные утилиты – Анализатор использования диска и запускаем данную программу. Нажимаем кнопку Сканировать домашнюю папку. Через какое-то время вы получите ясную картину, что занимает ваше свободное место на диске.

Можно раскрыть любую ветку и посмотреть более точно, что занимает место на диске больше всего. Через эту программу можно стразу и удалить ненужные файлы. Для этого нужно щёлкнуть правой кнопкой мышки на ненужном файле и выбрать “Удалить”. Всё, теперь на вашем диске стало больше свободного места.

Может есть и другие способы посмотреть свободное место в Linux, но кажется и этих трёх способов вполне достаточно!

Не нашли ответ на свой вопрос? Воспользуйтесь поиском.

Ubuntu Server. Как узнать свободное место на диске?

Сколько осталось свободного места? Кто его занял? С этими двумя вопросами сталкиваться приходится постоянно, особенно администраторам файловых серверов. Если на платформе Windows, в графическом окружении выяснить это не составляет особого труда, то консоль серверных версий Linux способна многих привести в замешательство. Однако не стоит пугаться, получить интересующую информацию в среде Linux тоже довольно просто.

Как показала практика, данный вопрос актуален не только для начинающих администраторов. Действительно, недостаточно просто узнать размер файла или папки, а нужно быстро и эффективно выяснить кто именно занял место на диске и чем. Но обо всем по порядку.

Начнем с простого вопроса, как посмотреть сколько свободного места осталось. Для этой цели есть команда

которая выводит список всех файловых систем, их размер и точки монтирования. Ключ -h позволяет вывести информацию в удобном для восприятия виде – в мегабайтах и гигабайтах, без ключа информация о размере выводится в блоках.

На первый вопрос мы ответили, но, как правило, этот ответ порождает еще больше вопросов. Из полученной информации абсолютно не ясно чем именно заполнен диск. Это могут быть как важные данные, так и фотографии с последнего корпоратива, “заботливо” продублированные пользователями по своим сетевым папкам. В первом случае надо думать об увеличении объема дисковой подсистемы, а во втором можно смело чистить диск и проводить разъяснительные беседы.

Чтобы ответить на второй вопрос нам нужно знать размеры отдельных папок и файлов. В Linux системах это можно сделать командой du с указанием интересующей папки, также можно указать ключ -h для получения удобных для восприятия результатов.

Несмотря на то, что эта команда работает, практической пользы от нее нет. Почему? Сейчас поясним, ниже приведена часть вывода команды:

Но не стоит отчаиваться, на помощь нам придет небольшая утилита ncdu, в стандартной установке ее нет, но она без проблем устанавливается из репозитория:

Запущенная без параметров утилита выводит информацию о текущей папке, но так как нас интересует вся файловая система, то в качестве параметра укажем корневую директорию:

После непродолжительных вычислений утилита выведет иерархический список директорий, начиная с самого большого размера:

Ну это совсем другое дело. Сразу видно чем именно занято дисковое пространство. Утилита интерактивна, мы можем перемещаться по дереву, входить в папки, изменять представление информации, удалять ненужные файлы и директории. Все возможности программы можно узнать вызвав встроенную справку:

Как видим, утилита проста, но весьма богата возможностями, например можно быстро включить более наглядное представление данных:

Теперь вопрос чем занято дисковое пространство и что с этим делать решается буквально в считанные минуты. На наш взгляд данная утилита должна быть в арсенале каждого системного администратора.

И в заключение мы подготовили небольшой сюрприз: небольшой видеодоклад, который, надеемся, поможет вам лучше понять материал данной статьи.

Ошибка: Нет свободного места на устройстве

Когда диск полон на Unix-подобной системе вы получите сообщение об ошибке на экране. Вот например

Shell

Fallocate -l 1G test4.img
fallocate: test4.img: fallocate не удалось: <strong>Нет свободного места на устройстве</strong>

1
2

Fallocate-l1Gtest4.img

fallocatetest4.imgfallocateнеудалось<strong>Нетсвободногоместанаустройстве</strong>

Первым шагом является запуск команды DF, чтобы узнать информацию об общем пространстве и свободном пространстве в файловой системе, включая разделы:

Shell

$ df

1 $df

Или попробуйте читаемый формат

Shell

$ df -h

1 $df-h

Решение проблемы, когда диск полон:

Сжатие журналов и других файлов используя GZIP или bzip2

Shell

gzip /users/tmp/*.log
bzip2 /users/tmp/large.file.name

1
2

gzip/users/tmp/*.log

bzip2/users/tmp/large.file.name

Удалить ненужные файлы с помощью команды rm на Unix-подобной системе

Shell

rm -rf /users/tmp/*.bmp

1 rm-rf/users/tmp/*.bmp

Перемещение файлов на другой раздел системы или внешний жесткий диск, используя Rsync команду:

Shell

rsync —remove-source-files -azv /users/tmp/*.mov /mnt/usbdisk/
rsync —remove-source-files -azv /users/tmp/*.mov server2:/path/to/dest/dir/

1
2

rsync—remove-source-files-azv/users/tmp/*.mov/mnt/usbdisk/

rsync—remove-source-files-azv/users/tmp/*.movserver2/path/to/dest/dir/

Узнайте самые большие каталоги или файлы которые используют дисковое пространство на Unix-подобных systesm:

Shell

du -a /users/tmp | sort -n -r | head -n 10
du -cks * | sort -rn | head

1
2

du-a/users/tmp|sort-n-r|head-n10

du-cks*|sort-rn|head

Обрезать конкретный файл. Это полезно для файла журнала:
truncate -s 0 /ftpusers/ftp.upload.log

Shell

### bash/sh etc ##
&gt;/users/ftp.upload.log
## perl ##
perl -e’truncate «filename», LENGTH’

1
2
3
4

### bash/sh etc ##

&gt;/users/ftp.upload.log

## perl ##

perl-e’truncate «filename», LENGTH’

Найти и удалить большие файлы, которые открыты, но были удалены на Linux или Unix:

Shell

## Works on Linux/Unix/OSX/BSD etc ##
lsof -nP | grep ‘(deleted)’

## Only works on Linux ##
find /proc/*/fd -ls | grep ‘(deleted)’

1
2
3
4
5

## Works on Linux/Unix/OSX/BSD etc ##

lsof-nP|grep'(deleted)’

 
## Only works on Linux ##

find/proc/*/fd-ls|grep'(deleted)’

Очистите их

Shell

## works on Linux/Unix/BSD/OSX etc all ##
&gt; «/path/to/the/deleted/file.name»
## works on Linux only ##
&gt; «/proc/PID-HERE/fd/FD-HERE»

1
2
3
4

## works on Linux/Unix/BSD/OSX etc all ##

&gt;»/path/to/the/deleted/file.name»

## works on Linux only ##

&gt;»/proc/PID-HERE/fd/FD-HERE»

Заключение

Напоминаю, что данная статья является частью единого цикла статьей про сервер Debian.

Онлайн курс «SRE практики и инструменты»

Если у вас есть желание научиться строить и поддерживать высокодоступные и надежные системы, рекомендую познакомиться с онлайн-курсом «SRE практики и инструменты» в OTUS. Курс не для новичков, для поступления нужны базовые знания по сетям и Linux. Обучение длится 3 месяц, после чего успешные выпускники курса смогут пройти собеседования у партнеров.

На курсе вы узнаете как:

  • Внедрить SRE практики в своей организации
  • Управлять надежностью, доступностью и эффективностью сервисов
  • Управлять изменениями
  • Осуществлять мониторинг
  • Реагировать на инциденты и производительность
  • Работать со следующим технологическим стеком: Linux, AWS, GCP, Kubernetes, Ansible, Terraform, Prometheus, Go, Python.

Проверьте себя на вступительном тесте и смотрите подробнее программу по .

Формат вывода

Команда также позволяет вам настроить выходной формат.

Чтобы указать поля, которые должны отображаться в выходных данных команды, используйте параметр .

— это список столбцов, разделенных запятыми, которые будут включены в вывод. Каждое поле можно использовать только один раз. Допустимые имена полей:

  • — Источник файловой системы.
  • — Тип файловой системы.
  • — Общее количество .
  • — Количество используемых inodes.
  • — Количество доступных inodes.
  • — процент используемых inodes.
  • — Общее дисковое пространство.
  • — Используемое дисковое пространство.
  • — Доступное дисковое пространство.
  • — Процент используемого пространства.
  • — имя файла, если оно указано в командной строке.
  • — точка монтирования.

Например, чтобы отобразить вывод всех разделов ext4 в удобочитаемом формате, показывая только имя и размер файловой системы, а также процент используемого пространства, которое вы бы использовали:

Рейтинг
( Пока оценок нет )
Понравилась статья? Поделиться с друзьями:
Мой редактор ОС
Добавить комментарий

;-) :| :x :twisted: :smile: :shock: :sad: :roll: :razz: :oops: :o :mrgreen: :lol: :idea: :grin: :evil: :cry: :cool: :arrow: :???: :?: :!: