QQ登录

只需一步,快速开始

 找回密码
 注册

QQ登录

只需一步,快速开始

查看: 4314|回复: 16

[MagicLinux2.0]几个问题,谢谢解答。

[复制链接]
发表于 2006-7-4 13:42:35 | 显示全部楼层 |阅读模式
红旗Linux4.0曾经很好用,但是毕竟太老了。我正在尝试将MagicLinux2.0升格为主要系统,逐渐淘汰红旗Linux4.0。红旗Linux4.0已经用了两年多,很多已经习惯的或者不成问题的地方在MagicLinux2.0上成了问题。目前比较突出的有以下三个:

1. JDK问题。
我在系统中“/opt/prog/m/Java/J2SDK”处安装了JDK1.5.0_6,并在“/etc/profile”中添加了如下内容:
[code:1]
########################################
#       Number: 3
#       Date:   Forgot
#       Stat:   Testing
#       Name:   J2SE
#       Ver:    5.0 Update6
#       Useage: Java
#       Move:   Moveable
#       Type:   Non-Compiled
#
export JAVA_HOME="/opt/prog/m/Java/J2SDK"
export PATH=$PATH:$JAVA_HOME/bin
export CLASSPATH=$CLASSPATH:"./"
########################################
[/code:1]
在红旗Linux4.0中,以上内容完全正常,没有问题。

以“typhoon”(Tomcat管理员)从控制台终查看,环境变量“JAVA_HOME”正确,并且Tomcat能正常启动。

以“root”身份从KDE虚拟终端查看环境变量“JAVA_HOME”也正确,但是在此虚拟终端里用命令“konsole”或“rxvt”新开一个虚拟终端,环境变量“JAVA_HOME”就变成“/usr/java/jre1.5.0_05”了。

以“typhoon”(Tomcat管理员)身份从KDE虚拟终端查看环境变量“JAVA_HOME”也是“/usr/java/jre1.5.0_05”,导致Tomcat无法启动。

刚才看了 http://mlwiki.maihaohui.com/index.php/Matlab ,猜测可能是“/etc/profile.d/java-profile.sh”导致的问题,但现在没有机会试,只好问问。

2. Samba问题
非常想知道怎样在MagicLinux2.0上利用Samba创建一个无须输入帐号口令即可访问的写共享。在红旗Linux4.0里这么做非常简单,用鼠标点点,或者直接修改“smb.conf”都很容易做到,而在MagicLinux2.0中似乎难于上天。
以下两段分别是红旗Linux4.0和MagicLinux2.0的“smb.conf”相关部分:
[code:1]
[share_rw]
    comment =
    writeable = yes
    guest ok = yes
    path = "/opt/prog/share_rw"
    guest account = root
[/code:1]
[code:1]
[share_rw]
guest account = root
case sensitive = no
guest ok = yes
msdfs proxy = no
read only = no
writeable = yes #这一行是手工修改时添加的
comment = Writable_Test
hosts allow = 0.0.0.0
path = /opt/prog/share_rw
[/code:1]
MagicLinux2.0的“smb.conf”文件修改完毕后(手工修改、利用Samba管理GUI都用过)重新启动Samba,测试:
[code:1]
[root@TFW-HOST-0 samba]# mount //127.0.0.1/share_rw /mnt/lan
Password:
[root@TFW-HOST-0 samba]# touch /mnt/lan/1.txt
touch: 无法触碰 “/mnt/lan/1.txt”: 权限不够
[root@TFW-HOST-0 samba]# umount /mnt/lan
[root@TFW-HOST-0 samba]# mount //127.0.0.1/share_rw /mnt/lan -o rw
Password:
[root@TFW-HOST-0 samba]# touch /mnt/lan/1.txt
touch: 无法触碰 “/mnt/lan/1.txt”: 权限不够
[root@TFW-HOST-0 samba]# umount /mnt/lan
[root@TFW-HOST-0 samba]#
[/code:1]

3. konsole终端里的字体
中英文混杂的时候难以上下对齐;中文的双引号只占一个字符空间。我经常看终端,也经常会中英数混合输入,编辑文件时碰到这种情况是难以忍受的。想了解一下konsole里怎么更换字体。

