热搜词
发表于 2023-6-24 13:50:58 | 显示全部楼层 |阅读模式
Nextcloud手动迁移文件后通过OCC命令将文件扫描入库,更新用户文件索引方法

有时候,直接通过Web页面上传文件并不那么方便,于是有的朋友就通过FTP工具直接把文件上传到nextcloud 服务器的data目录内用户文件夹下,但是打开NextCloud,却还是之前的文件。这是因为虽然上传了文件,但是ownCloud/Nextcloud的数据库里并没有这个文件的信息。那是因为文件信息都被存储在mysql数据库的oc_filecache表中,nextcloud没有扫描用户目录,同步加载这些文件的信息。

那通过非 nextcloud 客户端(手机、PC、网页端)途径放入 nextcloud 目录的文件。怎么才能实现重建 nextcloud 索引呢?官方已经提供了解决方案。

使用OCC命令更新文件索引
occ有三个用于管理Nextcloud中文件的命令:
  1. files
  2. files:cleanup              #清楚文件缓存
  3. files:scan                 #重新扫描文件系统
  4. files:transfer-ownership   #将所有文件和文件夹都移动到另一个文件夹
复制代码
我们需要使用
  1. files:scan
复制代码
来扫描新文件。
  1.   格式:
  2.   files:scan [-p|--path="..."] [-q|--quiet] [-v|vv|vvv --verbose] [--all]
  3.   [user_id1] ... [user_idN]

  4. 参数:
  5.   user_id               #扫描所指定的用户(一个或多个,多个用户ID之间要使用空格分开)的所有文件

  6. 选项:
  7.   --path                #限制扫描路径
  8.   --all                 #扫描所有已知用户的所有文件
  9.   --quiet               #不输出统计信息
  10.   --verbose             #在扫描过程中显示正在处理的文件和目录
  11.   --unscanned           #仅扫描以前未扫描过的文件
复制代码
扫描所有用户的所有文件命令:

  1. sudo -u www php occ files:scan --all
复制代码
扫描所有用户的所有文件,www是文件拥有者的用户名,哪个用户启动的Web服务器,所有者就是谁,就填写谁的名字。宝塔面板web网站用户为www,docker容器用户名为 www-data。OCC文件位于nextCloud的根目录下,如果当前目录不是nextCloud的根目录,则需要补全OCC的路径。

执行命令后未进行扫描并列出扫描信息。


如果不想显示扫描信息,可以在后面加上
  1. --quiet
复制代码
,如下:
  1. sudo -u www php occ files:scan --all --quiet
复制代码

指定扫描位置
总是扫描全部信息并不是那么有必要,还会白白消耗服务器资源。

指定扫描的用户
列出所有用户:
  1. sudo -u www php occ user:list
复制代码


为用户ChengYe扫描文件:
  1. sudo -u www php occ files:scan ChengYe
复制代码


指定扫描目录
当使用
  1. --path
复制代码
选项时,该路径必须包含以下部分:
  1. "user_id/files/path"
  2.   或
  3. "user_id/files/mount_name"
  4.   或
  5. "user_id/files/mount_name/path"
复制代码
其中,
  1. /files/
复制代码
是必须要加上的,不可忽略。
示例:
  1. sudo -u www php occ files:scan --path="/ChengYe/files/Photos" #指向用户ChengYe的Photos文件夹
复制代码


原文链接:https://www.orgleaf.com/2400.html?wpfpaction=add&postid=2400

全部评论1
灰儿 发表于 2023-6-24 14:30:36 | 显示全部楼层
http://www.admin365.cn/thread-112416-1-1.html   Nextcloud命令行工具OCC命令使用详解
http://www.admin365.cn/thread-112390-1-1.html   Nextcloud手动迁移文件后通过OCC命令将文件扫描入库
http://www.admin365.cn/thread-112389-1-1.html   Docker容器中Nextcloud命令行工具OCC命令使用方法
回复

使用道具 举报

回复
您需要登录后才可以回帖 登录 | 注册

本版积分规则

QQ|Archiver|手机版|小黑屋|管理员之家 ( 苏ICP备2023053177号-2 )

GMT+8, 2024-12-22 23:13 , Processed in 0.177187 second(s), 25 queries .

Powered by Discuz! X3.5

Cpoyright © 2001-2024 Discuz! Team