学习linux

 

1安装/卸载jdk

卸载JDK

[root@localhost soft]# java -version
java version “1.4.2″
gij (GNU libgcj) version 4.1.2 20071124 (Red Hat 4.1.2-42)
注意,根据我在5.2下安装的情况,似乎不卸载自带的1.4,设置jdk6的安装无法生效。为了避免这种情况,我们首先还是卸载掉其自带的1.4版本的jdk

[root@localhost soft]# rpm -qa | grep jdk
[root@localhost soft]# rpm -qa | grep gcj
libgcj-4.1.2-42.el5
java-1.4.2-gcj-compat-1.4.2.0-40jpp.115
上面先确认jdk的具体版本号,然后

[root@localhost jdk1.6.0_11]# yum -y remove java-1.4.2-gcj-compat-1.4.2.0-40jpp.115

安装JDK

jdk-6u22-linux-i586-rpm.bin 下载下来的包

在根目录下新建 mkdir /java 文件

切换目录到 cd /java

上传jdk-6u22-linux-i586-rpm.bin到/java 文件下。命令为:Wgethttp://....(省略号位具体地址)

上传完毕执行命令:chmod 755或者(+x)jdk-6u22-linux-i586-rpm.bin 命令

然后再执行命令:./ jdk-6u22-linux-i586-rpm.bin,稍等片刻JDK就安装成功。

2.安装/卸载JBOSS

安装jboss;

1.       在跟目录下新建jboss文件夹 mkdirjboss

2.       将jboss的包上传到新建的目录/jboss下

3.       切换到jboss目录下cd /jboss

4.       unzip jboss-4.2.3.GA.zip  –d  /usr/local

3.安装输入法

centos 6.3yum安装中文输入法

1.需要root权限,所以要用root登录 ,或su root

2.yum install "@Chinese Support"

3.exit

4.回到桌面,system->preferences->input method

5.如果没有,先注销一下。

6.按照提示添加输入法。

7.最后再次注销,登录即可。

设置:

在linux CentOS中安装完中文输入法之后,还不能使用,必须进行相应的设置,就如同在windows中设置中文输入法一样,必须把刚刚安装的输入法添加爱到输入法列表中

右键点击选择Preferences,弹出界面如图

选择“Select an input method”,选择“chinese”,然后根据自己的需要进行选择(我选择的的拼音)如图,点击关闭。

在输入的时候,按“ctrl+空格”就可以切换输入法。

 

4.make 报错

linux安装出现错误,make: *** Notargets specified and no makefile found. Stop.  

如果要在redhat5编译C/C++程序,你必须安装以下的软件包:
=> autoconf
configure用的
=> make/automake
make的主程序
=> GNU GCC C
编译器(gcc) version 4.1编译C
=> GNU GCC C++
编译器 (gcc-c++): 编译C++
Redhat / CentOS / Fedora Linux下(前者是商业版要付钱,中间的是代码重编译社区版免费,后者是个人电脑用的不知道免费不免费。。。因为我用的是ubuntu),你可以用下面的方式安装这几个软件包(任何一种都可以的)
[a] GUI
界面(最适合刚从windows转过来的菜菜)
[b]
CDRPM包(有盘的)
[c]
从网上自动下载安装(最方便)
方法1:打入下面的命令,找到包,选择后应用即可
$ system-config-packages &
方法2: CD,把系统安装光盘(如果你有)放入光驱,打入下面的命令
# rpm -ivh gcc*
方法3: 网上下载,打入下面的命令(需要预装yum,不过一般发行版都整合yum的,自动下载安装软件仓库中最新的)
# yum install gcc gcc-c++ autoconf automake
任一方法,安装成功以后就可以用传统的./configuremakesudo make install安装apache

5.安装memcached