当然这个问题没有前两个问题紧迫,我可以暂时用从红旗Linux4.0上弄来的rxvt,只是没有konsole的特效罢了。
 楼主| 发表于 2006-7-4 14:31:05 | 显示全部楼层

红旗Linux4.0的smb.conf

红旗Linux4.0的smb.conf

本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有账号?注册

×
回复

使用道具 举报

 楼主| 发表于 2006-7-4 14:33:11 | 显示全部楼层

MagicLinux2.0的smb.conf

MagicLinux2.0的smb.conf

本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有账号?注册

×
回复

使用道具 举报

 楼主| 发表于 2006-7-4 14:34:36 | 显示全部楼层

konsole与rxvt的中英混排效果对比

konsole与rxvt的中英混排效果对比

本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有账号?注册

×
回复

使用道具 举报

 楼主| 发表于 2006-7-4 14:50:38 | 显示全部楼层
附:我的“/usr/java”里是空的,没东西。
回复

使用道具 举报

发表于 2006-7-4 20:31:25 | 显示全部楼层

Re: [MagicLinux2.0]几个问题,谢谢解答。

[quote:89ae273662="自由狼-台风"]1. JDK问题。
我在系统中“/opt/prog/m/Java/J2SDK”处安装了JDK1.5.0_6,并在“/etc/profile”中添加了如下内容:
[code:1]
########################################
#       Number: 3
#       Date:   Forgot
#       Stat:   Testing
#       Name:   J2SE
#       Ver:    5.0 Update6
#       Useage: Java
#       Move:   Moveable
#       Type:   Non-Compiled
#
export JAVA_HOME="/opt/prog/m/Java/J2SDK"
export PATH=$PATH:$JAVA_HOME/bin
export CLASSPATH=$CLASSPATH:"./"
########################################
[/code:1]
在红旗Linux4.0中,以上内容完全正常,没有问题。

以“typhoon”(Tomcat管理员)从控制台终查看,环境变量“JAVA_HOME”正确,并且Tomcat能正常启动。

以“root”身份从KDE虚拟终端查看环境变量“JAVA_HOME”也正确,但是在此虚拟终端里用命令“konsole”或“rxvt”新开一个虚拟终端,环境变量“JAVA_HOME”就变成“/usr/java/jre1.5.0_05”了。

以“typhoon”(Tomcat管理员)身份从KDE虚拟终端查看环境变量“JAVA_HOME”也是“/usr/java/jre1.5.0_05”,导致Tomcat无法启动。

刚才看了 http://mlwiki.maihaohui.com/index.php/Matlab ,猜测可能是“/etc/profile.d/java-profile.sh”导致的问题,但现在没有机会试,只好问问。
[/quote]

