Linux与Windows共享文件夹:samba (linux) / SMB (win) (**)_linux通过samba共享给windows-程序员宅基地

技术标签: ubuntu  运维  linux  

Linux与Windows共享文件夹之samba的安装与使用(Ubuntu为例)

Linux如何挂载创建于Windows中的共享文件夹?

Linux与Windows共享文件的两种方法(samba与ftp)

-----------------------------------------------------------------

要点:

samba:共享文件夹在 linux中。

SMB:win

关键技术:不同主机之间的共享,都是采用 ip的方式;映射网络驱动器。

这 2种做法,有区别吗?

当宿主机是 win,一般来说,此时 win的磁盘空间大。

因此,共享文件夹放在 win中,要好一些。

反之一样。

当然,小文件的共享,则放在哪一边,似乎都没有问题。主要是看哪种做法更方便而已。

  Linux如何挂载创建于Windows中的共享文件夹? (**)_ken2232的博客-程序员宅基地

------------------------------------------

df -hT

sudo umount //DESKTOP-1234/share-3  #不使用 ip 地址,也可以。

Linux挂载Windows共享文件夹及权限设置::https://blog.csdn.net/weixin_42355670/article/details/105315984

Linux无法对挂载的ntfs文件设置权限,需要挂载文件夹时设置权限,首先要确保Windows下给共享文件夹赋予了完全的权限,然后在Linux下执行以下命令。

///注意:最末位,没有 /

sudo mount -t cifs -o  user=windows用户名,password=windows用户密码,dir_mode=0777,file_mode=0777 //Windows的ip地址/共享文件夹位置   /Linux 下的挂载位置

⑤之后得到网络路径(\\电脑用户名\共享文件夹名):

\\CACRLEPC\WindowsShareToLinux

Linux下使用该网络路径需要将"\“变为”/",即:

//CACRLEPC/WindowsShareToLinux  #不使用 ip 地址,也可以。

参考: https://blog.csdn.net/qq_40640910/article/details/129113554

参考:  linux 访问windows共享文件夹的方法_LateLinux的博客-程序员宅基地

将共享文件夹挂载到windows文件夹:

$ sudo mount -t cifs -o username=share,password=share //192.168.66.198/share ./windows

其中几个参数表示含义:

cifs:Common Internet File System,可以理解为网络文件系统。
usrname:访问共享文件夹的用户名
password:访问密码
//192.168.66.198/share:表示网络文件夹的地址,注意这里最后不能加/,如果是//192.168.66.198/share/则会报如下错误:mount: //192.168.66.198/share/ is not a valid block device

2. Tips:使用mount挂载的方法在系统重新启动后就会失效,如果希望开机时自动挂载,将下面设置加入 /etc/fstab文件最后面就可以了。此方法Ubuntu 20.04亲测通过,但我的windows共享是只读的。

//192.168.66.198/share /home/windows cifs defaults,username=share,password=share 0 2

其中/home/windows表示挂载点,就是上面windows目录的完整路径。

(2)启用SMB 1.0/CIFS 文件共享支持 <<< win 10 不需要

----------------------------------------------------------------

参考:


samba

Samba是在Linux和UNIX系统上实现SMB协议的一个免费软件,由服务器及客户端程序构成

SMB(Server Messages Block,信息服务块)是一种在局域网上共享文件和打印机的一种通信协议,它为局域网内的不同计算机之间提供文件及打印机等资源的共享服务。

SMB协议是客户机/服务器型协议,客户机通过该协议可以访问服务器上的共享文件系统、打印机及其他资源。通过设置“NetBIOS over TCP/IP”使得Samba不但能与局域网络主机分享资源,还能与全世界的电脑分享资源。

  百度百科-验证

Microsoft SMB 协议和 CIFS 协议概述

  Microsoft SMB 协议和 CIFS 协议概述 - Win32 apps | Microsoft Learn
  2023/06/13

服务器消息块 (SMB) 协议是一种网络文件共享协议,在 Microsoft Windows 中实现的称为 Microsoft SMB 协议。 定义特定版本的协议的消息数据包集称为方言。

通用 Internet 文件系统 (CIFS) 协议是 SMB 的方言。 VMS、Unix 的多个版本和其他操作系统上也提供 SMB 和 CIFS。