下载并安装Memcache服务器端
服务器端主要是安装memcache服务器端.
下载:http://www.danga.com/memcached/dist/memcached-1.2.2.tar.gz
另外,Memcache用到了libevent这个库用于Socket的处理,所以还需要安装libeventlibevent的最新版本是libevent-1.3。(如果你的系统已经安装了libevent,可以不用安装)
官网:http://www.monkey.org/~provos/libevent/
下载:http://www.monkey.org/~provos/libevent-1.3.tar.gz

wget指令直接下载这两个东西.下载回源文件后。
1.
先安装libevent。这个东西在配置时需要指定一个安装路径,即./configure–prefix=/usr;然后make;然后make install
2.
再安装memcached,只是需要在配置时需要指定libevent的安装路径即./configure–with-libevent=/usr;然后make;然后make install
这样就完成了LinuxMemcache服务器端的安装。详细的方法如下:

1.分别把memcachedlibevent下载回来,放到 /tmp 目录下:
# cd /tmp
# wget http://www.danga.com/memcached/dist/memcached-1.2.0.tar.gz
# wget http://www.monkey.org/~provos/libevent-1.2.tar.gz

2.先安装libevent
# tar zxvf libevent-1.2.tar.gz
# cd libevent-1.2
# ./configure –prefix=/usr
# make
# make install

3.测试libevent是否安装成功:
# ls -al /usr/lib | grep libevent
lrwxrwxrwx 1 root root 21 11?? 12 17:38 libevent-1.2.so.1 ->libevent-1.2.so.1.0.3
-rwxr-xr-x 1 root root 263546 11?? 12 17:38 libevent-1.2.so.1.0.3
-rw-r–r– 1 root root 454156 11?? 12 17:38 libevent.a
-rwxr-xr-x 1 root root 811 11?? 12 17:38 libevent.la
lrwxrwxrwx 1 root root 21 11?? 12 17:38 libevent.so -> libevent-1.2.so.1.0.3
还不错,都安装上了。

4.安装memcached,同时需要安装中指定libevent的安装位置:
# cd /tmp
# tar zxvf memcached-1.2.0.tar.gz
# cd memcached-1.2.0
# ./configure –with-libevent=/usr
# make
# make install
如果中间出现报错,请仔细检查错误信息,按照错误信息来配置或者增加相应的库或者路径。
安装完成后会把memcached放到/usr/local/bin/memcached

5.测试是否成功安装memcached
# ls -al /usr/local/bin/mem*
-rwxr-xr-x 1 root root 137986 11?? 12 17:39 /usr/local/bin/memcached
-rwxr-xr-x 1 root root 140179 11?? 12 17:39 /usr/local/bin/memcached-debug

 

常见问题:

1.如果启动Memcached服务的时候遇到了

/usr/local/bin/memcached: error whileloading shared libraries: libevent-1.2.so.1: cannot open shared object file: Nosuch file or directory;

解决方案:

[root@localhost bin]# LD_DEBUG=libs memcached -v 
[root@localhost bin]# ln -s /usr/lib/libevent-1.2.so.1 /usr/lib64/libevent-1.2.so.1
[root@localhost bin]# /usr/local/bin/memcached -d -m 100 -u root -p 12000 -c 1000 -P /tmp/memcached.pid
[root@localhost bin]# ps -aux

可以看到启动的Memcached服务了.

 

2.Memcached服务加载到Linux的启动项中.万一机器断电系统重启.那么Memcached就会自动启动了.

假如启动Memcache的服务器端的命令为:
# /usr/local/bin/memcached -d -m 10 -u root -l 192.168.141.64 -p 12000 -c 256-P /tmp/memcached.pid
容来自17jquery

想开机自动启动的话,只需在/etc/rc.d/rc.local中加入一行,下面命令
/usr/local/memcached/bin/memcached -d -m 10 -p 12000 -u apache -c 256
上面有些东西可以参考一下:即,ip不指定时,默认是本机,用户:最好选择是:apache deamon
这样,也就是属于哪个用户的服务,由哪个用户启动。

 

 

6. 系统用户账号的管理

