- Размеры папок и дисков в Linux. Команды df и du
- Свободное место на диске (df)
- Примечание:
- Опция -h
- Размер конкретного диска
- Размер папок на диске (du)
- Просмотр размера текущей папки
- Посмотреть размеры всех папок
- Отобразить размеры всех вложенных папок
- Отсортировать папки по объёму
- Расширение диска или раздела Linux
- Шаг 1. Расширение раздела
- Обычные тома
- Шаг 2. Изменение размера для файловой системы
- Увеличение разделов с Gparted
- Изменить размер /home
- Размеры папок и дисков в Linux. Команды df и du
- Свободное место на диске (df)
- Опция -h
- Размер конкретного диска
- Размер папок на диске (du)
- Команды Linux для работы с файлами
- 1. ls — просмотр содержимого папки
- 2. cd — изменить папку
- 3. rm — удалить файлы
- 4. rmdir — удалить папку
- 5. mv — перемещение файлов
- 6. cp — копирование файлов
- 7. mkdir — создать папку
- 8. ln — создание ссылок
- 9. chmod — изменить права
- 10. touch — создать файл
- 11. mc
- Выводы
Размеры папок и дисков в Linux. Команды df и du
Свободное место на диске (df)
Для просмотра свободного и занятого места на разделах диска в Linux можно воспользоваться командой df.
Первым делом можно просто ввести команду df без каких-либо аргументов и получить занятое и свободное место на дисках. Но по умолчанию вывод команды не очень наглядный — например, размеры выводятся в КБайтах (1К-блоках).
Примечание:
df не отображает информацию о не смонтированных дисках.
Опция -h
Опция -h (или —human-readable) позволяет сделать вывод более наглядным. Размеры выводятся теперь в ГБайтах.
Размер конкретного диска
Команде df можно указать путь до точки монтирования диска, размер которого вы хотите вывести:
Размер папок на диске (du)
Для просмотра размеров папок на диске используется команда du. Если просто ввести команду без каких либо аргументов, то она рекурсивно проскандирует вашу текущую директорию и выведет размеры всех файлов в ней. Обычно для du указывают путь до папки, которую вы хотите проанализировать. Если нужно просмотреть размеры без рекурсивного обхода всех папок, то используется опция -s (—summarize). Также как и с df, добавим опцию -h (—human-readable).
Просмотр размера текущей папки
Чтобы показать объем просто одного текущего каталога (со всеми вложенными файлами + подкаталогами) подойдёт команда du с ключиком -sh.
Вот пример, как определить размер директории данного сайта:
Посмотреть размеры всех папок
Если нужно посчитать вес всех директорий плюс файлы — добавляем звёздочку:
Отобразить размеры всех вложенных папок
Чтобы проверить информацию в том числе вообще по всем папкам, вместе со вложенными — понадобится самый короткий вариант:
Внимание: если такой случайно запустить в корне на объёмном диске с большим количеством информации — лучше сразу жмите CTRL-C, т.к. во-первых, иначе придётся сильно подождать 😉 , во-вторых, десятки-сотни экранов информации будут бессмысленными. Потому эта простая команда должна использоваться лишь для, соответственно, простых случаев.
Отсортировать папки по объёму
Покажет объём в килобайтах с сортировкой — самые большие папки/файлы сверху. Если нужно в мегабайтах:
К сожалению более удобный ключик h («human» — автовыбор кило-мега-гига) в данном случае (du -sh *| sort -nr) не подойдёт, т.к. сортировка идёт по «числам» (не учитывая, что это KB/MB/GB). Для этого придётся использовать длинную команду:
Источник
Расширение диска или раздела Linux
В инструкции рассмотрены сценарии расширения дискового пространства разделов в Linux без потери информации.
Принцип увеличения диска:
- Расширение раздела.
- Изменение размера файловой системы.
В зависимости от типа раздела и файловой системы, действия различаются.
Любая работа с диском несет риск потери информации. Перед началом работ убедитесь в наличие резервных копий ценных данных.
Шаг 1. Расширение раздела
Обычные тома
Допустим, есть диск /dev/sdb и раздел /dev/sdb2, который нужно увеличить.
Сначала необходимо отмонтировать раздел:
В случае работы с корневой директорией, отмонтировать ее не получиться. В таком случае необходимо загрузить компьютер с LiveCD.
Подключаемся утилитой fdisk к /dev/sdb:
Если мы работаем с разделом более чем 2Тб, используем утилиту parted.
Смотрим номера разделов:
Удаляем раздел (не переживайте — все данные сохраняются):
* в моем примере, раздел для удаления на второй позиции.
Создаем новый раздел:
Номер раздела — 2:
На запрос начального и конечного секторов просто нажимаем Enter.
Если раздел был загрузочный, добавляем соответствующий флаг:
Еще раз проверяем, что получилось:
LVM-тома расширяются на лету, даже для корневых разделов. В данном примере, работаем с /dev/sda.
Открываем диск утилитой fdisk:
* напомню, что при работе с диском 2Тб и более, следует использовать утилиту parted.
Создаем еще один раздел:
Номер раздела оставляем тот, который предлагает система (просто нажимаем Enter).
Первый и последний сектора также оставляем по умолчанию для использования всего дискового пространства (еще два раза Enter).
Задаем тип раздела:
Выбираем номер раздела (в моем примере создавался раздел 3):
Командой L можно посмотреть список всех типов, но нас интересует конкретный — LVM (8e):
Проинформируем систему, что в таблице разделов произошли изменения:
Создаем физический том из нового раздела:
Смотрим наши Volume Group и для нужного добавляем созданный том:
vgextend vg_centos /dev/sda3
* в моем примере группа томов LVM называется vg_centos
Смотрим LVM-разделы и расширяем пространства для нужного:
lvextend -l +100%FREE /dev/vg_centos/lv_root
* данная команда расширяем LVM-раздел /dev/vg_centos/lv_root, используя все свободное пространство (100%FREE).
Шаг 2. Изменение размера для файловой системы
После того, как на предыдущем шаге мы расширили раздел, система по-прежнему будет видеть старый по объему диск. Чтобы это исправить, необходимо выполнить команду по изменению размера файловой системы. В зависимости от последней, команды различаются.
Посмотреть файловую систему:
ext2/ext3/ext4:
XFS:
Reiserfs:
* обратите внимание, что в данных примерах используются различные устройства.
Если раздел был отмонтирован, монтируем его, например:
mount /dev/sda2 /mnt
Проверяем, что настройки применились:
Увеличение разделов с Gparted
Если работы выполняются на системе с графическим интерфейсом или есть возможность перезагрузить сервер и загрузиться с LiveCD, можно воспользоваться простым средством — утилитой Gparted, которая позволяем менять размер разделов мышкой.
Запускаем утилиту — выбираем диск, с которым будем работать — кликаем правой кнопкой по разделу, который хотим увеличить и выбираем Resize/Move:
В открывшемся окне с помощью мышки или форм меняем размер раздела:
Нажимаем кнопку Resize/Move.
Проверяем изменения в окне программы и сохраняем настройки кнопкой «Apply All Operations»:
Источник
Изменить размер /home
Прошу подсказать, есть ли способ в моем случае изменить размер /home напр. до 10ГБ, не прибегая к загрузке с Livecd, на живой системе без потери данных?
Filesystem Size Used Avail Use% Mounted on
devtmpfs 32G 0 32G 0% /dev
tmpfs 32G 0 32G 0% /dev/shm
tmpfs 32G 26M 32G 1% /run
tmpfs 32G 0 32G 0% /sys/fs/cgroup
/dev/sda2 30G 3.0G 27G 11% /
tmpfs 32G 90M 32G 1% /tmp
/dev/sda5 2.0G 1.2G 613M 67% /var
/dev/sda3 2.0G 508M 1.3G 28% /home
/dev/sda7 2.9G 105M 2.7G 4% /var/log
/dev/sda6 2.0G 6.1M 1.8G 1% /var/tmp
/dev/sda1 497M 173M 325M 35% /boot
/dev/sda8 988M 38M 884M 5% /var/log/audit
Может через последовательность команд для моих разделов это возможно?: umount resize2fs lvresize mount
Зайти под рутом, вырубить граф. интерфейс и всё, что «какает» в /home, размонтировать /home, запустить parted, сделать своё чёрное дело. Если нужно — сделать genfstab после, при заново примонтированом «хомяке». Сам не пробовал, но по идее должно сработать (т.к. домашняя директория корневого пользователя в /root).
Однако геморный это вариант, LiveCD будет даже быстрее, даже со скачиванием образа с сайта.
После изменения ещё и UUID раздела поменяется и fstab отвалится. Но это не точно.
не прибегая к загрузке с Livecd, на живой системе без потери данных?
Логаут-то полюбасу делать.
есть ли способ в моем случае изменить размер /home напр. до 10ГБ
А есть место свободное где-то на диске? Или надо другой раздел уменьшить предварительно?
А у вас там LVM разве?
Какая ФС? ext* не умеет в изменение размера без размонтирования, значит вот прям на совсем «живой» системе не получится. Если нужно будет отрезать от других разделов то тем более ничего не выйдет без размонтирования.
Самый простой вариант — подмонтировать куда-то в /home другой раздел, например у вас в /home/foobar валится весь тот хлам, что должен взлезть в 10Gb — берете новый кусок диска и в этот каталог и монтируете. Если нужно вот прям сам /home увеличить — лучше таки запланируйте даунтайм.
Недостаточно данных. Нет информации о схеме разметки на диске непосредственно.
— и вывод сейчас нужно вот так выкладывать: Как правильно копировать вывод терминала
Источник
Размеры папок и дисков в Linux. Команды df и du
Рассмотрим, как используя команды df и du просматривать свободное место на дисках и размеры папок в Linux.
Свободное место на диске (df)
Для просмотра свободного и занятого места на разделах диска в Linux можно воспользоваться командой df.
Первым делом можно просто ввести команду df без каких-либо аргументов и получить занятое и свободное место на дисках. Но по умолчанию вывод команды не очень наглядный — например, размеры выводятся в КБайтах (1К-блоках).
Примечание: df не отображает информацию о не смонтированных дисках.
Опция -h
Опция -h (или —human-readable) позволяет сделать вывод более наглядным. Размеры выводятся теперь в ГБайтах.
Размер конкретного диска
Команде df можно указать путь до точки монтирования диска, размер которого вы хотите вывести:
Размер папок на диске (du)
Для просмотра размеров папок на диске используется команда du.
Если просто ввести команду без каких либо аргументов, то она рекурсивно проскандирует вашу текущую директорию и выведет размеры всех файлов в ней. Обычно для du указывают путь до папки, которую вы хотите проанализировать.
Если нужно просмотреть размеры без рекурсивного обхода всех папок, то используется опция -s (—summarize). Также как и с df, добавим опцию -h (—human-readable).
Источник
Команды Linux для работы с файлами
Чтобы быть профессионалом в использовании терминала Linux, нужно научится управлять файлами через терминал. Это чуть ли не основа всего, включая редактирование конфигурационных файлов, сборку программ, администрирование и множество других вещей. Просмотр содержимого папок, переход между папками, создание и удаление файлов — это необходимая база, для удобной работы в терминале.
В этой статье мы рассмотрим самые часто используемые команды Linux для работы с файлами и каталогами, после их освоения терминал больше не будет казаться таким непонятным и объемлемым. Вот какие команды будут нас сегодня интересовать:
- ls — список файлов в директории;
- cd — переход между директориями;
- rm — удалить файл;
- rmdir — удалить папку;
- mv — переместить файл;
- cp — скопировать файл;
- mkdir — создать папку;
- ln — создать ссылку;
- chmod — изменить права файла;
- touch — создать пустой файл.
А теперь перейдем к подробному рассмотрению всех этих команд.
1. ls — просмотр содержимого папки
Команда ls позволяет вывести список файлов заданной папки, по умолчанию, будет выведен список файлов текущей папки:
Вы можете вывести список файлов из всех подкаталогов рекурсивно, для этого используйте опцию -R:
Чтобы вывести список файлов нужной папки, вы можете передать ее адрес утилите, например, /home:
Чтобы получить больше информации и вывести все имена файлов в виде списка используйте опцию -l:
2. cd — изменить папку
Команда cd позволяет изменить текущую папку на другую. По умолчанию, текущей считается домашняя папка, например, cd Desktop меняет папку на рабочий стол, если вы выполните ее из домашнего каталога:
Вы также можете указать полный путь к папке:
Команда cd .. переходит в папку, которая находится выше на одну в файловой системе:
Вы также можете вернуться в предыдущую рабочую папку:
3. rm — удалить файлы
Команда rm позволяет удалить файл. Будьте очень осторожны с ней, она не будет спрашивать подтверждения:
Например, rm file удалит файл с именем file, который находится в текущей папке. Как и в предыдущих вариантах, вы можете указать полный путь к файлу linux. Например:
Если вы хотите удалить папку, то нужно использовать опцию -r. Она включает рекурсивное удаление всех файлов и папок на всех уровнях вложенности:
rm -r /home/user/photo/
Будьте осторожны, потому что эта команда удаляет файлы безвозвратно.
4. rmdir — удалить папку
Команда rmdir позволяет удалить пустую папку. Например, команда rmdir directory удалит папку directory, которая находится в текущей папке:
Если вам нужно удалить папку с файлами, то нужно использовать утилиту rm вместе с опцией -r.
5. mv — перемещение файлов
Команда mv перемещает файл в новое место. Она также может использоваться для переименования файлов. Например, mv file newfile переименует файл file в newfile:
mv file newfile
Чтобы переместить файл в другую папку нужно указать путь к ней, например, переместим файл file в папку /home/user/tmp/
mv file /home/user/tmp/
6. cp — копирование файлов
Эта cp и mv — это похожие команды linux для работы с файлами. Они работают аналогичным образом, только исходный файл остается на своем месте.
cp file newfile
Вы также можете рекурсивно скопировать всю папку с помощью команды cp -r. Эта команда скопирует всю папку вместе со всеми файлами и вложенными папками в новое место. Например, скопируем папку /etc/:
cp -r /etc /etc_back
7. mkdir — создать папку
Команда mkdir позволяет создать новую папку mkdir test создаст папку в текущем каталоге:
Если нужно создать папку в другом каталоге, укажите полный путь к нему:
8. ln — создание ссылок
Утилита ln позволяет создавать жесткие и символические ссылки на файлы или папки. Для создания символической ссылки используется опция -s. Например, вы создадим ссылку на папку с загрузками:
ln -s /home/user/Downloads/ /home/user/test/
Для создания жесткой ссылки никаких опций задавать не нужно:
ln /home/user/Downloads/ /home/user/test/
9. chmod — изменить права
chmod позволяет изменить права доступа к файлам. Например, chmod +x script.sh добавляет флаг исполняемости к файлу script.sh:
chmod +x script.sh
Чтобы убрать флаг исполняемый используйте опцию -x:
chmod -x script.sh
Подробнее о том, как работают разрешения для файлов смотрите в статье права доступа к файлам в Linux.
10. touch — создать файл
Команда touch создает пустой файл. Например, touch file создаст пустой файл в текущей папке с именем file:
Для создания файлов через терминал существует еще несколько команд, они рассмотрены в статье как создать файл в linux.
11. mc
Работа с файлами Linux через терминал может выполняться не только с помощью обычных консольных команд, каждая из которых выполняет только определенное действие. Вы можете использовать полнофункциональный файловый менеджер с псевдографическим интерфейсом на основе ncurses. Midnight Commander — это файловый менеджер, который можно использовать прямо в терминале. Для установки mc в Ubuntu выполните:
sudo apt install mc
После завершения установки достаточно выполнить команду mc:
Используйте клавиши со стрелками для перемещения по файлах, Tab для перехода на другую панель, Alt+1 для просмотра справки и Alt+2 для вывода меню:
Если терминальное окружение поддерживает мышь, то вы можете ее использовать в Midnight Commander.
Выводы
В этой статье мы рассмотрели как выполняется работа с файлами и каталогами в linux, с помощью терминала. Когда вы освоите все эти команды, вы сможете сделать большинство основных действий в терминале. А как часто вы пользуетесь терминалом? Используете его для работы с файлами? Напишите в комментариях!
Источник