Ubuntu 22.04 开机自动挂载webdav - 设置开机自启脚本 - 解决坚果云webdav无写入权限

本文主要是介绍Ubuntu 22.04 开机自动挂载webdav - 设置开机自启脚本 - 解决坚果云webdav无写入权限,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

效果图:

前言:

1)亲测/etc/fstab的办法没有成功自动挂载,换成传统的rc.local可以解决;
2)rc-local.service是系统自带的一个开机自启服务,但是在 ubuntu 20.04+ 上,该服务默认没有开启;

挂载前期准备步骤:

0. 切换为root

sudo -i

1. 准备好本地挂载目录

mkdir -p /cloud/jianguoyun/

2. 安装davfs2工具(centOS等是yum install davfs2)

apt install davfs2

3. 编辑/etc/davfs2/davfs2.conf配置文件

1) 将use_locks的1改为0,并去掉注释
2) 将ignore_dav_header的0改为1,并去掉注释

4. 编辑/etc/davfs2/secrets,让Linux记住webdav账号密码,追加内容:

https://dav.jianguoyun.com/dav/ 你的用户名 你的应用密码

5. 手动尝试挂载 - 不报错就是ok

mount -t davfs https://dav.jianguoyun.com/dav/ /cloud/jianguoyun/

6. 检查是否挂载成功,ls能看到文件就代表成功

cd /cloud/jianguoyun/
ls

7. 手动断开挂载

umount -v /cloud/jianguoyun/


 

开机自动挂载步骤:

0. 切换为root

sudo -i

1. 修改/lib/systemd/system/rc-local.service, 在后面追加以下内容:

[Install]
WantedBy=multi-user.target
Alias=rc-local.service

2. 创建/etc/rc.local:

touch /etc/rc.local

3. 添加可执行权限:

chmod +x /etc/rc.local

4. 将rc-local.service服务设置为开机自动启动

systemctl enable rc-local.service

5. 启动rc-local.service服务

systemctl start rc-local.service

6. 检查rc-local.service服务状态,看到绿色的Active: active (running)即代表运行中

systemctl status rc-local.service

7. 创建具体要执行的脚本(挂载坚果云webdav)

mkdir /autoRunShell
cd /autoRunShell
touch mountWebdav.sh
chmod +x mountWebdav.sh
ls

8. 编辑脚本/autoRunShell/mountWebdav.sh的内容:

#!/bin/bash
mount -t davfs https://dav.jianguoyun.com/dav/ /cloud/jianguoyun/
exit 0

9. 在/etc/rc.local中指定开机启动需要执行的脚本:

#!/bin/bash
bash /autoRunShell/mountWebdav.sh
exit 0

10. 重启

reboot

11. 检查是否挂载成功

df -h

解决坚果云webdav无写入权限:

因为全程使用root用户操作,挂载点都是root的,所以非root用户访问不了,解决办法:
sudo chown -R 目标用户名:目标用户组 挂载点绝对路径
干脆就写进上述脚本中,挂载后chown即可,例如编辑脚本/autoRunShell/mountWebdav.sh的内容:

#!/bin/bash
mount -t davfs https://dav.jianguoyun.com/dav/ /cloud/jianguoyun/
chown -R 目标用户名:目标用户组 /cloud/jianguoyun/
exit 0

参考:

Ubuntu 22.04 设置开机自启脚本_ubuntu22开机启动脚本-CSDN博客文章浏览阅读9.7k次,点赞5次,收藏22次。背景:系统采用docker容器形式部署方式,docker的形式存在每次启动服务器时所有服务同时启动,没有先后顺序,本次系统有应到mqtt,mqtt需在其他服务之前启动,否则会存在通信异常情况,所以本次应用了开机自启服务,开机执行顺序脚本,以达到应用到mqtt的服务后启动。在该文件中添加脚本内容,即开机脚本需要实现的功能,这里我等了60秒后移除该服务,再次运行该服务,在家了个简单地实现了向某一个文件里填充数据功能,作为标记。Ubuntu 20.04 默认不存在 /etc/rc.local,需要自己创建,_ubuntu22开机启动脚本https://blog.csdn.net/qq_41588556/article/details/128418888ubuntu22.04开机自动执行shell脚本_ubuntu 22.04.4 开机就打开程序-CSDN博客文章浏览阅读1.2k次。ubuntu22.04开机自动执行shell脚本–使用rc.local方式。_ubuntu 22.04.4 开机就打开程序https://blog.csdn.net/juyuyh/article/details/132922697

