zoukankan      html  css  js  c++  java
  • nextcloud 同步本地文件

    想把大量本地文件由nextcloud管理

    一个个上传显然不现实

    即使有批量上传工具,那也是多了次硬盘写入,损硬盘不说,还耗时

    期望的功能是,在操作系统文件管理层面,操作文件,例如把一些文件,直接移动/拷贝到nextcloud相关用户的文件目录之下

    之后直接作同步,由nextcloud扫描用户目录,加载这些文件的信息

    这是个很硬的需求,官方应该提供支持才对

    在nextcloud后台管理页面里没有看到相关操作

    只好到官网找资料

    https://help.nextcloud.com/t/local-sync-with-nextcloud/8973/11

    找到解决办法

    sudo -u www-data php occ files:scan --user

    因为是docker下,默认没有sudo命令 需要多绕几部

    记录如下

    docker exec -it nextcloud bash
    cd /var/www/html
    chown root:root config/config.php
    php occ files:scan --all
    chown www-data:www-data config/config.php

    php occ files:scan --all 成功后输出如下

    root@076e0466ade7:/var/www/html# php occ files:scan --all
    Starting scan for user 1 out of 1 (<user_name>)

    +---------+-------+--------------+
    | Folders | Files | Elapsed time |
    +---------+-------+--------------+
    | 223 | 394 | 00:00:20 |
    +---------+-------+--------------+

    之所以要改一次用户和组

    是因为config/config.php 原用户权限是www-data,docker下默认用户是root,且内缺失大量用户权限相关的命令,如sudo 只好临时用root执行
    root@076e0466ade7:/var/www/html# php occ files:scan --all
    Console has to be executed with the user that owns the file config/config.php
    Current user: root
    Owner of config.php: www-data
    Try adding 'sudo -u www-data ' to the beginning of the command (without the single quotes)

     --

    后续发现更好的办法 直接以www-data 进容器,避免权限问题

    docker run --user www-data 

  • 相关阅读:
    5.JavaSE之数据类型详解
    4.JavaSE之标识符
    2.Java程序运行机制
    1.HelloWorld 仪式感
    10.安装开发环境
    【模板】后缀数组
    Luogu P3808 【模板】AC自动机(简单版)
    Luogu P3375 【模板】KMP字符串匹配
    LNSY集训
    Luogu P2580 于是他错误的点名开始了 (Trie树模板)
  • 原文地址:https://www.cnblogs.com/zihunqingxin/p/8991996.html
Copyright © 2011-2022 走看看