Samba服务器的搭建

Samba服务器的搭建。

由于CentOS系统里面自带Samba服务器功能,就不阐述相关软件的安装了。

1 Samba服务器的搭建主要是修改/etc/samba/smb.conf这个文件,其内容如下:

################################################################################################

#============================ Global Settings ================================
[global]
workgroup = Zhenjunlou    #工作的计算机组名称,可随意填写。
server string = Samba Server Version %v    #对服务器的说明,随意填写。
netbios name = ZJLSERVER    #服务器的计算机名,可随意填写,访问服务器时候,可以用计算机名代替其ip地址。
interfaces = 122.205.95.76    #服务器的联网ip。
hosts allow = 127. 122.205.     #允许访问Samba服务器的ip地址范围。
log file = /var/log/samba/log.%m    #用户登陆的日志文件存放地。
max log size = 50    #用户登陆的日志文件最大值。
security = user    #安全的模式,需要使用用户名登陆。
encrypt passwords = yes    #需要输入密码来登陆。
passdb backend = smbpasswd    #用smbpaswd存放用户名和密码。
smb passwd file = /etc/samba/smbpasswd    #密码存放的文件为/etc/samba/smbpasswd。
load printers = no    #不能登陆打印机。
config file = /etc/samba/smb.conf.%U    #单独的用户配置文件,将此smb.conf文件复制一份,保存为smb.conf.userx,其中userx为一用户名,然后修改smb.conf.userx文件配置,从而使用户userx具有与众不同的配置。
config file = /etc/samba/smb.conf.%G    #单独的用户群组配置文件,将此smb.conf文件复制一份,保存为smb.conf.groupx,其中groupx为一群组名,然后修改smb.conf.userx文件配置,从而使群组userx具有与众不同的配置。

#============================ Share Definitions ==============================

[homes]    #【】中表示共享的文件名称,但当其下有%S变量时候,则【】中的值与%S相同。
comment = Home Directories    #对此共享文件的描述,可随意填写。
path = /home/samba/privacy/%S    #共享文件夹在服务器中的具体路径。
browseable = no    #其它人是否可见,no即为其它用户不可见。
writable = yes    #对共享文件夹的权限,可读可写。
valid users = %S    #有效的用户,%S表示任意登陆的一用户。
create mode = 0664    #用户写入的文件默认配置。
directory mode = 0775    #用户写入的文件夹默认配置。

[Blog]    #【】中表示共享的文件名称,但当其下有%S变量时候,则【】中的值与%S相同。
comment = A public platform for sharing your thoughts and skills    #对此共享文件的描述,可随意填写。  
path = /home/samba/Blog    #共享文件夹在服务器中的具体路径。
browseable = yes    #其它人是否可见,yes即为所有用户都可见。
writable = yes    #对共享文件夹的权限,可读可写。
valid users = @students,@teachers    #有效的用户,为students和teachers这两个群组。

[Archive]
comment = Archive
path = /home/samba/Archive
browseable = yes
write list = chenlianfu,bianyinbing
create mode = 0664
directory mode = 0775
valid users = @students,@teachers

[zhenjunlou_communication]
comment = For communicating among all aculty members
path = /home/samba/zhenjunlou_communication
browseable = yes
writable = yes
valid users = @students,@teachers

[Forstudents]
comment = Only students can access
path = /home/samba/Forstudents_Only
browseable = yes
writable = yes
valid users = @students

[Forteachers]
comment = Only teachers can access
path = /home/samba/Forteachers_Only
browseable = yes
writable = yes
valid users = @teachers

##############################################################################################

2 在防火墙里开放137,138,138和445四个端口,且这4个端口分别对应tcp和ucp端口一种。

#vim /etc/sysconfig/iptables ,添加如下几行。
-A INPUT -m state --state NEW -m tcp -p tcp --dport 139 -j ACCEPT
-A INPUT -m state --state NEW -m tcp -p tcp --dport 445 -j ACCEPT
-A INPUT -m state --state NEW -m udp -p udp --dport 137 -j ACCEPT
-A INPUT -m state --state NEW -m udp -p udp --dport 138 -j ACCEPT

