使用 crontab 的自定义脚本选项

使用 crontab 的自定义脚本选项

我想要安装一个 LAN 网络驱动器,这样当我登录到我的 Ubuntu 桌面时就可以从 Files/Nautilus 访问它。

我可以使用以下命令手动执行此操作:

sudo mount -t cifs -o user=user,password=***,vers=1.0  //192.168.XX.XX/sda1 /media/sda1/

如果我重新启动系统,我会丢失驱动器的文件位置,并发现自己再次运行该命令。另一种有效的手动方法是:

Cntrl+L,然后输入 smb://192.168.XX.XX/sda1/

您能否推荐一个教程来帮助我实现我的目标,或者让我知道如何安装连接到我的路由器的网络驱动器。

答案1

使用 crontab 的自定义脚本选项

  1. 创建.sh脚本
  2. 添加不带 sudo 的行:
 #!/bin/bash
 mount -t cifs -o user=user,password=***,vers=1.0  //192.168.XX.XX/sda1 /media/sda1/
  1. 添加权限
sudo chmod 700 ./your_script.sh
  1. 将所有权添加到 root 用户
sudo chwon root:root ./your_script.sh
  1. 通过添加以下行,以 sudo 用户身份修改您的 contab
sudo corntab -e
@reboot sleep 30 && /bin/sh /full_path_to_file/your_script.sh

描述

Crontab 将在重启 30 秒后启动你的脚本(以避免启动脚本时某些服务正在唤醒的情况)

Ad. 3 和 Ad. 4 - 将保护您的脚本,只有具有 sudo 权限的用户才能读/写/执行。

广告 5-sudo crontab以 root 用户身份执行午餐工作。


Fstab 选项:

  1. 使用凭证创建文件:
sudo nano /etc/cred_1
username=myUser
password=my$Password!
  1. 读/写权限
sudo chmod 600 /etc/cred_1
  1. 打开 fstab 并添加 cifs mount 行
sudo nano /etc/fstab
//192.168.100.100/folder /home/mnt cifs credentials=/etc/cred_1,users,uid=114,gid=1002,file_mode=0770,dir_mode=0770 0 0
  • uid,gid 是用户/组 id id username:。
  • 使用了 file_mode 和 dir_mode,因为 cifs 不支持 umask 参数。

相关内容