Linux текстовый файл занят

Fallocate: Fallocate не удалось: Текстовый файл занят в Ubuntu 17.04?

Я установил Ubuntu несколько недель назад и обычно запускаю более 6 программ (sts, веб-браузеры и т. Д.).

Объем моей оперативной памяти составляет 6 ГБ, а подкачка 2 ГБ. Я решил увеличить размер свопа до 15 ГБ. Когда я пытался выполнить эту работу, я получил следующую ошибку. Я связался с учебником, которому следовал.

2 ответа

Создание раздела SWAP в Ubuntu, Linux Mint и его производных

МЕТОД 1: Командная строка из терминала (самый быстрый способ!)

ШАГ 1. Первый шаг — проверить, случайно ли на вашем ПК уже создан раздел SWAP:

Введите свой пароль root. Если вы не видите вывода, это означает, что SWAP не существует.

ШАГ 2: Далее, давайте посмотрим текущую структуру разделов жесткого диска вашего компьютера:

ШАГ 3: Как прокомментировала heynnema, перед тем, как начать изменения, отключите использование swap:

ШАГ 4: Теперь пришло время создать файл SWAP. Убедитесь, что у вас достаточно места на жестком диске. Вопрос в том, какой размер SWAP вам нужен.

Мое предложение: если у вас есть максимум 4 ГБ ОЗУ, я бы посоветовал добавить в два раза больше ОЗУ для SWAP (8 ГБ для SWAP). Для ПК с объемом более 4 ГБ я рекомендую такое же количество оперативной памяти для SWAP плюс 2 ГБ. Пример: в моем случае это 8 ГБ, я положил 8 ГБ + 2 ГБ, всего 10 ГБ для SWAP. Но вы можете свободно выбирать.

ШАГ 5: SWAP-файл теперь создан. Давайте дадим ему только root-права.

ШАГ 6: Пометить файл как пространство SWAP:

ШАГ 7: Наконец, включите SWAP.

ШАГ 8: Теперь вы можете проверить, используя ту же команду swapon, чтобы проверить, создан ли SWAP.

ШАГ 9: Еще раз проверьте окончательную структуру разделов.

ШАГ 10: После того, как все настроено, вы должны установить файл SWAP как постоянный, иначе вы потеряете SWAP после перезагрузки. Запустите эту команду:

Закончено, теперь выход из терминала!

Вы можете проверить состояние SWAP в утилите System Monitor.

МЕТОД 2: GUI Путь с использованием GParted

Если вы хотите перейти непосредственно через графический интерфейс, введите ссылку ниже, которая хорошо объяснена.

Источник

Текстовый файл занят

прошу дать совет. Linux 7, Debian, установка «по умолчанию»

После вот такого списка команд

fallocate -l 3000M /mnt/3000MB.swap
dd if=/dev/zero of=/mnt/3000MB.swap bs=1024 count=3072000
mkswap /mnt/3000MB.swap
swapon /mnt/3000MB.swap
chmod 600 /mnt/3000MB.swap

Вот такая ошибка

Текстовый файл не найден
Ребут не помог. Как найти процесс занимающий этот файл и убить его?
Даже сам файл не смог найти 🙁

Эта ошибка где появляется и после какой команды?

Вообще посмотреть какой процесс держит файл можно через lsof .

Как найти процесс занимающий этот файл и убить его?

Можно еще провод из розетки вынуть.

Эта ошибка где появляется и после какой команды?

fallocate -l 3000M /mnt/3000MB.swap

вообще посмотреть какой процесс держит файл можно через lsof.

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

а можете полностью команду для файла написать? говорит
-bash: kill: init: arguments must be process or job IDs

может надо местами поменять команды swapon и chmod ? Ну, в смысле, порядок их вызова изменить.

На вообще регистрант выше неправ, ибо этот файл юзает не инит, а ядро.

Читайте также:  Хостинг линукс или виндовс

не помогло, та же ошибка что и в начале

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

социальная инженерия — ваше все, я так понимаю? Ожидал помощь на этом форуме. )

Здесь с такой формулировкой вопроса, как в ОП, над тобой обязательно будут хохмить. Видно, что человек совершенно не разбирается в вопросе, пытается вводить какие-то команды из интернета, и при этом не факт, что результат, если он таки его получит, будет тем, что он ожидал.

Уже советовали выше, и я повторю: сначала делай chmod, а потом swapon.

проблема еще в том, что я сам файл не могу найти 🙁

сначала swapoff сделай и потом меняй его свойства

что результат, если он таки его получит, будет тем, что он ожидал

вкратце — так выглядит любой процесс самообучения, не так ли?

я сам файл найти не могу, ни одна команда его не выцепляет. Пробовал whereis, grep, find. Подскажите где почитать про синтаксис команд тогда?

Я думаю в ребут просто должно уйти.

