- Вопрос по FS UFS, DeerFriend, 12:59 , 28-Окт-21 (1)
Замонтировать ридонли в другом месте переполненный раздел и искать там.
- Вопрос по FS UFS, DeerFriend, 13:01 , 28-Окт-21 (2)
> Замонтировать ридонли в другом месте переполненный раздел и искать там.Когда найдёшь, читай в сторону mount bind нужного каталога. Там и удалить сможешь.
- Вопрос по FS UFS, lavr, 13:39 , 28-Окт-21 (3)
> Замонтировать ридонли в другом месте переполненный раздел и искать там.получит filesystem busy ну как бы, допустим есть "/" - root fs и на ней директория /tmp /tmp - не пуста. И есть еще размеченная пустая партиция с ufs. Монтируем ее в /tmp. Все что в /tmp теперь скрыто.
- Вопрос по FS UFS, DeerFriend, 15:41 , 28-Окт-21 (4)
> получит filesystem busy Когда / уже переполнен, никто не будет возражать на ребут и тд. А вот чуть-чуть заранее всё отработает как надо.
- Вопрос по FS UFS, zakat, 16:13 , 28-Окт-21 (6)
> Когда / уже переполнен, никто не будет возражать на ребут и тд. Рассматриваем вариант близкий к переполнению. Система еще живая, доступ удаленный и другие радости. Перегружать не вариант. На данный момент интересует решение задачи на будущее. Задачка на первый взгляд элементарная. Я столкнулся случайно с подобной ситуацией и решил что не знаю чего то элементарного. Но похоже дело не в этом. Неужели решения нет. - Вопрос по FS UFS, lavr, 17:05 , 28-Окт-21 (7)
>> получит filesystem busy > Когда / уже переполнен, никто не будет возражать на ребут и тд. > А вот чуть-чуть заранее всё отработает как надо.если /tmp, /var, /usr на одной fs == "/", вариантов нет. если /var, /usr на отдельных fs - можно жить дальше. Даже если кто-то возражает, вариантов нет.
- Вопрос по FS UFS, zakat, 10:07 , 29-Окт-21 (12)
> если /tmp, /var, /usr на одной fs == "/", вариантов нет. > если /var, /usr на отдельных fs - можно жить дальше. > Даже если кто-то возражает, вариантов нет.Да, все FS отдельно, это железное правило. И система действительно живет. Но в случае если какой то скрипт рабочей областью опирается на root, то его ждет разочарование. Согласен, писать на root крайне нежелательно. Всем спасибо.
- Вопрос по FS UFS, zakat, 15:47 , 28-Окт-21 (5)
Да, получит "Device busy"Lavr, спасибо за расшифровку задачки, так наверное понятнее выглядит. Но решения так и нет. Может его не существует?
- Вопрос по FS UFS, lavr, 17:10 , 28-Окт-21 (8)
> Да, получит "Device busy" > Lavr, спасибо за расшифровку задачки, так наверное понятнее выглядит. > Но решения так и нет. Может его не существует?я навскидку не могу придумать. с некоторыми точками монтирования, требуется сперва хорошо подумать. Как пример: /tmp - внутри FS="/", я бы не стал монтировать в /tmp, а создал бы /tmp/mnt и туда смонтировал, доступность /tmp сохранена.
- Вопрос по FS UFS, lavr, 17:31 , 28-Окт-21 (9) +1
> Да, получит "Device busy" > Lavr, спасибо за расшифровку задачки, так наверное понятнее выглядит. > Но решения так и нет. Может его не существует?попробовал через mount_nullfs - работает и удалять позволяет.
- Вопрос по FS UFS, zakat, 10:09 , 29-Окт-21 (13)
Проверяю. Неужели получилось.
- Вопрос по FS UFS, zakat, 11:20 , 29-Окт-21 (14)
> попробовал через mount_nullfs - работает и удалять позволяет.А у меня не получается. При попытке монтирования root раздела в любую папку получаю "are not distinct paths" Но даже при пробах не root раздела получил фокус!!! Пусть есть папки /mnt/var и /mnt/mynull. Пусть есть чем то заполненный раздел /dev/gpt/test Копирую в папку /mnt/var несколько папок и файлов. Полигон готов. Монтирую nullfs "mount_nullfs /mnt/var /mnt/mynull" Проверяю, да все как и нужно, в папке /mnt/mynull вижу то же что и /mnt/var - несколько папок и файлов. Монтирую раздел "mount /dev/gpt/test /mnt/var" Проверяю mynull. Да все как и нужно, в папке /mnt/mynull вижу несколько папок и файлов, как и ранее. А в папке /mnt/var вижу примонтированный раздел. Пробую удалять создавать в папке mynull - все отлично удаляет и создает. Похоже получилось но.... Если изменить порядок то ничего не получается: Монтирую раздел "mount /dev/gpt/test /mnt/var" Монтирую nullfs "mount_nullfs /mnt/var /mnt/mynull" И теперь в /mnt/mynull вижу уже содержимое примонтированного раздела. То бишь - все в пустую. Тестирую на FreeBSD 9.1-RELEASE-p1 (да, старенькая) 1. Прошу проверить возможность монтирования именно корневого раздела. 2. Прошу проверить монтирование nullfs уже после монтирования раздела. Если получится прошу дать листинг команд, может я заблудился в трех соснах. Спасибо.
- Вопрос по FS UFS, lavr, 11:29 , 29-Окт-21 (16)
>> попробовал через mount_nullfs - работает и удалять позволяет. > А у меня не получается. > Тестирую на FreeBSD 9.1-RELEASE-p1 (да, старенькая) > 1. Прошу проверить возможность монтирования именно корневого раздела. > 2. Прошу проверить монтирование nullfs уже после монтирования раздела. > Если получится прошу дать листинг команд, может я заблудился в трех соснах. отписал. Взял за основу все на корне "/", там отдельно монтируется /usr/ports - можно не обращать внимания. создал три файла по 500MB - заполнил /tmp далее выполнил fsck на партицию которую буду монтировать в /tmp монтирую mount /dev/ada1p1 /tmp теперь все что ранее создано в /tmp недоступно делаем доступным (монтируем корень в /mnt): # mount_nullfs / /mnt # ls -la /mnt/tmp - все доступно # rm -rf /mnt/tmp/* # umount /mnt все
- Вопрос по FS UFS, анонимус, 00:45 , 29-Окт-21 (10)
Предложу точно рабочий, но сложный путь. Написать утилиту которая откроет блочное устройство в ro, просканирует все директории, и найдет этот мусор. Может такое уже и написал кто то, надо искать.Другой вариант - возможно получится сделать dump и отправить его по сети на другуб машинку и там его развернуть, но тут не уверен. А вот удалить... Можно модуль ядра написать
- Вопрос по FS UFS, zakat, 08:52 , 29-Окт-21 (11)
> Предложу точно рабочий, но сложный путь. Написать утилиту которая откроет блочное устройство > в ro, просканирует все директории, и найдет этот мусор. Может такое > уже и написал кто то, надо искать. > Другой вариант - возможно получится сделать dump и отправить его по сети > на другуб машинку и там его развернуть, но тут не уверен. > А вот удалить... Можно модуль ядра написать Да, я как раз через дамп и искал. Создал дамп, развернул на этой же машине во временную папку и нашел мусор. Но для удаления мусора - метод не нашел. По первому варианту, нужно разбираться, пока даже не понимаю как подступиться, второй хоть и долгий но работает. А вот с удалением... я пока ничего не нашел. Пока вижу только через размонтирование - засада.
- Вопрос по FS UFS, lavr, 11:23 , 29-Окт-21 (15)
root@bsd:~ # mount /dev/ada0p2 on / (ufs, NFS exported, local, journaled soft-updates) devfs on /dev (devfs) /dev/ada0p3 on /usr/ports (ufs, NFS exported, local, journaled soft-updates) root@bsd:~ # df -h Filesystem Size Used Avail Capacity Mounted on /dev/ada0p2 9.7G 1.6G 7.3G 18% / devfs 1.0K 1.0K 0B 100% /dev /dev/ada0p3 4.7G 1.0G 3.3G 23% /usr/ports root@bsd:~ # du -sh /tmp 20K /tmp root@bsd:~ # sh # for i in $(seq 1 3); > do > dd if=/dev/random of=/tmp/file$i bs=1M count=500 > done500+0 records in 500+0 records out 524288000 bytes transferred in 2.502629 secs (209494913 bytes/sec) 500+0 records in 500+0 records out 524288000 bytes transferred in 2.560358 secs (204771360 bytes/sec) 500+0 records in 500+0 records out 524288000 bytes transferred in 3.240919 secs (161771396 bytes/sec) # du -sh /tmp 1.5G /tmp # ls -la /tmp total 1536504 drwxrwxrwt 6 root wheel 512 Oct 29 14:15 . drwxr-xr-x 19 root wheel 1024 Oct 29 13:55 .. drwxrwxrwt 2 root wheel 512 Oct 29 13:55 .ICE-unix drwxrwxrwt 2 root wheel 512 Oct 29 13:55 .X11-unix drwxrwxrwt 2 root wheel 512 Oct 29 13:55 .XIM-unix drwxrwxrwt 2 root wheel 512 Oct 29 13:55 .font-unix -rw-r--r-- 1 root wheel 524288000 Oct 29 14:14 file1 -rw-r--r-- 1 root wheel 524288000 Oct 29 14:15 file2 -rw-r--r-- 1 root wheel 524288000 Oct 29 14:15 file3 # fsck_ffs -y /dev/ada1p1 ** /dev/ada1p1 ** Last Mounted on /tmp ** Phase 1 - Check Blocks and Sizes ** Phase 2 - Check Pathnames ** Phase 3 - Check Connectivity ** Phase 4 - Check Reference Counts ** Phase 5 - Check Cyl groups 2 files, 2 used, 507803 free (27 frags, 63472 blocks, 0.0% fragmentation) ***** FILE SYSTEM IS CLEAN ***** # mount /dev/ada1p1 /tmp # ls -la /tmp total 12 drwxr-xr-x 3 root wheel 512 Oct 28 20:27 . drwxr-xr-x 19 root wheel 1024 Oct 29 13:55 .. drwxrwxr-x 2 root operator 512 Oct 28 20:20 .snap # du -sh /tmp 8.0K /tmp # mount_nullfs / /mnt # du -sh /mnt/tmp 1.5G /mnt/tmp # ls -la /mnt/tmp total 1536504 drwxrwxrwt 6 root wheel 512 Oct 29 14:15 . drwxr-xr-x 19 root wheel 1024 Oct 29 13:55 .. drwxrwxrwt 2 root wheel 512 Oct 29 13:55 .ICE-unix drwxrwxrwt 2 root wheel 512 Oct 29 13:55 .X11-unix drwxrwxrwt 2 root wheel 512 Oct 29 13:55 .XIM-unix drwxrwxrwt 2 root wheel 512 Oct 29 13:55 .font-unix -rw-r--r-- 1 root wheel 524288000 Oct 29 14:14 file1 -rw-r--r-- 1 root wheel 524288000 Oct 29 14:15 file2 -rw-r--r-- 1 root wheel 524288000 Oct 29 14:15 file3 # rm -f /mnt/tmp/f* # du -sh /mnt/tmp 20K /mnt/tmp # umount /mnt как бы и все
- Вопрос по FS UFS, zakat, 12:02 , 29-Окт-21 (17)
> # mount_nullfs / /mntПо идеи эта команда должна отработать на любой системе без подготовки. Проверил на трех разных системах и версиях x@g:/# mount_nullfs / /mnt mount_nullfs: / (/) and /mnt are not distinct paths Как бы и ответ логически понятен "нельзя примонтировать корень в подчиненную папку(зацикливание)". Но у Вас получилось. Капец, не понимаю. x@g:/# mount /dev/gpt/root on / (ufs, local, journaled soft-updates) Отличие только в отсутствии NFS и у меня монтирование через gpt-метки Что не так?
- Вопрос по FS UFS, lavr, 22:12 , 29-Окт-21 (18)
>[оверквотинг удален] > По идеи эта команда должна отработать на любой системе без подготовки. > Проверил на трех разных системах и версиях > x@g:/# mount_nullfs / /mnt > mount_nullfs: / (/) and /mnt are not distinct paths > Как бы и ответ логически понятен "нельзя примонтировать корень в подчиненную папку(зацикливание)". > Но у Вас получилось. Капец, не понимаю. > x@g:/# mount > /dev/gpt/root on / (ufs, local, journaled soft-updates) > Отличие только в отсутствии NFS и у меня монтирование через gpt-метки > Что не так?в source от 9.1 идет проверка на то чтобы не было вложенности mount-point в target. # cd /usr/src/sbin/mount_nullfs/ # cp mount_nullfs.c /var/tmp/ # vi mount_nullfs.c ... /* if (subdir(target, source) || subdir(source, target)) errx(EX_USAGE, "%s (%s) and %s are not distinct paths", argv[0], target, argv[1]); */ комментируете проверку, для Ваших целей на раз - сойдет, хоть это и неверно и опасно. # make depend # make # make install # mount_nullfs / /mnt # umount /mnt ps. позже mount_nullfs доработали.
|