- Как удалить папку в Linux через терминал (консоль)
- Как удалить пустую папку в Linux через терминал
- Как удалить папку с содержимым (с файлами) в Linux
- Как удалить все файлы в папке Linux
- Поиск и удаление с помощью команды find
- Как удалить учетные записи пользователей с домашним каталогом в Linux
- Удаление учетной записи пользователя с его домашним каталогом
- Блокировка учетных записей в Linux
- Найти и убить все запущенные процессы пользователя
- Резервное копирование данных пользователя перед удалением
- Удалить учетную запись пользователя и файлы
- Вам также может понравиться
- Управление правами доступа в Linux
- Как сравнить локальные и удаленные файлы в Linux
- Как выполнить команду с ограничением по времени (Timeout) в Linux
- Добавить комментарий Отменить ответ
- Открой для себя мир Linux
- Свежие записи
- Категории
Как удалить папку в Linux через терминал (консоль)
Операционная система Linux позволяет выполнять практически любые действия при помощи терминала или консоли. Более того, при администрировании Linux-серверов работа с терминалом – это основной способ управления системой. Поэтому навыки работы с консолью абсолютно необходимы, если вы хотите действительно научиться работать с Linux.
В данной инструкции мы рассмотрим тему удаления папок (каталогов). Здесь вы узнаете, как удалить пустую папку или каталог с файлами через терминал или консоль. Также мы немного затронем тему создания и поиска папок.
Как удалить пустую папку в Linux через терминал
Если вам нужно удалить пустую папку в Linux через терминал, то для этого проще всего использовать команду rmdir. Данная команда используется для удаления пустых папок из файловой системы Linux. Каталоги с файлами или другими каталогами данная команда не удаляет.
Синтаксис команды rmdir выглядит следующим образом:
rmdir [-p] [-v | --verbose] [--ignore-fail-on-non-empty] directories …
Разберем доступные параметры подробней:
rmdir --help Получение справки о команде rmdir rmdir -p Удаление всех пустых папок по всему указанному пути. rmdir -v или rmdir --verbose Вывод подробной информации о всех удаляемых объектах. rmdir --ignore-fail-on-non-empty Игнорирование ошибок, которые возникают при попытке удаления не пустых папок.
Для того чтобы просто удалить пустую папку нужно ввести « rmdir foldername ». Где « foldername » это название удаляемого объекта. При желании можно удалить сразу несколько папок, для этого достаточно перечислить их через пробел.
Если необходимо удалить каталог, в котором есть другие каталоги (без файлов), то можно воспользоваться параметром « -p ». Для этого нужно ввести « rmdir -p » и указать полный путь. Например, если в каталоге folder1 есть другой каталог folder2, то мы можем удалить их сразу одной командой « rmdir -p folder1/folder2 ».
При использовании параметра « -v » в консоль будет выведена подробная информация о процессе удаления каталогов.
А при использовании параметра « ignore-fail-on-non-empty » команда будет игнорировать ошибки, которые будут возникать при попытке удаления непустых каталогов.
Нужно отметить, что также существует команда « mkdir », которая предназначена для создания папок и обладает точно таким же синтаксисом.
С ее помощью вы можете создать папки по одной или целым деревом (при использовании параметра « -p »).
Как удалить папку с содержимым (с файлами) в Linux
Если нужно удалить папку с каким-то содержимым, например, с файлами, то тут уже нужно использовать команду « rm ». Данная Linux команда предназначена для удаления файлов, но с ее помощью можно удалять и каталоги, если использовать параметр «-r», который включает рекурсивное удаление.
Синтаксис команды rm выглядит следующим образом:
Разберем основные параметры команды rm:
-f, --force Игнорировать несуществующие файлы, ничего не спрашивать. -i Спрашивать перед каждым удалением. -I Спрашивать перед удалением более чем 3 файлов и при использовании рекурсивного удаления. -r, -R, --recursive Удаление каталогов и их содержимого рекурсивно. -v, --verbose Вывод информации об удаляемых каталогах. --help Вывод справочной информации о команде. --version Вывод информации о версии.
Для удаления папок с файлами нам нужно использовать параметр « -r ». Введите « rm -r » и укажите название папки, которую нужно удалить. Например, если у нас есть каталог folder1 с какими-то файлами, то мы можем ее удалить, введя команду « rm -r folder1 »
Если необходимо, чтобы удаление папок сопровождалось запросом, то вместе с параметром « -r » можно использовать параметр « -i ». В этом случае каждая операция, которую будет выполнять команда, будет требовать разрешения пользователя. При этом команда для удаления папки folder1 будет выглядеть как «rm -ri folder1 ».
Обратите внимание, во всех примерах предполагается, что удаляемый объект находится в текущей папке. Но, при необходимости вы можете удалять каталоги используя полный путь.
Например, вы можете указать « rm -rv /home/aleks/folder1 » для того, чтобы удалить папку folder1 с выводом подробной информации.
Как удалить все файлы в папке Linux
В некоторых случаях может возникнуть необходимость удалить все файлы в папке при этом не удаляя саму папку. Для решения такой задачи можно использовать вот такую команду « rm -rf /path/to/directory/* ». Данная команда удалит все файлы и папки (рекурсивно удалит все содержимое) по указанному пути.
Если же нужно удалить все файлы в папке, но оставить вложенные папки, то это можно сделать командой « rm -f /path/to/directory/* ».
Альтернативный вариант — это удаление самой папки со всем содержимым (включая скрытые файлы и каталоги) и повторное ее создание.
Для этого подойдет команда « rm -rf foldername && mkdir foldername ».
Поиск и удаление с помощью команды find
Если нужно не просто удалить какую-то определенную папку с файлами, а сначала найти ее, то тут поможет Linux-команда find. Данная команда является мощным инструментом для поиска файлов и выполнения с ними определенных операций. Среди прочего ее можно использовать для поиска и удаления файлов.
Например, чтобы найти и удалить пустые папки в домашнем каталоге можно выполнить команду:
find ~/ -empty -type d -delete
Данная команда использует следующие параметры:
-empty Поиск пустых объектов. -type d Поиск каталогов. -delete Удаление найденных объектов.
Другой пример – поиск и удаление папок с определенным названием. Так, чтобы удалить папки, содержащие в названии слово « test » можно выполнить следующую команду:
find . -type d -name "*test*" -exec rm -rf <> \;
Данная команда содержит следующие параметры:
-type d Поиск каталогов. -name Поиск объектов с определенным именем. -exec Выполнение команды.
Указанные выше примеры использования Linux-команды find – лишь часть ее возможностей. Рассмотреть все варианты ее использования в рамках этой статьи будет невозможно.
Как удалить учетные записи пользователей с домашним каталогом в Linux
Как системному администратору в Linux, вам может потребоваться удалить учетную запись пользователя через некоторое время, по причине того, что пользователь может покинуть организацию или компанию или по любым другим причинам. При удалении учетных записей пользователей в системе Linux также важно удалить их домашний каталог, чтобы освободить место на устройствах хранения для новых пользователей системы или других служб.
Удаление учетной записи пользователя с его домашним каталогом
В целях демонстрации сначала я начну с создания в моей системе двух учетных записей пользователей, таких как alex и ehan, с их домашними каталогами /home/alex и /home/ehan соответственно с помощью команды adduser.
# adduser alex # passwd alex
Я использовал команду adduser для создания учетных записей пользователей в Linux. Вы также можете использовать команду useradd, они выполняют одинаковые функции.
Для удаления учетных записей пользователей в Linux можем воспользоваться командой deluser (для Debian и его производных) и userdel (для систем на основе RedHat/CentOS).
Директивы внутри файла конфигурации для команд deluser и userdel определяют, как он будет обрабатывать все пользовательские файлы и каталог при запуске команды.
# vi /etc/deluser.conf [В Debian и его производных] # vi /etc/login.defs [В системах на базе RedHat/CentOS]
Значения в этой конфигурации являются значениями по умолчанию и могут быть изменены в соответствии с вашими потребностями.
Чтобы удалить пользователя с домашним каталогом, вы можете использовать расширенный способ.
Важно отметить, что пользователя можно эффективно удалить только тогда, когда он не вошел на сервер. Так, как когда пользователи входят на сервер, они используют службы и запускают разные процессы.
Блокировка учетных записей в Linux
Начните с блокировки пароля учетной записи пользователя, чтобы у пользователя не было доступа к системе. Это не позволит пользователю запускать процессы в системе.
Команда passwd, включающая параметр –lock, может помочь вам добиться этого:
Найти и убить все запущенные процессы пользователя
Затем выясните все запущенные процессы учетной записи пользователя и уничтожьте их, определив PID ( идентификаторы процессов ) процессов, принадлежащих пользователю, используя:
Затем вы можете перечислить промежуточные имена процессов имени пользователя, PID, PPID (идентификаторы родительского процесса), используемый терминал, состояние процесса, путь команды в полном формате с помощью следующей команды:
Как только вы найдете все запущенные процессы пользователя, вы можете использовать команду killall, чтобы убить эти запущенные процессы.
-9 это номер сигнала для SIGKILL сигнала или использовать -KILL вместо -9
-u определяет имя пользователя
Примечание . В последних выпусках версий RedHat / CentOS 7.x и Fedora 21+ вы получите сообщение об ошибке:
-bash: killall: команда не найдена
Чтобы исправить такую ошибку, вам нужно установить пакет psmisc, как показано:
# yum install psmisc [В RedHat/CentOS 7.x] # dnf install psmisc [В версиях Fedora 21+]
Резервное копирование данных пользователя перед удалением
Затем вы можете создавать резервные копии файлов пользователей, это может быть необязательно, но рекомендуется для использования в будущем, когда возникнет необходимость в просмотре данных и файлов учетной записи пользователя.
Я использовал утилиты tar для создания резервной копии домашнего каталога пользователей следующим образом:
# tar jcvf /user-backups/alex-home-directory-backup.tar.bz2 /home/alex
Удалить учетную запись пользователя и файлы
Теперь вы можете безопасно удалить пользователя вместе с его домашним каталогом, чтобы удалить все пользовательские файлы в системе, используйте —remove-all-files опцию в команде ниже:
# deluser --remove-home alex [В Debian и его производных] # userdel --remove alex [В системах на основе RedHat/CentOS]
Вам также может понравиться
Управление правами доступа в Linux
Как сравнить локальные и удаленные файлы в Linux
Как выполнить команду с ограничением по времени (Timeout) в Linux
Добавить комментарий Отменить ответ
Открой для себя мир Linux
Находи на нашем сайте интересные статьи и мануалы. Учись, развивайся.