一、Linux系统用户账号的管理
用户账号的管理工作主要涉及到用户账号的添加、修改和删除。
添加用户账号就是在系统中创建一个新账号,然后为新账号分配用户号、用户组、主目录和登录Shell等资源。刚添加的账号是被锁定的,无法使用。
1
、添加新的用户账号使用useradd命令,其语法如下:
代码:
useradd
选项用户名
其中各选项含义如下:
代码:
-c comment
指定一段注释性描述。
-d
目录指定用户主目录,如果此目录不存在,则同时使用-m选项,可以创建主目录。
-g
用户组指定用户所属的用户组。
-G
用户组,用户组指定用户所属的附加组。
-s Shell
文件指定用户的登录Shell
-u
用户号指定用户的用户号,如果同时有-o选项,则可以重复使用其他用户的标识号。
用户名指定新账号的登录名。
1
代码:
# useradd –d /usr/sam -m sam
此命令创建了一个用户sam
其中-d-m选项用来为登录名sam产生一个主目录/usr/sam/usr为默认的用户主目录所在的父目录)。
2
代码:
# useradd -s /bin/sh -g group –G adm,root gem
此命令新建了一个用户gem,该用户的登录Shell/bin/sh,它属于group用户组,同时又属于admroot用户组,其中group用户组是其主组。
这里可能新建组:#groupadd groupgroupadd adm
增加用户账号就是在/etc/passwd文件中为新用户增加一条记录,同时更新其他系统文件如/etc/shadow,/etc/group等。
Linux
提供了集成的系统管理工具userconf,它可以用来对用户账号进行统一管理。
2
、删除帐号
如果一个用户的账号不再使用,可以从系统中删除。删除用户账号就是要将/etc/passwd等系统文件中的该用户记录删除,必要时还删除用户的主目录。删除一个已有的用户账号使用userdel命令,其格式如下:
代码:
userdel
选项用户名
常用的选项是-r,它的作用是把用户的主目录一起删除。
例如:
代码:
# userdel sam
此命令删除用户sam在系统文件中(主要是/etc/passwd, /etc/shadow, /etc/group等)的记录,同时删除用户的主目录。
3
、修改帐号
修改用户账号就是根据实际情况更改用户的有关属性,如用户号、主目录、用户组、登录Shell等。
修改已有用户的信息使用usermod命令,其格式如下:
代码:
usermod
选项用户名
常用的选项包括-c, -d, -m, -g, -G, -s, -u以及-o等,这些选项的意义与useradd命令中的选项一样,可以为用户指定新的资源值。另外,有些系统可以使用如下选项:
代码:
-l
新用户名
这个选项指定一个新的账号,即将原来的用户名改为新的用户名。
例如:
代码:
# usermod -s /bin/ksh -d /home/z –g developer sam
此命令将用户sam的登录Shell修改为ksh,主目录改为/home/z,用户组改为developer
4
、用户口令的管理
用户管理的一项重要内容是用户口令的管理。用户账号刚创建时没有口令,但是被系统锁定,无法使用,必须为其指定口令后才可以使用,即使是指定空口令。
指定和修改用户口令的Shell命令是passwd。超级用户可以为自己和其他用户指定口令,普通用户只能用它修改自己的口令。命令的格式为:
代码:
passwd
选项用户名
可使用的选项:
代码:
-l
锁定口令,即禁用账号。
-u
口令解锁。
-d
使账号无口令。
-f
强迫用户下次登录时修改口令。
如果默认用户名,则修改当前用户的口令。
例如,假设当前用户是sam,则下面的命令修改该用户自己的口令:
代码:
$ passwd
Old password:******
New password:*******
Re-enter new password:*******
如果是超级用户,可以用下列形式指定任何用户的口令:
代码:
# passwd sam
New password:*******
Re-enter new password:*******
普通用户修改自己的口令时,passwd命令会先询问原口令,验证后再要求用户输入两遍新口令,如果两次输入的口令一致,则将这个口令指定给用户;而超级用户为用户指定口令时,就不需要知道原口令。
为了系统安全起见,用户应该选择比较复杂的口令,例如最好使用8位长的口令,口令中包含有大写、小写字母和数字,并且应该与姓名、生日等不相同。
为用户指定空口令时,执行下列形式的命令:
代码:
# passwd -d sam
此命令将用户sam的口令删除,这样用户sam下一次登录时,系统就不再询问口令。
passwd
命令还可以用-l(lock)选项锁定某一用户,使其不能登录,例如:
代码:
# passwd -l sam
linux
下创建用户(二)
二、Linux系统用户组的管理
每个用户都有一个用户组,系统可以对一个用户组中的所有用户进行集中管理。不同Linux 系统对用户组的规定有所不同,如Linux下的用户属于与它同名的用户组,这个用户组在创建用户时同时创建。
用户组的管理涉及用户组的添加、删除和修改。组的增加、删除和修改实际上就是对/etc/group文件的更新。
1
、增加一个新的用户组使用groupadd命令。其格式如下:
代码:
groupadd
选项用户组
可以使用的选项有:
代码:
-g GID
指定新用户组的组标识号(GID)。
-o
一般与-g选项同时使用,表示新用户组的GID可以与系统已有用户组的GID相同。
1
代码:
# groupadd group1
此命令向系统中增加了一个新组group1,新组的组标识号是在当前已有的最大组标识号的基础上加1。例2
代码:
#groupadd -g 101 group2
此命令向系统中增加了一个新组group2,同时指定新组的组标识号是101
2
、如果要删除一个已有的用户组,使用groupdel命令,其格式如下:
代码:
groupdel
用户组
例如:
代码:
#groupdel group1
此命令从系统中删除组group1
3
、修改用户组的属性使用groupmod命令。其语法如下:
代码:
groupmod
选项用户组
常用的选项有:
代码:
-g GID
为用户组指定新的组标识号。
-o
-g选项同时使用,用户组的新GID可以与系统已有用户组的GID相同。
-n
新用户组将用户组的名字改为新名字
1
代码:
# groupmod -g 102 group2
此命令将组group2的组标识号修改为102
2
代码:
# groupmod –g 10000 -n group3 group2
此命令将组group2的标识号改为10000,组名修改为group3
4
、如果一个用户同时属于多个用户组,那么用户可以在用户组之间切换,以便具有其他用户组的权限。用户可以在登录后,使用命令newgrp切换到其他用户组,这个命令的参数就是目的用户组。例如:
代码:
$ newgrp root
这条命令将当前用户切换到root用户组,前提条件是root用户组确实是该用户的主组或附加组。类似于用户账号的管理,用户组的管理也可以通过集成的系统管理工具来完成。
Linux系统中的普通用户也有超级用户的权限

 

