CentOS 7通过samba实现与Windows共享文件夹

2023-11-04

Samba是在Linux和UNIX系统上实现SMB协议的一个免费软件,由服务器及客户端程序构成。SMB(Server Messages Block,信息服务块)是一种在局域网上共享文件和打印机的一种通信协议,它为局域网内的不同计算机之间提供文件及打印机等资源的共享服务。SMB协议是客户机/服务器型协议,客户机通过该协议可以访问服务器上的共享文件系统、打印机及其他资源。通过设置“NetBIOS over TCP/IP”使得Samba不但能与局域网络主机分享资源,还能与全世界的电脑分享资源。

一、安装samba

以管理员身份运行:

[user@localhost ~]$ sudo yum install samba

输出:

[sudo] user 的密码:
已加载插件:fastestmirror, langpacks
Loading mirror speeds from cached hostfile
 * base: mirrors.tuna.tsinghua.edu.cn
 * extras: mirrors.tuna.tsinghua.edu.cn
 * updates: mirrors.tuna.tsinghua.edu.cn
base                                                     | 3.6 kB     00:00     
extras                                                   | 2.9 kB     00:00     
updates                                                  | 2.9 kB     00:00     
正在解决依赖关系
--> 正在检查事务
---> 软件包 samba.x86_64.0.4.10.16-18.el7_9 将被 安装
--> 正在处理依赖关系 samba-libs = 4.10.16-18.el7_9,它被软件包 samba-4.10.16-18.el7_9.x86_64 需要
--> 正在处理依赖关系 samba-common-tools = 4.10.16-18.el7_9,它被软件包 samba-4.10.16-18.el7_9.x86_64 需要
--> 正在处理依赖关系 samba-common-libs = 4.10.16-18.el7_9,它被软件包 samba-4.10.16-18.el7_9.x86_64 需要
--> 正在处理依赖关系 samba-common = 4.10.16-18.el7_9,它被软件包 samba-4.10.16-18.el7_9.x86_64 需要
--> 正在处理依赖关系 samba-common = 4.10.16-18.el7_9,它被软件包 samba-4.10.16-18.el7_9.x86_64 需要
--> 正在处理依赖关系 samba-client-libs = 4.10.16-18.el7_9,它被软件包 samba-4.10.16-18.el7_9.x86_64 需要
--> 正在处理依赖关系 libwbclient = 4.10.16-18.el7_9,它被软件包 samba-4.10.16-18.el7_9.x86_64 需要
--> 正在处理依赖关系 libwbclient = 4.10.16-18.el7_9,它被软件包 samba-4.10.16-18.el7_9.x86_64 需要
--> 正在处理依赖关系 libxattr-tdb-samba4.so(SAMBA_4.10.16)(64bit),它被软件包 samba-4.10.16-18.el7_9.x86_64 需要
--> 正在处理依赖关系 libxattr-tdb-samba4.so()(64bit),它被软件包 samba-4.10.16-18.el7_9.x86_64 需要
--> 正在检查事务
---> 软件包 libwbclient.x86_64.0.4.10.16-5.el7 将被 升级
--> 正在处理依赖关系 libwbclient = 4.10.16-5.el7,它被软件包 libsmbclient-4.10.16-5.el7.x86_64 需要
--> 正在处理依赖关系 libwbclient = 4.10.16-5.el7,它被软件包 samba-client-4.10.16-5.el7.x86_64 需要
---> 软件包 libwbclient.x86_64.0.4.10.16-18.el7_9 将被 更新
---> 软件包 samba-client-libs.x86_64.0.4.10.16-5.el7 将被 升级
---> 软件包 samba-client-libs.x86_64.0.4.10.16-18.el7_9 将被 更新
---> 软件包 samba-common.noarch.0.4.10.16-5.el7 将被 升级
---> 软件包 samba-common.noarch.0.4.10.16-18.el7_9 将被 更新
---> 软件包 samba-common-libs.x86_64.0.4.10.16-5.el7 将被 升级
---> 软件包 samba-common-libs.x86_64.0.4.10.16-18.el7_9 将被 更新
---> 软件包 samba-common-tools.x86_64.0.4.10.16-18.el7_9 将被 安装
---> 软件包 samba-libs.x86_64.0.4.10.16-18.el7_9 将被 安装
--> 正在处理依赖关系 libpytalloc-util.so.2(PYTALLOC_UTIL_2.1.9)(64bit),它被软件包 samba-libs-4.10.16-18.el7_9.x86_64 需要
--> 正在处理依赖关系 libpytalloc-util.so.2(PYTALLOC_UTIL_2.1.6)(64bit),它被软件包 samba-libs-4.10.16-18.el7_9.x86_64 需要
--> 正在处理依赖关系 libpytalloc-util.so.2(PYTALLOC_UTIL_2.0.6)(64bit),它被软件包 samba-libs-4.10.16-18.el7_9.x86_64 需要
--> 正在处理依赖关系 libpytalloc-util.so.2()(64bit),它被软件包 samba-libs-4.10.16-18.el7_9.x86_64 需要
--> 正在处理依赖关系 libpyldb-util.so.1()(64bit),它被软件包 samba-libs-4.10.16-18.el7_9.x86_64 需要
--> 正在检查事务
---> 软件包 libsmbclient.x86_64.0.4.10.16-5.el7 将被 升级
---> 软件包 libsmbclient.x86_64.0.4.10.16-18.el7_9 将被 更新
---> 软件包 pyldb.x86_64.0.1.5.4-2.el7 将被 安装
--> 正在处理依赖关系 libldb(x86-64) = 1.5.4-2.el7,它被软件包 pyldb-1.5.4-2.el7.x86_64 需要
--> 正在处理依赖关系 python-tdb(x86-64) >= 1.3.18,它被软件包 pyldb-1.5.4-2.el7.x86_64 需要
---> 软件包 pytalloc.x86_64.0.2.1.16-1.el7 将被 安装
---> 软件包 samba-client.x86_64.0.4.10.16-5.el7 将被 升级
---> 软件包 samba-client.x86_64.0.4.10.16-18.el7_9 将被 更新
--> 正在检查事务
---> 软件包 libldb.x86_64.0.1.5.4-1.el7 将被 升级
---> 软件包 libldb.x86_64.0.1.5.4-2.el7 将被 更新
---> 软件包 python-tdb.x86_64.0.1.3.18-1.el7 将被 安装
--> 解决依赖关系完成

