Linux下Samba做文件服务器的问题解答
- 2024-07-08 05:10:31
- 来源:本站整理
- 在手机上看
扫一扫立即进入手机端
本文讨论范围是samba使用过程中遇到的问题。
问题1:在win2000客户端,用中文做文件名,到linux的命令行下,变成乱码怎么解决?
解决:可能是命令行下不支持unicode,为了通用,强制samba使用GB2312就可以了在[global]小节加一行: unix charset = GB2312 后注:最好设置为GBK,否则某些字符会出问题,造成漫游账号不能用。
问题2:在共享目录设置中可以用comment做注解,但是中文字符在win客户端看过来会乱码,怎么解决?
解决:在[global]小节,添加一行: display charset = GB2312 就可以了,要求samba是3.0以上。
问题3:怎么样开放共享资源给匿名(guest)用户?
解决:在[global]小节,添加一行: map to guest = bad user 然后在相应的共享资源小节增加2行: guest account = nobody guest ok = Yes 这样所有没有账号对应和密码错误的用户连上来,访问这个共享资源时,它的对应用户就是nobody。
问题4:在某些win2000的机器上面不能修改域的账号的密码,samba的log提示 check_oem_password: incorrect password length (-312332314)。
解决: 卸载win2k的hotfix补丁:KB828741 或者下载更新当前最新版的samba3.04。
问题5: 原来使用的是发行版打包的samba,现在要下载最新版源码编译安装,怎么把原来的设置保留?
解决: 先停掉原来的samba服务:
|
备份原来的域账号资料到:
|
再编译安装新的samba:
|
这样新的samba就安装在:
|
放在了:
|
把老的smb.conf复制到上面的目录:
|
用testparm测试设置文件是否有问题,要指定绝对路径:
|
[#page_#][#page_#]
如果直接执行testparm,执行的把是老版本的samba的testparm 一般不会有问题,我这里遇到的一个问题是说passwd程序没有找到,把smb.conf中行 passwd program = passwd %u 改成 passwd program = /usr/bin/passwd %u 最后,修改启动脚本,/etc/init.d/smb 把里面的nmbd和smbd前面增加绝对路径/usr/local/samba/sbin 就全部安装完成了。启动之前,恢复域账号: pdbedit -i smbpasswd:/root/anheng.backup 然后就可以启动了 /etc/init.d/smb start 新安装后,由于程序和设置文件跟原来发行版的linux的目录位置不一致,如果你使用webmin进行管理,就要重新设置一下webmin里面samba模块的配置信息。
问题6:在某些win2k机器加入到域的过程中,输入完域管理员账号后,win2k提示没有找到账号,看samba的日志,没有任何提示。
解决: 用netstat -n -a看到没有连接到域服务器的139口,却和另一台samba服务器有连接,就是说win2k错误的连接到了另一台samba服务器,把这台服务器的主浏览器级别调低后,问题解决修改smb.conf的os level = 99 最好不要装2台域控制器。
问题7:怎么让某些域账号在本机可以有administrator权限?
解决:在本机(WIN2K专业版),先用本机的ADMINISTRATOR来登陆,点控制面板里面的用户管理,添加用户,设置添加的用户是域用户,然后选择本机权限为ADMINISTRATOR。
问题8:在某些客户端,使用域账号,漫游登陆时,存放在域服务器上的Foxmail程序不能运行,而在有些客户端能够运行。怎么解决?
解决:在有问题的客户端,删除有问题的漫游账号,这样操作:控制面版->系统->用户配置文件->选定&删除。
问题9:在客户端,ie的收藏夹中出现特殊字符的文件名时(估计跟我使用GB2312有关),漫游账号不能复制到本地。而造成用临时账号登陆系统,而不能访问原来的桌面设置和收藏夹等。
解决1:找到捣乱的文件,删掉它,更好的办法还没有找到。
解决2:初步确定是win这边的字符x0a1x0aa到了samba变成了x014,这个只在ver3中出现,估计是一个bug,再bug被解决之前我暂时用php+bash用脚本解决,在/etc/cron.hourly/放一个scan14.sh,里面只要一行: find /home/samba/profiles -cmin -61 -exec php /root/f.php { } \; 然后在/root/f.php: ...(见附件) 这样每一小时都查一边文件,修正非法字符解决3:把global里面的unix charset 设置由GB2312改成GBK就行了 unix charset GBK。
相关资讯
更多-
LINUX与UNIX SHELL编程指南
中文|19.1M
-
检疫镇手机版
中文|72.5M
-
国人健康馆
中文|102.4M
-
来趣拼购物app
中文|26.2M
-
决战平安京海外加速服
中文|1.92G
-
射击骑士团h5手游
中文|3.4M
-
山海优选官方版2024
中文|84MB
-
海银基金
中文|112.3M
-
星空之遇app
中文|94.6M
-
侏罗纪世界适者生存中文版(JW Alive)
中文|603.3M
-
迅读PDF大师(阅读软件)
中文|13.7M
-
小小突击队2电脑版
中文|13.1M
-
希沃数位板PC版
中文|
-
山海优选官方版2024
中文|84MB