有关 CIFS 的技术参考可从 Microsoft Corporation 获取,地址为 Common Internet File System (CIFS) File Access Protocol。

=====================================

cifs-utils共享

cifs-utils是一个用于Linux系统的CIFS(Common Internet File System)客户端工具包,它允许您在Linux系统上挂载Windows共享文件夹。本攻略将介绍如何使用cifs-utils在Linux系统上共享文件夹。

  Linux挂载CIFS共享:细节的一次优化(linux cifs)-数据库运维技术服务

  https://wenku.csdn.net/answer/616e17ebee7748d8b5c3af3ebb6912e4

=====================================

Linux与Windows共享文件的两种方法(samba与ftp)

  https://blog.csdn.net/mrhjlong/article/details/50998363

(2)启用SMB 1.0/CIFS 文件共享支持

Linux如何挂载创建于Windows中的共享文件夹?

  https://blog.csdn.net/qq_40640910/article/details/129113554

文章目录

    0.引言
    1.在Windows中启用共享功能
    2.在Windows中创建共享文件夹
    3.从Linux访问Windows中创建的共享文件夹

0.引言

有时Linux需要访问WIndows中的文件,除了在Liniux中创建共享文件夹,Windows与之链接共享,Linux还可以通过挂载的方式获取Windows的共享文件夹内容。
1.在Windows中启用共享功能

在Windows中创建的共享文件夹要被Linux访问,需要先启用共享功能,允许本机被另一台计算机连接,同时启用SMB 1.0/CIFS 文件共享支持。
(1)启用网络发现、文件和打印机共享功能
简略操作:Win+Q快捷启动搜索栏→搜索【控制面板】(有时显示为英文:Control Panel)→在控制面板搜索框键入:控制面板\网络和 Internet\网络和共享中心\高级共享设置→网络发现:启用网络发现;文件和打印机共享:启用文件和打印机共享→保存更改。

。。。。。。省略。。。。。。

⑤之后得到网络路径(\\电脑用户名\共享文件夹名):

\\CACRLEPC\WindowsShareToLinux //在 win中的网络访问共享文件夹名称

Linux下使用该网络路径需要将"\“变为”/",即:

//CACRLEPC/WindowsShareToLinux

。。。。。。省略。。。。。。

3.从Linux访问Windows中创建的共享文件夹

①在Linux中创建共享文件夹,命名同第2步为WindowsShareToLinux;

右键文件夹,打开属性,查看文件夹地址:

 得到共享文件夹所在地址(linux中对中文输入可能无法支持,可以分别对文件夹地址和文件名复制粘贴,中间加入"/",构建共享文件夹的地址):

/home/qun/桌面/WindowsShareToLinux

②安装cifs-utils软件包

安装后才能挂载SMB共享服务,在终端键入命令:

sudo apt-get install cifs-utils

③挂接共享文件夹;

打开终端,键入命令:

sudo mount.cifs //CACRLEPC/WindowsShareToLinux /home/qun/桌面/WindowsShareToLinux -o user=Administrator,password=123456,vers=1.0

命令解释:

命令    解释
sudo mount.cifs    挂载命令,设置为CIFS(SMB)共享
//CACRLEPC/WindowsShareToLinux Windows    计算机的名称(见第2步第⑤小步)
/home/qun/桌面/WindowsShareToLinux    Linux中共享文件夹的地址(见第3步第1小步)
-o user=Administrator,password=123456,vers=1.0    访问Windows中的用户名,密码,版本(用户名见第2步第⑥小步;版本号为为1.0,见第1步第(2)小步第⑤小步)

键入命令演示:

挂接成功演示:

挂接成功后,在Windows中的共享文件夹中放入文件,会同步到同局域网下Linux中的共享文件夹内。

参考资料:
[1] 科技企业大杂烩. 如何在 Ubuntu/Linux 和 Windows 之间共享文件夹 | Linux 中国 ; 2022-07-24 [accessed 2023-03-27].
[2] 资讯新锐谈. 如何在 Windows 和 Linux 之间共享文件; 2022-09-26 [accessed 2023-03-27].
————————————————
版权声明:本文为CSDN博主「来吧!我在未来等你!」的原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接及本声明。
原文链接:https://blog.csdn.net/qq_40640910/article/details/129113554


————————————————
版权声明:本文为CSDN博主「来吧!我在未来等你!」的原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接及本声明。
原文链接:https://blog.csdn.net/qq_40640910/article/details/129113554