依赖关系解决

================================================================================
 Package                 架构        版本                    源            大小
================================================================================
正在安装:
 samba                   x86_64      4.10.16-18.el7_9        updates      720 k
为依赖而安装:
 pyldb                   x86_64      1.5.4-2.el7             updates       49 k
 pytalloc                x86_64      2.1.16-1.el7            base          18 k
 python-tdb              x86_64      1.3.18-1.el7            base          20 k
 samba-common-tools      x86_64      4.10.16-18.el7_9        updates      466 k
 samba-libs              x86_64      4.10.16-18.el7_9        updates      271 k
为依赖而更新:
 libldb                  x86_64      1.5.4-2.el7             updates      149 k
 libsmbclient            x86_64      4.10.16-18.el7_9        updates      146 k
 libwbclient             x86_64      4.10.16-18.el7_9        updates      116 k
 samba-client            x86_64      4.10.16-18.el7_9        updates      646 k
 samba-client-libs       x86_64      4.10.16-18.el7_9        updates      5.0 M
 samba-common            noarch      4.10.16-18.el7_9        updates      216 k
 samba-common-libs       x86_64      4.10.16-18.el7_9        updates      182 k

事务概要
================================================================================
安装  1 软件包 (+5 依赖软件包)
升级           ( 7 依赖软件包)

