在数字世界中,文件传输就像一条看不见的高速公路,而SFTP(安全文件传输协议)就是那辆最可靠的货车,如果你正在使用SFTP服务来管理服务器上的文件,你可能会遇到这样一个问题:“我该怎么换一个共享目录?” 别急,这不是难题,只要按部就班,像整理衣柜一样一步步来,就能搞定。

你需要明白一件事:更换共享目录 ≠ 重装系统,它更像是搬家——把东西从旧家搬到新家,但门牌号变了,生活还在继续,我们分三步走:确认原路径、设置新目录、迁移数据。


第一步:查看当前共享路径(别慌,先摸清底牌)

打开你的SFTP客户端(比如FileZilla或WinSCP),连接到服务器后,先看看当前共享目录在哪里,通常它可能是 /home/username/public_html 或者 /var/www/html 这样的位置,你可以用命令行执行:

pwd

这条命令会告诉你当前所在的目录,就像问:“你现在在哪栋楼?”
举个例子,如果输出是 /home/user1/shared,说明现在共享目录就在那里。

当前路径 是否常用 建议是否变更
/home/user1/shared ✅ 可以变
/var/www/html ❌ 不建议动(可能影响网站)
/opt/data ✅ 可以变

小贴士:别瞎改系统关键目录!/etc/usr,那是操作系统的心脏,动不得!


第二步:创建新目录并赋予权限(就像给新家装门锁)

现在我们要建一个“新家”——也就是新的共享目录,假设你想换成 /data/shared_new,那就这样操作:

sudo mkdir -p /data/shared_new
sudo chown user1:user1 /data/shared_new
sudo chmod 755 /data/shared_new

这三行命令的作用:

  • mkdir:新建目录;
  • chown:让这个目录属于你(用户+组);
  • chmod:设置权限,别人能看,但不能乱动。

是不是很像装修?地基打好了,门装好了,钥匙交给你自己,这才安心!


第三步:迁移数据(搬家不丢东西,才能安心住进去)

这时候,你得把旧目录里的东西搬过去,可以用以下命令:

rsync -av /home/user1/shared/ /data/shared_new/

这句命令的意思是:“把老房子的东西,完整又快速地搬进新家”。

  • -a 表示归档模式(保留所有属性);
  • -v 显示进度,让你看得见“搬了几个箱子”;
  • -r 递归复制(文件夹套文件夹也能搬)

✅ 成功标志:终端显示“done”,且两个目录内容一致。

你可以用对比工具验证一下:

diff -r /home/user1/shared /data/shared_new

如果没有输出,说明一模一样,完美!


最后一步:更新SFTP配置(告诉系统“新家地址”)

如果你用的是SSH服务中的SFTP子系统(比如OpenSSH),需要编辑配置文件:

sudo nano /etc/ssh/sshd_config

找到类似这样的行:

Match User user1
    ChrootDirectory /home/user1

把它改成:

Match User user1
    ChrootDirectory /data/shared_new

保存退出,然后重启SSH服务:

sudo systemctl restart sshd

此时再登录SFTP,你会发现:“咦?我现在在新家!”


换共享目录不是魔法,而是耐心和细致的组合拳,就像从老小区搬到新楼盘,虽然过程有点累,但住进去之后,你会觉得更舒服、更自由,每一步都精确到位,数据不会丢,权限不会错,你就赢了!

别怕麻烦,动手试试吧!