/etc/bashrc 中有这么一段代码:
[code:1]    if [ "x$SHLVL" != "x1" ]; then # We're not a login shell
        for i in /etc/profile.d/*.sh; do
            if [ -r "$i" ]; then
                . $i
            fi
        done
        unset i
    fi
[/code:1]

使用用户登录方式进入 shell,与用其它方式( 如在 shell 再新建一个 shell )进入 shell 调用的脚本文件是不一样的。

login shell 调用 /etc/profile 文件
non-login shell 调用 /etc/bashrc 文件

把那个设置放到 /etc/profile.d/java-profile.sh 就好了
回复

使用道具 举报

发表于 2006-7-4 20:38:01 | 显示全部楼层

Re: [MagicLinux2.0]几个问题,谢谢解答。

[quote:ceb693c6c5="自由狼-台风"]3. konsole终端里的字体
中英文混杂的时候难以上下对齐;中文的双引号只占一个字符空间。我经常看终端,也经常会中英数混合输入,编辑文件时碰到这种情况是难以忍受的。想了解一下konsole里怎么更换字体。
[/quote]

konsole “设置” 菜单 --> “字体” --> “选择”

在 “选择字体” 的对话框中选择 DejuVu Sans Mono,或 Bitstream Vera Sans Mono 试试,看看问题能不能解决
回复

使用道具 举报

发表于 2006-7-4 21:15:13 | 显示全部楼层
3 的问题:
konsole 和 rxvt 文字实现机理似乎不同,导致 konsole 用的是动态宽度,rxvt 是静态宽度。
找一个固定字符宽度的字体给 konsole 就可以了。
回复

使用道具 举报

发表于 2006-7-5 09:10:56 | 显示全部楼层
2. Samba问题
非常想知道怎样在MagicLinux2.0上利用Samba创建一个无须输入帐号口令即可访问的写共享。


samba的配置方面,你一定要注意几点:

1:要将访问的安全级别设置为share,并且设置一个"guest account":
[code:1]
security = share;
guest ok = yes
guest account = nobody;
[/code:1]
2:假设你需要共享出来,让匿名用户可写的目录为/home/backup,在smb.conf里要指定它是可写的:
[code:1]
[writeable]
path = /home/backup
guest ok = yes
browseable = yes
writeable = yes
[/code:1]
3:在操作系统里,你还必须把该目录的权限设置为除了owner和group之外的other用户可写。因为SAMBA的权限设置是smb.conf和系统目录本身的权限这两方面配合的:
[code:1]
# chmod -R 777 /home/backup
[/code:1]

这样基本就没问题了,试试吧。有问题就发上来。
回复

使用道具 举报

 楼主| 发表于 2006-7-5 11:10:45 | 显示全部楼层
[quote:62c9c51a02="MichaelBibby"]

samba的配置方面,你一定要注意几点:

1:要将访问的安全级别设置为share,并且设置一个"guest account":
[code:1]
security = share;
guest ok = yes
guest account = nobody;
[/code:1][/quote]

这个“guest account”需要在系统中创建用户“guest”或“nobody”吗?还是只要在“smb.conf”里加一行“guest account = nobody;”?后面的分号要加吗?

这个“guest account = nobody”又是什么意思?和“guest account = root”有什么差别?如果对方的机器通过共享向本机传文件,那么传过来的文件其所有者和组又是什么?

[quote:62c9c51a02="MichaelBibby"]2:假设你需要共享出来,让匿名用户可写的目录为/home/backup,在smb.conf里要指定它是可写的:
[code:1]
[writeable]
path = /home/backup
guest ok = yes
browseable = yes
writeable = yes
[/code:1][/quote]

在红旗4.0里,“guest account = xxx”都是指定在具体某个共享的描述段中,在ML2.0里移动到最前面的“global”段里了?

[quote:62c9c51a02="MichaelBibby"]3:在操作系统里,你还必须把该目录的权限设置为除了owner和group之外的other用户可写。因为SAMBA的权限设置是smb.conf和系统目录本身的权限这两方面配合的:
[code:1]
# chmod -R 777 /home/backup
[/code:1][/quote]

要共享的目录在vfat分区,“chmod -R 777”不管用啊。
回复

使用道具 举报

 楼主| 发表于 2006-7-5 13:59:17 | 显示全部楼层
我手工添加了红旗Linux4.0的“东文宋体”和M$的“simsum”,在Kpnqueror和Eclipse的字体设置中都可以应用,就是不能在kpnsole字体设置中找到。
回复

使用道具 举报

发表于 2006-7-5 15:08:47 | 显示全部楼层
[quote:81e9eb3f59="自由狼-台风"][quote:81e9eb3f59="MichaelBibby"]

samba的配置方面,你一定要注意几点:

1:要将访问的安全级别设置为share,并且设置一个"guest account":
[code:1]
security = share;
guest ok = yes
guest account = nobody;
[/code:1][/quote]

这个“guest account”需要在系统中创建用户“guest”或“nobody”吗?还是只要在“smb.conf”里加一行“guest account = nobody;”?后面的分号要加吗?

这个“guest account = nobody”又是什么意思?和“guest account = root”有什么差别?如果对方的机器通过共享向本机传文件,那么传过来的文件其所有者和组又是什么?[/quote]

sorry,参数后的分号是不要的。是我的疏忽。
nobody用户一般是系统都有的。而且是被禁止登陆到系统的。

"guest account = nobody"的意思就是,如果客户端使用匿名登陆进行访问,写入的文件的权限都是指定的用户(nobody)的权限。即,客户端登陆上来,都相当于是本地的nobody用户在操作。

[quote:81e9eb3f59="MichaelBibby"]2:假设你需要共享出来,让匿名用户可写的目录为/home/backup,在smb.conf里要指定它是可写的:
[code:1]
[writeable]
path = /home/backup
guest ok = yes
browseable = yes
writeable = yes
[/code:1]


在红旗4.0里,“guest account = xxx”都是指定在具体某个共享的描述段中,在ML2.0里移动到最前面的“global”段里了?
[/quote]

需要说明一下,"guest account = xxx"既可以作为全局的,也可以作为局部的。如果你需要指定SAMBA服务器上所有的共享都是以“guest account = xxx"指定的用户来操作,那就可以放在global区域里。如果需要为不同的共享指定不同的guest account,那就放在单独的字段里。

[quote:81e9eb3f59="MichaelBibby"]3:在操作系统里,你还必须把该目录的权限设置为除了owner和group之外的other用户可写。因为SAMBA的权限设置是smb.conf和系统目录本身的权限这两方面配合的:
[code:1]
# chmod -R 777 /home/backup
[/code:1]


要共享的目录在vfat分区,“chmod -R 777”不管用啊。[/quote]
因为FAT分区没有这种权限控制,所以,你不chmod -R 777也是一样可用的。

Any more question?
回复

使用道具 举报

 楼主| 发表于 2006-7-6 11:33:14 | 显示全部楼层
经过试验,Java问题已经解决,konsole字符仍然无法解决。konsole自带的所有字体都试过了。konsole不能识别新安装的“东文”、“SimSun”等字体。

Samba方面,安全级别设置为“user”,客户账号设置为“root”,并在具体共享段中添加“weiteable = yes”后,刷新Samba,共享可写。

新问题:

如果一个条目在全局中指定而没在具体共享段里指定,则这个条目会对所有共享段有效;
如果一个条目没在全局中指定而在具体共享段里指定,则这个条目会对本共享段有效;
如果一个条既在全局中指定也在具体共享段里指定,但对应的值不同,又会怎么样?
回复

使用道具 举报

发表于 2006-7-6 14:13:31 | 显示全部楼层
[quote:a4048a119d="自由狼-台风"]Samba方面,安全级别设置为“user”,客户账号设置为“root”,并在具体共享段中添加“weiteable = yes”后,刷新Samba,共享可写。[/quote]
强烈建议你将"guest account"设置为某个低权限用户,任何的共享都不应该以root身份提供。
你所需要做的就是,将guest account设置为低权限用户(越低越好,这是网络安全的一个要素),然后为这个用户赋予那些需要共享的文件以相应的权限。

[quote:a4048a119d="自由狼-台风"]新问题:

如果一个条目在全局中指定而没在具体共享段里指定,则这个条目会对所有共享段有效;
如果一个条目没在全局中指定而在具体共享段里指定,则这个条目会对本共享段有效;[/quote]
理论上是这样的。这就是全局于局部的区别。
你是写程序的,相信你也明白”全局变量“与”局部变量“的区别。
如果一个条既在全局中指定也在具体共享段里指定,但对应的值不同,又会怎么样?
我个人还没有测试过这种情况,暂时不能发表言论。
回复

使用道具 举报

发表于 2006-7-6 20:29:32 | 显示全部楼层
[quote:0c9dbe2e3f="自由狼-台风"]如果一个条既在全局中指定也在具体共享段里指定,但对应的值不同,又会怎么样?[/quote]

在重新定义为局部变量的区域中,为局部变量的值。

在其它地方,为全局变量的值。
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 注册

本版积分规则

GMT+8, 2024-5-7 08:53 , Processed in 0.137530 second(s), 16 queries .

© 2021 Powered by Discuz! X3.5.

快速回复 返回顶部 返回列表