1、Linux 学 习 教 程1.Linux基本21.1基本21.1.1.linux 命名和命令输入规则21.1.2.Linux基本文件目录介绍21.1.3 Linux基本命令21.1.4.10以内的2进制31.1.5.Linux的文件类型31.2查看显示31.2.1.基本命令31.3修改41.4删除41.5增加41.5.1目录操作命令41.6用户、权限51.7如何加载光驱51.8安装Linux包51.9 ip地址配置62Linux进阶(一)62.1 windows和Linux共享62.1.1 linux访问windows62.1.2 windwos访问linux72.1.3 windows 加用
2、户名和密码来访问Linux82.2 vi的使用92.2.1用vi创建一个文件92.2.2 vi操作92.3 在Linux下搭建ftp服务器92.4 远程连接到计算机去实现远程控制103.Linux进阶(二):bugzilla安装113.1 bugzilla安装前准备113.2安装阿帕奇113.3安装数据库Mysql113.4 安装perl113.5bugzilla的配置12附:未整理131.Linux基本1.1基本1.1.1.linux 命名和命令输入规则除了/其他的都可以用在命名当中。如果是有空格的文件名,就用“”转义符一个命令行之后可以接多个参数1.1.2.Linux基本文件目录介绍/bo
3、ot 启动目录,内核存放地/etc 配置文件存放地/etc/rc.d/目录的详解 rc.d的内容如下: init.d/ :各种服务器和程序的二进制文件存放目录。 rcx.d/: 各个启动级别的执行程序连接目录。里头的东西都是指向init.d/的一些软连接。具体的后边叙述。 还有三个脚本:rc.sysinit, rc, rc.local/tmp 程序产生的零时文件/home 用户的目录,每一个用户都有一个home/lib 库文件/bin 存放的是普通的命令行(都是普通用户可以使用的)/sbin 存放超级帐号的命令行/usr 用户的应用程序和文件的安装地/mnt 挂接其他文件系统/root 超级用
4、户的账户的home/var1.1.3 Linux基本命令cd / 定位文件夹clear 清空文件“.” 当前目录“.” 上层目录“” 根目录下的root目录“/” 代表根目录shutdown r now 重启shutdown h now 关机hostname 查看计算机名 hostname+计算机名 修改计算机名(重启后失效)useradd/adduser 新建帐号passwd 设置修改密码 例如:zhengpeng passwdid 显示登录用户su 登录用户/切换账号 在登录超级用户之后还可以登录普通用户(嵌套式登录)exit 退出帐号修改配置文件/etc/sysconfig/networ
5、k中修改hostname=你要改的名字(永久修改计算机名)确定用户是否存在:查看/home文件夹存在哪些文件查看redhat的release版本#more /etc/redhat-releaseRed Hat Enterprise Linux AS release 4 (Nahant Update 4)#more /etc/issue# more /proc/version查看CPU信息#grep model name /proc/cpuinfo#more /proc/cpuinfo查看CPU位数(32 or 64)#getconf LONG_BIT查看内存信息 #more /proc/mem
6、info #grep MemTotal /proc/meminfo 查看libc、gcc版本 #ldd /sbin/mii-tool #rpm -qa | grep glibc #gcc v1.1.4.10以内的2进制0=0、1=1、2=10、3=11、4=100、5=101、6=110、7=111、8=1000、9=1001、10=10101.1.5.Linux的文件类型tar 打包文件gz gzip压缩文件bz2 bzip2压缩文件bpm red hat package manager1.2查看显示1.2.1.基本命令ls -l 显示当前目录下的文件与文件夹ls -a 查看所有文件(包括重
7、要的隐藏文件)ls / 显示根目录下的文件夹和文件名称ll 查看目录下的文件与ls l用法一样pwd 只显示当前所在目录的名称cat 查看文件内容 例如:cat install.log 查看install.log日志文件的内容cat install.log |more 在文本界面分页显示more install.log 把目前已经打开的百分比显示出来。功能和上面一样。df h 显示分区空间head n filename 显示第n行内容which 加文件名 查看文件所在相应的路径find /mnt/cdrom name http* 查找带http的文件1.3修改cp /加文件名 /root 拷贝
8、到root的目录下cp r 拷贝目录和目录下的子目录全部拷贝mv 移动和修改文件名 例如:mv /samba-3.0.20b-1.i386.rpm .mv samba-3.0.20b-1.i386.rpm /1.rpm 移动并改名 mv 1.rpm samba-3.0.20b-1.i386.rpm 单纯修改文件名1.4删除rm 删除rm r 可以删除目录,包括子目录例如:rm install.log 删除当前目录下的文件install.log提示:有些unix和Linux是不带提示的,删除前先测试。rm -f *.txt 删除*.txt文件并且不提示rm r 强制删除文件1.5增加1.5.1目
9、录操作命令mkdir 创建目录命令 类似于dos系统中的mdrmdir 删除目录命令(必须目录为空) 类似于dos系统中的rd1.6用户、权限1、chmod 改变文件或者目录的存取权2、文档权限阅读:第一个字符:文档类型 “-”“d”“c”“l”24:所有者权限 u5-7:所有者所在的组权限 g8-10:其他人权限 o例如:文件名smbchmod o+w smb 给文件夹smb赋其他人权限wchmod u+rwx smb给文件夹smb赋所有者权限rwx1.7如何加载光驱mount /dev/cdrom /mnt/cdrom 从什么硬件加载到什么地方cd /mnt/cdromlscd /umou
10、nt /mnt/cdrom 释放加载光盘ls /mnt/cdrom 1.8安装Linux包1.8.1 rpm包rpm -qa |grep samba 查找当前目录下有木有samba rpm文件rpm -e samba-3.0.20b-1 卸载samba-3.0.20b-1 rpm -ivh samba-3.0.20b-1.i386.rpm 运行安装查看是否安装成功rpm -version 显示rpm程序的版本安装 -i-h 打印#来显示安装进度-percent 打印安装进度的%-nodeps 不检查软件的安装依赖,直接安装-e卸载参数rpm -e 加包名-q查询参数 例如:rpm -qa |g
11、rep samba 查询安装软件samba-a 显示所有安装的rpm包-qi coreutils 例如:rpm -qi coreutils 查看coreutils包的信息-ql 查看包当中包含的具体内容 例如:rpm -ql 加包的名称 。-qf 例如:rmp -qf ls 显示查询ls所安装的包和名称连续连续安装多个包1.8.2 .tar.gz压缩包tar.gz安装tar 打包1.9 ip地址配置ifconfig 查看ip地址ifconfig eth0 192.168.5.110 设置ip子网掩码 缺点:重启机器以后ip地址还原netconfig +回车进入文本框修改。永远的修改,设置完了之
12、后机器需要重启ping 192.168.5.45 ctrl+c停止ping2Linux进阶(一)2.1 windows和Linux共享2.1.1 linux访问windowssmbclient L /192.168.5.45 u guest查看访问机器的ip地址共享目录mount -t smbfs -o username=guest /192.168.5.154/test /mnt/test 把共享机器中的test目录挂载到/mnt/test目录中cd /mnt/samba 转到samba目录下查看2.1.2 windwos访问linux1、修改配置管理smb.conf找到smb.conf并修
13、改为smb.conf.bak 路径是:/etc/samba/smb.conf新建smb.conf 并进入文件编辑按i进入编辑模式输入global (全局参数的设置,它对samba的功能具有很大的影响,主要用来设置整个系统规则)workgroup=test (定义你在windows中的域)server string=(这是你在windows中看到你的samba的解释)netbios name=fl (最好是你的机器名,如果把这句注销,默认的是你的Linux机器名,不过最好还是自己填上)dos charset=cp936 unix charset=cp936 (加上这二句就可以正确显示中文了)ho
14、sts allow (允许登录的linux-samba的主机名单,用IP地址给出,多个IP地址用空格分开,不在名单中的主机将不能得到samba提供的服务,这也是网络安全的一个方面。如:hosts allow =192.168.254.1 192.168.254.78)printcap name(指定printcap文件地址,通常为/etc/printcap,包含了linux打印机的配置信息。) load printers (允许使用共享打印机时,默认值为yes。)printing (如果使用的打印机是非标准的,那么应该指出打印机系统类型。)log file = /usr/local/samba
15、/var/log.%m max log size = 0 上面这两行则是Samba日志的相关定义。其记录文件的位置是放在/var/log/samba/%m.log,安装目录不一样,日志可不一样,后面的一条是定义日志记录文件的大小,单位是KB,如果是0的话就不限大小。guest account=root (来宾帐户,表示用哪一个Linux用户作为所要的客户连接,定义Samba缺省的用户账号,这个账号必须在/etc/passwd中,在这里我们把root的权限赋值给guest。)security (指定安全模式。大多数用户使用user级的安全模式,samba用本地linux口令文件验证。)secur
16、ity=share (定义Samba的安全级别(安全模式),按从低到高分为四级:share,user,server,domain。它们对应的验证方式如下: share:没有安全性的级别,任何用户都可以不要用户名和口令访问服务器上的资源。 user:samba的默认配置,要求用户在访问共享资源之前资源必须先提供用户名和密码进行验证。server:和user安全级别类似,但用户名和密码是递交到另外一个服务器去验证,比如递交给一台NT服务器。如果递交失败,就退到user安全级。 domain:这个安全级别要求网络上存在一台Windows的主域控制器,samba把用户名和密码递交给它去验证。 后面三种
17、安全级都要求用户在本linux机器上也要系统帐户。否则是不能访问的。 )test 指定共享名称和共享文件comment =This is test #备注说明path=/ 从哪个目录开始共享,这里是从根目录开始共享guest ok=yesread only=no2、创建Samba专用用户 创建用户gliet_linux addusr gliet_linux passwd gliet_linux 之后将该用户添加到samba中/etc/samba/smbpasswd -a gliet_linux 2、启动smb服务/etc/rc.d/init.d/smb start3、清除ip链 /etc/rc
18、.d/init.d/iptables stop或service iptables stopiptables -F 把防火墙的所有安全策略清空ntsysv 会进入到文本窗口去,然后再配置关闭iptables,在下次启动永久生效3、重启网卡 service network restart 正在关闭接口 eth0: 确定 关闭环回接口: 确定 设置网络参数: 确定 弹出环回接口: 确定 弹出界面 eth0: 确定 3、重启Samba /etc/rc.d/init.d/smb restart (重启samba)4、ok,在windows下登录 192.168.254.272.1.3 windows 加
19、用户名和密码来访问Linux1、useradd test #增加linux用户test2、passwd test 修改用户口令3、smbpasswd -a test 将test同时也设置成为sambm用户,口令保持与2一致(cd /etc/samb ls cat smbpasswd)4、修改配置文件/etc/samba/smb.confvi /etc/samba/smb.confglobalnetbios name =my guest account=testsecurity=usersmb passwd file=/etc/samba/smbpasswd2.2 vi的使用2.2.1用vi创建
20、一个文件vi 1.txt 回车输入i进入文件编辑模式输入内容按Esc退出编辑模式Shift+“:”输入“:w”保存 或“:wq”退出保存内容 或 “:q!”退出并且不保存内容2.2.2 vi操作vi 文件名 回车 :打开指定的文件编辑两种模式:输入模式、命令模式(使用ESC和i/a格式转换)2.3 在Linux下搭建ftp服务器1、查看是否安装vsftpd服务rpm -qa |grep vsftpd没有的从光盘上安装在redhat第三张碟中的/mnt/cdrom/RedHat/RPMS/vsftpd-1.1.3-8.i386.rpm里面cd /etc ls vs 查看vs开头的文件2、启动vs
21、ftpd服务/etc/rc.d/init.d/vsftpd start 启动vsftpd服务cat vsftpd.ftpusers 显示哪些用户被禁止访问ftp服务器service vsftpd status查看服务是否启动service vsftpd start(stop、restart)启动(停止、重启)user_list该文件用来指示的默认账户在默认情况下也不能访问ftp3、对vsftpd配置 在/etc/下找到:vsftpd.ftpusers、vsftpd.user_list 用vi打开并注释root账户3、使用vi编辑vsftpd.conf文件用户登录控制:anonymous_ena
22、ble=YES 允许匿名用户登录。no_anon_password=YES 匿名用户登录时不需要输入密码。local_enable=YES 允许本地用户登录。deny_email_enable=YES 可以创建一个文件保存某些匿名电子邮件的黑名单,以防止这些人使用Dos攻击。banned_email_file=/etc/vsftpd/banned_emails,保存电子邮件黑名单的目录(默认)用户权限控制:write_enable=YES 开启全局上传local_umask=022 本地文件上传的umask设置为022,系统默认。anon_upload_enable=YES 允许匿名用户上传,
23、当然要在write_enable=YES的情况下。同时必须建立一个允许ftp用户读写的目录。anon_mkdir_write_enable=YES,允许匿名用花创建目录chown_uploads=YES,匿名用户上传的文件属主转换为别的用户,一般建议为root。chown_username=whoever,改此处的whoever为要转换的属主,建议rootchroot_list_enable=YES,用一个列表来限定哪些用户只能在自己目录下活动。chroot_list_enable=/etc/vsftpd/chroot_list,指定用户列表文件nopriv_user=ftpsecure,指定
24、一个安全账户,让ftp完全隔离和没有特权的账户其他的建议不要配置。用户连接和超时设置:idle_session_timeout=600,默认的超时时间data_connection_timeout=120,设置默认数据连接的超时时间4、服务器日志和欢迎信息dirmessage_enable=YES,允许为配置目录显示信息ftpd_banner=Welcome to blah FTP service. ftp的欢迎信息xferlog_enable=YES 打开日志记录功能xferlog_file=/var/log/xferlog 日志记录文件的位置我们可以更改以上的各个设置,然后重启ftp服务就
25、可以实现对ftp的配置了。2.4 远程连接到计算机去实现远程控制rpm -qa |grep telnet telnet-0.17-25 客服端 telnet-server 0.17-25 服务端cd /etc/cd xinetd.dpwdcd /etc/pam.d 用超级帐号登录ls logincat login把第一行有效代码(第二行)屏蔽掉service xinetd status 查看运行状态重新启动xinetd服务3.Linux进阶(二):bugzilla安装3.1 bugzilla安装前准备Bugzilla介绍:B/S 模式Server:Web apache 阿帕奇服务器Mysql数
26、据库perl bugzilla网站3.2安装阿帕奇apache安装1、确认系统是否安装了GCC平台rpm -qa |grep gccgcc -3.4.3-9.EL4 gcc-3.2.2-5若是没有请在第二张光盘下面安装2、查找Linux apache服务 :httpdhttpd-2.0.40-21若是没有请在第一张光盘下面安装httpd-2.0.40-21.i386.rpm3、启动httpd服务:service4、在另外一台机器上面输入服务端地址,链接到测试页面。3.3安装数据库Mysql1、安装mysql包(按顺序安装)MySQL-server-4.0.21-0.i386.rpmMySQL-
27、devel-4.0.21-0.i386.rpmMySQL-client-4.0.21-0.i386.rpm2、安装完了之后进入Mysql终端命令:mysql -u root (用root账户进入数据库创建bugzilla账号bugs)show databases; (进入数据库)create database bugs; (新建账户“bugs”)grant all(select,insert,update,delete,index,alter,create,lock tables,create temporary,create temporary tables,drop,references)
28、 on bugs.*to bugslocalhost identified by123;(给bugs账户设置权限和密码等操作)flush privileges;exit 退出数据库mysqlmysql -u bugs p (用bugs的账户登录,进行测试,如果bugs账户设置的密码的话就需要加“-p”)3.4 安装perl1、解压bugzilla-2.18rc2.tar.gz压缩包。进入改包文件夹,查看perl checksetup.pl |more 查看哪些必装包,哪些选装包2、进入perl安装包文件夹根据1步骤的顺序分别解压安装例如:tar xzvf bugzilla-2.18.tar.g
29、z (解压bugzilla文件,在当前的目录下面自动替你生成了子目录。)安装:AppConfig-1.56.tar.gzCGI.pm-3.05.tar.gzTimeDate-1.16.tar.gzDBI-1.45.tar.gzDBD-mysql-2.9004.tar.gz(在执行 perl Makefile.PL之前,先运行一下unset LANG(排除掉语言选项的干扰) Template-Toolkit-2.14.tar.gz其中Template模块执行perl Makefile.PL会有交互提问DBI、DBD、TimeDate模块需要gcc和zlib(第一、二张碟中都装)的支持开始安装:解
30、压压缩包,cd到安装包文件夹;perl Makefile.PL 运行 makemake test检查所需要的文件是否都在make install执行make3.5bugzilla的配置3.5.1 配置apache1、运行阿帕奇;2、修改/etc/httpd/conf/httpd.conf文件,添加一行:ServerName 192.168.1.4:80将AddHandler cgi-script.cgi这一行的注释去掉创建一个目录权限的说明,最好放在apache文件的最后(相当于在iis当中配置虚拟目录):Options ExecCGI FollowSymLinksAllowOverride
31、LimitOrder allow,denyAllow from all3.5.2 把bugzilla的网站拷贝到/html/bugs的目录下:cp -r bugzilla. /var/www/html/bugs3.5.3 chown -R apache.apache /var/www/html/bugs (把该目录的权限开指定给Apache)3.5.4 再次执行 perl checksetup.pl(生成bugs数据库,如果以后还想重新生成,需要在checksetup之前删除bugs数据库,方法是:drop database bugs;)修改localconfig1、/var/www/html/bugzilla/localconfig文件,如下:$index_html=1;$db_user=root$db_pass= 2、会让你配置你的bugzilla的用户信息3.5.5 重启apache 3.5.5 将步骤3?从头到尾连贯执行。设置bugzilla登录用户附:未整理记住各种端口号