Я думаю в ребут просто должно уйти.

сделал ребут. Не помогло.

вкратце — так выглядит любой процесс самообучения, не так ли?

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

я сам файл найти не могу, ни одна команда его не выцепляет.

Перезагрузись, начни выполнять команды по списку, но chmod и swapon поменяй местами.

Ну тут разве что ошибка будет если у вас каталога /mnt нет.

Так и не должно было, я про то что будет если инит убить.

Давай по порядку. Чего ты хочешь добиться выполнением этих команд, какова конечная цель?

Подход «тыкать все подряд и смотреть на результат» где-то может и работает, но не при освоении линукса

виртуалка развернута как раз для того, чтобы делать так. Учиться, исправлять ошибки, узнавать. Вы же прекрасно понимаете, что в горах информации найти нормальный guide сложно. Ищу.

Перезагрузись, начни выполнять команды по списку, но chmod и swapon поменяй местами.

нет результата. То же самое — «текстовый занят» или «устройство или ресурс занято».
Не ищу готовое решение, хочу разобраться. Если файл занят — почему я не могу его стандартными командами найти? Если файл есть — почему тупой ребут не снимает процесс?

Чего ты хочешь добиться выполнением этих команд, какова конечная цель?

Разворачиваю мастерноду по инструкции. Разобрался за неделю в виртуалках, установил ОС, нормально позанимался сексом с ней. Аж сны снятся теперь.
Сейчас пошагово хочу просто найти ответы на текущие вопросы.
1. Убрать ошибку «текстовый файл занят».
2. убрать ошибку «устройство или ресурс занято»

Кто возвращает эту ошибку? Они возникает как результат выполнения какой-то команды? Какой?

Кто возвращает эту ошибку? Они возникает как результат выполнения какой-то команды? Какой?

Источник

Gedit не сохранит файл на общем ресурсе VirtualBox: текстовый файл занят

У меня есть текстовый файл, который я могу изменить, используя другие приложения (например openoffice ). Но когда я пытаюсь изменить и сохранить его с помощью gedit , я получаю сообщение об ошибке gedit :

разрешение BuildNotes.txt выглядит следующим образом:

и идентификатор пользователя:

В чем проблема и как я могу это исправить?

Эта проблема была зарегистрирована с 2009 года (Google для «Gedit Virtualbox»). Ужасно, что это еще не исправлено. Ни VirtualBox, ни разработчики Gedit не хотят брать на себя ответственность за это, и вместо этого довольствуются указывать друг на друга более трех лет.

Читайте также:  Где находится управление дисками windows

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

Некоторые другие редакторы не сообщат о проблеме. Однако, когда я тестировал, например, Kate и nano, они просто молча удаляли файл при каждом другом сохранении. Это даже хуже, чем ситуация с Gedit .

«Текстовый файл занят» может сбивать с толку: речь идет не о текстовых файлах, а о исполняемых файлах. Исполняемые файлы называются текстовыми файлами, потому что… на самом деле, я не знаю почему .

На самом деле это сообщение означает «этот файл заблокирован другой программой, которая использует его и не может позволить ему изменить его под носом, поэтому вы не можете писать в него». Довольно необычно видеть это сообщение для Текстовый файл: Unix-системы, как правило, не одобряют обязательную блокировку файлов, и приложения не могут блокировать изменение файла другими пользователями (Unix имеет консультативные блокировки: их можно использовать для синхронизации одновременного доступа к файлу с помощью взаимодействующих программ.) Наиболее распространенное обстоятельство, когда вы видите «текстовый файл занят» ( ETXTBUSY ), — это если вы пытаетесь изменить исполняемый файл: ядро блокирует это. Другая возможность — это смонтированный образ диска , снова заблокированный ядром.

В вашем случае, учитывая местоположение файла /media/sf_Ubuntu и права собственности на группу vboxsf , я предполагаю, что файл, находящийся в файловой системе общего доступа к файлам VirtualBox, заблокирован в операционной системе хоста. Предположительно, хост является Windows-машиной, и у вас также есть файл, открытый в редакторе. Вам нужно закрыть файл на хосте, прежде чем вы сможете сохранить его в редакторе на виртуальной машине.

Проверьте, lsof открыт ли файл другим приложением

Источник

Файл занят и не редактируется Ubuntu

Ubuntu One: Ник занят
Удалял свой старый аккаунт. Пытаюсь создать новый. Пишет, что ник занят. Этот ник не приметный.

Не редактируется файл HOSTS
Доброго времени суток! У меня возникла беда с файлом hosts, я никак не могу его отредактировать.

Не редактируется css файл
Всем привет! скажите пожалуйста в чем может быть ошибка? Скачал шаблон,при редатировании.

Не редактируется файл хостов
Нужно внести сайт в файл хостов, но при сохранении пишет «Нет доступа» В системе я числюсь как.