======================

Linux与Windows共享文件夹之samba的安装与使用(Ubuntu为例)

1.写在前面

    当你在Windows上安装了一台Linux的虚拟机,你想访问Linux中的文件夹,将虚拟机中的文件复制到Windows主机上,你会怎么做呢?如果这台Linux主机不是虚拟机,而是一台远程主机呢?
    有没有一种方法,打开Linux虚拟机中的文件夹就像在本地一样,输入路径就可以?你可能会想到FTP,本文介绍一个更简单的方法——samba。
    接下来详细介绍如何在Linux上安装samba(以Ubuntu14.04为例)。

2.安装方法

2.1 安装samba

sudo apt-get install samba

2.2 创建共享目录

// 创建的目录即之后能够在Windows主机上直接访问的目录。
// 例如:在用户gzd的主目录下新建share文件夹为共享目录
mkdir /home/gzd/smbshare
// 由于Windows下的文件夹需可读可写可执行,需更改权限为777
sudo chmod 777 /home/gzd/smbshare

2.3 修改samba配置文件

// 修改 /etc/samba/smb.conf
sudo vim /etc/samba/smb.conf
// 在smb.conf文件最后加上以下内容

[share]
path = /home/gzd/smbshare
public = yes
writable = yes
valid users = gzd
create mask = 0644
force create mode = 0644
directory mask = 0755
force directory mode = 0755
available = yes

smb.conf

关于smb.conf的几点解释:

(1) [share]表示共享文件夹的别名,之后将直接使用这个别名

(2) force create modeforce directory mode的设置是因为Windows下与Linux下文件和文件夹的默认权限不同造成的,Windows下新建的文件是可执行的,必须强制设定其文件权限。

(3) valid users 设置为你当前的Linux用户名,例如我的是gzd,因为第一次打开共享文件夹时,需要验证权限。

2.4 设置登录密码

// 新建/etc/samba/smbpasswd文件
sudo touch /etc/samba/smbpasswd
// 根据2.3设置的valid users,设置用户密码
// gzdaijie 替换为你在2.3中设置的用户名
sudo smbpasswd -a gzd
//输入两次密码后,会提示 Added user gzd. 表示设置成功
// 若用户名非当前登录系统的用户名,可能会提示Failed

2.5 启动samba服务器

sudo /etc/init.d/samba restart

2.6 测试是否共享成功

sudo apt-get install smbclient
smbclient -L //localhost/share
//还记得吗?share为2.3中设置的共享文件夹的别名
//如果共享成功,将要求输入之前设置的密码

3.在windows上测试

3.1 打开windows文件管理器,输入\\ip地址或主机名\share

  • Linux的ip地址可通过ifconfig查看
  • 选择记住凭据,下次输入地址后无需登录
  • 第一次打开可能需要几秒时间,耐心一点

登录samba

3.2 尽情享受samba带来的便利吧

  • 在windows下创建文件,到Linux下看看吧!
  • 在Linux的共享目录下创建文件,在windows下看看吧!

分类: Linux 笔记

版权声明:本文为博主原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。
本文链接:https://blog.csdn.net/ken2232/article/details/132493667

智能推荐

while循环&CPU占用率高问题深入分析与解决方案_main函数使用while(1)循环cpu占用99-程序员宅基地

