00:38

ownCloud

Тотальная неудачница и убийца жёстких дисков.
#post-id: 6276-18-46
#original-date: 1.10.2017 Sun
#original-time: 6:46 PM
#original-day:  6276
#original-host: WinXP Home SP3 (Build 2600)

В общем, тестиовала видеоплеер в ownCloud (не заработал в итоге), загрузила несколько видосов, а потом удалили их. Но один файл завис.

Удаляю файл из папки на локальной машине. Клиент показывает файл в исключениях, говорит, что «file is locked», ну и иконку с крестиком в трее показывает. В логе – это:

HTTP/1.1 423 "Temp/Lightning Returns - Final Fantasy XIII - 038 Meow-meow choco-chow.-PgpJ2tQowdc.mp4" is locked

Перезапускала Апач вместе с MySQL, перезапускала сам сервер, перезапускала клиент – басполезно.

У слову, вот скриптик для перезапуска всего этого дела:



Зашла даже в каталог данных, нашла файл и удалила. Потом удалила из папки cache в каталоге данных. Ничего.

Но тут начались странности. На сервере следов файла нет, а клиент всё равно жалуется, говорит, команду DELETE так и не удалось выполнить. Захожу через WebDAV, а файл на месте. Но с ним ничего нельзя сделать, WinSCP сообщает, что на все действия та же ошибка, что «file is locked».

Что характерно, когда я скопировала тот же файл в ту же папку, клиент ругаться перестал, но на сервере файл так и не появился. Тоесть сервер даже не пытается его синхронизировать.

Чувствуя, что нужно что0то где-то в таблицах править, отправилась в Гугол. Нашла это:

https://central.owncloud.org/t/file-is-locked-how-to-unlock/985

Если своими словами, решение было таким.

1. Скачала и установила Database Browser Portable.

2. В PuTTY настроила тунель с локального порта 13306 на 127.0.0.1:3306.

• Source port – 13306.
• Destination - 127.0.0.1:3306
• Галочка «Local»
• Галочка «IPv4»

В списке тунелей должно появится это: «4L13306 127.0.0.1:3306».

3. Зашла в «/var/www/owncloud/config/config.php» на сервере и посмотрела следующие параметры:

• dbname
• dbuser
• dbpassword
• dbtableprefix

У меня база называется «owncloud», а префикс – «emg». В станых версиях префикс был вроде как «oc_».

4. Тут же добавила в конце отдельной строкой это:

'maintenance' => true,

5. На всякий случай перезапустила Апач и MySQL.

6. Заупстила Database Browser Portable и создала новое соедниение.

• Connection type – MySQL/MariaDB
• Host name – 127.0.0.1
• Port – 13306
• User Name и Password я посмотрела в пункте 3.
• Database тоже смотрела там, но я на свякий случай нажала кнопку «Обновить» и выбрала базу из списка.
• Больше ничего не устанавливала – все галочки сняты, текстбоксы пусты.

7. Открыла соединение и на всякий случай поискала таблицу. У меня она называется «emgfile_locks» – внимание на префикс.

8. В редакторе запроса (блок «SQL» наверху) написала это (имя базы указано с моим префиксом):



Зашла в меню «Execute» и нажала «Run SQL». Таблица опустела, но не исчезла.

9. Закрыла всё это дело, чтобы не мешалось.

10. Зашла в «/var/www/owncloud/config/config.php» на сервере и в параметре «maintenance», который добавила ранее, «true» поменяла на «false».

11. На всякий случай перезапустила Апач и MySQL.

После этого файл пропал из WebDAV, ошибка пропала.

Комментарии
02.10.2017 в 02:07

この世界は。。。いいですか?
Что-то как-то с rsync проще, по-моему.
02.10.2017 в 03:06

Тотальная неудачница и убийца жёстких дисков.
Что проще? Решение проблемы, которой у него не возникает?

Касаемо, собственно, rsync. Децентрализованно, больше двух точек – бардак, плюс порт под Windows ведёт себя по меньшей мере удивительно (например, требует сделать чмод™ файлу ключа SSH и даже не путается смотреть на реальные права у файла).
02.10.2017 в 06:09

We rise up for the things we believe in over and over again
038 Meow-meow choco-chow
Какое знакомое имя :)
02.10.2017 в 23:27

Тотальная неудачница и убийца жёстких дисков.
Ты же и присылал ^^'
02.10.2017 в 23:39

We rise up for the things we believe in over and over again
Линда Кайе, да, я помню :)
02.10.2017 в 23:59

Тотальная неудачница и убийца жёстких дисков.
^^'