Помощь в написании контрольных, курсовых и дипломных работ здесь.

Не редактируется файл hosts
Приветствую! Столкнулся с тем, что не могу редактировать файл hosts. ПРобовал запускать блокнот от.

Не редактируется файл чертежа dwg
Здравствуйте! После работы с файлом в Autocad сохранил его. Затем открыл его, а в нем, кроме.

Занят файл
У меня есть 2 компьютера, один монитор и одна мышка с клавиатурой. Чтобы не покупать новый монитор.

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

Источник

Что генерирует сообщение «текстовый файл занят» в Unix?

Какая операция генерирует ошибку «текстовый файл занят»? Я не могу точно сказать.

Я думаю, что это связано с тем, что я создаю временный python script (используя tempfile) и используя execl из него, но я думаю, что execl изменяет выполняемый файл.

ОТВЕТЫ

Ответ 1

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

Ответ 2

Это время, так как я видел это сообщение, но он был распространен в System V R3 или около двух десятков лет назад. В то время это означало, что вы не могли изменить исполняемый файл программы во время его запуска.

Например, я создавал make workalike под названием rmk , и через некоторое время он был самоподдерживающимся. Я бы запустил версию разработки и создал новую версию. Чтобы заставить его работать, необходимо использовать обходное решение:

Читайте также:  How to create ssh key linux

Итак, чтобы избежать проблем с «загруженным текстовым файлом», сборка создала новый файл rmk1 , а затем переместила старый rmk в rmk2 (переименование не было проблемой, было отключено) и затем переместил вновь построенный rmk1 в rmk .

Я давно не видел ошибки в современной системе. но я не все, что часто перестраивает программы.

Ответ 3

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

Ответ 4

Пример минимального запуска C POSIX

Я рекомендую понять базовый API, чтобы лучше видеть, что происходит.

Скомпилируйте и запустите:

busy.out передает утверждения, а perror выводит:

поэтому мы делаем вывод, что сообщение жестко закодировано в самом glibc.

В качестве альтернативы:

Для более сложных приложений вы также можете наблюдать это с помощью strace :

Протестировано в Ubuntu 18.04, ядро Linux 4.15.0.

Ошибка не произойдет, если вы unlink сначала

Затем скомпилируйте и запустите аналогично приведенному выше, и эти утверждения пройдут.

Это объясняет, почему это работает для определенных программ, но не для других. Например. если вы делаете:

это не приводит к ошибке, даже если второй вызов gcc пишет в sleep.out .

Краткий strace показывает, что GCC сначала отменяет связь перед записью:

Причина, по которой он не перестает работать, заключается в том, что когда вы unlink переписываете файл, он создает новый индекс и сохраняет временный висячий индекс для исполняемого исполняемого файла.

Но если вы просто write без unlink , то он пытается записать в тот же защищенный инод, что и исполняемый исполняемый файл.

POSIX 7 open()

Этот файл представляет собой файл чистой процедуры (общий текст), который выполняется и имеет значение O_WRONLY или O_RDWR.

человек 2 открытый

pathname относится к исполняемому образу, который в данный момент выполняется, и был запрошен доступ для записи.

Ответ 5

В моем случае я пытался выполнить файл оболочки (с расширением .sh) в среде csh, и я получал это сообщение об ошибке.

просто работает с bash, это сработало для меня. Например

Ответ 6

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

Я просто испытал эту эту странность в CentOS 6 после «cat > shScript.sh» (paste, ^ Z), а затем редактировал файл в KWrite. Как ни странно, не было видимого экземпляра (ps -ef) выполнения script.

Моя быстрая работа была просто «cp shScript.sh shScript2.sh», после чего я смог выполнить shScript2.sh. Затем я удалил оба. Готово!

Ответ 7

Вы можете обнаружить, что это более распространено в сетевых ресурсах CIFS/SMB. Windows не позволяет писать файл, когда что-то еще открывает этот файл, и даже если служба не Windows (это может быть какой-то другой продукт NAS), он, вероятно, воспроизведет такое же поведение. Потенциально, это может быть также проявление некоторой проблемы с базой NAS, смутно связанной с блокировкой/репликацией.

Ответ 8

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

Ответ 9

Один из моих впечатлений:

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

Используя strace, вы можете найти более подробную информацию:

Ответ 10

Если вы запускаете .sh из ssh-соединения с помощью такого инструмента, как MobaXTerm, и если в указанном инструменте есть утилита автосохранения для редактирования удаленного файла с локального компьютера, он заблокирует файл.

Закрытие и повторное открытие сессии SSH решает ее.

Ответ 11

Я наткнулся на это в PHP при использовании fopen() в файле, а затем попытался unlink() его перед использованием fclose() на нем.

Источник

Оцените статью