Centos搭建C/C++开发平台
感觉: Centos的安全配置要比Ubuntu复杂一些
1. 安装Centos系统
选择图形界面的CentOs操作上会舒适一点,特别是对linux不是很熟悉的同志。比如me。
2. 安装Gcc
Yum –y install gcc
Yum –y install gcc-c++
3. 安装eclipse IDE for C/C++ Linux Developers(Includes Incubatingcomponents)
配置好网络直接去Eclipse网站,下载解压缩即可.
Indigo地址为: [ http://www.eclipse.org/downloads/packages/release/indigo/sr2][http_www.eclipse.org_downloads_packages_release_indigo_sr2]
4. 配置ftpvsftpd
4.1 检查是否安装vsftpd服务
Chkconfig 命令是否存在vsftpd服务,不存在则下载安装
4.1下载安装vsftpd
Yum –y install vsftpd
4.2 配置vsftpd
简单的说,为配置/ect/vsftpd.conf;详细配置见” 笨猪无罪”的vsftpd配置手册,地址为[http://zserver.blog.51cto.com/370152/157203][http_zserver.blog.51cto.com_370152_157203]
4.3 启动vsftpd
Service vsftpd start
4.4 检验是否能够登录
1) FTP登录报错:500OOPS: cannot change directory
可能是selinux的限制造成.
解决方法([http://www.esojourn.org/blog/read.php/313.htm][http_www.esojourn.org_blog_read.php_313.htm]):
a) 降低SELinux安全级别,把enforcing降低到permissive
vi /etc/sysconfig/selinux
# This file controls the state of SELinux onthe system.
# SELINUX= can take one of these three values:
# enforcing - SELinux security policy is enforced.
# permissive - SELinux prints warnings instead of enforcing.
# disabled - SELinux is fully disabled.
SELINUX=permissive]
然后重启机器
b) 更理想的办法。首先查看SELinux中有关FTP的设置状态:
getsebool -a|grep ftp
allow_ftpd_anon_write --> off
allow_ftpd_full_access -->off
allow_ftpd_use_cifs --> off
allow_ftpd_use_nfs --> off
allow_tftp_anon_write --> off
ftp_home_dir --> off
ftpd_connect_db --> off
ftpd_disable_trans --> on
ftpd_is_daemon --> on
httpd_enable_ftp_server -->off
tftpd_disable_trans --> off
经过尝试发现,打开ftp\_home\_dir或者 ftpd\_disable\_trans。都可以达到在enforcing级别下,允许FTP正常登录的效果。
setsebool -P ftp\_home\_dir1
\#CentOS6里,是这样
setsebool -Pallow\_ftpd\_full\_access 1
service vsftpdrestart
加-P是保存选项,每次重启时不必重新执行这个命令了。最后别忘了在/etc/sysconfig/selinux中,修改SELINUX=enforcing。
2) 从本机可以ftp登录,从其他机器无法登录
使用ftp localhost 成功,其他登陆不成功,有可能为防火墙导致.
解决方法:
a) 图形界面下:
“系统”->”管理”->”防火墙”中开放ftp端口
然后重启iptables服务
serviceiptables restart
b) 命令([http://os.51cto.com/art/201003/192211.htm][http_os.51cto.com_art_201003_192211.htm]&[http://os.51cto.com/art/201103/249398.htm][http_os.51cto.com_art_201103_249398.htm])
配置vi /etc/sysconfig/iptables文件
下面是一个iptables的示例:
# Firewall configuration writtenby system-config-securitylevel
# Manual customization of thisfile is not recommended.
*filter
:INPUT ACCEPT [0:0]
:FORWARD ACCEPT [0:0]
:OUTPUT ACCEPT [0:0]
:RH-Firewall-1-INPUT - [0:0]
-A INPUT -j RH-Firewall-1-INPUT
-A FORWARD -jRH-Firewall-1-INPUT
-A RH-Firewall-1-INPUT -i lo -jACCEPT
-A RH-Firewall-1-INPUT -p icmp–icmp-type any -j ACCEPT
-A RH-Firewall-1-INPUT -p 50 -jACCEPT
-A RH-Firewall-1-INPUT -p 51 -jACCEPT
-A RH-Firewall-1-INPUT -m state–state ESTABLISHED,RELATED -j ACCEPT
-A RH-Firewall-1-INPUT -m state–state NEW -m tcp -p tcp –dport 53 -j ACCEPT
-A RH-Firewall-1-INPUT -m state–state NEW -m udp -p udp –dport 53 -j ACCEPT
-A RH-Firewall-1-INPUT -m state–state NEW -m tcp -p tcp –dport 22 -j ACCEPT
-A RH-Firewall-1-INPUT -m state–state NEW -m tcp -p tcp –dport 25 -j ACCEPT
-A RH-Firewall-1-INPUT -m state–state NEW -m tcp -p tcp –dport 80 -j ACCEPT
-A RH-Firewall-1-INPUT -m state–state NEW -m tcp -p tcp –dport 443 -j ACCEPT
-A RH-Firewall-1-INPUT -j REJECT–reject-with icmp-host-prohibited
COMMIT
举例来说,如果你不希望开放80端口提供web服务,那么应该相应的删除这一行:
-ARH-Firewall-1-INPUT -m state –state NEW -m tcp -p tcp –dport 80 -j ACCEPT
5. 配置用户
增加用户组: group add “groupname”
删除用户组:group del “groupname”
增加用户:useradd –g “groupname” “username”
修改用户密码: passwd “username”
删除用户: userdel “username”
显示用户: id “username”
查看所有用户: cat /etc/passwd
备注:增加用户后,如果安装vsftpd,会自动创建一个匹配的vsftpd的ftp用户
6. 安装CVS客户端(http://progress.iteye.com/blog/233283 & http://hi.baidu.com/jiajiazc/item/5a4077fc91fd4417fe3582c6)
6.1 查看是否安装cvs
rpm -qa | grep cvs
6.2 安装cvs
Yum –y install cvs
6.3 测试cvs client
方法1:
1) 登陆
cvs -d :pserver:username@ip\_address:/"Repositoryfolder" login
例:cvs -d:pserver:huasheng@10.10.1.56:/EVAPP login
2) Checkout代码
cvs -d :pserver:username@ip\_address:/"Repository folder"checkout "ModuleName"
例:cvs -d :pserver:huasheng@10.10.1.56:/EVAPP checkout SS4.0
方法2:[http://botao.blog.51cto.com/314893/191299][http_botao.blog.51cto.com_314893_191299](没起作用)
设置CVSROOT环境变量;
export CVSROOT=: username@ip\_address:/"Repository folder"
例:exportCVSROOT=:pserver:huasheng@10.10.1.56:/EVAPP
6.4 Cvs操作
[http://www.chedong.com/tech/cvs\_card.html][http_www.chedong.com_tech_cvs_card.html]&[http://www.chinaunix.net/old\_jh/6/11978.html][http_www.chinaunix.net_old_jh_6_11978.html] &[http://www.chinaunix.net/old\_jh/4/200777.html][http_www.chinaunix.net_old_jh_4_200777.html]
7. 安装图形界面远程工具VNC(http://www.xker.com/page/e2012/0114/106422.html
&http://xudeqiang.blog.51cto.com/224075/340840
&http://xudeqiang.blog.51cto.com/224075/341587)
7.1下载安装VNC
Yum –y install vnc
Yum –y groupinstall “GNOME DesktopEnvironment” (安装GNOME桌面, VNC 依赖)
7.2 配置VNC
Vi /etc/sysconfig/vncservers
详见[http://www.xker.com/page/e2012/0114/106422.html][http_www.xker.com_page_e2012_0114_106422.html]
此配置工具可以设置默认的登陆参数,如图像尺寸等。其中增加的用户为root权限,如果为多人共同使用,不建议在此文件中增加用户。
7.3 问题
1) VNC黑屏(http://www.cnblogs.com/ggjucheng/archive/2012/01/04/2312601.html
& [ http://blog.csdn.net/tlx20093a/article/details/7517315][http_blog.csdn.net_tlx20093a_article_details_7517315])
如果远程Linux的VNC桌面显示不出来,显示一片黑屏,并且点击键盘或者鼠标仍然毫无反应,则需要配置用户/”user”/.vnc/xstartup文件。其中user为linux用户名。修改文件内容为:
unsetSESSION\_MANAGER
exec /etc/X11/xinit/xinitrc
修改后,关闭所有vnc连接,重启vncserver服务.
\[root@localhost~\]\# vncserver -kill :1
\[root@localhost ~\]\# vncserver :1
当user为san.zhang 的用户登陆,并第一次运行vncserver时,会输入vncserver密码,其对应的”xstartup”文件会自动生成。(这是一个可执行文件,别自己建立)
1) linux VNC连接失败:套接字操作尝试一个无法连接的主机(10065)([http://blog.csdn.net/tlx20093a/article/details/7517315][http_blog.csdn.net_tlx20093a_article_details_7517315]
&[http://blog.csdn.net/tlx20093a/article/details/7517300][http_blog.csdn.net_tlx20093a_article_details_7517300])
此问题为防火墙的原因,需要开放端口号5901+n, 5801, 6001。
修改vi/etc/sysconfig/iptables。增加:
-ARH-Firewall-1-INPUT -m state ——state NEW -m tcp -p tcp ——dport 5900:5903 -jACCEPT
-ARH-Firewall-1-INPUT -m state ——state NEW -m tcp -p tcp ——dport 5801-j ACCEPT
-ARH-Firewall-1-INPUT -m state ——state NEW -m tcp -p tcp ——dport 6001 -j ACCEPT
重启iptables服务
/etc/init.d/iptablesrestart
7.4 客户端登陆
使用VNC-Viewer,输入“IP:\[序号\]” 即可
其中\[序号\]为使用vncserver命令得到的序号。
8 . 安装GDB
Eclipse 调试依赖于GDB工具。
yum -y install gdb
9. 安**装Development Tools(http://www.cyberciti.biz/faq/centos-linux-install-gcc-c-c-compiler/)**
不装这个Eclipse Juno编译程序,总是报“Error 127 occurred while running autoreconf HelloWorld -1 Configure Problem”错误。
yum groupinstall 'Development Tools'
关于GNU Autotools见 [http://www.ezloo.com/2008/04/gnu\_autotools.html][http_www.ezloo.com_2008_04_gnu_autotools.html] & [http://blog.csdn.net/scucj/article/details/6079052][http_blog.csdn.net_scucj_article_details_6079052]
====================================================================================================
Centos学习网站
CentOS Linux教程: http://www.centos.bz/author/admin/page/76/
centos官网中文wiki: http://wiki.centos.org/zh/
CentOs 命令:http://www.wangsirui.net/class/143/
====================================================================================================
常见问题:
- 修改屏幕分辨率 (http://wiki.centos.org/zh/HowTos/ConfigureNewVideoCard)
xrandr -s widthxheight
还没有评论,来说两句吧...