3 运行Samba服务。

#nmbd -D   先运行
#smbd -D   后运行

重启Samba服务的话,按以下命令重启samba服务。

##/etc/init.d/smb stop
##/etc/init.d/nmb stop
##nmbd -D
##smbd -D

4 开机运行Samba服务。

#chkconfig smb on
#chkconfig nmb on

或

#setup

5 linux使用Samba服务器。

#sudo smbclient -L //122.205.95.76    #查看服务器共享的文件夹。

#sudo smbclient -U username //122.205.95.76/Archive    #连接上服务器共
享的文件夹Archive,和连接到ftp基本一致。

#sudo mount -t cifs //122.205.95.76/Archive /mnt -o username=chenlianfu,password=***    
其中-t cifs可以不用写,在hrel6中是默认的,passwd=***也可不用写。挂载共享的文件夹。

永久挂载:

# vim /etc/fstab      #加入一行
//122.205.95.76/Archive	/mnt	cifs	credentials=/root/credentials
# vim /root/credentials  
该文件第一排写"user=chenlianfu",第二排写"pass=***"。这样有凭证文件,相对安全。

或

# vim /etc/fstab     #加入一行
#//122.205.95.76/Archive /mnt cifs username=chenlianfu,passwd=***,uid=500 0 0
这样不用凭证文件,直接写上用户名和密码。

使用smbclient使用的协议为smb协议,端口为139;而使用mount后的协议为cifs协议,端口为445,相对速度快。一般使用445协议。

6 windows访问Samba服务器,打开我的电脑——在地址栏输入“\\122.205.95.76”——回车,输入用户名和密码登陆即可。

 

blast2go本地数据库安装和使用

1. Download all necessary files

$ wget -c -b -N --progress=dot:mega http://archive.geneontology.org/latest-full/go_201310-assocdb-data.gz
$ wget -c -b -N --progress=dot:mega ftp://ftp.ncbi.nlm.nih.gov/gene/DATA/gene_info.gz
$ wget -c -b -N --progress=dot:mega ftp://ftp.ncbi.nlm.nih.gov/gene/DATA/gene2accession.gz   
$ wget -c -b -N --progress=dot:mega ftp://ftp.pir.georgetown.edu/databases/idmapping/idmapping.tb.gz
$ wget -c -b -N --progress=dot:mega http://blast2go.com/data/blast2go/b2g4pipe_v2.5.zip
$ wget -c -b -N --progress=dot:mega http://blast2go.com/public-data/local_b2g_db.zip

2. Unzip all  files

