nextcloud snap dengan data-direktori pada harddisk eksternal

9

Saya menginstal nextcloud pada raspberrypi 3 saya menggunakan tautan ini . Semuanya berfungsi dengan baik kecuali saya tidak suka UX memiliki semua ruang penyimpanan tambahan yang berasal dari add-in "Penyimpanan Eksternal", karena itu berarti bahwa setiap orang sekarang harus tahu untuk meletakkan semua file mereka di folder yang ditunjuk .

Sepertinya saya hanya bisa memberi tahu nextcloud untuk menggunakan harddrive eksternal sebagai lokasi data-direktori (tanpa tambahan penyimpanan eksternal) dan semua akan baik-baik saja ... dan sepertinya dalam teori itu berfungsi dengan baik . Tapi, karena diinstal sebagai snap, sepertinya snap itu tidak memiliki akses ke bagian sistem file saya dan dengan demikian tidak berfungsi.

Saya bertanya-tanya apakah ada yang punya saran. Haruskah saya memasang harddisk di dalam area snap yang dapat ditulis? Apakah mungkin untuk memberikan akses snap ke harddisk?

Mat
sumber

Jawaban:

13

Pertama-tama, saya mungkin harus menyebutkan bahwa ini bukan forum dukungan untuk snap Nextcloud. Jika Anda memiliki masalah dengannya, Anda dapat mencatat bug yang menentangnya .

Yang mengatakan, seseorang sudah melakukannya, dengan solusi yang diberikan di sini .

Untuk meringkas dengan cepat di sini: Anda benar, ini harus dimungkinkan, dan memang benar. Namun, secara default snap Nextcloud tidak memiliki izin untuk mengakses media yang dapat dilepas (sebagaimana disebutkan dalam README -nya ).

Jadi, langkah-langkah yang diberikan adalah:

  1. Hubungkan removable-mediasteker: sudo snap connect nextcloud:removable-media.
  2. Menghubungkan antarmuka itu memberi Nextcloud izin untuk mengakses berbagai hal /media/, sehingga Anda dapat mengedit /var/snap/nextcloud/current/nextcloud/config/config.phpdan memastikannya datadirectorymenunjuk ke tempat yang tepat.
  3. Nonaktifkan snap: sudo snap disable nextcloud
  4. Pindahkan (atau menyalin) direktori data saat ini ke lokasi baru: sudo mv /var/snap/nextcloud/common/nextcloud/data /media/my/new/data.
  5. Mengaktifkan kembali snap: sudo snap enable nextcloud.

Sekarang Anda tidak perlu repot dengan solusi media eksternal: semua data Nextcloud akan ada di sana.

Perhatikan bahwa ini hanya mencakup data mentah (mis. File) yang dihosting oleh Nextcloud. Basis data dan aplikasi masih ada /var/snap/nextcloud/current/. Saya sarankan Anda meninggalkan mereka di sana.

Kyle
sumber
Ini bekerja dengan baik! Saya bersumpah, saya melakukan pencarian dengan jumlah yang layak dan tidak menemukan posting Anda yang tertaut. Koneksi ... removable-media adalah bagian yang tidak saya ketahui; itulah yang saya cari dan sangat membantu. Sepertinya entri yang bagus untuk faq snapcraft. Permintaan maaf karena memposting ini di tempat yang salah. Menempatkan laporan bug tampak konyol ketika saya tidak benar-benar menemukan bug.
Matt
Oh tidak perlu minta maaf! Ini harus benar-benar dicakup dalam README snap Nextcloud, atau mungkin wiki-nya.
Kyle
3
Hal lain yang perlu disebutkan di sini adalah bahwa mungkin ada masalah izin pada file karena server nextcloud masih berjalan sebagai root, sementara kami mungkin ingin menggunakan izin lain untuk file (saya menggunakan nextcloud sebagai syncthingfront-end). Untuk memperbaikinya, pada awalnya saya menggunakan trik menambahkan sftppenyimpanan yang menunjuk ke server itu sendiri dan mengakses sebagai pengguna yang diinginkan sehingga menggunakan 127.0.0.1sebagai host dan pemilik file sebagai pengguna dengan kunci ssh yang dihasilkan. Tapi ini bukan pilihan terbaik. Menggunakan bindfsalih-alih dengan sesuatu seperti bindfs --map=ubuntu/root:@ubuntu/@root, bukan pekerjaan yang diinginkan.
Treviño
Setelah saya memindahkan direktori saya mendapat "UniqueConstraintViolationException \", \ "Message \": \ "Pengecualian terjadi ketika menjalankan 'INSERT INTO oc_filecache...". Saya belum menambahkan file apa pun ke dalamnya, hanya instalasi snap yang bersih, membuat pengguna admin dan satu login sebelum memindahkan direktori. Ada petunjuk?
Giox
nextcloud snap + syncthing - entri bindf di fstab hanyalah cara berkelanjutan yang saya buat untuk ini. Jepret Nextcloud tidak menggunakan izin pengguna sebenarnya menyakitkan.
Jack Wasey
0

Gunakan 'berhenti' alih-alih 'nonaktifkan' jika tidak, Anda tidak akan dapat mengedit config.php.

  1. Aktifkan penyimpanan eksternal untuk snap: sudo snap connect nextcloud: removable-media

  2. Stop nexcloud snap: sudo snap stop nextcloud

  3. Perbarui lokasi penyimpanan: sudo vim /var/snap/nextcloud/current/nextcloud/config/config.php

ubah lokasi data:

'datadirectory' => '/ media / storage / data',

  1. Pindahkan direktori data ke perangkat penyimpanan: sudo mv / var / snap / nextcloud / common / nextcloud / data / media / storage /

  2. Mulai snap nextcloud: sudo snap mulai nextcloud

Jonathonp
sumber