7.安装nginx

1)pcre安装,支持正则表达式

http://www.pcre.org/

# tar zxvf pcre-7.9.tar.gz

# cd pcre-7.9

#./configure

# make && make install

2)openssl安装(可选),支持安全协议的站点

http://www.openssl.org/

# tar zxvf openssl-0.9.8l.tar.gz

# cd openssl-0.9.8l

#./config

# make && make install

3)nginx的安装

# tar zxvf nginx-0.7.64.tar.gz

# cd nginx-0.7.64

配置安装和不安装组件:--with-MODULE_NAME or --without-MODULE_NAME

# ./configure--prefix=/usr/local/nginx/nginx8011 --with-openssl=/usr/include/openssl--with-http_stub_status_module

 

有时候,我们需要单独安装nginx,来处理大量的下载请求。单独在Centos5安装nginx遇到的rewriteHTTP cache错误解决办法:

wget http://nginx.org/download/nginx-0.8.33.tar.gz
tar -zxvf nginx-0.8.33.tar.gz 
cd nginx-0.8.33
./configure --prefix=/usr/local/nginx

安装Nginx时报错

./configure: error: the HTTP rewrite modulerequires the PCRE library.

安装pcre-devel解决问题
yum -y install pcre-devel

错误提示:./configure:error: the HTTP cache module requires md5 functions
from OpenSSL library.   You can either disable the module by using
--without-http-cache option, or install the OpenSSL library into the system,
or build the OpenSSL library statically from the source with nginx by using
--with-http_ssl_module --with-openssl=<path> options.

