存档

文章标签 ‘linux’

Linux下图形界面的一些概念

2011年2月4日 没有评论

以前就经常被一些xorg、X11,gdm/kdm/xdm,gnome这些概念搞混,虽然大致也知道是怎么回事,但是比较模糊,理解的也不是很到位,上次装archlinux和gentoo的时候,因为有很多东西要自己配置,所以趁机会搞明白了点。

首先要搞明白的是Linux下面很多东西都是模块化的,不像windows一样,图形界面就是操作系统的一部分。有了这个概念以后,在一层一层搞明白这里面的关系。
X11,也叫X window系统,是一个类似于协议或者标准一样的概念,xorg是它的一种实现,并且是开源的,当然也有其他的实现,包括商业的和自由软件。X window具体是干什么的,可以参考这篇http://biz.chinabyte.com/178/2041178.shtml,简单地说X window分两个部分,server和client。server部分处理客户的请求,比如键盘鼠标这些外设的信息,并且显示在屏幕上,并且把操作告诉给client,举个具体的例子,远程登录的时候,本地有个屏幕能显示出来操作,你用的是本地的鼠标键盘,但是操作的是远端的机子,这就是在本地开了一个x window的server。client就是所有运行的程序,举个具体的例子,当鼠标点开一个程序运行时,是server端检测到鼠标的消息,然后传递给client,client运行后再连接到server,显示出来。

所以安装xorg,是运行图形界面的基础。 阅读全文…

分类: 杂项 标签: , , , , , , ,

Linux下查看分区的文件系统类型

2011年1月18日 没有评论

1.df -Th,但是只能显示已经挂载上的分区,

2.parted print quit

3.进入fdisk命令模式,fidsk /dev/sda 输入p,m是help信息,q退出命令模式。

分类: 杂项 标签: , , , ,

/etc/init.d和/etc/rc.d/init.d的关系

2011年1月16日 没有评论

这两个其实是同一个东西,/etc/init.d是/etc/rc.d/init.d的软链接。并且这个东西只有在fedora下面有,ubuntu下面没有/etc/rc.d/这个目录,只有/etc/init.d,openSUSE下面有/etc/rc.d,直接链接的/etc/init.d。

并且有时候可以看到rc0.d/这样的目录,查看这些目录里的文件,ls -l,发现都是软链接。

要想搞明白这里面的关系就要搞明白Linux的运行级。打开/etc/inittab,里面应该有注释,

# 0 – 停机(千万别把initdefault设置为0,否则系统永远无法启动)
# 1 – 单用户模式
# 2 – 多用户,没有 NFS
# 3 – 完全多用户模式(标准的运行级)
# 4 – 系统保留的
# 5 – X11 (x window)
# 6 – 重新启动 (千万不要把initdefault 设置为6,否则将一直在重启 )

不同的运行级,开机启动的时候会开启不同的服务,所以当开机以后执行init(pdi为1,是开机后执行的第一个进程,所有其他进程都是这个进程的后代)这个进程,就会根据不同的运行级开启不同的默认服务(fedora下是读取rc.sysinit)。

可以看到rc0.d/这样的目录下的脚本前面都带有S或者K,s就是start,k就是kill。比如说当你从运行级5到3切换的时候,可能就会关掉有些服务,这时候就会执行k开头的脚本。

并且字母后面会接着数字,表示的是脚本执行的先后顺序,数字越小越早执行,很多时候这些执行顺序是很重要的,比如要启动Apache服务,就必须先配置网络接口,不然一个没有IP的机子来启动http服务那岂不是很搞笑…
阅读全文…

Ubuntu 9.10下安装vsftpd,实现不同权限

2011年1月12日 5 条评论

目标:
/home/ftp这个目录底下放东西,两个用户,一个可以上传下载,建立目录,另外一个除了以上功能,还有删除文件和目录的权力,相当于管理员。
过程:
首先参考了wiki上的两篇
http://wiki.ubuntu.org.cn/Vsftpd服务安装设置
http://wiki.ubuntu.org.cn/Vsftpd虚拟用户设置

所以vsftpd的安装及简单配置方法就带过,请直接看以上两篇。

