• windows与Ubuntu实现文件夹共享


    该文章通过下载samba工具实现双系统之间的文件夹共享问题

    注:另一种更高效方便的方式:通过gittee仓库管理

    1.安装包

    sudo apt-get install samba
    
    • 1

    结果如下:

    正在读取软件包列表... 完成
    正在分析软件包的依赖关系树       
    正在读取状态信息... 完成       
    有一些软件包无法被安装。如果您用的是 unstable 发行版,这也许是
    因为系统无法达到您要求的状态造成的。该版本中可能会有一些您需要的软件
    包尚未被创建或是它们已被从新到(Incoming)目录移出。
    下列信息可能会对解决问题有所帮助:
    
    下列软件包有未满足的依赖关系:
     samba : 依赖: python (< 2.8) 但是它将不会被安装
             依赖: python-dnspython 但是它将不会被安装
             依赖: python-samba 但是它将不会被安装
             依赖: samba-common-bin (= 2:4.7.6+dfsg~ubuntu-0ubuntu2) 但是它将不会被安装
             依赖: python (>= 2.7~) 但是它将不会被安装
             依赖: python2.7:any
             依赖: python:any (< 2.8)
             依赖: python:any (>= 2.7~)
             依赖: samba-libs (= 2:4.7.6+dfsg~ubuntu-0ubuntu2) 但是 2:4.7.6+dfsg~ubuntu-0ubuntu2.23 正要被安装
             推荐: attr
             推荐: samba-dsdb-modules 但是它将不会被安装
             推荐: samba-vfs-modules 但是它将不会被安装
    E: 无法修正错误,因为您要求某些软件包保持现状,就是它们破坏了软件包间的依赖关系。
    
    • 1
    • 2
    • 3
    • 4
    • 5
    • 6
    • 7
    • 8
    • 9
    • 10
    • 11
    • 12
    • 13
    • 14
    • 15
    • 16
    • 17
    • 18
    • 19
    • 20
    • 21
    • 22

    2.安装另一个包下载

    ⽤sudo apt-get install 时出现提⽰⽆法修正错误,因为您要求某些软件包保持现状,就是它们破坏了软件包间的依赖关系。
    可以换个命令sudo aptitude install ,因为aptitude会⾃动把所有依赖的库都帮你顺着找到,并下载好。⽽apt-get下载某个包
    中它的所有依赖项都必须存在,这就是为什么我们每次执⾏apt-get的时候都需要先apt-get update的更新软件包的原因。
    如果提⽰找不到aptitude,可以先使⽤sudo apt-get install aptitude进⾏下载

    sudo apt-get install aptitude
    sudo aptitude install samba
    
    • 1
    • 2

    结果如下:

    下列“新”软件包将被安装。         
      attr{a} ibverbs-providers{a} libcephfs2{a} libibverbs1{a} 
      libnl-route-3-200{a} libpython-stdlib{a} librados2{a} python{a} 
      python-crypto{a} python-dnspython{a} python-ldb{ab} python-minimal{a} 
      python-samba{ab} python-tdb{a} python2.7{ab} python2.7-minimal{ab} 
      samba{b} samba-common-bin{ab} samba-dsdb-modules{ab} 
      samba-vfs-modules{ab} tdb-tools{a} 
    0 个软件包被升级,新安装 21 个, 0 个将被删除, 同时 0 个将不升级。
    需要获取 9,372 kB 的存档。 解包后将要使用 52.1 MB。
    下列软件包存在未满足的依赖关系:
     python-samba : 依赖: samba-libs (= 2:4.7.6+dfsg~ubuntu-0ubuntu2) but 2:4.7.6+dfsg~ubuntu-0ubuntu2.23 is installed
     python2.7-minimal : 依赖: libpython2.7-minimal (= 2.7.15~rc1-1) but 2.7.17-1~18.04ubuntu1.6 is installed
     samba : 依赖: samba-libs (= 2:4.7.6+dfsg~ubuntu-0ubuntu2) but 2:4.7.6+dfsg~ubuntu-0ubuntu2.23 is installed
     samba-dsdb-modules : 依赖: samba-libs (= 2:4.7.6+dfsg~ubuntu-0ubuntu2) but 2:4.7.6+dfsg~ubuntu-0ubuntu2.23 is installed
                          依赖: libwbclient0 (= 2:4.7.6+dfsg~ubuntu-0ubuntu2) but 2:4.7.6+dfsg~ubuntu-0ubuntu2.23 is installed
     python2.7 : 依赖: libpython2.7-stdlib (= 2.7.15~rc1-1) but 2.7.17-1~18.04ubuntu1.6 is installed
     samba-vfs-modules : 依赖: samba-libs (= 2:4.7.6+dfsg~ubuntu-0ubuntu2) but 2:4.7.6+dfsg~ubuntu-0ubuntu2.23 is installed
     samba-common-bin : 依赖: samba-libs (= 2:4.7.6+dfsg~ubuntu-0ubuntu2) but 2:4.7.6+dfsg~ubuntu-0ubuntu2.23 is installed
     python-ldb : 依赖: libldb1 (= 2:1.2.3-1) but 2:1.2.3-1ubuntu0.2 is installed
    下列动作将解决这些依赖关系:
    
          保持 下列软件包于其当前版本:               
    1)      python [未安装的]                         
    2)      python-crypto [未安装的]                  
    3)      python-dnspython [未安装的]               
    4)      python-ldb [未安装的]                     
    5)      python-minimal [未安装的]                 
    6)      python-samba [未安装的]                   
    7)      python-tdb [未安装的]                     
    8)      python2.7 [未安装的]                      
    9)      python2.7-minimal [未安装的]              
    10)     samba [未安装的]                          
    11)     samba-common-bin [未安装的]               
    12)     samba-dsdb-modules [未安装的]             
    13)     samba-vfs-modules [未安装的]              
    
          Leave the following dependencies unresolved:
    14)     python-minimal 推荐 python                
    15)     python2.7-minimal 推荐 python2.7          
    
    是否接受该解决方案?[Y/n/q/?] Y
    
    • 1
    • 2
    • 3
    • 4
    • 5
    • 6
    • 7
    • 8
    • 9
    • 10
    • 11
    • 12
    • 13
    • 14
    • 15
    • 16
    • 17
    • 18
    • 19
    • 20
    • 21
    • 22
    • 23
    • 24
    • 25
    • 26
    • 27
    • 28
    • 29
    • 30
    • 31
    • 32
    • 33
    • 34
    • 35
    • 36
    • 37
    • 38
    • 39
    • 40
    • 41

    注:如果在最后一句选择了 Y,那么将是如下结果,即什么也没有安装

    将不会安装,升级或者删除任何软件包。
    0 个软件包被升级,新安装 0 个, 0 个将被删除, 同时 0 个将不升级。
    需要获取 0 B 的存档。 解包后将要使用 0 B。
                                     
    ~$ samba --version  //查看安装包版本
    
    Command 'samba' not found, but can be installed with:
    
    sudo apt install samba
    
    • 1
    • 2
    • 3
    • 4
    • 5
    • 6
    • 7
    • 8
    • 9

    3.解决bug:

    在是否接受该解决方案时,选择 n,然后查看解决方案,如果没有就一直n,直到满意

    是否接受该解决方案?[Y/n/q/?] n
    下列动作将解决这些依赖关系:
    
          降级 下列软件包:                                                         
    1)      gvfs [1.36.1-0ubuntu1.3.3 (now) -> 1.36.1-0ubuntu1 (bionic)]            
    2)      gvfs-backends [1.36.1-0ubuntu1.3.3 (now) -> 1.36.1-0ubuntu1 (bionic)]   
    3)      gvfs-bin [1.36.1-0ubuntu1.3.3 (now) -> 1.36.1-0ubuntu1 (bionic)]        
    4)      gvfs-common [1.36.1-0ubuntu1.3.3 (now) -> 1.36.1-0ubuntu1 (bionic)]     
    5)      gvfs-daemons [1.36.1-0ubuntu1.3.3 (now) -> 1.36.1-0ubuntu1 (bionic)]    
    6)      gvfs-fuse [1.36.1-0ubuntu1.3.3 (now) -> 1.36.1-0ubuntu1 (bionic)]       
    7)      gvfs-libs [1.36.1-0ubuntu1.3.3 (now) -> 1.36.1-0ubuntu1 (bionic)]       
    8)      libldb1 [2:1.2.3-1ubuntu0.2 (now) -> 2:1.2.3-1 (bionic)]                
    9)      libpython2.7 [2.7.17-1~18.04ubuntu1.6 (now) -> 2.7.15~rc1-1 (bionic)]   
    10)     libpython2.7-minimal [2.7.17-1~18.04ubuntu1.6 (now) -> 2.7.15~rc1-1 (bio
    11)     libpython2.7-stdlib [2.7.17-1~18.04ubuntu1.6 (now) -> 2.7.15~rc1-1 (bion
    12)     libsmbclient [2:4.7.6+dfsg~ubuntu-0ubuntu2.23 (now) -> 2:4.7.6+dfsg~ubun
    13)     libwbclient0 [2:4.7.6+dfsg~ubuntu-0ubuntu2.23 (now) -> 2:4.7.6+dfsg~ubun
    14)     samba-libs [2:4.7.6+dfsg~ubuntu-0ubuntu2.23 (now) -> 2:4.7.6+dfsg~ubuntu
    
    
    
    是否接受该解决方案?[Y/n/q/?] Y
    下列软件包将被“降级”:
      gvfs gvfs-backends gvfs-bin gvfs-common gvfs-daemons gvfs-fuse gvfs-libs 
      libldb1 libpython2.7 libpython2.7-minimal libpython2.7-stdlib 
      libsmbclient libwbclient0 samba-libs 
    下列“新”软件包将被安装。
      attr{a} ibverbs-providers{a} libcephfs2{a} libibverbs1{a} 
      libnl-route-3-200{a} libpython-stdlib{a} librados2{a} python{a} 
      python-crypto{a} python-dnspython{a} python-ldb{a} python-minimal{a} 
      python-samba{a} python-tdb{a} python2.7{a} python2.7-minimal{a} samba 
      samba-common-bin{a} samba-dsdb-modules{a} samba-vfs-modules{a} 
      tdb-tools{a} 
    0 个软件包被升级,新安装 21 个, 14 个被降级, 0 个将被删除, 同时 0 个将不升级。
    需要获取 18.8 MB 的存档。 解包后将要使用 52.0 MB。
    您要继续吗?[Y/n/?] Y
    
    • 1
    • 2
    • 3
    • 4
    • 5
    • 6
    • 7
    • 8
    • 9
    • 10
    • 11
    • 12
    • 13
    • 14
    • 15
    • 16
    • 17
    • 18
    • 19
    • 20
    • 21
    • 22
    • 23
    • 24
    • 25
    • 26
    • 27
    • 28
    • 29
    • 30
    • 31
    • 32
    • 33
    • 34
    • 35
    • 36

    结果如下:

    ~降级过程略过.......
    
    ~$ samba --version
    
    Version 4.7.6-Ubuntu
    
    • 1
    • 2
    • 3
    • 4
    • 5

    4.创建一个samba服务的共享目录,并配置该目录为最高权限

    //注:yohn对应我的ubuntu系统名字
    sudo mkdir /home/yohn/samba_share
    sudo chmod 777 /home/yohn/samba_share
    //添加用户+密码
    sudo smbpasswd -a yohn
    
    • 1
    • 2
    • 3
    • 4
    • 5

    然后显示:

    //有两次输入密码操作
    New SMB password:******
    Retype new SMB password:******
    
    Added user yohn.
    
    • 1
    • 2
    • 3
    • 4
    • 5

    5.修改samba服务的配置文件
    把原来的文件复制一份备份,输入如下命令:

    sudo cp /etc/samba/smb.conf /etc/samba/smb.conf_backup
    
    • 1

    然后打开 /etc/samba/smb.conf 该配置文件:

    sudo vi /etc/samba/smb.conf
    
    • 1

    在配置文件的最后面加入下面的内容:

    [share]
    comment = Share folder
    
    # 共享目录,这个写的是你刚刚创建的samba共享目录
    path = /home/yohn/samba_share
    create mask = 0700
    directory mask = 0700
    
    # 用于登录的账户
    valid users = yohn
    force user = yohn
    force group = yohn
    
    # 是否公开分享
    public = yes
    
    # 是否允许来宾用户访问
    guest ok = yes
    
    # 是否只读
    read only = no
    
    # 是否可被浏览
    browseable = yes
    available = yes
    writable = yes
    
    • 1
    • 2
    • 3
    • 4
    • 5
    • 6
    • 7
    • 8
    • 9
    • 10
    • 11
    • 12
    • 13
    • 14
    • 15
    • 16
    • 17
    • 18
    • 19
    • 20
    • 21
    • 22
    • 23
    • 24
    • 25
    • 26

    退出保存

    退出保存的,则输入    :wq
    
    • 1
  • 相关阅读:
    【计算机网络笔记一】网络体系结构
    【Java 进阶篇】深入了解 Bootstrap 全局 CSS 样式
    langchain 加载各种格式文件读取方法
    K8S:K8S对外服务之Ingress
    BFS专题6 字符迷宫
    高级架构师_Docker_第1章_第3节Docker容器
    Linux应用层例程3 输入设备应用编程
    SI3262:国产NFC+MCU+防水触摸按键三合一SoC芯片
    二分查找总结
    一篇就够了,各种快捷键
  • 原文地址:https://blog.csdn.net/yohnyang/article/details/125427274