解决办法:

yum -y install openssl openssl-devel

总结:

yum -y install pcre-devel openssl openssl-devel

./configure --prefix=/usr/local/nginx

make

make install

一切搞定

如果出现以上情况,下面蓝色的不用执行

# make && make install

目录结构:

conf 配置文件

html 静态页面

logs 日志文件

sbin 主程序

4)启动

# /usr/local/nginx/nginx8011/sbin/nginx//启动

启动参数:

-c </path/to/config> 为 Nginx 指定一个配置文件,来代替缺省的。

-t 不运行,而仅仅测试配置文件。nginx 将检查配置文件的语法的正确性,并尝试打开配置文件中所引用到的文件。

-v 显示 nginx 的版本。

-V 显示 nginx 的版本,编译器版本和配置参数。

不启动,仅测试配置文件:/usr/bin/nginx -t -c ~/mynginx.conf

 

如果启动报错

[root@pms.ccdownload]# /usr/local/nginx/sbin/nginx -t
/usr/local/nginx/sbin/nginx: error while loading shared libraries:libpcre.so.1: cannot open shared object file: No such file or directory
 

Shell代码  

[ew69@SCLABHADOOP01lib]$ cd /lib  

[ew69@SCLABHADOOP01lib]$ ls *pcre*  

libpcre.so.0 libpcre.so.0.0.1  

 

[ew69@SCLABHADOOP01lib]$ ln -s /lib/libpcre.so.0.0.1 /lib/libpcre.so.1


配置成功:
[root@pms.cc lib]# /usr/local/nginx/sbin/nginx -t[来源 www.pms.cc]
nginx: the configuration file /usr/local/nginx/conf/nginx.conf syntax is ok
nginx: configuration file /usr/local/nginx/conf/nginx.conf test is successful

 

8.安装mysql

1.检查系统有没有安装过MySQL,如果有,将其卸载
检查是否安装过MySQL

[root@Carl-CentOS ~]# rpm -qa | grep mysql  

卸载老版本的MySQL

1.  [root@Carl-CentOS ~]# rpm -e mysql-libs  

2.      error: Failed dependencies:  

3.          libmysqlclient.so.16 is needed by (installed) redland-1.0.7-11.el6.i686  

4.          libmysqlclient.so.16 is needed by (installed) postfix-2:2.6.6-2.1.el6_0.i686  

5.          libmysqlclient.so.16(libmysqlclient_16) is needed by (installed) redland-1.0.7-11.el6.i686  

6.          libmysqlclient.so.16(libmysqlclient_16) is needed by (installed) postfix-2:2.6.6-2.1.el6_0.i686  

7.          mysql-libs is needed by (installed) postfix-2:2.6.6-2.1.el6_0.i686  

因为是依赖包的原因,所以需要强制删除,在后边多加一个参数

[root@Carl-CentOS ~]# rpm -e mysql-libs --nodeps  

解决以上问题。

2. 安装我们的RPM
切换到RPM所在的目录
首先安装MySQL-server

1.  [root@Carl-CentOS ~]# rpm -ivh MySQL-server-5.5.32-2.el6.i686.rpm  

2.  Preparing... ########################################### [100%]  

3.  1:MySQL-server ########################################### [100%]  

4.  PLEASE REMEMBER TO SET A PASSWORD FOR THE MySQL root USER !  

5.  To do so, start the server, then issue the following commands:  

6.  /usr/bin/mysqladmin -u root password 'new-password'  

7.  /usr/bin/mysqladmin -u root -h Carl-CentOS password 'new-password'  

8.  Alternatively you can run:  

9.  /usr/bin/mysql_secure_installation  

10. which will also give you the option of removing the test  