$ gzip -dv go_201207-assocdb-data.gz
$ gzip -dv gene_info.gz
$ gzip -dv gene2accession.gz
$ gzip -dv idmapping.tb.gz
$ unzip b2g4pipe_v2.5.zip
$ unzip local_b2g_db.zip
$ cp  local_b2g_db/* .

4. Execute the file b2gdb.sql to create a database (default name: b2gdb), additional tables and a public user for restricted access (select only).

新建文件install_blast2goDB.sh,内容如下:

#!/bin/sh
godbname=go_201310-assocdb-data
dbname=b2g
dbuser=root
dbpass=passwd     #这个要修改
dbhost=127.0.0.1
path=$PWD         #数据文件的存放路径

mysql -h$dbhost -P 3306 -u$dbuser -p$dbpass $dbname < b2gdb.sql 

mysql -h$dbhost -u$dbuser -p$dbpass $dbname < $godbname
mysql -h$dbhost -u$dbuser -p$dbpass $dbname -e"LOAD DATA LOCAL INFILE '$path"/gene2accession"' INTO TABLE gene2accession FIELDS TERMINATED BY '\t' LINES TERMINATED BY '\n';"
mysql -h$dbhost -u$dbuser -p$dbpass $dbname -e"LOAD DATA LOCAL INFILE '$path"/gene_info"' INTO TABLE gene_info FIELDS TERMINATED BY '\t' LINES TERMINATED BY '\n';"

echo Finished, now use Blast2GO to import the PIR mapping data-file;

使install_blast2goDB.sh可执行,并运行该脚本。这一步是将 go_201207-assocdb-data.gz,gene2accession 和 gene_info 导入到 b2gdb 数据库中.

5. Import the last mapping file from PIR

新版本中是这样运行的:

java -cp .:mysql-connector-java-5.0.8-bin.jar: ImportIdMapping \
idmapping.tb localhost b2gdb blast2go blast4it

新版本中local_b2g_db.zip中有3个文件:b2gdb.sql,ImportIdMapping.class和mysql-connector-java-5.0.8-bin.jar。通过b2gdb.sql文件来创建mysql数据库和表。通过该文件,其创建了数据库b2gdb,并创建了对b2gdb数据库拥有最大权限的mysql用户blas2go,密码blast4it。同时运行上述命令需要同时有ImportIdMapping.class和mysql-connector-java-5.0.8-bin.jar这两个文件。
这一步是将 idmapping.tb 导入到本地 b2gdb 数据库的 gi2uniprot 表中。

老版本中是这样运行的:

/home/chenlianfu/programs/jre1.7.0_04/bin/java -cp /home/chenlianfu/programs/blast2go/b2g4pipe/blast2go.jar:/home/chenlianfu/programs/blast2go/b2g4pipe/ext/mysql-connector-java-3.0.11-stabes-bin.jar es.blast2go.prog.util.ImportPIR idmapping.tb localhost b2g root passwd TRUE

老版本中一定要注意,命令要靠自己用手亲自敲打出来,如果复制的话,一般会出现如下错误

Problem connecting to database b2g on localhost as root with password starts with *********: com.mysql.jdbc.Driver

而导入正常会提示为

Open database connection to database b2g on 127.0.0.1 as root with password starts with *********
Open database connection to database b2g on 127.0.0.1 as root with password starts with *********

复制出的语句和手工敲打出的语句表面看上去一模一样,可能某个符号其实不一致,机器识别不出来。这点千万要注意,不然第 5 步死活也过不去了。

可以通过将 mysql 语句来查询导入了多少行数据到表中:

mysql> SELECT COUNT(*) FROM gi2uniprot;
+----------+
| COUNT(*) |
+----------+
| 40344363 |
+----------+
1 row in set (0.00 sec)

6. 运行blast2go

1. 图形化运行

运行出现了解决不了的问题,可以尝试切换一个全新的用户去运行blast2go。
使用b2g4pipe进行不用联网的运行:

$ java -Xmx1000m -cp *:ext/*: es.blast2go.Blast2GO

不使用b2g4pipe进行联网的运行:

曾经:
$ javaws http://www.blast2go.com/webstart/makeJnlp.php?mem=1000
现在:
$ javaws http://www.blast2go.com/webstart/blast2go1000.jnlp

2. 命令行运行

命令行运行使用了b2g4pipe, 先修改b2gPipe.properties中的数据库参数,再运行。需要先获得blast和interproscan的注释结果,再进行命令行运行。有两种运行的方法:

$ java -Xmx1000m -cp *:ext/*: es.blast2go.prog.B2GAnnotPipe
$ java -Xmx1000m -jar blast2go.jar

mysql新建用户

新建用户

mysql> CREATE USER user identified by '123456'	#新建用户名为user,密码123456。
mysql> grant all on mysql.user(#代表权限,可以访问的数据库的表,若是“*.*”,则权限极大) to 'chenlianfu'@'localhost'(#代表访问的用户和访问者的IP地址,若是'chenlianfu'@'%',表示可以用chenlianfu这个用户从任意IP地址访问数据库) identified by '123456'(这是用户名对应的密码);	#新建用户名为chenlianfu,密码123456。
mysql> flush privileges;	#刷新系统权限表。
mysql> drop user user@localhost;	#删除user用户。
mysql> set password for user=password('123456');	#修改user用户的密码为123456。
mysql> grant all privileges on db.* to user@localhost identified by '123456';	#修改用户权限。
mysql> REVOKE ALL PRIVILEGES, GRANT OPTION FROM user@'%';	#修改用户权限;
mysql> revoke all privileges on db.*  from  user@'192.168.1.1';	#修改用户权限;

如果mysqld服务启动不了,通过运行mysql_install_db命令来重新初始化数据库来解决。

ssh远程中让进程在后台可靠运行的多种方法

简介:想让进程在断开连接后依然保持运行?如果该进程已经开始运行了该如何补救?

如果有大量这类需求如何简化操作? 我们经常会碰到这样的问题,用 telnet/ssh 登录了远程的 Linux 服务器,运行了一些耗时较长的任务, 结果却由于网络的不稳定导致任务中途失败。如何让命令提交后不受本地关闭终端窗口/网络断开连接的干扰呢?下面举了一些例子, 您可以针对不同的场景选择不同的方式来处理这个问题。

1. nohup

我们知道,当用户注销(logout)或者网络断开时,终端会收到 HUP(hangup)信号从而关闭其所有子进程。因此,我们的解决办法就有两种途径:要么让进程忽略 HUP 信号,要么让进程运行在新的会话里从而成为不属于此终端的子进程。

nohup 的使用是十分方便的,只需在要处理的命令前加上 nohup 即可,标准输出和标准错误缺省会被重定向到 nohup.out 文件中。一般我们可在结尾加上”&”来将命令同时放入后台运行,也可用”>filename 2>&1″来更改缺省的重定向文件名。

nohup 示例

[root@pvcent107 ~]# nohup pingwww.ibm.com &
[1] 3059
nohup: appending output to `nohup.out'
[root@pvcent107 ~]# ps -ef |grep 3059
root      3059   984  0 21:06 pts/3    00:00:00 ping www.ibm.com
root      3067   984  0 21:06 pts/3    00:00:00 grep 3059
[root@pvcent107 ~]#

2. setsid

nohup 无疑能通过忽略 HUP 信号来使我们的进程避免中途被中断,但如果我们换个角度思考,如果我们的进程不属于接受 HUP 信号的终端的子进程,那么自然也就不会受到 HUP 信号的影响了。setsid 就能帮助我们做到这一点。

setsid 示例

[root@pvcent107 ~]# setsid ping www.ibm.com
[root@pvcent107 ~]# ps -ef | grep www.ibm.com
root     31094     1  0 07:28 ?        00:00:00 ping www.ibm.com
root     31102 29217  0 07:29 pts/4    00:00:00 grep www.ibm.com
[root@pvcent107 ~]#

值得注意的是,上例中我们的进程 ID(PID)为31094,而它的父 ID(PPID)为1(即为 init 进程 ID),并不是当前终端的进程 ID。

3. & subshell

这里还有一个关于 subshell 的小技巧。我们知道,将一个或多个命名包含在“()”中就能让这些命令在子 shell 中运行中,从而扩展出很多有趣的功能,我们现在要讨论的就是其中之一。 当我们将”&”也放入“()”内之后,我们就会发现所提交的作业并不在作业列表中,也就是说,是无法通过jobs来查看的。让我们来看看为什么这样就能躲过 HUP 信号的影响吧。

subshell 示例

[root@pvcent107 ~]# (ping www.ibm.com &)
[root@pvcent107 ~]# ps -ef | grep www.ibm.com
root     16270     1  0 14:13 pts/4    00:00:00 ping www.ibm.com
root     16278 15362  0 14:13 pts/4    00:00:00 grep www.ibm.com
[root@pvcent107 ~]#

从上例中可以看出,新提交的进程的父 ID(PPID)为1(init 进程的 PID),并不是当前终端的进程 ID。因此并不属于当前终端的子进程,从而也就不会受到当前终端的 HUP 信号的影响了。

4. disown

这时想加 nohup 或者 setsid 已经为时已晚,只能通过作业调度和 disown 来解决这个问题了。我们已经知道,如果事先在命令前加上 nohup 或者 setsid 就可以避免 HUP 信号的影响。但是如果我们未加任何处理就已经提交了命令,该如何补救才能让它避免 HUP 信号的影响呢?这时想加 nohup 或者 setsid 已经为时已晚,只能通过作业调度和 disown 来解决这个问题了。

用disown -h jobspec 来使某个作业忽略HUP信号。

用disown -ah 来使所有的作业都忽略HUP信号。

用disown -rh 来使正在运行的作业忽略HUP信号。

灵活运用 CTRL-z

在我们的日常工作中,我们可以用 CTRL-z 来将当前进程挂起到后台暂停运行,执行一些别
的操作,然后再用 fg 来将挂起的进程重新放回前台(也可用 bg 来将挂起的进程放在后台)
继续运行。这样我们就可以在一个终端内灵活切换运行多个任务,这一点在调试代码时尤为有
用。因为将代码编辑器挂起到后台再重新放回时,光标定位仍然停留在上次挂起时的位置,避
免了重新定位的麻烦。

disown 示例1(如果提交命令时已经用“&”将命令放入后台运行,则可以直接使用“disown”)

[root@pvcent107 build]# cp -r testLargeFile largeFile &
[1] 4825
[root@pvcent107 build]# jobs
[1]+  Running                 cp -i -r testLargeFile largeFile &
[root@pvcent107 build]# disown -h %1
[root@pvcent107 build]# ps -ef |grep largeFile
root      4825   968  1 09:46 pts/4    00:00:00 cp -i -r testLargeFile largeFile
root      4853   968  0 09:46 pts/4    00:00:00 grep largeFile
[root@pvcent107 build]# logout

disown 示例2(如果提交命令时未使用“&”将命令放入后台运行,可使用 CTRL-z 和“bg”将其放入后台,再使用“disown”)

[root@pvcent107 build]# cp -r testLargeFile largeFile2
[1]+  Stopped                 cp -i -r testLargeFile largeFile2
[root@pvcent107 build]# bg %1
[1]+ cp -i -r testLargeFile largeFile2 &
[root@pvcent107 build]# jobs
[1]+  Running                 cp -i -r testLargeFile largeFile2 &
[root@pvcent107 build]# disown -h %1
[root@pvcent107 build]# ps -ef |grep largeFile2
root      5790  5577  1 10:04 pts/3    00:00:00 cp -i -r testLargeFile largeFile2
root      5824  5577  0 10:05 pts/3    00:00:00 grep largeFile2
[root@pvcent107 build]#

5.screen

我们已经知道了如何让进程免受 HUP 信号的影响,但是如果有大量这种命令需要在稳定的后台里运行,如何避免对每条命令都做这样的操作呢?此时最方便的方法就是 screen 了。简单的说,screen 提供了 ANSI/VT100 的终端模拟器,使它能够在一个真实终端下运行多个全屏的伪终端。screen 的参数很多,具有很强大的功能,我们在此仅介绍其常用功能以及简要分析一下为什么使用 screen 能够避免 HUP 信号的影响。

用screen -dmS session name 来建立一个处于断开模式下的会话(并指定其会话名)。
用screen -list 来列出所有会话。
用screen -r session name 来重新连接指定会话。

screen 示例

[root@pvcent107 ~]# screen -dmS Urumchi
[root@pvcent107 ~]# screen -list
There is a screen on:
        12842.Urumchi   (Detached)
1 Socket in /tmp/screens/S-root.
[root@pvcent107 ~]# screen -r Urumchi

总结
现在几种方法已经介绍完毕,我们可以根据不同的场景来选择不同的方案。nohup/setsid 无疑是临时需要时最方便的方法,disown 能帮助我们来事后补救当前已经在运行了的作业,而 screen 则是在大批量操作时不二的选择了。

让vim不要自动添加新的注释行

vim里面有一个特性,如果你在一行注释后新加一行,vim会自动在下一行的开始位置添加注释符号。例如对于C/C++来说:

//This is a comment line
//

第二行的”//”符号就是vim自动添加的。如果是在大量编写注释,那这个功能还是比较有用的。但是,我经常从其它地方复制一些代码,然后在putty中用鼠标右键一点就相当于自动键入,如果代码中有一行注释,就会导致后面的所有代码全部自动被注释掉,相当不方便。 查了一下,有以下两种简单的解决办法:

1. 在.vimrc文件(这个文件在$HOME目录下)添加以下内容:

autocmd FileType * setlocal formatoptions-=c formatoptions-=r formatoptions-=o

这样,所有的文件都不会自动添加注释符号了。

2. 如果只是针对C/C++类型的文件想禁用这个功能,可以在.vimrc中添加以下内容:

au FileType c,cpp setlocal comments-=:// comments+=f://

 

linux分区知识与大磁盘的分区

文件系统限制:

以下信息出自:维基百科

ext3

块尺寸 最大文件尺寸 最大文件系统尺寸
1KiB 16GiB 2TiB
2KiB 256GiB 8TiB
4KiB 2TiB 16TiB
8KiB 16TiB 32TiB

ext4

最大文件尺寸 16 TiB (for 4k block filesystem)
最大卷容量 1 EiB

xfs

最大可支持的文件大小为263 = 9 x 1018 = 9 exabytes,
最大文件系统尺寸为18 exabytes。

ReiserFS

最大文件尺寸 8 TiB
最大卷容量 16 TiB

大于2T的磁盘分区方法

由于MBR分区表只支持2T磁盘,所以大于2T的磁盘必须使用GPT分区表,具体方法如下:

GPT格式的磁盘相当于原来MBR磁盘中原来保留4个partition table的4*16个字节,只留第一个16个字节,类似于扩展分区,真正的partition table在512字节之后,GPT磁盘没有四个主分区的限制。

fdisk不支持GPT,我们可以使用parted来对GPT磁盘操作。

#parted

在提示符下输入parted就会进入交互式模式

   1. parted>  
   2. parted>select sdb               假设磁盘为sdb  
   3. parted>mklabel gpt              将MBR磁盘格式化为GPT  
   4. #parted>mklabel msdos           将GPT磁盘转化为MBR磁盘  
   5. parted>mkpart primary 4096s 100 划分一个起始位置为4096扇区(4K对齐),大小为100M的主分区  
   6. parted>mkpart primary 100 200   划分一个起始位置为100M,大小为100M的主分区  
   7. #parted>mkpart primary 0 -1     将整块磁盘分成一个分区  
   8. parted>print                    打印当前分区  
   9. parted>quit                     退出

parted的更多命令:

Welcome to GNU Parted! Type 'help' to view a list of commands.
(parted) help                                                             
  align-check TYPE N                       check partition N for TYPE(min|opt) alignment
  check NUMBER                             do a simple check on the file system
  cp [FROM-DEVICE] FROM-NUMBER TO-NUMBER   copy file system to another partition
  help [COMMAND]                           print general help, or help on COMMAND
  mklabel,mktable LABEL-TYPE               create a new disklabel (partition table)
  mkfs NUMBER FS-TYPE                      make a FS-TYPE file system on partition NUMBER
  mkpart PART-TYPE [FS-TYPE] START END     make a partition
  mkpartfs PART-TYPE FS-TYPE START END     make a partition with a file system
  move NUMBER START END                    move partition NUMBER
  name NUMBER NAME                         name partition NUMBER as NAME
  print [devices|free|list,all|NUMBER]     display the partition table, available devices, free space, all found
        partitions, or a particular partition
  quit                                     exit program
  rescue START END                         rescue a lost partition near START and END
  resize NUMBER START END                  resize partition NUMBER and its file system
  rm NUMBER                                delete partition NUMBER
  select DEVICE                            choose the device to edit
  set NUMBER FLAG STATE                    change the FLAG on partition NUMBER
  toggle [NUMBER [FLAG]]                   toggle the state of FLAG on partition NUMBER
  unit UNIT                                set the default unit to UNIT
  version                                  display the version number and copyright information of GNU Parted
(parted)

在parted里边不支持对文件系统进行格式化,所以如果要使用的话,要退出parted进行格式化。

mkfs.ext3 /dev/sdx1

因为fdisk是不支持GPT磁盘,所以不要使用fdisk -l来查看X磁盘刚才分好的区,看不到的。

e2label命令修改磁盘分区的label。

 

修改linux系统默认的桌面位置

linux系统给出了Home目录下的一些文件夹,这些文件夹是中文或英文首先字母为大写。因此输入路径的时候特别不放便。直接重命名这些文件会造成一些不便,比如无法直接在桌面上新建文件和文件夹。

为了修改这些路径,修改~/.config/user-dirs.dirs即可。

vim ~/.config/user-dirs

centos 安装 Adobe Flash Player

1. Change Root User

sudo -i
## OR ##
su -

2. Install Adobe YUM Repository RPM package

## Adobe Repository 32-bit x86 ##
rpm -ivh http://linuxdownload.adobe.com/adobe-release/adobe-release-i386-1.0-1.noarch.rpm
rpm --import /etc/pki/rpm-gpg/RPM-GPG-KEY-adobe-linux

## Adobe Repository 64-bit x86_64 ##
rpm -ivh http://linuxdownload.adobe.com/adobe-release/adobe-release-x86_64-1.0-1.noarch.rpm
rpm --import /etc/pki/rpm-gpg/RPM-GPG-KEY-adobe-linux

3. Update Repositories

yum check-update

4a. Install Adobe Flash Player 11.1 on Fedora 16/15/14/13/12, CentOS 6.2/6.1/6/5.7 and Red Hat (RHEL) 6.2/6.1/6/5.7 Fedora 16/15/14/13/12, CentOS 6 and Red Hat (RHEL) 6 32-bit and 64-bit version

yum install flash-plugin nspluginwrapper alsa-plugins-pulseaudio libcurl

4b. Install Adobe Flash Player 11.1 on CentOS 5.7 and Red Hat (RHEL) 5.7 CentOS and Red Hat 32-bit and 64-bit version

yum groupinstall "Sound and Video"

yum install flash-plugin nspluginwrapper curl

5. Verify that the Flash Player Plugin is working

Open Mozilla Firefox and write about:plugins on address bar. Results 
should look like following:
Adobe Flash Player 64-bit installed on Fedora 16 64-bit (x86_64)

fstab释疑

文件/etc/fstab存放的是系统中的文件系统信息。每行中的字段都由空格或tab键分开。以下是每行的说明:

   fs_spec: 设备或远程文件系统
   fs_file: 挂载点,SWAP分区的字段则为SWAP
   fs_type: 文件系统类型
fs_options: 文件系统参数,一般选default,具体参数说明见下表
   fs_dump: 文件系统应该以多快频率进行转储,不需要转储就设置该字段为0
   fs_pass: 启动时需要被扫描的文件系统的顺序,若该文件系统无需在启动时扫描则设置
该字段为0,扫描文件系统的命令是fsck(用来检查与修正硬盘错误的指令)。

    ro: 以只读模式加载该文件系统
  sync: 不对该设备的写操作进行缓冲处理,这可以防止在非正常关机时情况下破坏文件系
统,但是却降低了计算机速度
  user: 允许普通用户加载该文件系统
 quota: 强制在该文件系统上进行磁盘定额限制
noauto: 不再使用mount -a命令(例如系统启动时)加载该文件系统

an example of fstab:

/dev/mapper/vg_hzaumycology-lv_root /                       ext4    defaults        1 1
UUID=081751dd-cd3f-4e42-8265-ca860fcb56b5 /boot                   ext4    defaults        1 2
/dev/mapper/vg_hzaumycology-lv_home /home                   ext4    defaults        1 2
/dev/mapper/vg_hzaumycology-lv_swap swap                    swap    defaults        0 0
tmpfs                   /dev/shm                tmpfs   defaults        0 0
devpts                  /dev/pts                devpts  gid=5,mode=620  0 0
sysfs                   /sys                    sysfs   defaults        0 0
proc                    /proc                   proc    defaults        0 0
//122.205.95.76/Archive /remoteserver/Archive   cifs    username=chenlianfu,passwd=123456      0 0
//122.205.95.76/Blog    /remoteserver/Blog      cifs    username=chenlianfu,passwd=123456      0 0