总计:7.9 M
总下载量:1.5 M
Is this ok [y/d/N]: y
Downloading packages:
(1/6): pyldb-1.5.4-2.el7.x86_64.rpm                        |  49 kB   00:00     
(2/6): python-tdb-1.3.18-1.el7.x86_64.rpm                  |  20 kB   00:00     
(3/6): pytalloc-2.1.16-1.el7.x86_64.rpm                    |  18 kB   00:00     
(4/6): samba-4.10.16-18.el7_9.x86_64.rpm                   | 720 kB   00:00     
(5/6): samba-common-tools-4.10.16-18.el7_9.x86_64.rpm      | 466 kB   00:00     
(6/6): samba-libs-4.10.16-18.el7_9.x86_64.rpm              | 271 kB   00:00     
--------------------------------------------------------------------------------
总计                                               9.3 MB/s | 1.5 MB  00:00     
Running transaction check
Running transaction test
Transaction test succeeded
Running transaction
  正在更新    : libldb-1.5.4-2.el7.x86_64                                  1/20 
  正在更新    : samba-common-4.10.16-18.el7_9.noarch                       2/20 
  正在更新    : libwbclient-4.10.16-18.el7_9.x86_64                        3/20 
  正在更新    : samba-client-libs-4.10.16-18.el7_9.x86_64                  4/20 
  正在更新    : samba-common-libs-4.10.16-18.el7_9.x86_64                  5/20 
  正在更新    : libsmbclient-4.10.16-18.el7_9.x86_64                       6/20 
  正在安装    : python-tdb-1.3.18-1.el7.x86_64                             7/20 
  正在安装    : pyldb-1.5.4-2.el7.x86_64                                   8/20 
  正在安装    : pytalloc-2.1.16-1.el7.x86_64                               9/20 
  正在安装    : samba-libs-4.10.16-18.el7_9.x86_64                        10/20 
  正在安装    : samba-common-tools-4.10.16-18.el7_9.x86_64                11/20 
  正在安装    : samba-4.10.16-18.el7_9.x86_64                             12/20 
  正在更新    : samba-client-4.10.16-18.el7_9.x86_64                      13/20 
  清理        : samba-client-4.10.16-5.el7.x86_64                         14/20 
  清理        : libsmbclient-4.10.16-5.el7.x86_64                         15/20 
  清理        : libwbclient-4.10.16-5.el7.x86_64                          16/20 
  清理        : samba-client-libs-4.10.16-5.el7.x86_64                    17/20 
  清理        : samba-common-libs-4.10.16-5.el7.x86_64                    18/20 
  清理        : samba-common-4.10.16-5.el7.noarch                         19/20 
  清理        : libldb-1.5.4-1.el7.x86_64                                 20/20 
  验证中      : samba-common-libs-4.10.16-18.el7_9.x86_64                  1/20 
  验证中      : samba-client-4.10.16-18.el7_9.x86_64                       2/20 
  验证中      : libldb-1.5.4-2.el7.x86_64                                  3/20 
  验证中      : samba-4.10.16-18.el7_9.x86_64                              4/20 
  验证中      : samba-client-libs-4.10.16-18.el7_9.x86_64                  5/20 
  验证中      : libsmbclient-4.10.16-18.el7_9.x86_64                       6/20 
  验证中      : pyldb-1.5.4-2.el7.x86_64                                   7/20 
  验证中      : samba-common-tools-4.10.16-18.el7_9.x86_64                 8/20 
  验证中      : samba-common-4.10.16-18.el7_9.noarch                       9/20 
  验证中      : pytalloc-2.1.16-1.el7.x86_64                              10/20 
  验证中      : samba-libs-4.10.16-18.el7_9.x86_64                        11/20 
  验证中      : libwbclient-4.10.16-18.el7_9.x86_64                       12/20 
  验证中      : python-tdb-1.3.18-1.el7.x86_64                            13/20 
  验证中      : samba-client-libs-4.10.16-5.el7.x86_64                    14/20 
  验证中      : libldb-1.5.4-1.el7.x86_64                                 15/20 
  验证中      : libsmbclient-4.10.16-5.el7.x86_64                         16/20 
  验证中      : samba-common-4.10.16-5.el7.noarch                         17/20 
  验证中      : libwbclient-4.10.16-5.el7.x86_64                          18/20 
  验证中      : samba-client-4.10.16-5.el7.x86_64                         19/20 
  验证中      : samba-common-libs-4.10.16-5.el7.x86_64                    20/20 

已安装:
  samba.x86_64 0:4.10.16-18.el7_9                                               

作为依赖被安装:
  pyldb.x86_64 0:1.5.4-2.el7                                                    
  pytalloc.x86_64 0:2.1.16-1.el7                                                
  python-tdb.x86_64 0:1.3.18-1.el7                                              
  samba-common-tools.x86_64 0:4.10.16-18.el7_9                                  
  samba-libs.x86_64 0:4.10.16-18.el7_9                                          

