浅谈Linux LSB

2012年2月7日 没有评论

用到lsb_release命令,执行提示”没有LSB模块可用”,既然没有可用LSB模块,那就安装一下子呗,但是LSB是什么呢?它是用来做什么的呢?下面是我整理的一些资料。

一、LSB是什么,它是用来做什么的呢?

目前 Linux 的发行版非常繁多,为了促进 Linux 不同发行版间的兼容性,LSB(Linux Standards Base)开发了一系列标准,使各种软件可以很好地在兼容 LSB 标准的系统上运行,从而可以帮助软件供应商更好地在 Linux 系统上开发产品,或将已有的产品移植到 Linux 系统上。

二、LSB的图标,以及使命

图标:

使命:对代表自由的企鹅(Linux)制定标准。

给定企鹅的体形和三维标准之后,软件开发者就可以设计并裁减出各色花样的衣服(应用程序),这样不管穿在哪只企鹅身上,都会非常合身。

三、LSB主要版本路线图

列的这三点很简单,如果大家想深入研究LSB,可以参考一下下面提供的参考链接

参考链接:

http://linux-vbird.bluedata.org/linux_base/0110whatislinux.htm 什么是 distribution 小节

http://www.ibm.com/developerworks/cn/linux/l-lsb-intr/index.html 全文都很不错,可以深入详细得了解一下关于LSB的内容

分类: linux 标签: , , ,

Ubuntu下查看系统版本、cpu、位数、内核、内存等信息

2012年2月5日 没有评论

想查看一下Ubuntu11.04是哪个版本的内核,然后就找到如下相关信息:

主要使用到的命令:uname(显示系统信息),lsb_release,cat

一、查看Linux内核版本

1.命令:uname -a

示例:

localtest@ubuntu:~$ uname -a
Linux ubuntu 2.6.38-8-generic #42-Ubuntu SMP Mon Apr 11 03:31:50 UTC 2011 i686 athlon i386 GNU/Linux

2.命令:cat /proc/version

示例:

localtest@ubuntu:~$ cat /proc/version
Linux version 2.6.38-8-generic (buildd@vernadsky) (gcc version 4.5.2 (Ubuntu/Linaro 4.5.2-8ubuntu3) ) #42-Ubuntu SMP Mon Apr 11 03:31:50 UTC 2011

ps:

/proc文件系统,它不是普通的文件系统,而是系统内核的映像,也就是说,该目录中的文件是存放在系统内存之中的,它以文件系统的方式为访问系统内核数 据的操作提供接口。而我们使用命令“uname -a”的信息就是从该文件获取的,当然用方法二的命令直接查看它的内容也可以达到同等效果.另外,加上参数”a”是获得详细信息,如果不加参数为查看系统 名称。

3.命令: cat /etc/issue(未得到内核版本号)

示例:

Ubuntu 11.04 \n \l