11. databases and anonymous user created by default. This is  

12. strongly recommended for production servers.  

13. See the manual for more instructions.  

14. Please report any problems with the /usr/bin/mysqlbug script! 
Server装好了。然后安装Client

1.  [root@Carl-CentOS ~]# rpm -ivh MySQL-client-5.5.32-2.el6.i686.rpm  

2.  Preparing... ########################################### [100%]  

3.   1:MySQL-client ########################################### [100%]  

安装结束后,输入mysql,查看一下是否成功安装了

1.  [root@Carl-CentOS ~]# mysql  

2.  ERROR 2002 (HY000): Can't connect to local MySQL server through socket '/var/lib/mysql/mysql.sock' (2)  

如果出现这样的错误,说明mysql服务没有启动。
启动mysql

1.  [root@Carl-CentOS ~]# service mysql start  

2.  Starting MySQL.. [确定] 

如果按照server的时候出现黄色问题的,处理方法如下

问题如下

Preparing...               ########################################### [100%]

  1:MySQL-server          ########################################### [100%]

050929 23:39:47 [Warning] Asked for196608 thread stack, but got 126976

050929 23:39:47 [Warning] Asked for196608 thread stack, but got 126976

PLEASE REMEMBER TO SET A PASSWORD FORTHE MySQL root USER !

To do so, start the server, then issuethe following commands:

/usr/bin/mysqladmin -u root password'new-password'

/usr/bin/mysqladmin -u root -h yijupassword 'new-password'

See the manual for more instructions.

NOTE: If you are upgrading from a MySQL <= 3.22.10 you should run

the /usr/bin/mysql_fix_privilege_tables.Otherwise you will not be

able to use the new GRANT command!

Please report any problems with the/usr/bin/mysqlbug script!

The latest information about MySQL isavailable on the web at

http://www.mysql.com

Support MySQLby buying support/licenses at https://order.mysql.com

StartingMySQL...................................[FAILED]

问题分析:

这个问题是由selinux引起。ELinux全称是Security Enhanced Linux,由美国国家安全部(NationalSecurity Agency)领导开发的GPL项目,它拥有一个灵活而强制性的访问控制结构,旨在提高Linux系统的安全性,提供强健的安全保证,可防御未知攻击,据称相当于B1级的军事安全性能。比MS NT所谓的C2等高得多。

应用SELinux后,可以减轻恶意攻击或恶意软件带来的灾难,并提供对机密性和完整性有很高要求的信息很高的安全保障。在网络中的服务器,建议开启SELinx,以提高系统的安全性。

解决方案:

用命令# sestatus 查看查看当前SELinux的运行状态,如果是enforcing,使用命令setsebool设置SELinux为disabled。例下

[root@localhost ~]# sestatus

SELinux status:    enforcing

[root@localhost ~]# vi /etc/sysconfig/selinux 
SELINUX
=enforcing --> SELINUX=disabled

重启后生效

或者不需重启执行命令:setenforce 0

 

Mysql 一些常用信息

(9)MySQL备份

mysqldump abc(数据库名) --user=root --password> /root/abc.sql

 mysqldump -u root  -p  abc(数据库名)  user (表名)>/user.sql(导出单张表)

注意,如果运行 mysqldump 没有指定 --quick  --opt 选项,则会将整个结果集放在内存中。如果导出大数据库的话可能会出现问题

导入:

mysql> use abc;

mysql>source /root/abc.sql(导入数据库)

mysql>source/user.sql(导入单张表)
(10)
创建索引

CREATE INDEX IX_NAMEON  USER(NAME) ;

(11)查看索引

SHOW INDEX FROM USER;
12
)修改表字段长度

alter tablec_logo_image modify column CONTENT varchar(21840);

13)添加字段

alter table table1 addtransactor varchar(10) not Null;
alter table student add num decimal(8,0) default 0 ;

alter table student2add loginNum decimal(8,0) not null default 0 ;

14MySQL设置自启动

chkconfig mysqlon

 

 

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值