作为依赖被升级:
  libldb.x86_64 0:1.5.4-2.el7                                                   
  libsmbclient.x86_64 0:4.10.16-18.el7_9                                        
  libwbclient.x86_64 0:4.10.16-18.el7_9                                         
  samba-client.x86_64 0:4.10.16-18.el7_9                                        
  samba-client-libs.x86_64 0:4.10.16-18.el7_9                                   
  samba-common.noarch 0:4.10.16-18.el7_9                                        
  samba-common-libs.x86_64 0:4.10.16-18.el7_9                                   

完毕!

二、配置samba

samba配置文件位于/etc/samba/smb.conf
smb.conf文件含义如下:

# See smb.conf.example for a more detailed config file or
# read the smb.conf manpage.
# Run 'testparm' to verify the config is correct after
# you modified it.

[global]
    workgroup = SAMBA   #samba的工作组,设置成 Windows 的工作组
    security = user     #安全选项,可以是 share|user|server|domain,安全级别递增
    passdb backend = tdbsam #定义口令类型,存在如下3中口令校验
    #smbpasswd:使用smbpasswd命令为系统用户设置Samba服务程序的密码
    #tdbsam:创建数据库文件并使用pdbedit命令建立Samba服务程序的用户
    #ldapsam:基于LDAP服务进行账户验证
    printing = cups
    printcap name = cups
    load printers = yes #设置在Samba服务启动时是否共享打印机设备
    cups options = raw #打印机的选项

[homes]   #共享默认会将用户的主目录共享, 这是不安全的, 可以将其注释
    comment = Home Directories
    valid users = %S, %D%w%S
    browseable = no #指定共享信息是否在"网上邻居"中可见
    writable = yes #定义是否可以执行写入操作,与"read only"相反
    inherit acls = yes

[printers]   #打印机共享
    comment = All Printers
    path = /var/tmp #共享文件的实际路径(重要)
    printable = yes
    create mask = 0600
    browseable = no
    guest ok = no #是否所有人可见,等同于"public"参数

[print$]
    comment = Printer Drivers
    path = /var/lib/samba/drivers
    write list = root
    create mask = 0664
    directory mask = 0775

[rootdir]   #自定义的共享文件夹
    comment = share some files
    path = /home/samba/     #共享的路径
    public = no             #关闭"所有人可见"
    writable = yes          #允许写入操作