4.命令: cat /etc/*release(未得到内核版本号)

示例:

localtest@ubuntu:~$ cat /etc/*release
DISTRIB_ID=Ubuntu
DISTRIB_RELEASE=11.04
DISTRIB_CODENAME=natty
DISTRIB_DESCRIPTION=”Ubuntu 11.04″

5.命令:ls /boot/

示例:

localtest@ubuntu:~$ ls /boot/
abi-2.6.38-8-generic         memtest86+_multiboot.bin
config-2.6.38-8-generic      System.map-2.6.38-8-generic
grub                         vmcoreinfo-2.6.38-8-generic
initrd.img-2.6.38-8-generic  vmlinuz-2.6.38-8-generic
memtest86+.bin

二、查看Cpu信息

命令: cat /proc/cpuinfo

示例:

localtest@ubuntu:~$ cat /proc/cpuinfo
processor    : 0
vendor_id    : AuthenticAMD
cpu family    : 15
model        : 107
model name    : AMD Athlon(tm) 64 X2 Dual Core Processor 5200+
stepping    : 2
cpu MHz        : 2700.005
cache size    : 512 KB
fdiv_bug    : no
hlt_bug        : no
f00f_bug    : no
coma_bug    : no
fpu        : yes
fpu_exception    : yes
cpuid level    : 1
wp        : yes
flags        : fpu vme de pse tsc msr pae mce cx8 apic mtrr pge mca cmov pat pse36 clflush mmx fxsr sse sse2 syscall nx mmxext fxsr_opt rdtscp lm 3dnowext 3dnow constant_tsc up tsc_reliable pni cx16 hypervisor lahf_lm extapic 3dnowprefetch
bogomips    : 5400.01
clflush size    : 64
cache_alignment    : 64
address sizes    : 40 bits physical, 48 bits virtual
power management: ts fid vid ttp tm stc 100mhzsteps
三、查看cpu位数

命令:getconf LONG_BIT(注意中间的空格)

示例:

localtest@ubuntu:~$ getconf LONG_BIT
32

四、查看内存信息

命令: cat /proc/meminfo

示例:

MemTotal:         508000 kB
MemFree:           52340 kB
Buffers:           44292 kB
Cached:           101876 kB
SwapCached:        17520 kB
Active:           159336 kB
Inactive:         248020 kB
Active(anon):      98168 kB
Inactive(anon):   166800 kB
Active(file):      61168 kB
Inactive(file):    81220 kB
Unevictable:           0 kB
Mlocked:               0 kB
HighTotal:             0 kB
HighFree:              0 kB
LowTotal:         508000 kB
LowFree:           52340 kB
SwapTotal:        522236 kB
SwapFree:         426824 kB
Dirty:                 0 kB
Writeback:             0 kB
AnonPages:        247300 kB
Mapped:            25612 kB
Shmem:              3780 kB
Slab:              33772 kB
SReclaimable:      23868 kB
SUnreclaim:         9904 kB
KernelStack:        2408 kB
PageTables:         6516 kB
NFS_Unstable:          0 kB
Bounce:                0 kB
WritebackTmp:          0 kB
CommitLimit:      776236 kB
Committed_AS:    1646096 kB
VmallocTotal:     507896 kB
VmallocUsed:        7392 kB
VmallocChunk:     495496 kB
HardwareCorrupted:     0 kB
HugePages_Total:       0
HugePages_Free:        0
HugePages_Rsvd:        0
HugePages_Surp:        0
Hugepagesize:       4096 kB
DirectMap4k:       36864 kB
DirectMap4M:      487424 kB

查看了一下lsb_release

提示信息:

localtest@ubuntu:~$ lsb_release
No LSB modules are available.
没有安装模块,稍后单独讲解lsb模块部分。

参考链接:

http://blog.csdn.net/earlyup/article/details/2784707

分类: linux 标签: , , , ,

linux学习路线图

2012年2月5日 没有评论

找到一张linux技术进阶图,可以参考一下,呵呵!

VMWare里Ubuntu时间越走越慢原因及解决办法

2012年2月5日 没有评论

在XP下装的VMWare 7,隐约记得装完之后系统时间是正确的(装的时间比较长,有几个月了),前几天发现系统时间错了,于是改了回来(改的时候发现设置时区的时候输入China有不少可选项,对应时间都各不相同,这个稍后再详细说明),这几天发现,Ubuntu的时间越走越慢了,第一反应是:虚拟机是关闭状态,装在虚拟机里的系统只有在启动状态下才计时(不像装在硬盘上的主系统,有固定供电电池维持计时模块),搜索了一下打算验证一下自己的假设,不是这样的!

下面是搜索到的原因以及解决办法:

安装好vmware后发现vmware的时间会越走越慢,是什么原因呢?
Linux 2.6核心里把系统计时器的频率加高到1000 Hz ,VMware没办法真的每隔1ms就报一次讯号给guestOS,所以guestOS里的Linux 2.6无法确实接到计时器的讯号。本来这也不应该造成问题,不过2.6核心处理这个”tick loss”的程式有问题,以致于guestOS里的Linux 2.6系统时间走一秒会慢一秒;外面过了两秒里面只过了一秒。
可以通过更改计时器频率的方法来处理:
include/asm-i386/param.h
#define HZ               1000               /* Internal kernel timer frequency */
改成
#define HZ               100               /* Internal kernel timer frequency */
意思就是让计时器慢到 100Hz,虽然这样可行,但要重新编译内核太麻烦了。那有没其他办法呢,答案是肯定的。
方法一:安装Vmware tools
安装完成vmware tools后运行 vmware-toolbox,把Options中的time synchronization….钩选上。这样VMWare Tool后台程序就会每三分钟与宿主主机同步更新一次时间。试验中发现vmware-tolls 只会在虚拟机慢于主机的时候将虚拟机时间同步到主机,暂时未发现怎么设置使虚拟机时间过快的时候也同步。