一开始的想法是用一个本地用户当作管理员进行管理,一个虚拟用户上传下载。于是开始的时候就设置了一个虚拟用户,一个本地用户。后来发现出了问题!
在开启虚拟用户功能以后,在/ect/vsftpd.conf添加
guest_enable=YES 之后,就意味着所有非匿名用户登录以后都是guest用户。 guest用户的名字由 guest_username=virtual 决定 ,而virtual也是一个本地用户(详细内容看vsftpd虚拟用户设置那一篇),也就是说只要开启这个功能,本地用户登录后也会映射到另一个本地用户virtual那里,所以我的理解是只要用了虚拟用户,就不可以再用其他本地用户了(我做了实验,建了个和所在文件夹同组同权限的本地用户,是没有办法登录的)。正是基于以上原因,所以我最后改成两个都是虚拟用户,只是权限不同。
按照 http://wiki.ubuntu.org.cn/Vsftpd虚拟用户设置 中的说法,所有的匿名用户都要映射到一个本地用户上,所以在虚拟用户的配置里也要加上 local_enable=YES ;但是这里的允许local_enable用户登录就指的不是其他的本地用户了,单单是虚拟用户要映射的那一个。

附上我的配置文件和详细的安装过程:
$sudo apt-get install vsftpd
9.10下的目录默认不是/home/ftp了,而是/srv/ftp,所以可以自己新建一个目录
sudo mkdir /home/ftp

然后大致都跟虚拟用户设置那篇一样,照葫芦画瓢就行了
注意到新建一个本地用户virtual那里,还要改/ftp那个目录的所有者,网上的教程里面使virtual不能登录系统用的是/bin/nologin ,好像是red hat的方法哈,不适用这里。

虚拟用户test的配置
write_enable=YES
anon_world_readable_only=NO
anon_upload_enable=YES
chmod_enable=YES
anon_mkdir_write_enable=YES
local_root=/home/ftp/

拥有删除文件目录权限的admin配置,红色是跟上面不同的地方哈
write_enable=YES
anon_world_readable_only=NO
anon_upload_enable=YES
anon_mkdir_write_enable=YES
anon_other_write_enable=YES
local_root=/home/ftp
阅读全文…

分类: 旧档 标签: , , ,

Linux内核中的PAE意义

2010年12月28日 没有评论

经常看内核名字的时候会发现带上PAE字样,查了一下,原来是:Physical Address Extensions

操作系统在32bit x86平台上最大寻址空间只有4GB,如果要使用大于4GB的内存,就必须使用Intel的PAE(物理地址扩展)模式。在Windows NT平台实现PAE只需要对boot.ini加上/pae即可。而对于RHEL5,缺省安装模式下是不允许检测超过4GB内存,所以我们需要在内核安装完 毕后再安装kernel-PAE套件。

如果是装的i386系统并且内存大于2G,装的kernel上就会带上PAE的字样,64位的系统就不会这样。

今天装驱动的时候需要装kernel-devel,直接yum install kernel-devel后还是不行,看了一下内核是带PAE的,这时候要安装kernel-PAE-devel。

搞定。

Windows下文本文件如何转化为Linux下的格式

2010年12月19日 没有评论

windows下面的换行使用的是回车换行(\r\n),Linux下采用\n换行,而mac采用回车符\r换行,所以有时候在3个系统下编辑的文本文件换到另外一个系统下的时候会出现问题。上次在windows下编辑了一下shell脚本文件,在Linux下没法运行,因为Linux会把\n当做换行,\r就算成前面文件的内容,我运行脚本就会得到错误的提示/bin/sh^M: bad interpreter,这里应该就是把\r(^M)当成文件的内容了。

另外一点有趣的是,windows下的程序读取文本时,会自动把文件里德\r\n转换成\n,写入文本时,会自动把要写入的\n变成\r\n。

网上找了一些解决方案,整理一下。

对于单个的文件,直接用vim改就可以了,打开文件,:%s/^M//g,这里^M要用ctrl+v+m打出来,不能用shift+键盘上的数字6键,如果不行就再执行一下:%s/^@//g,^@用ctrl+v+enter打出来的,或者也可以试一下set fileformat=unix。

或者可以使用一个叫dos2unix的软件进行更改,安装完执行dos2unix 文件名就可以了,需要说明一点的是,Ubuntu下面这个工具不叫这个名字,执行apt-cache search dos2unix找出来的是tofrodos,用法一样。