🗃️ Работа с файлами в Linux
Структура каталогов, создание, копирование, поиск, архивы, диски, ссылки, rsync.
Шпаргалки · Администрирование · #linux #files #filesystem #terminal
Структура каталогов
| Путь | Назначение |
|---|---|
/ |
корень |
/home |
домашние папки пользователей |
/root |
домашняя папка root |
/etc |
конфигурация |
/var |
изменяемые данные: логи (/var/log), кэши, БД |
/usr |
программы и библиотеки |
/bin, /sbin |
основные команды |
/tmp |
временные файлы |
/opt |
сторонние приложения |
/dev, /proc, /sys |
устройства и информация о ядре |
/mnt, /media |
точки монтирования |
Базовые операции
ls -lah pwd cd /path
mkdir -p a/b/c touch f.txt cp -a src dst
mv old new rm -i f rm -rf dir # осторожно
cat f; less f; head -20 f; tail -f log
file f; stat f; wc -l f
Поиск
find /var -name "*.log" -size +50M -mtime +30
find . -type f -name "*.tmp" -delete
find . -type f -exec chmod 644 {} +
locate name # быстрый поиск по индексу (updatedb)
grep -rIn "text" /etc
Ссылки
ln -s /path/target link # символическая (как ярлык)
ln file hard # жёсткая ссылка (тот же inode)
readlink -f link
Архивы и сжатие
tar -czf a.tar.gz dir/ tar -xzf a.tar.gz -C /dest
tar -cJf a.tar.xz dir/ tar -tf a.tar.gz # содержимое
gzip f; gunzip f.gz; zip -r a.zip d; unzip a.zip; 7z a a.7z d
Копирование и синхронизация
rsync -avh --progress src/ user@host:/dst/
rsync -avh --delete src/ dst/ # зеркало: удалит лишнее в dst
scp file user@host:/path
dd if=/dev/zero of=big.img bs=1M count=100
Слэш в src/ важен: с ним копируется содержимое, без него сама папка.
Диски и монтирование
lsblk -f; df -hT; du -sh /var/* | sort -h
sudo mount /dev/sdb1 /mnt; sudo umount /mnt
sudo fdisk -l; sudo mkfs.ext4 /dev/sdb1
blkid # UUID разделов
Автомонтирование: /etc/fstab (UUID=… /data ext4 defaults 0 2), проверка sudo mount -a.
Просмотр использования места
du -h --max-depth=1 / 2>/dev/null | sort -h
ncdu /var # интерактивно
lsof +D /dir # кто держит файлы
Текст в файлах
sed -i 's/old/new/g' f, awk -F, '{print $2}' f, sort -u, diff a b, cmp a b, tee, xargs.
Внимание:
rm -rfиddнеобратимы. Проверяйте путь и диск (lsblk) перед выполнением.