文章浏览阅读3.8k次,点赞9次,收藏28次。直接上一个工作中碰到的问题,另外一个系统开启多线程调用我这边的接口,然后我这边会开启多线程批量查询第三方接口并且返回给调用方。使用的是两三年前别人遗留下来的方法,放到线上后发现确实是可以正常取到结果,但是一旦调用,CPU占用就直接100%(部署环境是win server服务器)。因此查看了下相关的老代码并使用JProfiler查看发现是在某个while循环的时候有问题。具体项目代码就不贴了,类似于下面这段代码。​​​​​​while(flag) {//your code;}这里的flag._main函数使用while(1)循环cpu占用99

【无标题】jetbrains idea shift f6不生效_idea shift +f6快捷键不生效-程序员宅基地

文章浏览阅读347次。idea shift f6 快捷键无效_idea shift +f6快捷键不生效

node.js学习笔记之Node中的核心模块_node模块中有很多核心模块,以下不属于核心模块,使用时需下载的是-程序员宅基地

文章浏览阅读135次。Ecmacript 中没有DOM 和 BOM核心模块Node为JavaScript提供了很多服务器级别,这些API绝大多数都被包装到了一个具名和核心模块中了,例如文件操作的 fs 核心模块 ,http服务构建的http 模块 path 路径操作模块 os 操作系统信息模块// 用来获取机器信息的var os = require('os')// 用来操作路径的var path = require('path')// 获取当前机器的 CPU 信息console.log(os.cpus._node模块中有很多核心模块,以下不属于核心模块,使用时需下载的是

数学建模【SPSS 下载-安装、方差分析与回归分析的SPSS实现(软件概述、方差分析、回归分析)】_化工数学模型数据回归软件-程序员宅基地

文章浏览阅读10w+次,点赞435次,收藏3.4k次。SPSS 22 下载安装过程7.6 方差分析与回归分析的SPSS实现7.6.1 SPSS软件概述1 SPSS版本与安装2 SPSS界面3 SPSS特点4 SPSS数据7.6.2 SPSS与方差分析1 单因素方差分析2 双因素方差分析7.6.3 SPSS与回归分析SPSS回归分析过程牙膏价格问题的回归分析_化工数学模型数据回归软件

利用hutool实现邮件发送功能_hutool发送邮件-程序员宅基地

文章浏览阅读7.5k次。如何利用hutool工具包实现邮件发送功能呢?1、首先引入hutool依赖<dependency> <groupId>cn.hutool</groupId> <artifactId>hutool-all</artifactId> <version>5.7.19</version></dependency>2、编写邮件发送工具类package com.pc.c..._hutool发送邮件

docker安装elasticsearch,elasticsearch-head,kibana,ik分词器_docker安装kibana连接elasticsearch并且elasticsearch有密码-程序员宅基地

文章浏览阅读867次,点赞2次,收藏2次。docker安装elasticsearch,elasticsearch-head,kibana,ik分词器安装方式基本有两种,一种是pull的方式,一种是Dockerfile的方式,由于pull的方式pull下来后还需配置许多东西且不便于复用,个人比较喜欢使用Dockerfile的方式所有docker支持的镜像基本都在https://hub.docker.com/docker的官网上能找到合..._docker安装kibana连接elasticsearch并且elasticsearch有密码

随便推点

Python 攻克移动开发失败!_beeware-程序员宅基地

文章浏览阅读1.3w次,点赞57次,收藏92次。整理 | 郑丽媛出品 | CSDN(ID:CSDNnews)近年来,随着机器学习的兴起,有一门编程语言逐渐变得火热——Python。得益于其针对机器学习提供了大量开源框架和第三方模块,内置..._beeware

Swift4.0_Timer 的基本使用_swift timer 暂停-程序员宅基地

文章浏览阅读7.9k次。//// ViewController.swift// Day_10_Timer//// Created by dongqiangfei on 2018/10/15.// Copyright 2018年 飞飞. All rights reserved.//import UIKitclass ViewController: UIViewController { ..._swift timer 暂停

元素三大等待-程序员宅基地

文章浏览阅读986次,点赞2次,收藏2次。1.硬性等待让当前线程暂停执行,应用场景:代码执行速度太快了,但是UI元素没有立马加载出来,造成两者不同步,这时候就可以让代码等待一下,再去执行找元素的动作线程休眠,强制等待 Thread.sleep(long mills)package com.example.demo;import org.junit.jupiter.api.Test;import org.openqa.selenium.By;import org.openqa.selenium.firefox.Firefox.._元素三大等待

Java软件工程师职位分析_java岗位分析-程序员宅基地

文章浏览阅读3k次,点赞4次,收藏14次。Java软件工程师职位分析_java岗位分析

Java:Unreachable code的解决方法_java unreachable code-程序员宅基地

文章浏览阅读2k次。Java:Unreachable code的解决方法_java unreachable code

标签data-*自定义属性值和根据data属性值查找对应标签_如何根据data-*属性获取对应的标签对象-程序员宅基地

文章浏览阅读1w次。1、html中设置标签data-*的值 标题 11111 222222、点击获取当前标签的data-url的值$('dd').on('click', function() { var urlVal = $(this).data('ur_如何根据data-*属性获取对应的标签对象

推荐文章

热门文章

相关标签