如何使用Bash上传Samba?

Bash

1 前言

一个问题,一篇文章,一出故事。
笔者有一台samba服务器并设置共享目录,共享目录允许授权用户去读写,笔者想通过脚本实现文件非挂载式上传,于是整理本章节。

2 最佳实践

2.1 安装客户端软件包

yum install -y samba-client cifs-utils

2.2 配置认samba服务端认证文件

vim /etc/samba/.smbpw

设置以下认证信息,

username = domain username
password = domain assword
domain = example.com

然后,你需要修改认证文件的权限使之更安全,

chmod 600 /etc/samba/.smbpw

2.3 创建文件上传脚本

mkdir -p ~/scripts/
vim ~/scripts/pushFile.sh

加入如下脚本,

#!/bin/bash

smbpwd='/etc/samba/.smbpw' #Authentication file
localDIR='/etc' #Local working directory
putPath='//10.168.0.250/putDIR' #Samba service path
putSubDIR='.' #Samba service sub folder
putFile="redhat-release" #Put file path

cd $localDIR

/usr/bin/smbclient -A "$smbpwd" "$putPath" -c "lcd $localDIR; cd $putSubDIR; put $putFile"

2.4 测试脚本

bash ~/scripts/pushFile.sh

2.5 设置脚本触发

crontab -e

加入如下触发规则,

*/5 * * * * bash ~/scripts/pushFile.sh

参阅文档
================
https://www.samba.org/samba/docs/current/man-html/smbclient.1.html

没有评论

发表评论

Bash
如何命令查找docker集群实例关键字?

1 前言 一个问题,一篇文章,一出故事。 笔者定位某个IP地址在集群中的位置,于是笔者想到使用循环去 …

Bash
如何使用计划任务操作容器?

1 前言 一个问题,一篇文章,一出故事。 笔者今天需要根据一定的条件删除容器里面的过期文件,但由于容 …

Bash
如何实现主从存储目录镜像?

1 理论部分 1.1 工具的介绍 Inotify一种强大的、细粒度的、异步文件系统监控机制,它满足各 …