支持 webdav 的网盘收集

支持 webdav 的网盘收集_webdav 网盘-CSDN博客文章浏览阅读7.9k次,点赞5次,收藏19次。支持WebDAV的国内外网盘整理汇总-各大网盘WebDAV服务器地址及连接方式_webdav 网盘https://blog.csdn.net/csdn_life18/article/details/128506420

done....

这篇关于Ubuntu 22.04 开机自动挂载webdav - 设置开机自启脚本 - 解决坚果云webdav无写入权限的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/904651

相关文章

Nginx 配置跨域的实现及常见问题解决

《Nginx配置跨域的实现及常见问题解决》本文主要介绍了Nginx配置跨域的实现及常见问题解决,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来... 目录1. 跨域1.1 同源策略1.2 跨域资源共享(CORS)2. Nginx 配置跨域的场景2.1

PostgreSQL 默认隔离级别的设置

《PostgreSQL默认隔离级别的设置》PostgreSQL的默认事务隔离级别是读已提交,这是其事务处理系统的基础行为模式,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价... 目录一 默认隔离级别概述1.1 默认设置1.2 各版本一致性二 读已提交的特性2.1 行为特征2.2

一文详解MySQL如何设置自动备份任务

《一文详解MySQL如何设置自动备份任务》设置自动备份任务可以确保你的数据库定期备份,防止数据丢失,下面我们就来详细介绍一下如何使用Bash脚本和Cron任务在Linux系统上设置MySQL数据库的自... 目录1. 编写备份脚本1.1 创建并编辑备份脚本1.2 给予脚本执行权限2. 设置 Cron 任务2

qt5cored.dll报错怎么解决? 电脑qt5cored.dll文件丢失修复技巧

《qt5cored.dll报错怎么解决?电脑qt5cored.dll文件丢失修复技巧》在进行软件安装或运行程序时,有时会遇到由于找不到qt5core.dll,无法继续执行代码,这个问题可能是由于该文... 遇到qt5cored.dll文件错误时,可能会导致基于 Qt 开发的应用程序无法正常运行或启动。这种错

mtu设置多少网速最快? 路由器MTU设置最佳网速的技巧

《mtu设置多少网速最快?路由器MTU设置最佳网速的技巧》mtu设置多少网速最快?想要通过设置路由器mtu获得最佳网速,该怎么设置呢?下面我们就来看看路由器MTU设置最佳网速的技巧... 答:1500 MTU值指的是在网络传输中数据包的最大值,合理的设置MTU 值可以让网络更快!mtu设置可以优化不同的网

Linux脚本(shell)的使用方式

《Linux脚本(shell)的使用方式》:本文主要介绍Linux脚本(shell)的使用方式,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐教... 目录概述语法详解数学运算表达式Shell变量变量分类环境变量Shell内部变量自定义变量:定义、赋值自定义变量:引用、修改、删

SpringBoot排查和解决JSON解析错误(400 Bad Request)的方法

《SpringBoot排查和解决JSON解析错误(400BadRequest)的方法》在开发SpringBootRESTfulAPI时,客户端与服务端的数据交互通常使用JSON格式,然而,JSON... 目录问题背景1. 问题描述2. 错误分析解决方案1. 手动重新输入jsON2. 使用工具清理JSON3.

MyBatis Plus 中 update_time 字段自动填充失效的原因分析及解决方案(最新整理)

《MyBatisPlus中update_time字段自动填充失效的原因分析及解决方案(最新整理)》在使用MyBatisPlus时,通常我们会在数据库表中设置create_time和update... 目录前言一、问题现象二、原因分析三、总结:常见原因与解决方法对照表四、推荐写法前言在使用 MyBATis

MySQL 设置AUTO_INCREMENT 无效的问题解决

《MySQL设置AUTO_INCREMENT无效的问题解决》本文主要介绍了MySQL设置AUTO_INCREMENT无效的问题解决,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参... 目录快速设置mysql的auto_increment参数一、修改 AUTO_INCREMENT 的值。

关于跨域无效的问题及解决(java后端方案)

《关于跨域无效的问题及解决(java后端方案)》:本文主要介绍关于跨域无效的问题及解决(java后端方案),具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐教... 目录通用后端跨域方法1、@CrossOrigin 注解2、springboot2.0 实现WebMvcConfig