PhpStorm与Ubuntu共享文件的常用方法

SFTP是基于SSH的安全文件传输协议,适合需要加密传输的场景,也是PhpStorm最推荐的远程文件共享方式。
sudo apt update && sudo apt install openssh-serversudo systemctl start ssh && sudo systemctl enable sshsudo nano /etc/ssh/sshd_config找到并修改以下内容(取消注释或新增):Subsystem sftp internal-sftpMatch Group sftpusersChrootDirectory %hForceCommand internal-sftpAllowTcpForwarding noX11Forwarding no保存后,创建sftpusers用户组并添加用户(如your_username):sudo groupadd sftpuserssudo usermod -aG sftpusers your_username设置用户家目录权限(确保SSH能访问):sudo chown root:root /home/your_usernamesudo chmod 755 /home/your_usernamesudo mkdir /home/your_username/projectssudo chown your_username:sftpusers /home/your_username/projectssudo systemctl restart sshFile > Settings(Windows/Linux)或PhpStorm > Preferences(macOS),导航至Build, Execution, Deployment > Deployment。+号,选择SFTP,填写以下信息:22(若修改过SSH端口,需对应调整);Password(输入密码)或Key pair(选择私钥文件,更安全)。Test SFTP connection,若显示“Connection successful”,说明配置正确。Mappings标签页,配置本地项目路径(如D:projectsmy_php_project)与远程路径(如/home/your_username/projects/my_php_project)的映射关系。Apply→OK保存配置。此后可通过Tools > Deployment > Upload to...将本地文件上传至Ubuntu,或通过Remote Host工具窗口直接访问远程文件。Samba适合需要与Windows系统共享文件的场景,或在Ubuntu上实现类似Windows的文件共享功能。
sudo apt update && sudo apt install sambasudo nano /etc/samba/smb.conf在文件末尾添加以下内容(替换/path/to/your/project为项目路径,your_username为允许访问的Ubuntu用户):[project_share]path = /path/to/your/projectavailable = yesvalid users = your_usernameread only = nobrowsable = yespublic = nowritable = yes保存后,重启Samba服务:sudo systemctl restart smbd && sudo systemctl enable smbdsudo smbpasswd -a your_usernamePhpStorm本身不支持直接挂载Samba共享,但可通过以下两种方式访问:
cifs-utils工具,将Samba共享挂载到本地目录:sudo apt install cifs-utilssudo mkdir /mnt/samba_sharesudo mount -t cifs //windows_host/shared_folder /mnt/samba_share -o username=windows_user,password=windows_password挂载后,在PhpStorm中通过File > Open打开/mnt/samba_share即可访问共享文件。Tools > Deployment > Configuration添加本地目录作为“Deployment Path”。SSHFS通过SSH协议挂载远程文件系统,适合需要像本地目录一样操作远程文件的场景。
确保Ubuntu已安装并启动SSH服务(参考SFTP配置中的sudo systemctl start ssh)。
sudo apt install sshfsbrew install --cask macfuse && brew install gromgit/fuse/sshfs在本地终端运行以下命令(替换your_username、ubuntu_host和/remote/path):
sshfs your_username@ubuntu_host:/remote/path /local/mount/point输入密码后,远程目录将挂载到/local/mount/point。
在PhpStorm中通过File > Open打开挂载目录(如/local/mount/point),即可像操作本地文件一样编辑远程文件。修改后,保存时会自动同步到Ubuntu服务器。
valid users、SFTP的chown设置)。Tools > Deployment > Automatic Upload开启自动同步,或手动右键选择Upload to.../Download from...同步文件。以上方法覆盖了PhpStorm与Ubuntu之间常见的文件共享需求,可根据实际场景选择合适的方式。