------------------------------------------------------------------------------ ------------------------------------------------------------------------------ Linux 各个目录的作用: /bin: 存放着使用者最经常使用的命令。如:ls等。 /boot:存放的是启动Linux时使用的一些核心文件。 /dev:是device的缩写.这个目录下是所有Linux的外部设备 例如:/dev/hda代表第一个物理IDE硬盘。 /etc:这个目录用来存放所有的系统管理所需要的配置文件和子目录。进入后可以看到很多配置文件 /home:用户主目录,比如说有个用户叫aa,那他的主目录就是/home/aa。 /lib:这个目录里存放着系统最基本的动态链接共享库,其作用类似于Windows里的.dll文件。几乎所有的应用程序都需要用到这些共享库。 /lost+found:这个目录平时是空的,当系统不正常关机后,这里就成了一些无家可归的文件的避难所。 /mnt:这个目录是空的,系统提供这个目录是让用户临时挂载别的文件系统。 /proc:存放和进程有关的信息。这个目录是一个虚拟的目录,它是系统内存的映射,这个目录的内容不在硬盘上而是在内存里。 cd /root:系统管理员,也叫超级权限者的用户主目录 /sbin:s就是Super User的意思,也就是说这里存放的是一些系统管理员使用的系统管理程序。 /tmp:这个目录不用说,一定是用来存放一些临时文件的地方了。 /usr:用到的很多应用程序和文件几乎都存放在这个目录了。 /usr/X11R6:存放X-Windows的目录。 /usr/bin:存放着许多应用程序. /usr/sbin:给超级用户使用的一些管理程序就放在这. /usr/include:Linux下开发和编译应用程序需要的头文件在这里找. /usr/local:这是提供给一般用户的/usr目录,在这安装软件最适合. /var:通常用来存放一些变化中的东西! /var/log:存放系统日志 /var/spool:存放一些邮件、新闻、打印队列等 ------------------------------------------------------------------------------ ------------------------------------------------------------------------------ 基本操作命令: cd / 打开根目录 cd .. 返回上一层目录 ls 查看当前目录下的内容 ls --help 查看ls帮助文件 ls的部分参数: -a 隐藏文件 -l 详细列表 -1 数字“1” 每行只显示一文件 -i 显示目录下内容是添加编号 -s 按照文件大小排序 -t 按照修改时间排序 mkdir pp 新建目录pp mkdir -m 777 ppp 新建目录ppp,同时赋予ppp最高权限777 mkdir -p test/times 新建目录test,同时在test目录下新建times目录 mkdir -pv test1/times1 新建test1目录并在其下新建times1目录,同时显示操作过程 touch 11.txt 创建11.txt文件 touched test2/2.txt 在test2目录下创建2.txt文件 rmdir 只能删除空目录 rmdir -p test2/kkk 删除空目录test2和空目录kkk(若不为空,则无法删除) rm -f 11.txt 强制删除11.txt文件 rm -r test2 删除目录test2及其所有目录和文件 rm -fr times 强制删除全部 rm -f tts200/tts100/*.txt 强制删除tts100下的全部.txt文件 mv 11.txt /pp 把11.txt文件剪切到pp目录下 mv aa pp 把aa目录移动到pp目录下 mv /kkk . 把kkk移动到当前目录下 mv kk test 把kk重命名为test cp -r pp/kou times 把kou目录copy到times目录下 crtl+c 推出当前操作 pwd 显示当前路径 clear 清屏 history 查看执行过的命令 history > pp.txt 把查看到的命令保存到pp.txt文件中 cat pp.txt 查看pp.txt文件 whoami 查看当前的用户 top 查看系统中执行的程序(类似windows中的任务管理器) free 查看内存使用情况 ps 报告程序执行状况的指令 kill 11738 杀死PID为11738的进程 du 查看文件/目录的大小 df 显示磁盘文件系统的使用情况 df -h 更可读性、更直观 cat 查看文件的内容 grep 管道命令 find 查找符合条件的文件 find . -name "kk" 在当前目录下查找"kk"的文件 shutdown 关机命令 ifconfig 查看IP地址 ifdown 网卡名称(绰号) 关闭网卡 ifup 网卡名称(绰号) 激活网卡 vi 编辑指令 :wq! 强制推出并保存 / +搜索内容 /abcde 搜索abcde :s/k/o/g 把k替换成o drwx r-x r-x d代表目录 -rwx r-x r-x -代表文件 r read "4" w write "2" x 执行 "1" - "0" a 用户,用户所在的组,组外的用户 u 表示用户 g 表示组 o 表示组外 chmod 修改目录和文件的权限 chmod 646 aa 修改aa的权限为646,但是aa目录下的文件和目录权限不修改 chmod 646 aa -R 修改aa以及aa下的所有目录和文件的权限 更改属主 chown pc1 12.txt 修改12.txt文件的属主为pc1 更改目录/文件所属的组 chgrp pc1 12.txt 添加用户 useradd pc1 查看用户的信息 id pc1 useradd tt1 -g pc1 新建tt1用户,同时添加到指定的组pc1中 su tts 切换到tts用户 passwd tts 给tts用户添加密码 usermod -g tt2 tt5 更改用户所在的组 usermod -G tt1 tt5 添加附属组,不改变tt5原属组,同时把tt5添加到tt2组中 usermod -l tt1 tt5 更改用户的名称(把tt5改成tt1) userdel 删除用户 userdel -r tts1 删除tts1用户,同时和tts1相关信息全部删除 groupadd tt7 添加组tt7 groupmod -n tt tt7 把tt7组名改为tt groupdel tt7 删除组(删除组前需要把该组中的用户删除) ------------------------------------------------------------------------------ ------------------------------------------------------------------------------ Linux下搭建FTP rpm 查看Linux下的套件 -a 查看所有 -ae 删除 -af 查询指定的套件 -i安装 -v 显示执行过程 -q 当遇到问题是以询问的方式提出 -h 安装过程中列出标记 rpm -qa |grep vsftpd 查询ftp套件 rpm -e vsftpd_1.2.0.4 卸载套件 mount /dev/cdrom /mnt/cdrom 挂载(把cdrom中的镜像挂载到mnt下的cdrom中) cd RetHat/RPMS rpm -ivh vsftpd_1.2.0.4.i386.rpm (安装) umount /mnt/cdrom (安装完成后推出挂载) cd etc/vsftp vi vsftpd.conf (修改vsftp.conf配置文件) #anon_mkdir... #anon_upload...去掉这两句前的注释#号 添加 anon_umask=022 三出修改后 :wq! 保存推出编辑 service vsftpd start 重启sftpd服务 cd /var/ftp/pub chmod 777 pub -R 修改权限,给pub允许组内和组外所有用户读写执行的最高权限 OK ~~~~~ ftp:\\192.168.0.124\pub ------------------------------------------------------------------------------ ------------------------------------------------------------------------------ samba服务(类似于windows的共享文件夹) vi /etc/samba/smb.conf 添加在文件的最后: #TestTimes shared folder [TestTimes] comment = TestTimes shared folder path = /var/ftp/pub valid users = TestTimes writable = yes public = no smbpasswd -a TestTimes testtech 必须是系统已经存在的用户 service smb restart 修改Linux防火墙设置 samba服务要用到137 138 139 三个端口 linux 下修改防火墙配置需要修改 /etc/sysconfig/iptables 这个文件,如果要开放哪个端口,在里面添加一条 “-A RH-Firewall-1-INPUT -m state --state NEW -m tcp -p tcp --dport 1521 -j ACCEPT” 就可以了,其中 1521 是要开放的端口号,然后重新启动linux的防火墙服务。 停止/启动防火墙服务的命令:用root登录后, 执行 service iptables stop --停止 service iptables start --启动 ------------------------------------------------------------------------------ ------------------------------------------------------------------------------ 安装PHP和discuz mantis bugzilla 切换到PHP目录下 编译安装PHP: ./configure --with-apxs=/usr/local/apache/bin/apxs --with-mysql=/usr/local/mysql --with-xml --enable-sigchild --enable-so --enable-ftp --enable-mbstring=all --with-config-file-path=/usr/local/lib make make install 把目录下的php.ini-dist文件拷贝到/usr/local/lib目录下: cp php.ini-dist /usr/local/lib/ mv php.ini-dist php.ini 重命名为php.ini 安装discuz 1.用ftp上传Discuz!_5.5.0_SC_GBK.zip,php-4.3.11.tar.gz 2.解压discuz: mv Discuz\!_5.5.0_SC_GBK.zip Discuz.zip unzip Discuz.zip 3.移动到/usr/local下:mv upload /usr/local 4.重命名:mv /usr/local/upload /usr/local/discuz 9.创建链接文件:ln -s /usr/local/discuz /var/www/discuz 10.修改apache配置文件:vi /usr/local/apache/conf/httpd.conf 在DirectoryIndex后面添加: index.php 在配置文件的最后添加: Alias /discuz/ "/var/www/discuz/" <Directory "/var/www/discuz/">; Options ExecCGI AllowOverride Limit </Directory> AddType application/x-httpd-php .php 11.修改discuz目录权限: cd /usr/local/ chown root:root discuz/ -R chmod 777 discuz/ -R 12.重启apache:/usr/local/apache/bin/apachectl restart 13.连接Mysql数据库: cd /usr/local/mysql(切换到mysql安装后的目录下去) bin/mysqld_safe --user=mysql &(启动Mysql) cd bin ./mysql -u root -p(回车) mysql>create database discuz;(创建discuz库) mysql>use discuz; mysql>grant all privileges on discuz.* to [email=[ft=,2,]'discuz'@'localhost' ][/email] identified by 'discuz';(创建discuz用户) mysql>flush privileges; mysql>quit 14.用IE访问http://虚拟机IP/install.php 安装mantis 把mantis解压到/usr/local目录下 unzip mantis-0.19.4.zip cp -R mantis-0.19.4 /usr/local/ mv mantis-0.19.4 mantis 建立数据库mantis及用户mantis cd /usr/local/mysql bin/mysqld_safe --user=mysql &(启动Mysql) cd bin ./mysql -u root -p(连接Mysql数据库) (回车) mysql>create database mantis;(创建mantis库) mysql>use mantis; mysql>grant all privileges on mantis.* to [email=[ft=,2,]'mantis'@'%' ][/email] identified by 'mantis';(建mantis数据库和mantis用户) mysql>source /usr/local/mantis/sql/db_generate.sql; mysql>\q 3、修改配置文件 $cd mantis $cp config_inc.php.sample config_inc.php $vi config_inc.php //修改以下几行 $g_hostname = "本机IP"; $g_db_username = "mantis"; $g_db_password = "你在建立用户时指定的密码"; $g_database_name = "mantis"; # cd /usr/local/apache/conf # vi httpd.conf 修改Apahce的配置文件: DirectoryIndex index.php default.php default.phtml default.php3 default.html default.htm # #设置apache的默认文件名次序 在AddType application/x-tar .tgz这一行下面添加一行: AddType application/x-httpd-php .php 在最后添加: Alias /mantis/ "/usr/local/mantis/" <Location /usr/local/mantis/> SetHandler mantis Order allow,deny Allow from all </Location> 重起apache /usr/local/apache/bin/apachectl start 在mantis目录下用vi新建一个test.php文件,内容为: <?php phpinfo(); ?> 保存后退出 在IE地址栏中输入: http://IP 地址/mantis/test.php 测试apache是否能解析php文件。。。 安装bugzilla 修改/etc/vsftpd/下的vsftpd.conf文件 vi /etc/vsftpd/vsftpd.conf #anon_upload_enable=YES 将#去掉,允许匿名用户上传 #anon_mkdir_write_enable=YES 将#注释去掉,允许匿名用户创建目录 再添加以下这段内容: anon_umask=022 保存后退出(:wq) /etc/vsftpd/ 重启vsftpd服务: service vsftpd restart 然后将/var/ftp下的pub目录设置为777权限: cd /var/ftp/ chmod 777 pub/ -R 将硬盘上的一些安装包上传到ftp上 然后换到文件所在路径: cd /var/ftp/pub 解压apache安装文件: tar zxvf apache_1.3.34.tar.gz 切换到解压后的目录下去: cd /var/ftp/pub/apache_1.3.34 开始安装: ./configure --prefix=/usr/local/apache --enable-module=so make make install 安装完毕 启动apache服务: cd /usr/local/apache/bin ./apachectl start 此时可以通过IE访问apache服务,测试是否已经安装正确: http://虚拟机的IP地址 然后将apache默认的繁体中文的语言改为简体中文: cd /usr/local/apache/conf vi httpd.conf 在"DefaultType text/plain"下添加一行"AddDefaultCharset GB2312" 保存后退出! 重启apache服务: cd /usr/local/apache/bin ./apachectl restart cd /var/ftp/pub 再装mysql-4.0.26 解压:tar zxvf mysql-4.0.26.tar.gz cd mysql-4.0.26 groupadd mysql useradd -g mysql mysql 安装:./configure --prefix=/usr/local/mysql --with-charset=gbk make make install(安装完毕) cp support-files/my-medium.cnf /etc/my.cnf(拷贝配置文件到etc目录下) cd /usr/local/mysql(切换到mysql安装后的目录下去) bin/mysql_install_db --user=mysql chown -R root . chown -R mysql var chgrp -R mysql . bin/mysqld_safe --user=mysql &(启动Mysql) cd bin ./mysql -u root -p(连接Mysql数据库) (回车) mysql>create database bugs;(创建bugs库) mysql>use bugs; mysql>grant all privileges on bugs.* to [email=[ft=,2,]'bugs'@'%' ][/email] identified by 'bugs';(建bugs数据库和bugs用户) quit(退出) # export PATH=$PATH:/usr/local/mysql/bin(将Mysql的路径添加进环境变量) 最后解压bugzilla到/usr/local/下面 [root@pc13 pub]# tar zxvf bugzilla-2.22.1.tar.gz -C /usr/local/ cd /usr/local/ mv bugzilla-2.22.1 bugzilla # cd /usr/local/bugzilla # ./checksetup.pl 安装缺少的perl模块: AppConfig Mail::Mailer Date::Format IO-stringy MIME-Base64 MIME::Parser Template (PathTools-3.24) (CGI.pm-3.25) (DBI-1.53) { [root@pc13 bugzilla]# cd /var/ftp/pub [root@pc13 pub]# tar zxvf PerlModule.tar.gz [root@pc13 pub]# ls [root@pc13 pub]# cd PerlModule [root@pc13 PerlModule]# ls ( [root@pc13 PerlModule]# tar zxvf AppConfig-1.56.tar.gz [root@pc13 PerlModule]# cd AppConfig-1.56/ [root@pc13 AppConfig-1.56]# perl Makefile.PL [root@pc13 AppConfig-1.56]# make [root@pc13 AppConfig-1.56]# make install ) [root@pc13 PerlModule]# cd /usr/local/bugzilla [root@pc13 bugzilla]# ./checksetup.pl } 安装:perl Makefile.PL make (make test) make install (groupadd apache) 修改localconfig文件 $db_host = IP地址 $db_pass = 'bugs' ./checksetup.pl(此时可能提示没有安装DBD:mysql模板,将DBD:mysql模块安装上再次运行./checksetup.pl) ./checksetup.pl(此时它会建很多表,并且提示填写一个Email地址作为帐号,然后是提示填入密码) # ln -s /usr/local/bugzilla /var/www/bugzilla(之前可能需要mkdir /var/www) # cd /usr/local/apache/conf # vi httpd.conf 在此文件中添加: Alias /bugzilla/ "/var/www/bugzilla/" <Directory "/var/www/bugzilla/">; Options ExecCGI AllowOverride Limit </Directory> AddHandler cgi-scrīpt .cgi(将其前面的#号去掉,使之生效) DirectoryIndex index.html index.cgi(添加了一个index.cgi) 保存后退出 # cd /usr/local/apache/bin # ./apachectl stop # ./apachectl start(重启apache,使配置文件生效) # cd /usr/local/ # chown root:root bugzilla/ -R # chmod 777 bugzilla/ -R (所有操作过程完毕,在IE中键入 http://ip 地址/bugzilla/index.cgi访问即可)