根据需要修改配置文件对应项(修改时去掉#及其后面的注释)。

三、samba命令

pdbedit命令用于管理SMB服务程序的账户信息数据库,格式为pdbedit [选项] 账户。pdbedit命令中使用的参数以及作用如下所示:

命令 作用
pdbedit -a 用户名 新建Samba账户。
pdbedit -r 用户名 修改Samba账户。
pdbedit -x 用户名 删除Samba账户。
pdbedit -L 列出Samba用户列表,读取passdb.tdb数据库文件。
pdbedit -Lv 列出Samba用户列表详细信息。
pdbedit -c “[D]” -u 用户名 暂停该Samba用户账号。
pdbedit -c “[]” -u 用户名 恢复该Samba用户账号。

详细命令如下:

参数 详细参数 作用
-a –create 新建samba用户
-r –modify 修改samba用户
-x –delete 删除samba用户
-L –list 列出全部samba用户,读取passdb.tdb数据库文件
-v –verbose 显示详细信息
-c –account-control=STRING 账户控制值
-w –smbpasswd-style 以smbpasswd格式输出
-u –user=USER 使用的用户
-N –account-desc=STRING 设置账户描述
-f –fullname=STRING 设置全名
-h –homedir=STRING 设置家目录
-D –drive=STRING 设置家设备
-S –script=STRING 设置登陆脚本
-p –profile=STRING 设置配置文件路径
-I –domain=STRING 设置用户域名
-U –user SID=STRING 设置用户SID或RID
-M –machine SID=STRING 设置设备SID或RID
-m –machine 账户是一个设备账户
-b –backend=STRING 使用不同的passdb作为默认后端
-i –import=STRING 指定后段导入用户账户
-e –export=STRING 导出用户账户到指定后端
–policies-reset 恢复默认策略
-P –account-policy=STRING 帐户策略的值(如最大密码有效期)
-C –value=LONG 设置账号策略值
–force-initialized-passwords 强制初始化passdb后端
-z –bad-password-count-reset 重置错误密码
-Z –logon-hours-reset 重置登陆时间
–time-format=STRING 时间参数的格式
-t –password-from-stdin 从标准输入获取密码
-K –kickoff-time=STRING 设置开始时间
–set-nt-hash=STRING 从nt-hash设置密码
-d –debuglevel=DEBUGLEVEL 设置debug级别
-s –configfile=CONFIGFILE 使用备用配置文件
-l –log-basename=LOGFILEBASE 设置日志文件的基本名称
-V –version 输出版本号
–option=name=value 从命令行设置smb.conf选项
-? –help 显示帮助信息
–usage 显示简要的使用信息

四、创建用户

例:创建名为user的samba用户。
需用root账户运行以下命令:

[root@localhost user]# useradd user
[root@localhost user]# pdbedit -a user

设置完密码之后,输出:

new password:
retype new password:
Unix username:        user
NT username:          
Account Flags:        [U          ]
User SID:             S-1-5-21-3493698449-1122089174-3843279965-1001
Primary Group SID:    S-1-5-21-3493698449-1122089174-3843279965-513
Full Name:            user
Home Directory:       \\localhost\user
HomeDir Drive:        
Logon Script:         
Profile Path:         \\localhost\user\profile
Domain:               LOCALHOST
Account desc:         
Workstations:         
Munged dial:          
Logon time:           0
Logoff time:          三, 06 2月 2036 23:06:39 CST
Kickoff time:         三, 06 2月 2036 23:06:39 CST
Password last set:    五, 03 6月 2022 12:15:23 CST
Password can change:  五, 03 6月 2022 12:15:23 CST
Password must change: never
Last bad password   : 0
Bad password count  : 0
Logon hours         : FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF

五、设置SELinux安全上下文

创建用于共享资源的文件目录不仅要考虑到文件读写权限的问题,而且由于/home目录是系统中普通用户的家目录, 因此还需要考虑应用于该目录的SELinux安全上下文所带来的限制。 Samba服务程序配置文件中的注释就有关于SELinux安全上下文策略的说明, 我们只需按照过滤信息中有关SELinux安全上下文策略中的说明中给的值进行修改即可。 修改完毕后执行restorecon命令,让应用于目录的新SELinux安全上下文立即生效。

[root@localhost user]# semanage fcontext -a -t samba_share_t /home/user
[root@localhost user]# restorecon -Rv /home/user

输出:

restorecon reset /home/user context unconfined_u:object_r:user_home_dir_t:s0->unconfined_u:object_r:samba_share_t:s0

设置SELinux服务与策略,使其允许通过Samba服务程序访问普通用户家目录。执行getsebool命令, 筛选出所有与Samba服务程序相关的SELinux域策略。

[root@localhost user]# getsebool -a | grep samba

输出:

samba_create_home_dirs --> off
samba_domain_controller --> off
samba_enable_home_dirs --> on
samba_export_all_ro --> off
samba_export_all_rw --> off
samba_load_libgfapi --> off
samba_portmapper --> off
samba_run_unconfined --> off
samba_share_fusefs --> off
samba_share_nfs --> off
sanlock_use_samba --> off
tmpreaper_use_samba --> off
use_samba_home_dirs --> off
virt_use_samba --> off

根据策略的名称(和经验)选择出正确的策略条目进行开启。

[root@localhost user]# setsebool -P samba_enable_home_dirs on

六、关闭防火墙

1、打开“防火墙”。
打开“防火墙”
2、在“配置”处选择“永久”。
修改配置
3勾选"samba",重启系统。
samba防火墙设置

七、Samba 服务管理

1、启动Samba服务

[root@localhost user]# systemctl start smb

2、停止Samba服务

[root@localhost user]# systemctl stop smb

3、查看Samba服务

[root@localhost user]# systemctl status smb

4、开机自启Samba服务

[root@localhost user]# systemctl enable smb

5、停止开机自启Samba服务

[root@localhost user]# systemctl disable smb

八、Windows 访问共享目录

直接Win + R,或者在此电脑的地址栏里,输入\192.168.100.100,也就是你的 CentOS 主机地址,会弹出登陆窗口,输入刚刚设置的用户名密码就可以访问。注意这里输入的密码是samba设置的密码,不是登录 CentOS 系统的密码。因为在CentOS 7系统中,Samba服务程序使用的果然是独立的账户信息数据库。 所以,即便在 CentOS 系统中有一个samba账户,Samba服务程序使用的账户信息数据库中也有一个同名的samba账户, 大家也一定要弄清楚它们各自所对应的密码。

如果 Windows 下访问 Linux 下共享目录 , 提示没有权限或一直没有弹出登录窗口。

  • 确保 CentOS 防火墙配置正确或者是开放共享目录权限
  • 确保 Samba 服务器配置文件 smb.conf 设置没有问题
  • 确保 SELinux配置正确
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

CentOS 7通过samba实现与Windows共享文件夹 的相关文章

  • 在 C# 中使用反射列出枚举中的值

    我正在尝试使用反射来列出一个 Visual Studio 解决方案内的各个项目中的一些类的公共成员和方法 我尝试访问的所有类都是 C 的 并且它们都是从 C 类访问的 我用来进行这些调用的代码如下 public void PopulateE
  • windows关闭tomcat后保持端口锁定

    我遇到了一个问题 该问题发生在不同站点的 3 台不同服务器上 问题是 当我关闭 Windows 服务器上的 Tomcat 7 和 8 5 版本 服务并尝试重新启动该服务后 该服务将无法启动 因为 tomcat 认为端口仍在使用中 以下是错误
  • “此应用程序已请求运行时以异常方式终止它”的原因是什么?

    Visual C 运行时抛出一个常见错误 此应用程序已请求运行时以异常方式终止它 请联系应用程序的支持团队以获取更多信息 该错误消息实际上是什么意思mean 让我用一个比喻来准确地解释我的问题 如果我看到一条消息 异常 访问冲突 0xc00
  • fprintf() 线程安全吗?

    我正在为野人就餐问题的某些变量编写一个 C 解决方案 现在 我创建线程 每个线程都将 FILE 获取到同一个调试文件 在线程内我正在使用 fprintf 进行一些打印 打印的语句不受任何类型的互斥锁等保护 我没有在调试文件中观察到任何交错行
  • 如何在子 shell 中运行 cmd.exe 批处理文件

    我有一个批处理文件 通常像这样调用 longjob cmd gt result txt 2 gt 1 这工作正常 但脚本在执行过程中更改了目录 将我的 shell 留在该目录中 这很麻烦 有没有办法在子 shell 中运行命令 同时仍然允许
  • 如何获取Windows批处理的父文件夹

    我正在编写一个批处理文件 我需要获取该bat文件的父文件夹 有可能吗 注意 我的意思是批处理文件的父文件夹 而不是调用该批处理的提示的当前目录 Thanks 批处理的父文件夹位于变量中 dp0位于 例子 echo off setlocal
  • Windows 睡眠功能极慢

    我正在通过 Windows h 使用 Sleep 命令制作一个程序 并且在 Windows 10 而不是 Windows 7 上运行我的程序时遇到了令人沮丧的差异 我将我的程序简化为下面的程序 它与我的更复杂的程序表现出相同的行为 在 Wi
  • opencv人脸检测示例

    当我在设备上运行应用程序时 应用程序崩溃并显示以下按摩 java lang UnsatisfiedLinkError 无法加载 detector based tracker findLibrary 返回 null 我正在使用 OpenCV
  • 将文件夹中的所有文件及其所有子文件夹移动到一个大文件夹中 - windows xp

    我有一个文件夹 c downloads ffme 里面有很多子文件夹 每个子文件夹中都有不同数量的文件 我想将所有这些单独的文件合并到一个大文件夹中 同时将它们从子文件夹中删除 我希望最终得到一个包含大量文件的文件夹 但没有子文件夹 我怎样
  • 在运行时,我如何判断我是否在 WinXP+ 上? win32

    我正在进行一些 win32 字符串 API 调用 并假设字符串以宽字符串形式出现 这在 XP 和更高版本上有效 我该如何断言这一点 这是运行时检查还是编译时检查 我做错了吗 这是一个例子 typedef std basic string
  • 为什么 fopen 无法打开已存在的文件?

    我在 Windows XP 上使用 Visual Studio 6 是的 我知道它很旧 构建 维护 C DLL 我遇到了 fopen 无法打开现有文件的问题 它总是返回 NULL 我试过了 通过将 errno 和 doserrno 设置为零
  • git 认为文件已更改

    我在一台机器上对一个项目做了一些工作 然后推送到 github 在另一台机器上克隆并做了一些工作 然后推送 然后我回到第一台机器并做了一个pull 现在 第一台机器认为项目中最初的所有文件都已更改 我试过了 git checkout f a
  • 如何使用Python在Django for Windows中激活虚拟环境?

    我被告知要在 Django for Windows 中激活虚拟环境 我应该尝试 environment path Scripts activate 但是当我输入该命令时 cmd 返回此错误 该系统找不到指定的路径 我通过输入以下命令创建了虚
  • 使用 sed 更新 xml 属性(Windows + cygwin 和 Linux)?

    我需要使用 sed 命令对 xml 文件进行更新 但我在这方面遇到了麻烦 它需要在 Windows 使用 cygwin 和 Linux 上运行 XML 具有以下元素
  • 如何使用 Win32 API 与 com 端口 (RS232) 通信

    我正在尝试使用 win32 API 与 com 端口对话 我找到了这个http www robbayer com files serial win pdf http www robbayer com files serial win pdf
  • 在高 dpi Windows 平台上自动重新缩放应用程序?

    我正在编写一个需要在高 dpi Windows 192dpi 而不是 96dpi 上运行的 Qt 应用程序 不幸的是 Qt 框架尚不支持高 dpi 至少在 Windows 上 因此我的应用程序及其所有元素看起来只有应有尺寸的一半 有没有办法
  • 导入错误:没有名为 django 的模块

    我使用的是centos Linux 我有 python 2 6 和 django 现在我升级到 python 2 7 Python 2 6 位于 usr lib python2 6 Python 2 7 位于 usr local lib p
  • Windows 8 Metro 应用程序(网格应用程序)过渡时出现黑色闪烁

    我正在基于网格应用程序模板构建 Windows 8 Metro 应用程序 一切都很顺利 直到我尝试更改应用程序的主题和背景 我将图像背景应用于所有 3 个 XAML 页面的网格 另外 我在应用程序包清单中将主题更改为 Light 但它没有执
  • 如何捕获未发送到 stdout 的命令行文本?

    我在项目中使用 LAME 命令行 mp3 编码器 我希望能够看到某人正在使用什么版本 如果我只执行 LAME exe 而不带参数 我会得到 例如 C LAME gt LAME exe LAME 32 bits version 3 98 2
  • sqlite3-ruby gem:无法构建 gem 本机扩展

    Update 看看这个后续问题 Windows 上的 Gem 更新 它坏了吗 https stackoverflow com questions 134581 gem update on windows is it broken 在 Win

随机推荐

  • Pytorch深度学习(六):Softmax函数实现多分类

    Pytorch深度学习 六 Softmax函数实现多分类 参考B站课程 PyTorch深度学习实践 完结合集 传送门 PyTorch深度学习实践 完结合集 一 预备知识 多分类 与之前的二分类不同 这个例子要识别手写数字的多分类 需要求出各
  • surface go 快乐装Ubuntu

    咳咳 首先我只是想体验一下 surface go 装Ubuntu 滑稽 每次开机看到田字格 然后显示出Ubuntu 有一种莫名的喜感 安装前准备 一个u盘 至少能装下你的映像文件 一台笔记本 拿来看博客 百度 你的surface go 我拿
  • (2)Mysql的安装及配置

    一 下载mysql 安装mysql有两种方式 一种是下载安装包安装 另一种是下载压缩包解压配置 这里使用安装包方式 进去后点击下面的Download 点击No thinks进入下载 二 安装mysql 双击下载好的安装包 选择Server
  • IntelliJ IDEA+SpringBoot+Tomcat部署404问题

    因为并行开发 后端一直拿不出接口 我不得不自己做Mock 为了完成网络请求逻辑 我使用Idea做模拟接口 后来发现 使用Idea创建的SpringBoot项目在软件内部的虚拟Tomcat上面可以正常运行 但是因为要做一些WebSocket和
  • 苹果笔记本计算机管理员删除,如何删除一个管理员?

    注销要删除的管理员帐户 再以管理员帐户登入 然后跟下面方法 如果您是管理员 则可以删除您不再想让其可访问电脑的用户 删除用户时 您可以存储该用户的个人文件夹 包含用户的文件和设置 或删除该个人文件夹 选取苹果菜单 gt 系统偏好设置 然后点
  • Python反反爬之JS混淆---动态Cookie(持续更新详细教程)

    写在前面 第一题JS混淆 源码乱码 经过上一题的练习JS混淆 源码乱码 我们已经对JS混淆有了大致的了解 这次我们再来练习一道同类型的题目 只不过这次是动态Cookie 首先 让我们了解一下什么是Cookie Cookie 并不是它的原意
  • lua中的常用字符串处理方法

    对lua中string类库中常用方法总结一二 1 数字和字符串相加减lua自动转换 2 得到字符串的长度 3 string byte 返回字符的内部数字编码 ASCII码 4 string char 返回和参数数量相同长度的字符串 其中每个
  • LeetCode202.快乐数(Python)

    题目 解题思路 运用哈希表 将各个位数进行平方 将得到的数进行判断 如果为1输出True 如果不为1 判断是否重复了 如果重复输出False 如果没有重复 进行各个位数平方 反复以上操作 class Solution def isHappy
  • [转]Smartgit :Remove Discard Delete

    Smartgit Remove Discard Delete https blog csdn net u010272085 article details 85039801 Remove 从仓库中移除选中的文件或目录 可通过Discard还
  • C# this.Invoke()的作用与用法、不阻塞UI界面线程的延时函数

    一 this Invoke 的作用与用法 不阻塞UI界面线程的延时函数 Invoke 的作用是 在应用程序的主线程上执行指定的委托 一般应用 在辅助线程中修改UI线程 主线程 中对象的属性时 调用this Invoke 在多线程编程中 我们
  • CH9-网络编程

    目标 了解HTTP协议通信简介 能够说出什么是HTTP协议 掌握HttpURLConnection的使用方法 能够使用HttpURLConnection访问网络 掌握WebView控件的使用方式 能够使用WebView控件加载不同的网页 掌
  • 机器学习(七):主成分分析PCA降维_Python

    六 PCA主成分分析 降维 github地址 https github com lawlite19 MachineLearning Python 全部代码 1 用处 数据压缩 Data Compression 使程序运行更快 可视化数据 例
  • 【目标检测-YOLO】YOLOv5-5.0v-数据处理(第三篇)

    前文链接 YOLOv5 v5 0 yolov5s网络架构详解 第一篇 星魂非梦的博客 CSDN博客 YOLOv5 5 0v yaml 解析 第二篇 星魂非梦的博客 CSDN博客 1 性能分析 YOLOv5 P6 models 4 outpu
  • 数据隐私与安全在大数据时代的挑战与应对

    文章目录 数据隐私的挑战 数据安全的挑战 应对策略和方法 1 合规和监管 2 加密技术 3 匿名化和脱敏 4 安全意识培训 5 隐私保护技术 结论 个人主页 程序员 小侯 CSDN新晋作者 欢迎 点赞 评论 收藏 收录专栏 大数据系列 文章
  • 国内“风口”转变,中国游戏公司纷纷“外逃”,东南亚是个好去处

    中国游戏开发商正在加强对国际市场 特别是东南亚市场的承诺 因为他们的国内公司正在努力应对更困难的中国市场 以便实施在下一阶段发展布局 根据移动应用市场情报公司Sensor Tower的一份报告 按收入排名的前100名全球移动游戏中 有39款
  • String类型的时间转换成BigDecimal类型

    private BigDecimal timeformat String time throws ParseException SimpleDateFormat formatter new SimpleDateFormat yyyy MM
  • Eureka中的服务状态显示UNKOWN(1)

    Spring cloud在加入Config配置中心后 Eureka中的服务状态显示为UNKOUNW 1 Eureka的client端显示如下注册状态为204 重新注册 Eureka服务端 Eureka client端 2018 11 02
  • pom文件解读

    一 pom文件解读
  • Visio+Latex 插入EPS等矢量图

    Latex插入单栏 或者跨栏 的图片 在figure后面加个 即可 即figure begin figure h centering includegraphics width linewidth Figure1 caption Whate
  • CentOS 7通过samba实现与Windows共享文件夹

    Samba是在Linux和UNIX系统上实现SMB协议的一个免费软件 由服务器及客户端程序构成 SMB Server Messages Block 信息服务块 是一种在局域网上共享文件和打印机的一种通信协议 它为局域网内的不同计算机之间提供