据网上的介绍,对于grub方式启动,在kernel参数里加入 clock=pit nosmp noapic nolapic也可以解决部分问题,但我试验过好像并没什么优化,如果不进行时间同步,虚拟机上的时间依然走得像醉汉,可能我的内核是2.6的原因吧。
方法二、连接到时间服务器同步时间,前提是能联网。
linux下使用ntpdaten连接时间服务器进行时间同步,ntpdate命令的语法很简单,但必须用root身份运行它。你可以在命令行中指定一个或者多个时间服务器。
命令格式:
#ntpdate 服务器地址
到那找时间服务器呢?Windows XP中有几个现成的时间服务器可以使用,何不就地取材呢^-^ ,打开xp控制面版->日期和时间->internet时间,服务器列表里的服务器都可以使用:
#ntpdate time.windows.com time-a.nist.gov time-b.nist.gov time-nw.nist.gov
还可以使用这里面的时间服务器:Internet 上可用的“简单网络时间协议”时间服务器列表
http://www.mycuc.com/Article/wenzhai/pcwz/200704/634.htm
为了保证时间精确同步,还需要定时运行ntpdate来同步时间,通过crontab来实现定时调度。例如设定每分钟同步一次,添加进系统任务调度中,在/etc/crontab里面添加以下句子:
*/1 * * * * ntpdate time.windows.com time-a.nist.gov time-b.nist.gov time-nw.nist.gov
重启系统任务调度服务:
#service crond restart
等候1分钟左右检查时间同步是否起作用。
————————————————————————————————————–
关于时间过快或过慢的vmware 官方文档:
http://www.vmware.com/pdf/vmware_timekeeping.pdf
Clock in a Linux Guest Runs More Slowly or Quickly Than Real Time
http://kb.vmware.com/selfservice/microsites/search.do?language=en_US&cmd=displayKC&externalId=1420

Internet 上可用的“简单网络时间协议”时间服务器列表提供的链接我试了下打不开,需要读者自己寻找时间服务器了

参考链接:互联网

分类: linux 标签:

Ubuntu下使用ls命令显示文件颜色相关内容及修改

2012年2月5日 没有评论

在Ubuntu下,使用ls命令显示目录下文件及文件夹时会先显示不同颜色,如下图所示:

如果知道了不同颜色分别代表的含义,那么对于我们查看目录下文件信息方便了很多,所以就搜索了一下相关文章,找到一篇,如下所示:

# Attribute codes: 字符属性
# 00=none 01=bold 04=underscore 05=blink 07=reverse 08=concealed
#00无 01粗体 04下划线 05闪烁 07反转 08隐藏
# Text color codes: 字符颜色
# 30=black 31=red 32=green 33=yellow 34=blue 35=magenta 36=cyan 37=white
#30黑 31红 32绿 33黄 34蓝 35粉红 36淡蓝 37白
# Background color codes: 字符背景色
# 40=black 41=red 42=green 43=yellow 44=blue 45=magenta 46=cyan 47=white
#40黑 41红 42绿 43黄 44蓝 45粉红 46淡蓝 47白
NORMAL 00 # global default, although everything should be something. 普通文件 终端默认颜色
FILE 00 # normal file 普通文件 终端默认颜色
DIR 01;34 # directory 目录 粗体-蓝字
LINK 01;36 # symbolic link. (If you set this to ‘target’ instead of a 符号链接 粗体-淡蓝字
# numerical value, the color is as for the file pointed to.)
FIFO 40;33 # pipe 管道API 黑底-黄字
SOCK 01;35 # socket 套接字API 粗体-粉红字
DOOR 01;35 # door 门API 粗体-粉红字
BLK 40;33;01 # block device driver 块设备驱动 粗体-黑底-黄字
CHR 40;33;01 # character device driver 字符设备驱动 粗体-黑底-黄字
ORPHAN 40;31;01 # symlink to nonexistent file 指向文件不存在的符号链接 粗体-黑底-红字
SETUID 37;41 # file that is setuid (u+s) 指定UID的文件 红底-白字
SETGID 30;43 # file that is setgid (g+s) 指定GID的文件 黄底-黑字
STICKY_OTHER_WRITABLE 30;42 # dir that is sticky and other-writable (+t,o+w) +t,o+w权限的文件 绿底-黑字(不常用)
OTHER_WRITABLE 34;42 # dir that is other-writable (o+w) and not sticky -t,o+w权限的文件 绿底-蓝字(不常用)
STICKY 37;44 # dir with the sticky bit set (+t) and not other-writable +t,o-w权限的文件 蓝底-白字(不常用)
# This is for files with execute permission:
EXEC 01;32 有执行权限的文件 粗体-绿字
# List any file extensions like ‘.gz’ or ‘.tar’ that you would like ls
# to colorize below. Put the extension, a space, and the color init string.
# (and any comments you want to add after a ‘#’)
# If you use DOS-style suffixes, you may want to uncomment the following:
#.cmd 01;32 # executables (bright green) .cmd可执行文件 粗体-绿字(亮)
#.exe 01;32 .exe文件 粗体-绿字
#.com 01;32 .com文件 粗体-绿字
#.btm 01;32 .btm文件 粗体-绿字
#.bat 01;32 .bat文件 粗体-绿字
.tar 01;31 # archives or compressed (bright red) .tar压缩文件 粗体-红字(亮)
.tgz 01;31 .tgz文件 粗体-红字
.arj 01;31 .arj文件 粗体-红字
.taz 01;31 .taz文件 粗体-红字
.lzh 01;31 .lzh文件 粗体-红字
.zip 01;31 .zip文件 粗体-红字
.z 01;31 .z文件 粗体-红字
.Z 01;31 .Z文件 粗体-红字
.gz 01;31 .gz文件 粗体-红字
.bz2 01;31 .bz2文件 粗体-红字
.deb 01;31 .deb文件 粗体-红字
.rpm 01;31 .rpm文件 粗体-红字
.jar 01;31 .jar文件 粗体-红字
# image formats
.jpg 01;35 .jpg图片 粗体-粉红字
.jpeg 01;35 .jpeg图片 粗体-粉红字
.gif 01;35 .gif图片 粗体-粉红字
.bmp 01;35 .bmp图片 粗体-粉红字
.pbm 01;35 .pbm 图片 粗体-粉红字
.pgm 01;35 .pgm图片 粗体-粉红字
.ppm 01;35 .ppm图片 粗体-粉红字
.tga 01;35 .tga图片 粗体-粉红字
.xbm 01;35 .xbm图片 粗体-粉红字
.xpm 01;35 .xpm图片 粗体-粉红字
.tif 01;35 .tif图片 粗体-粉红字
.tiff 01;35 .tiff图片 粗体-粉红字
.png 01;35 .png 图片 粗体-粉红字
.mov 01;35 .mov视频 粗体-粉红字
.mpg 01;35 .mpg视频 粗体-粉红字
.mpeg 01;35 .mpeg视频 粗体-粉红字
.avi 01;35 .avi视频 粗体-粉红字
.fli 01;35 .fli视频 粗体-粉红字
.gl 01;35 .gl视频 粗体-粉红字
.dl 01;35 .dl视频 粗体-粉红字
.xcf 01;35 .xcf视频 粗体-粉红字
.xwd 01;35 .xwd视频 粗体-粉红字
# audio formats
.flac 01;35 .flac音频 粗体-粉红字
.mp3 01;35 .mp3音频 粗体-粉红字
.mpc 01;35 .mpc音频 粗体-粉红字
.ogg 01;35 .ogg音频 粗体-粉红字
.wav 01;35 .wav音频 粗体-粉红字

PS: 文件可执行权限的颜色显示优先于文件可读写权限

颜色着实不少,可以记几个常用的,保存起来留着以后查阅使用。

其实呢,使用dircolor命令就可以显示文件名颜色设置了(dircolor -p)(它还可以设置)。

关于如何修改,同样找到下面一篇文章:

1. 利用dircolors命令,查看我们的系统当前的文件名称显示颜色的值,然后利用管道重定向到用户目录下的任意一个文件(这里我们创建了一个.dir_colors文件)

命令1: cd ~

命令2: dircolors -p > .dir_colors

2. 用vim打开.dir_colors文件,然后找到“DIR 01;34” //这里的01表示高亮度显示,34表示蓝色,33表示黄色

修改为 “DIR 01;33”,保存退出

3. 为了将修改之后的配置文件导入到dircolors中,我们采取如下的方案

打开用户目录下的.bashrc文件,找到类似“eval ‘dircolors -b ‘”(如果没有自行添加),

修改为 eval ‘dircolors -b .dir_colors’ 保存退出 //这里的.dir_colors就是我们前面自己创建的文件

4. 为了让修改生效,退出,并重新进入系统

命令: exit

5. 就可以按照你的意思来显示目录了

有关文件颜色显示的相关文件说明,及执行顺序什么的,下次再详细介绍吧!

参考链接:

http://forum.ubuntu.org.cn/viewtopic.php?t=113593

http://hi.baidu.com/windhl/blog/item/e2d4b60f5e0ce6e1aa64571a.html

分类: linux 标签: ,