ifupdown编译
Ⅰ 如何在Centos下配置静态IP
先简述下什么是静态ip,什么是动态ip?
静态IP
在Internet上有千百万台主机,为了区分这些主机,人们给每台主机都分配了一个专门的地址,称为IP地址。通过IP地址就可以访问到每一台主机。IP地址由4部分数字组成,每部分数字对应于8位二进制数字,各部分之间用小数点分开。如某一台主机的IP地址为:211.152.65.112 ,Internet IP地址由NIC(Internet Network Information Center)统一负责全球地址的规划、管理;同时由Inter NIC、APNIC、RIPE三大网络信息中心具体负责美国及其它地区的IP地址分配。
固定IP:固定IP地址是长期固定分配给一台计算机使用的IP地址,一般是特殊的服务器才拥有固定IP地址。
动态IP:因为IP地址资源非常短缺,通过电话拨号上网或普通宽带上网用户一般不具备固定IP地址,而是由ISP动态分配暂时的一个IP地址。普通人一般不需要去了解动态IP地址,这些都是计算机系统自动完成的。
公有地址(Public address)由Inter NIC(Internet Network Information Center 因特网信息中心)负责。这些IP地址分配给注册并向Inter NIC提出申请的组织机构。通过它直接访问因特网。
私有地址(Private address)属于非注册地址,专门为组织机构内部使用。
以下列出留用的内部私有地址
A类 10.0.0.0--10.255.255.255
B类 172.16.0.0--172.31.255.255
C类 192.168.0.0--192.168.255.255
动态IP
通过Modem、ISDN、ADSL、有线宽频、小区宽频等方式上网的计算机,每次上网所分配到的IP地址都不相同,这就是动态IP地址。因为IP地址资源很宝贵,大部分用户都是通过动态IP地址上网的。普通人一般不需要去了解动态IP地址,这些都是计算机系统自动完成的。
通过以上的简述,大概了解了静态ip和动态ip的区别。
下面进入正题:
编译 vi /etc/sysconfig/network-scripts/ifcfg-eth0 文件,设置ip地址,子网掩码,和网关
<pre name="code" class="java">DEVICE=eth0
HWADDR=00:0C:29:73:09:46
TYPE=Ethernet
UUID=096eb8aa-af16-4032-a6b9-40d015ea663d
ONBOOT=yes
NM_CONTROLLED=yes
BOOTPROTO=static
IPADDR=192.168.46.98
NETMASK=255.255.255.0
GATEWAY=192.168.46.254</pre>
需要注意的是,当使用的是桥接模式时,子网掩码和网关,ip地址网段要和win上的一致:
如果没有网关的话,需要配置上对应的网关地址:
<pre name="code" class="java">[root@ganglia ~]# cat /etc/resolv.conf
search searchcn.msf
nameserver 192.168.32.2
nameserver 202.106.0.20
[root@ganglia ~]# </pre>
最后,重启网络,ping一些外网地址,测试是否通过。
下面是一些网络方面命令:
<pre name="code" class="java">ifdown eth0 //关闭网络
ifconfig eth0 down //关闭网络
ifup eth0 //开启网络
ifconfig eth0 up //开启网络
service network start //启动网络服务
service network stop //停止网络服务
service network restart //重启网络服务
service network status //查看网络服务状态
ifconfig -a //查看所有网卡的参数 </pre>
Ⅱ 红米2的busybox在哪个位置
#我解压tarball后,在目录下建立了build文件夹,我在build目录里开始编译。makeKBUILD_SRC=../-f../Makefiledefconfigsed-e's/.*FEATURE_PREFER_APPLETS.*/CONFIG_FEATURE_PREFER_APPLETS=y/'-i.configsed-e's/.*FEATURE_SH_STANDALONE.*/CONFIG_FEATURE_SH_STANDALONE=y/'-i.configmakemakeinstall#我没有执行这个安装命令,因为我不需要这个软件。#检测一下编译好的busyboxPATH=./busyboxash#这条命令的作用是清空PATH系统环境变量,防止执行系统目录(/bin/usr/bin等)下的可执行文件如lsrm等。这样,下面的ls命令,是来自busybox的ashshell,而非来自系统的bashshell。/busybox/busybox-1.21.1/build$lsMakefilebusybox_unstripped.outeditorsappletsconsole-_unstrippeddocsinitbusybox_unstripped.mape2fsprogslibbbmake过程的部分屏幕输出:CCnetworking/ifplugd.oCCnetworking/ifupdown.oCCnetworking/inetd.o#编译networking/inetd.o可以正常通过CCnetworking/interface.oCCutil-linux/volume_id/sysv.oCCutil-linux/volume_id/udf.oCCutil-linux/volume_id/util.oCCutil-linux/volume_id/volume_id.oCCutil-linux/volume_id/xfs.oARutil-linux/volume_id/lib.aLINKbusybox_unstrippedTryinglibraries:cryptmLibrarycryptisnotneeded,excludingitLibrarymisneeded,can'texcludeit(yet)Finallinkwith:mDOCbusybox.podDOCBusyBox.txtDOCbusybox.1DOCBusyBox.html你的问题是找不到头文件,那首先,你检查一下gcc的默认头文件搜索目录echo""|gcc--xc-v-E看输出是否包含/usr/include#include搜索从这里开始:/usr/lib/gcc/i686-linux-gnu/4.6/include/usr/local/include/usr/lib/gcc/i686-linux-gnu/4.6/include-fixed/usr/include/i386-linux-gnu/usr/include根据结果再做下一步判断。
Ⅲ Linux系统常用操作命令有哪些
ls 列出目录内容和文件信息 -a 用来显示所有的文件 -l 用来查看文件的各种属性 -r 逆字母母录显示 -R 递归显示每个子目录下的目录 -h 易读性 cat和more查看文本文件 cat 查看文件内容 -n 在每一行前显示行号 阅读文件的开头和结尾 head和tail head -n 20 显示文件的前20行 tail -n 20 显示文件后20行 less 更好的文本阅读工具 文件目录管理 mkdir:建立目录 -v显示创建目录的过程 -p用虚完整的创建字目录 rmdir:删处目录 rm:删处文件 -i 删除文件前提示 -r 递归的删除目录下所有的文件和子目录 -f 强形删处 -rf 不提示强形删除r目录 mv:移动和重命名目录 -i 提示移动时是否覆盖目录 cp : 复制文件和目录 - i 提示是否覆盖以存在的目录 -r 连同目录与文件一起复制 -p 保留权限属性 linux系统主要目录及其内容: /bin:构建最小系统所需要的命令 二进制命令 /boot:内核与启动文件 /dev:各设备文件 /etc:系统软件的启动和配置文件 /home:用户的主目录 /lib:C编译的库 /media: 可移动介质的安装点 /opt:可选的应用软件包 /proc:进程的映像 /root:超级用户root的主目录 /sbin:和系统操作有关的命令 /tmp:临时文件存放点 /usr:非系统的程序和命令 /var:系统专用的数据和配置文件值。 什么是相当路径和决定路径? 相对路径:一定是有/目录写起。 绝对路径:不是由/目录写起的。 linux严格区分大小写 . :当前目录 .. : 当前目录的上级目录 ~ : 当前的用户的家目录 locole -a 显示linux 支持的语言软件包 logout 退出命令 tty 显示当前登录的终端 startx & 切换用户 shift+ctrl+c 复制 shift+ctrl +v 粘贴 终端:终端分为虚拟终端,图像终端,为终端 快速切换用户:su 语法 su[option][arguments] history 查看当前操作的命令历史 -c 删除历史 !n 查看操作命令 !! 重复 上一条命令 !—n重复倒数的n条命令
Ⅳ UBUNTU LINUX的拨号软件
ubuntu有内置的pppoe拨号软件, 手动添加PPPOE的方法如下:首先打开终端,输入命令:sudo pppoeconf
然后看到类似这样的配置窗口,一路进行下去就行了,中途有个地方提示您需要输入adsl用户名和密码。
以后,要手工拨号上网,打开终端,输入命令:sudo pon dsl-provider
一般情况下,一次拨通后以后登陆ubuntu都会自动拨通上网的了,不用每次都输入命令拨号。
如果没有自动连接,可能是您刚才的配置文件没有正确保存,那我们可以这样做:
打开/etc/ppp/peers/dsl-provider后,手工加了一行password ****的记录后,下次就自动连接了。
手工断线的命令:sudo poff
查看连接情况的命令:plog 和 ifconfig ppp0
查询本机上网IP的命令:ifconfig ppp0
Ⅳ linux的常用命令有那些
linux常用命令(基础)
1. man 对你熟悉或不熟悉的命令提供帮助解释
eg:man ls 就可以查看ls相关的用法
注:按q键或者ctrl+c退出,在linux下可以使用ctrl+c终止当前程序运行。
2. ls 查看目录或者文件的属*,列举出任一目录下面的文件
eg: ls /usr/man
ls -l
a.d表示目录(directory),如果是一个”-”表示是文件,如果是l则表示是一个连接文件(link)
b.表示文件或者目录许可权限.分别用可读(r),可写(w),可运行(x)。
3. cp 拷贝文件
eg: cp filename1 filename2 //把filename1拷贝成filename2
cp 1.c netseek/2.c //将1.c拷到netseek目录下命名为2.c
4. rm 删除文件和目录
eg: rm 1.c //将1.c这个文件删除
5. mv 移走目录或者改文件名
eg: mv filename1 filename2 //将filename1 改名为filename2
mv qib.tgz ../qib.tgz //移到上一级目录
6. cd 改变当前目录 pwd 查看当前所在目录完整路径
eg: pwd //查看当前所在目录路径
cd netseek //进入netseek这个目录
cd //退出当前目录
7. cat,more命令
将某个文件的内容显示出来。两个命令所不同的是:cat把文件内容一直打印出来,而 more则分屏显示
eg; cat>1.c //就可以把代码粘帖到1.c文件里,按ctrl+d 保存代码。
cat 1.c 或more 1.c //都可以查看里面的内容。
gcc -o 1 1.c //将1.c编译成.exe文件,我们可以用此命编译出代码。
8.chmod 命令 权限修改 用法:chmod 一位8进制数 filename。
eg: chmod u+x filenmame //只想给自己运行,别人只能读
//u表示文件主人, g 表示文件文件所在组。 o 表示其他人 ;r 表可读,w 表可写,x 表可以运行
chmod g+x filename //同组的人来执行
9. clear,date命令
clear:清屏,相当与DOS下的cls;date:显示当前时间。
10. mount 加载一个硬件设备
用法:mount [参数] 要加载的设备 载入点
eg: mount /dev/cdrom
cd /mnt/cdrom //进入光盘目录
11. su 在不退出登陆的情况下,切换到另外一个人的身份
用法: su -l 用户名(如果用户名缺省,则切换到root状态)
eg:su -l netseek (切换到netseek这个用户,将提示输入密码)
12.whoami,whereis,which,id
//whoami:确认自己身份
//whereis:查询命令所在目录以及帮助文档所在目录
//which:查询该命令所在目录(类似whereis)
//id:打印出自己的UID以及GID。(UID:用户身份唯一标识。GID:用户组身份唯一标识。每一个用户只能有一个唯一的UID和 GID)
eg: whoami //显示你自已登陆的用户名
whereis bin 显示bin所在的目录,将显示为:/usr/local/bin
which bin
13. grep,find
grep:文本内容搜索;find:文件或者目录名以及权限属主等匹配搜索
eg: grep success * /*查找当前目录下面所有文件里面含有success字符的文件
14. kill 可以杀死某个正在进行或者已经是dest状态的进程
eg; ps ax
15. passwd 可以设置口令
16. history 用户用过的命令
eg: history //可以显示用户过去使用的命令
17. !! 执行最近一次的命令
18. mkdir命令
eg: mkdir netseek //创建netseek这个目录
19. tar 解压命令
eg: tar -zxvf nmap-3.45.tgz //将这个解压到nmap-3.45这个目录里
20. finger 可以让使用者查询一些其他使用者的资料
eg: finger //查看所用用户的使用资料
finger root //查看root的资料
Ⅵ 如何在LINUX中给一块网卡绑定两个IP地址
一.安装和配置网络设备
在安装linux时,如果你有网卡,安装程序将会提示你给出tcp/ip网络的配置参数,如本机的 ip地址,缺省网关的ip地址,DNS的ip地址等等.根据这些配置参数,安装程序将会自动把网卡(linux系统首先要支持)驱动程序编译到内核中去.但是我们一定要了解加载网卡驱动程序的过程,那么在以后改变网卡,使用多个网卡的时候我们就会很容易的操作.网卡的驱动程序是作为模块加载到内核中去的,所有linux支持的网卡驱动程序都是存放在目录/lib/moles/(linux版本号)/net/ ,例如inter的82559系列10/100M自适应的引导网卡的驱动程序是eepro100.o,3COM的3C509 ISA网卡的驱动程序是3C509.o,DLINK的pci 10网卡的驱动程序是via-rhine.o,NE2000兼容性网卡的驱动程序是ne2k-pci.o和ne.o.在了解了这些基本的驱动程序之后,我们就可以通过修改模块配置文件来更换网卡或者增加网卡.
1. 修改/etc/conf.moles 文件
这个配置文件是加载模块的重要参数文件,大家先看一个范例文件
#/etc/conf.moles
alias eth0 eepro100
alias eth1 eepro100
这个文件是一个装有两块inter 82559系列网卡的linux系统中的conf.moles中的内容.alias命令表明以太口(如eth0)所具有的驱动程序的名称,alias eth0 eepro100说明在零号以太网口所要加载的驱动程序是eepro100.o.那么在使用命令 modprobe eth0的时候,系统将自动将eepro100.o加载到内核中.对于pci的网卡来说,由于系统会自动找到网卡的io地址和中断号,所以没有必要在conf.moles中使用选项options来指定网卡的io地址和中断号.但是对应于ISA网卡,则必须要在conf.moles中指定硬件的io地址或中断号, 如下所示,表明了一块NE的ISA网卡的conf.moles文件.
alias eth0 ne
options ne io=0x300 irq=5
在修改完conf.moles文件之后,就可以使用命令来加载模块,例如要插入inter的第二块网卡:
#insmod /lib/moles/2.2.14/net/eepro100.o
这样就可以在以太口加载模块eepro100.o.同时,还可以使用命令来查看当前加载的模块信息:
[root@ice /etc]# lsmod
Mole Size Used by
eepro100 15652 2 (autoclean)
返回结果的含义是当前加载的模块是eepro100,大小是15652个字节,使用者两个,方式是自动清除.
2. 修改/etc/lilo.conf文件
在一些比较新的linux版本中,由于操作系统自动检测所有相关的硬件,所以此时不必修改/etc/lilo.conf文件.但是对于ISA网卡和老的版本,为了在系统初始化中对新加的网卡进行初始化,可以修改lilo.conf文件.在/etc/lilo.conf文件中增加如下命令:
append="ether=5,0x240,eth0 ether=7,0x300,eth1"
这条命令的含义是eth0的io地址是0x240,中断是5,eth1的io地址是0x300,中断是7.
实际上,这条语句来自在系统引导影像文件时传递的参数,
LILO: linux ether=5,0x240,eth0 ether=7,0x300,eth1
这种方法也同样能够使linux系统配置好两个网卡.类似的,在使用三个以上网卡的时候,也可以依照同样的方法.
在配置好网卡之后,就应该配置TCP/IP的参数,在一般情况下,在安装linux系统的同时就会提示你配置网络参数.但是之后如果我们想要修改网络设置,可以使用如下的命令:
#ifconfig eth0 A.B.C.D netmask E.F.G.H
A.B.C.D 是eth0的IP地址,E.F.G.H是网络掩码.
其实,在linux系统中我们可以给一块网卡设置多个ip地址,例如下面的命令:
#ifconfig eth0:1 202.112.11.218 netmask 255.255.255.192
然后,使用命令#ifconfig -a 就可以看到所有的网络接口的界面:
eth0 Link encap:Ethernet HWaddr 00:90:27:58:AF:1A
inet addr:202.112.13.204 Bcast:202.112.13.255 Mask:255.255.255.192
UP BROADCAST RUNNING MULTICAST MTU:1500 Metric:1
RX packets:435510 errors:0 dropped:0 overruns:0 frame:2
TX packets:538988 errors:0 dropped:0 overruns:0 carrier:0
collisions:318683 txqueuelen:100
Interrupt:10 Base address:0xc000
eth0:1 Link encap:Ethernet HWaddr 00:90:27:58:AF:1A
inet addr:202.112.11.218 Bcast:202.112.11.255 Mask:255.255.255.192
UP BROADCAST RUNNING MULTICAST MTU:1500 Metric:1
Interrupt:10 Base address:0xc000
lo Link encap:Local Loopback
inet addr:127.0.0.1 Mask:255.0.0.0
UP LOOPBACK RUNNING MTU:3924 Metric:1
RX packets:2055 errors:0 dropped:0 overruns:0 frame:0
TX packets:2055 errors:0 dropped:0 overruns:0 carrier:0
collisions:0 txqueuelen:0
我们看到网络接口有三个,eth0 , eth0:1,lo,eth0是真实的以太网络接口,eth0:1和eth0是同一块网卡,只不过绑定了另外的一个地址,lo是会送地址。eth0和eth0:1可以使用不同网段的ip地址,这在同一个物理网段却使用不同的网络地址的时候十分有用。
另外,网卡有一种模式是混杂模式(prosimc),在这个模式下,网卡将会接收网络中所有的数据包,一些linux下的网络监听工具例如tcpmp,snort等等都是把网卡设置为混杂模式.
ifconfig命令可以在本次运行的时间内改变网卡的ip地址,但是如果系统重新启动,linux仍然按照原来的默认的设置启动网络接口。这时候,可以使用netconfig或netconf命令来重新设置默认网络参数。netconfig 命令是重新配置基本的tcp/ip参数,参数包括是否配置为动态获得ip地址(dhcpd和bootp),网卡的ip地址,网络掩码,缺省网关和首选的域名服务器地址。netconf命令可以详细的配置所有网络的参数,分为客户端任务,服务器端任务和其他的配置三个部分,在客户端的配置中,主要包括基本主机的配置(主机名,有效域名,网络别名,对应相应网卡的ip地址,网络掩码,网络设备名,网络设备的内核驱动程序),DNS地址配置,缺省网关的地址配置,NIS地址配置,ipx接口配置,ppp/slip的配置等等。在服务器端配置中,主要包括NFS的配置,DNS的配置,ApacheWebServer配置,Samba的配置和Wu-ftpd的配置。在其他的配置选项中,一个是关于/etc/hosts文件中的主机配置,一个是关于/etc/networks文件中的网络配置信息,最后是关于使用linuxconf配置的信息。
在linuxconf命令下,同样也可以配置网络信息,但是大家可以发现,linuxconf程序是调用netconf来进行网络配置的。
另外,在/etc/sysconfig/network-scripts目录下存放着系统关于网络的配置文件,范例如下:
:<br><br>
ifcfg-eth0* ifdown-post* ifup-aliases* ifup-ppp*
ifcfg-eth1* ifdown-ppp* ifup-ipx* ifup-routes*
ifcfg-lo* ifdown-sl* ifup-plip* ifup-sl*
ifdown@ ifup@ ifup-post* network-functions
ifcfg-eth0是以太口eth0的配置信息,它的内容如下:
DEVICE="eth0" /*指明网络设备名称*/
IPADDR="202.112.13.204" /*指明网络设备的ip地址*/
NETMASK="255.255.255.192" /*指明网络掩码*/
NETWORK=202.112.13.192 /*指明网络地址*/
BROADCAST=202.112.13.255 /*指明广播地址*/
ONBOOT="yes" /*指明在系统启动时是否激活网卡*/
BOOTPROTO="none" /*指明是否使用bootp协议*/
所以,我们也可以修改这个文件来进行linux下网络参数的改变。[/SIZE]
--------------------------------------------------------------------------------
二 网络服务的配置
在这一部分,我们并不是详细的介绍具体的网络服务器(DNS,FTP,WWW,SENDMAIL)的配置(那将是巨大的篇幅),而是介绍一下与linux网络服务的配置相关的文件.
1. LILO的配置文件
在linux系统中,有一个系统引导程序,那就是lilo(linux loadin),利用lilo可以实现多操作系统的选择启动.它的配置文件是/etc/lilo.conf.在这个配置文件中,lilo的配置参数主要分为两个部分,一个是全局配置参数,包括设置启动设备等等.另一个是局部配置参数,包括每个引导影像文件的配置参数.在这里我就不详细介绍每个参数,特别的仅仅说明两个重要的参数:password和restricted选项,password选项为每个引导的影像文件加入口令保护.
我们都知道,在linux系统中有一个运行模式是单用户模式,在这个模式下,用户是以超级用户的身份登录到linux系统中.人们可以通过在lilo引导的时候加入参数(linux single 或linux init 0)就可以不需要口令直接进入单用户模式的超级用户环境中,这将是十分危险的.所以在lilo.conf中增加了password的配置选项来为每个影像文件增加口令保护.
你可以在全局模式中使用password选项(对所有影像文件都加入相同的口令),或者为每个单独的影像文件加入口令.这样一来,在每次系统启动时,都会要求用户输入口令.也许你觉得每次都要输入口令很麻烦,可以使用restricted选项,它可以使lilo仅仅在linux启动时输入了参数(例如 linux single)的时候才会检验密码.这两个选项可以极大的增加系统的安全性,建议在lilo.conf文件中设置它们.
由于password在/etc/lilo.conf文件是以明文存放的,所以必须要将/etc/lilo.conf文件的属性改为仅仅root可读(0400).
另外,在lilo的早期版本中,存在着引导扇区必须存放到前1024柱面的限制,在lilo的2.51版本中已经突破了这个限制,同时引导界面也变成了图形界面更加直观.将最新版本下载解压后,使用命令make" 后,使用命令make install即可完成安装.注意: 物理安全才是最基本的安全,即使在lilo.conf中增加了口令保护,如果没有物理安全,恶意闯入者可以使用启动软盘启动linux系统.
2. 域名服务的配置文件
(1)/etc/HOSTNAME 在这个文件中保存着linux系统的主机名和域名.范例文件
ice.xanet.e.cn
这个文件表明了主机名ice,域名是xanet.e.cn
(2)/etc/hosts和/etc/networks文件 在域名服务系统中,有着主机表机制,/etc/hosts和/etc/networks就是主机表发展而来在/etc/hosts中存放着你不需要DNS系统查询而得的主机ip地址和主机名的对应,下面是一个范例文件:
# ip 地址 主机名 别名
127.0.0.1 localhosts loopback
202.117.1.13 www.xjtu.e.cn www
202.117.1.24 ftp.xjtu.e.cn ftp
在/etc/networks 中,存放着网络ip地址和网络名称的一一对应.它的文件格式和/etc/hosts是类似的
(3)/etc/resolv.conf 这个文件是DNS域名解析器的主要配置文件,它的格式十分简单,每一行由一个主关键字组成./etc/resolv.conf的关键字主要有:
domain 指明缺省的本地域名,
search 指明了一系列查找主机名的时候搜索的域名列表,
nameserver 指明了在进行域名解析时域名服务器的ip地址.下面给出一个范例文件:
#/etc/resolv.conf
domain xjtu.e.cn
search xjtu.e.cn e.cn
nameserver 202.117.0.20
nameserver 202.117.1.9
(4)/etc/host.conf 在系统中同时存在着DNS域名解析和/etc/hosts的主机表机制时,由文件/etc/host.conf来说明了解析器的查询顺序.范例文件如下:
#/etc/host.conf
order hosts,bind #解析器查询顺序是文件/etc/hosts,然后是DNS
multi on #允许主机拥有多个ip地址
nospoof on #禁止ip地址欺骗
3. DHCP的配置文件
/etc/dhcpd.conf是DHCPD的配置文件,我们可以通过在/etc/dhcpd.conf文件中的配置来实现在局域网中动态分配ip地址,一台linux主机设置为dhcpd服务器,通过鉴别网卡的MAC地址来动态的分配ip地址.范例文件如下:
option domain-name "chinapub.com";
use-host-decl-names off;
subnet 210.27.48.0 netmask 255.255.255.192
{
filename "/tmp/image";
host dial_server
{
hardware ethernet 00:02:b3:11:f2:30;
fixed-address 210.27.48.8;
filename "/tmp/image";
}
}
在这个文件中,最主要的是通过设置的硬件地址来鉴别局域网中的主机,并分配给它指定的ip地址,hardware ethernet 00:02:b3:11:f2:30指定要动态分配ip的主机得网卡的MAC地址,fixed-address 210.27.48.8指定分配其ip地址。filename "/tmp/image"是通过tftp服务,主机所要得到的影像文件,可以通过得到的影像文件来引导主机启动。
4. 超级守候进程inetd的配置
在linux系统中有一个超级守候进程inetd,inetd监听由文件/etc/services指定的服务的端口,inetd根据网络连接请求,调用相应的服务进程来相应请求.在这里有两个文件十分重要,/etc/inetd.conf和/etc/services,文件/etc/services定义linu系统中所有服务的名称,协议类型,服务的端口等等信息,/etc/inetd.conf是inetd的配置文件,由它来指定那些服务可以由inetd来监听,以及相应的服务进程的调用命令.首先介绍一下/etc/services文件,/etc/services文件是一个服务名和服务端口对应的数据库文件,如下面所示:/etc/services文件
(实际上,以上仅仅是/etc/services的一部分,限于篇幅没有全部写出)
在这个文件中,为了安全考虑,我们可以修改一些常用服务的端口地址,例如我们可以把telnet服务的端口地址改为52323,www的端口改为8080,ftp端口地址改为2121等等,这样仅仅需要在应用程序中修改相应的端口即可.这样可以提高系统的安全性.
/etc/inetd.conf文件是inetd的配置文件, 首先要了解一下linux服务器到底要提供哪些服务。一个很好的原则是" 禁止所有不需要的服务",这样黑客就少了一些攻击系统的机会./etc/inetd.conf范例文件
大家看到的这个文件已经修改过的文件,除了telnet 和ftp服务,其他所有的服务都被禁止了.在修改了/etc/inetd.conf之后,使用命令kill -HUP (inetd的进程号),使inetd重新读取配置文件并重新启动即可.
5. ip route的配置
利用linux,一台普通的微机也可以实现高性价比的路由器.首先让我们了解一下linux的查看路由信息的命令:
[root@ice /etc]# route -n
Kernel IP routing table
Destination Gateway Genmask Flags Metric Ref Use Iface
202.112.13.204 0.0.0.0 255.255.255.255 UH 0 0 0 eth0
202.117.48.43 0.0.0.0 255.255.255.255 UH 0 0 0 eth1
202.112.13.192 202.112.13.204 255.255.255.192 UG 0 0 0 eth0
202.112.13.192 0.0.0.0 255.255.255.192 U 0 0 0 eth0
202.117.48.0 202.117.48.43 255.255.255.0 UG 0 0 0 eth1
202.117.48.0 0.0.0.0 255.255.255.0 U 0 0 0 eth1
127.0.0.0 0.0.0.0 255.0.0.0 U 0 0 0 lo
0.0.0.0 202.117.48.1 0.0.0.0 UG 0 0 0 eth1
命令netstat -r n 得到输出结果和route -n是一样的.它们操作的都是linux 内核的路由表.
命令cat /proc/net/route的输出结果是以十六进制表示的路由表.
[root@ice /etc]# cat /proc/net/route
Iface Destination Gateway Flags RefCnt Use Metric Mask
eth0 CC0D70CA 00000000 0005 0 0 0 FFFFFFF
eth1 2B3075CA 00000000 0005 0 0 0 FFFFFFF
eth0 C00D70CA CC0D70CA 0003 0 0 0 C0FFFFF
eth0 C00D70CA 00000000 0001 0 0 0 C0FFFFF
eth1 003075CA 2B3075CA 0003 0 0 0 00FFFFF
eth1 003075CA 00000000 0001 0 0 0 00FFFFF
lo 0000007F 00000000 0001 0 0 0 000000F
eth1 00000000 013075CA 0003 0 0 0 0000000
通过计算可以知道,下面的这个路由表(十六进制)和前面的路由表(十进制)是一致的.
我们还可以通过命令route add (del )来操作路由表,增加和删除路由信息.
除了上面的静态路由,linux还可以通过routed来实现rip协议的动态路由.我们只需要打开linux的路由转发功能,在/proc/sys/net/ipv4/ip_forward文件中增加一个字符1.
三.网络的安全设置
在这一部分,再次强调一定要修改/etc/inetd.conf,安全的策略是禁止所有不需要的服务.除此之外,还有以下几个文件和网络安全相关.
(1)./etc/ftpusers ftp服务是一个不太安全的服务,所以/etc/ftpusers限定了不允许通过ftp访问linux主机的用户列表.当一个ftp请求传送到ftpd,ftpd首先检查用户名,如果用户名在/etc/ftpusers中,则ftpd将不会允许该用户继续连接.范例文件如下:
# /etc/ftpusers - users not allowed to login via ftp
root
bin
daemon
adm
lp
sync
shutdown
halt
mail
news
uucp
operator
games
nobody
nadmin
(2)/etc/securetty 在linux系统中,总共有六个终端控制台,我们可以在/etc/securetty中设置哪个终端允许root登录,所有其他没有写入文件中的终端都不允许root登录.范例文件如下:
# /etc/securetty - tty's on which root is allowed to login
tty1
tty2
tty3
tty4
(3)tcpd的控制登录文件/etc/hosts.allow和/etc/hosts.deny
在tcpd服务进程中,通过在/etc/hosts.allow和/etc/hosts.deny中的访问控制规则来控制外部对linux主机的访问.它们的格式都是
service-list : hosts-list [ : command]
服务进程的名称 : 主机列表 可选,当规则满足时的操作
在主机表中可以使用域名或ip地址,ALL表示匹配所有项,EXCEPT表示除了某些项, PARANOID表示当ip地址和域名不匹配时(域名伪装)匹配该项.
范例文件如下:
#
# hosts.allow This file describes the names of the hosts which are
# allowed to use the local INET services, as decided
# by the '/usr/sbin/tcpd' server.
#
ALL : 202.112.13.0/255.255.255.0
ftpd: 202.117.13.196
in.telnetd: 202.117.48.33
ALL : 127.0.0.1
在这个文件中,网段202.112.13.0/24可以访问linux系统中所有的网络服务,主机202.117.13.196只能访问ftpd服务,主机202.117.48.33只能访问telnetd服务.本机自身可以访问所有网络服务.
在/etc/hosts.deny文件中禁止所有其他情况:
#/etc/hosts.deny
ALL : DENY : spawn (/usr/bin/finger -lp @%h | /bin/mail -s "Port Denial noted in %d-%h" root)
在/etc/hosts.allow中,定义了在所有其他情况下,linux所应该执行的操作.spawn选项允许linux系统在匹配规则中执行指定的shell命令,在我们的例子中,linux系统在发现无授权的访问时,将会发送给超级用户一封主题是"Port Denial noted in %d-%h"的邮件,在这里,我们先要介绍一下allow和deny文件中的变量扩展.
(4)/etc/issue和/etc/issue.net
在我们登录linux系统中的时候,我们常常可以看到我们linux系统的版本号等敏感信息.在如今的网络攻击行为中,许多黑客首先要收集目标系统的信息,版本号等就是十分重要的信息,所以在linux系统中一般要把这些信息隐藏起来./etc/issue和/etc/issue.net就是存放这些信息的文件.我们可以修改这些文件来隐藏版本信息.
另外,在每次linux重新启动的时候,都会在脚本/etc/rc.d/rc.local中再次覆盖上面那两个文件./etc/rc.d/rc.local文件的范例如下:
# This script will be executed *after* all the other init scripts.
# You can put your own initialization stuff in here if you don't
# want to do the full Sys V style init stuff.
if [ -f /etc/redhat-release ]; then
R=$(cat /etc/redhat-release)
arch=$(uname -m)
a="a"
case "_$arch" in
_a*) a="an";;
_i*) a="an";;
esac
NUMPROC=`egrep -c "^cpu[0-9]+" /proc/stat`
if [ "$NUMPROC" -gt "1" ]; then
SMP="$NUMPROC-processor "
if [ "$NUMPROC" = "8" -o "$NUMPROC" = "11" ]; then
a="an"
else
a="a"
fi
fi
# This will overwrite /etc/issue at every boot. So, make any changes you
# want to make to /etc/issue here or you will lose them when you reboot.
#echo "" > /etc/issue
#echo "$R" >> /etc/issue
# echo "Kernel $(uname -r) on $a $SMP$(uname -m)" >> /etc/issue
cp -f /etc/issue /etc/issue.net
echo >> /etc/issue
在文件中黑体的部分就是得到系统版本信息的地方.一定要将他们注释掉.
(5)其他配置
在普通微机中,都可以通过ctl+alt+del三键的组合来重新启动linux.这样是十分不安全的,所以要在/etc/inittab文件中注释该功能:
# Trap CTRL-ALT-DELETE
#ca::ctrlaltdel:/sbin/shutdown -t3 -r now
参考资料:http://bbs.lupa.gov.cn/htm_data/89/0510/5071.html
Ⅶ linux 使用方法
楼主如果不专门学习一下Linux是不会懂的,英语也要过三级才能基本操作。 LINUX使用方法!!! linux目录架构
/ 根目录
/bin 常用的命令 binary file 的目录
/boot 存放系统启动时必须读取的档案,包括核心 (kernel) 在内
/boot/grub/menu.lst GRUB设置
/boot/vmlinuz 内核
/boot/initrd 核心解压缩所需 RAM Disk
/dev 系统周边设备
/etc 系统相关设定文件
/etc/DIR_COLORS 设定颜色
/etc/HOSTNAME 设定用户的节点名
/etc/NETWORKING 只有YES标明网络存在
/etc/host.conf 文件说明用户的系统如何查询节点名
/etc/hosts 设定用户自已的IP与名字的对应表
/etc/hosts.allow 设置允许使用inetd的机器使用
/etc/hosts.deny 设置不允许使用inetd的机器使用
/etc/hosts.equiv 设置远端机不用密码
/etc/inetd.conf 设定系统网络守护进程inetd的配置
/etc/gateways 设定路由器
/etc/protocols 设定系统支持的协议
/etc/named.boot 设定本机为名字服务器的配置文件
/etc/sysconfig/network-scripts/ifcfg-eth0 设置IP
/etc/resolv.conf 设置DNS
/etc/X11 X Window的配置文件,xorg.conf 或 XF86Config 这两个 X Server 的设定档
/etc/fstab 记录开机要mount的文件系统
/etc/inittab 设定系统启动时init进程将把系统设置成什么样的runlevel
/etc/issue 记录用户登录前显示的信息
/etc/group 设定用户的组名与相关信息
/etc/passwd 帐号信息
/etc/shadow 密码信息
/etc/sudoers 可以sudo命令的配置文件
/etc/securetty 设定哪些终端可以让root登录
/etc/login.defs 所有用户登录时的缺省配置
/etc/exports 设定NFS系统用的
/etc/init.d/ 所有服务的预设启动 script 都是放在这里的,例如要启动或者关闭
/etc/xinetd.d/ 这就是所谓的 super daemon 管理的各项服务的设定档目录
/etc/modprobe.conf 内核模块额外参数设定
/etc/syslog.conf 日志设置文件
/home 使用者家目录
/lib 系统会使用到的函数库
/lib/moles kernel 的相关模块
/var/lib/rpm rpm套件安装处
/lost+found 系统不正常产生错误时,会将一些遗失的片段放置于此目录下
/mnt 外设的挂载点
/media 与/mnt类似
/opt 主机额外安装的软件
/proc 虚拟目录,是内存的映射
/proc/version 内核版本
/proc/sys/kernel 系统内核功能
/root 系统管理员的家目录
/sbin 系统管理员才能执行的指令
/srv 一些服务启动之后,这些服务所需要取用的资料目录
/tmp 一般使用者或者是正在执行的程序暂时放置档案的地方
/usr 最大的目录,存许应用程序和文件
/usr/X11R6: X-Window目录
/usr/src: Linux源代码
/usr/include:系统头文件
/usr/openwin 存放SUN的OpenWin
/usr/man 在线使用手册
/usr/bin 使用者可执行的 binary file 的目录
/usr/local/bin 使用者可执行的 binary file 的目录
/usr/lib 系统会使用到的函数库
/usr/local/lib 系统会使用到的函数库
/usr/sbin 系统管理员才能执行的指令
/usr/local/sbin 系统管理员才能执行的指令
/var 日志文件
/var/log/secure 记录登入系统存取资料的档案,例如 pop3, ssh, telnet, ftp 等都会记录在此档案中
/var/log/wtmp 记录登入者的讯息资料, last
/var/log/messages 几乎系统发生的错误讯息
/var/log/boot.log 记录开机或者是一些服务启动的时候,所显示的启动或关闭讯息
/var/log/maillog 纪录邮件存取或往来( sendmail 与 pop3 )的使用者记录
/var/log/cron 记录 crontab 这个例行性服务的内容
/var/log/httpd, /var/log/news, /var/log/mysqld.log, /var/log/samba, /var/log/procmail.log:
分别是几个不同的网路服务的记录档
一些常用的基本命令:
uname -a 查看内核版本
ls -al 显示所有文件的属性
pwd 显示当前路径
cd - 返回上一次目录 cd ~ 返回主目录
date s 设置时间、日期
cal 显示日历 cal 2006
bc 计算器具
man & info 帮助手册
locale 显示当前字体 locale -a 所有可用字体 /etc/sysconfig/i18n设置文件
LANG=en 使用英文字体
sync 将数据同步写入硬盘
shutdonw -h now & half & poweroff 关机
reboot 重启
startx & init 5 进入图形接口
/work & ?work 向上、下查找文档内容
chgrp 改变档案群组 chgrp testing install.log
chown 改变所属人 chown root:root install.log
chmod 改变属性 chmod 777 install.log read=4 write=2 execute=1
cp 复制 cp filename
rm 删除文件 rm -rf filename 强制删除文件
rmdir 删除文件夹
mv 移动 mv 123.txt 222.txt 重命名
mkdir 创建文件夹
touch 创建文件 更新当前时间
cat 由第一行开始显示 cat |more 分页
nl 在内容前加行号
more & less 一面一面翻动
head -n filename 显示第N行内容
tail -n filename 显示后N行内容
od 显示非纯文档
df -h 显示分区空间
显示目录或文件的大小
fdisk 分区设置 fdisk -l /dev/hda 显示硬盘分区状态
mkfs 建立各种文件系统 mkfs -t ext3 /dev/ram15
fsck 检查和修复LINUX档案
ln 硬链接 ln -s 软件链接
whereis 查找命令
locate 查找
find 查找 find / -name "***.***"
which 查看工具
whoami 显示当前用户
gcc -v 查看GCC版本
chattr +i filename 禁止删除 chattr -i filename 取消禁止
lsattr 显示隐藏档属性
updatedb 更新资料库
mke2fs 格式化 mkfs -t ext3
dd if=/etc/passwd of=/tmp/passwd.bak 备份
mount 列出系统所有的分区
mount -t iso9660 /dev/cdrom /mnt/cdrom 挂载光盘
mount -t vfat /dev/fd0 /mnt/floppy 挂载软盘
mount -t vfat -o iocharset=utf8,umask=000 /dev/hda2 /mnt/hda2 挂载fat32分区
mount -t ntfs -o nls=utf8,umask=000 /dev/hda3 /mnt/hda3 挂载ntfs分区
Linux-NTFS Project: http://linux-ntfs.sourceforge.net/
umount /mnt/hda3 缷载
ifconfig 显示或设置网络设备
service network restart 重启网卡
ifdown eth0 关闭网卡
ifup eth0 开启网卡
clear 清屏
history 历史记录 !55 执行第55个指令
stty 设置终端 stty -a
fdisk /mbr 删除GRUB
at 仅进行一次的工作排程
crontab 循环执行的例行性命令 [e]编辑,[l]显示,[r]删除任务
& 后台运行程序 tar -zxvf 123.tar.gz & --------->后台运行
jobs 观看后台暂停的程序 jobs -l
fg 将后台程序调到前台 fg n ------>n是数字,可以指定进行那个程序
bg 让工作在后台运行
kill 结束进程 kill -9 PID [9]强制结束,[15]正常结束,[l]列出可用的kill信号
ps aux 查看后台程序
top 查看后台程序 top -d 2 每两秒更新一次 top -d 2 -p10604 观看某个PID
top -b -n 2 > /tmp/top.txt ----->将 top 的资讯进行 2 次,然后将结果输出到 /tmp/top.txt
pstree 以树状图显示程序 [A]以 ASCII 来连接, 列出PID, [p]列出帐号
killall 要删除某个服务 killall -9 httpd
free 显示内存状态 free -m -------->以M为单位显示
uptime 显示目前系统开机时间
netstat 显示网络状态 netstat -tulnp------>找出目前系统上已在监听的网路连线及其 PID
dmesg 显示开机信息 demsg | more
nice 设置优先权 nice -n -5 vi & ----->用 root 给一个 nice 植为 -5 ,用于执行 vi
renice 调整已存在优先权
runlevel 显示目前的runlevel
depmod 分析可载入模块的相依性
lsmod 显示已载入系统的模块
modinfo 显示kernel模块的信息
insmod 载入模块
modprobe 自动处理可载入模块
rmmod 删除模块
chkconfig 检查,设置系统的各种服务 chkconfig --list ----->列出各项服务状态
ntsysv 设置系统的各种服务
cpio 备份文件
压缩命令:
*.Z compress 程式压缩的档案;
*.bz2 bzip2 程式压缩的档案;
*.gz gzip 程式压缩的档案;
*.tar tar 程式打包的资料,并没有压缩过;
*.tar.gz tar 程式打包的档案,其中并且经过 gzip 的压缩
compress filename 压缩文件 加[-d]解压 uncompress
gzip filename 压缩 加[-d]解压 zcat 123.gz 查看压缩文件内容
bzip2 -z filename 压缩 加[-d]解压 bzcat filename.bz2 查看压缩文件内容
tar -cvf /home/123.tar /etc 打包,不压缩
tar -xvf 123.tar 解开包
tar -zxvf /home/123.tar.gz 以gzip解压
tar -jxvf /home/123.tar.bz2 以bzip2解压
tar -ztvf /tmp/etc.tar.gz 查看tar内容
cpio -covB > [file|device] 份份
cpio -icv < [file|device] 还原</U>
Ⅷ ubuntu 12.0.4编译busybox出错,求解答
#我解压tarball后,在目录下建立了build文件夹,我在build目录里开始编译。
make KBUILD_SRC=../ -f ../Makefile defconfig
sed -e 's/.*FEATURE_PREFER_APPLETS.*/CONFIG_FEATURE_PREFER_APPLETS=y/' -i .config
sed -e 's/.*FEATURE_SH_STANDALONE.*/CONFIG_FEATURE_SH_STANDALONE=y/' -i .config
make
make install #我没有执行这个安装命令,因为我不需要这个软件。
#检测一下编译好的busybox
PATH= ./busybox ash #这条命令的作用是清空PATH系统环境变量,防止执行系统目录(/bin /usr/bin等)下的可执行文件 如 ls rm等。
这样,下面的ls命令,是来自busybox 的 ash shell,而非来自系统的bash shell。
/busybox/busybox-1.21.1/build $ ls
Makefile busybox_unstripped.out editors
applets console-tools fintils
archival coreutils include
busybox debianutils include2
busybox_unstripped docs init
busybox_unstripped.map e2fsprogs libbb
make过程的部分屏幕输出:
CC networking/ifplugd.o
CC networking/ifupdown.o
CC networking/inetd.o #编译 networking/inetd.o 可以正常通过
CC networking/interface.o
......
CC util-linux/volume_id/sysv.o
CC util-linux/volume_id/udf.o
CC util-linux/volume_id/util.o
CC util-linux/volume_id/volume_id.o
CC util-linux/volume_id/xfs.o
AR util-linux/volume_id/lib.a
LINK busybox_unstripped
Trying libraries: crypt m
Library crypt is not needed, excluding it
Library m is needed, can't exclude it (yet)
Final link with: m
DOC busybox.pod
DOC BusyBox.txt
DOC busybox.1
DOC BusyBox.html
你的问题是找不到头文件,那首先,你检查一下 gcc 的默认头文件搜索目录
echo "" | gcc - -xc -v -E
看输出是否包含/usr/include
#include <...> 搜索从这里开始:
/usr/lib/gcc/i686-linux-gnu/4.6/include
/usr/local/include
/usr/lib/gcc/i686-linux-gnu/4.6/include-fixed
/usr/include/i386-linux-gnu
/usr/include
根据结果再做下一步判断。
Ⅸ 完美应用Ubuntu的目录
第1章初识Ubuntu 1
1.1 Linux历史及其版本 1
1.1.1 Linux起源和发展 1
1.1.2 Linux和GNU的关系 3
1.1.3 目前流行的Linux发行版 4
1.1.4 Linux的特点和优势 9
1.1.5 Linux应用领域 10
1.2 Ubuntu起源和版本 10
1.2.1 Ubuntu是什么 10
1.2.2 Ubuntu的起源 10
1.2.3 Ubuntu的版本 12
1.2.4 Ubuntu发展路线图 13
1.3 小结 18
练习题 18
第2章开始安装Ubuntu 19
2.1 安装准备和引导设置 19
2.1.1 申请免费的系统光盘 19
2.1.2 下载Ubuntu安装镜像 21
2.2 硬件需求与兼容性 23
2.2.1 Ubuntu 7.10官方硬件需求 23
2.2.2 搜集自己硬件环境信息 24
2.2.3 设置计算机光盘启动 26
2.2.4 准备安装分区 26
2.3 磁盘分区调整和分区 26
2.3.1 Ubuntu和Windows分区概念差异 26
2.3.2 磁盘分区规划 27
2.3.3 为Ubuntu准备分区 27
2.4 开始安装 28
2.4.1 LiveCD模式安装 28
2.4.2 文字模式安装 32
2.4.3 硬盘安装Ubuntu 42
2.4.4 虚拟机中体验Ubuntu 43
2.4.5 安装虚拟机 44
2.4.6 为笔记本安装Ubuntu 46
2.5 首次亲密接触 47
2.5.1 登录界面 47
2.5.2 体验Ubuntu桌面 48
2.5.3 注销、重启和关机 49
2.6 安装后的配置 49
2.6.1 善用受限驱动解决驱动问题 49
2.6.2 配置ADSL拨号网络 50
2.6.3 设置Ubuntu安装源 51
2.6.4 闪电配置Ubuntu系统环境 52
2.7 小结 53
练习题 53
第3章使用GNOME桌面环境 54
3.1 GNOME的基本介绍 54
3.2 使用GNOME桌面环境 55
3.2.1 GNOME基本操作 55
3.2.2 GNOME桌面使用详解 56
3.2.3 用好GNOME面板 57
3.2.4 用好“应用程序”菜单 57
3.2.5 用好“位置”菜单 58
3.2.6 用好“系统”菜单 59
3.2.7 GNOME桌面环境用好命令行 59
3.3 鹦鹉螺文件管理器 60
3.4 定制个性化GNOME桌面环境 61
3.5 GNOME常用程序和Windows常用程序对照 64
3.6 小结 66
练习题 66
第4章KDE桌面环境 67
4.1 认识KDE桌面环境 67
4.2 安装配置KDE桌面 69
4.2.1 把KDE桌面环境添加到Ubuntu 69
4.3 用好KDE桌面环境 71
4.3.1 用好KDE面板 71
4.3.2 定制KDE面板 73
4.3.3 用好K菜单 74
4.3.4 用好系统菜单 74
4.3.5 用好快速桌面 75
4.4 Konqueror文件管理器 75
4.5 配置个性化KDE桌面 78
4.6 KDE常用程序对照表 82
4.7 小结 84
练习题 84
第5章Ubuntu图形服务器 85
5.1 X-Window 2D图形服务器 85
5.1.1 X-Window图形服务器 85
5.1.2 X-Window架构和组成 86
5.1.3 X-Window、GNOME和KDE之间的关系 86
5.2 XGL 3D图形服务器 87
5.2.1 XGL和Compiz间的关系 88
5.2.2 用好XGL 3D图形服务器 88
5.3 小结 91
练习题 91
第6章Ubuntu桌面应用 92
6.1 Ubuntu办公应用OpenOffice。org 92
6.1.1 与OpenOffice。org的亲密接触 92
6.1.2 OpenOffice。org 使用入门 92
6.1.3 了解各功能组件 95
6.1.4 设置办公环境 99
6.2 全面掌握Writer 100
6.2.1 高频操作——选定、删除文档操作 100
6.2.2 日常操作——移动、复制文档操作 101
6.2.3 无需踏破铁蹄——查找和替换操作 102
6.2.4 后悔有方——撤销、恢复操作 103
6.2.5 打印效果早知道——预览和打印文档 103
6.3 全面掌握Calc 105
6.3.1 选定单元格及其工作表区域操作 105
6.3.2 输入数据到单元格 106
6.3.3 数据的高效处理 108
6.3.4 单元格数据操作全掌握 109
6.3.5 全面设置单元格属性 111
6.4 完美沟通幻灯片演示——OpenOffice。org Impress 113
6.4.1 事半功倍创建幻灯片 113
6.4.2 添加幻灯片的动画效果 117
6.4.3 放映制作好的幻灯片 118
6.5 享受Ubuntu多媒体功能 119
6.5.1 超级全能媒体播放器——MPlayer 119
6.5.2 媒体播放器——Totem 119
6.5.3 音乐播放专家——Rhythmbox 121
6.5.4 无处不在的播放器——RealPlayer 121
6.6 Ubuntu丰富的网络应用 123
6.6.1 浏览器的黑马——Firefox 123
6.6.2 邮件专家——全能邮件Evolution 126
6.6.3 聊天利器——Pidgin 129
6.6.4 网络下载工具双雄——KGet&Filezilla 131
6.6.5 管理Windows Server——Ubuntu终端服务 133
6.7 Ubuntu图像功能拾粹 134
6.7.1 全能图片总管Picasa 135
6.7.2 专业级图形图像处理程序GIMP 136
6.8 熟练使用Ubuntu常用工具 139
6.8.1 Ubuntu中的金山词霸——星际译王 139
6.8.2 使用Wine安装Windows程序 142
6.8.3 开心趣味程序和游戏 144
6.8.4 让Google桌面搜索在Ubuntu中安家 147
6.9 Ubuntu常用开发环境的搭建 148
6.9.1 安装使用Java开发环境 148
6.9.2 安装使用C/C++ IDE开发工具 150
6.10 小结 152
练习题 153
第7章让Ubuntu命令开始工作 154
7.1 基本命令 154
7.1.1 列出文件清单命令:ls 155
7.1.2 改变当前路径命令:cd 156
7.1.3 查看当前路径命令:pwd 157
7.1.4 改变文件创建时间及创建空文件命令:touch 157
7.1.5 创建目录命令:mkdir 158
7.1.6 删除空目录命令:rmdir 159
7.1.7 除文件(目录)命令:rm 159
7.1.8 复制命令:cp 160
7.1.9 移动文件(目录)命令:mv 160
7.1.10 显示文件内容命令:cat 161
7.1.11 从头开始查看文件内容命令:head 161
7.1.12 tail命令 162
7.1.13 分屏显示文件命令:more(less) 162
7.2 文件处理命令 162
7.2.1 文件比较命令:diff 162
7.2.2 排序命令:sort 163
7.2.3 统计命令: wc 163
7.3 设置权限命令 164
7.3.1 设定权限命令 chmod 164
7.3.2 更改属主(属组)命令:chown 168
7.3.3 更改文件属组命令:chgrp 169
7.4 文件查找命令 169
7.4.1 按路径进行查找的命令:which 169
7.4.2 按资料库查找的命令:whereis 170
7.4.3 查找所有匹配的文件的命令:locate 170
7.4.4 功能强大的查找命令:find 170
7.5 压缩解压命令 173
7.5.1 压缩命令:gzip 173
7.5.2 查看压缩文件内容命令:zcat 174
7.5.3 解压.zip文件命令:unzip 174
7.5.4 压缩命令:bzip2 175
7.5.5 查看压缩文件内容命令:bzcat 175
7.5.6 打包并压缩命令:tar 175
7.6 关机重启命令 176
7.6.1 关闭计算机命令:shutdown 177
7.6.2 系统关机命令:halt 177
7.6.3 切换启动级别命令:init 177
7.6.4 关机命令:poweroff 178
7.6.5 重启系统命令:reboot 178
7.7 小结 178
练习题 178
第8章文本编辑器vim/vi 179
8.1 vi工作模式 179
8.1.1 命令模式 180
8.1.2 插入模式 180
8.1.3 编辑模式 180
8.2 进入vi 180
8.2.1 使用vi打开文件 180
8.2.2 直接进入指定位置处 181
8.3 vi基本应用 181
8.3.1 插入命令 181
8.3.2 光标移动命令 182
8.3.3 使用vi进行编辑 183
8.3.4 保存退出命令 185
8.4 vi进阶应用 186
8.4.1 vi配置文件 186
8.4.2 多窗口编辑 186
8.4.3 区域复制 187
8.4.4 定义快捷键 187
8.4.5 在vi中与Shell交互 188
8.4.6 文本格式转换 188
8.4.7 vi的宏记录 189
8.4.8 几个小技巧 190
8.5 其他编辑工具 191
8.5.1 ed 191
8.5.2 pico 191
8.5.3 emacs 191
8.6 小结 192
练习题 192
第9章Shell使用基础 193
9.1 Shell基础 193
9.1.1 什么是Shell 193
9.1.2 Shell的种类 194
9.1.3 Shell的功能 194
9.1.4 Shell命令的执行 197
9.1.5 Shell的其他优点 197
9.2 变量 197
9.2.1 变量的含义 197
9.2.2 变量的种类及Shell的类型 198
9.2.3 变量的定义及显示 199
9.2.4 位置变量 202
9.2.5 特殊形式的变量 203
9.3 命令的执行顺序 204
9.4 命令替换 204
9.5 I/O重定向 204
9.6 管道 206
9.7 特殊字符 206
9.8 小结 207
练习题 207
第10章用户与群组管理 209
10.1 用户与组简介 209
10.1.1 用户与组的识别 209
10.1.2 Ubuntu中的用户种类 209
10.2 用户管理 210
10.2.1 用户的添加与删除 210
10.2.2 用户的宿主目录 211
10.2.3 用户登录文件的配置 211
10.2.4 用户相关文件与目录 213
10.3 密码管理 213
10.3.1 密码的安全性 214
10.3.2 密码文件 214
10.3.3 影子密码文件 215
10.4 添加批量账号 216
10.5 组管理 217
10.5.1 组的添加与删除 217
10.5.2 组相关文件 217
10.5.3 有效组与默认组及相互转换 218
10.6 用户信息的修改 218
10.6.1 使用usermod修改用户信息 218
10.6.2 使用groupmod修改组信息 219
10.6.3 查看用户信息 219
10.7 变换用户身份 219
10.7.1 su命令 219
10.7.2 sudo命令 221
10.8 用户登录控制 222
10.8.1 PAM认证模块原理 223
10.8.2 PAM的配置文件 223
10.9 小结 224
练习题 225
第11章硬盘分区管理 226
11.1 分区基本知识 226
11.1.1 认识硬盘 226
11.1.2 为什么要分区 226
11.1.3 Ubuntu的分区 226
11.2 使用fdisk命令进行硬盘分区 227
11.2.1 使用df命令查看硬盘分区信息 227
11.2.2 如何在Ubuntu里添加新硬盘 227
11.2.3 添加分区的实例 228
11.3 开机自动挂载文件/etc/fstab和/etc/mtab 231
11.3.1 /etc/fstab文件 231
11.3.2 /etc/mtab文件 232
11.4 硬盘管理工具 232
11.4.1 使用命令查看目录信息 232
11.4.2 使用fsck命令进行硬盘检测 233
11.4.3 使用sync命令强制硬盘写入 233
11.4.4 使用mpe2fs命令查看硬盘信息 233
11.5 小结 234
练习题 234
第12章文件系统管理 235
12.1 Ubuntu文件系统简介 235
12.1.1 Ubuntu所支持的文件系统类型 236
12.1.2 挂载与卸载文件系统 236
12.1.3 Ubuntu的目录结构 237
12.2 链接文件 237
12.2.1 链接文件的种类及原理 238
12.2.2 使用ln命令建立链接文件 238
12.3 文件高级权限 239
12.3.1 setuid和setgid位 239
12.3.2 黏滞位 242
12.3.3 使用umask命令改变默认权限 243
12.3.4 lsattr和chattr命令设置高级权限 244
12.4 磁盘限额 244
12.4.1 什么是磁盘限额 245
12.4.2 Linux中磁盘限额的基本概念 245
12.4.3 配置磁盘限额 245
12.5 LVM文件系统 247
12.5.1 LVM文件系统简介 247
12.5.2 LVM文件系统中的概念(PV、VG、LV、PE) 248
12.5.3 实例制作LVM 249
12.6 小结 253
练习题 253
第13章全面管理Ubuntu 软件包 255
13.1 透彻了解Ubuntu软件包 255
13.2 会用底层软件包管理工具——dpkg 256
13.3 善用高级软件包管理工具——APT(Advanced Package Tool) 256
13.3.1 迅速查找DEB软件包 256
13.3.2 用好APT安装软件包 257
13.4 文本界面软件包管理工具 257
13.5 使用新利得软件包管理器管理软件包 259
13.6 小结 263
第14章Ubuntu引导流程 264
14.1 Ubuntu引导流程解析 264
14.1.1 POST自检并载入内核 264
14.1.2 加载内核 265
14.1.3 执行/etc/inittab 265
14.1.4 系统初始化并启动相应服务 267
14.2 GRUB引导器 267
14.3 GRUB配置文件简介 268
14.3.1 GRUB配置文件详解 268
14.3.2 GRUB安全设置 269
14.3.3 GRUB命令行 269
14.3.4 安装Windows导致GRUB被覆盖怎么办 270
14.3.5 单用户模式排错 271
14.4 小结 272
练习题 272
第15章进程的控制与管理 273
15.1 进程的显示与删除 273
15.1.1 进程简介 273
15.1.2 进程种类 273
15.1.3 显示进程 275
15.1.4 动态显示进程 277
15.1.5 删除进程 278
15.2 进程的优先级 278
15.3 前台与后台 279
15.3.1 什么是前台与后台 279
15.3.2 任务的前后台背景切换 279
15.4 系统资源的查看 280
15.4.1 使用free命令查看内存 280
15.4.2 启动信息查看dmesg 280
15.4.3 /proc目录简介 281
15.5 设置任务调度 281
15.5.1 at命令 281
15.5.2 cron命令 283
15.6 小结 285
练习题 285
第16章基本网络配置 286
16.1 网络基础 286
16.1.1 基本的网络术语 286
16.1.2 TCP/IP简介 286
16.1.3 IP地址简介 287
16.1.4 网关和路由简介 289
16.2 网络配置相关文件 290
16.2.1 IP地址配置文件 290
16.2.2 DNS配置文件 290
16.2.3 hosts文件 291
16.3 网络相关命令 291
16.3.1 ifconfig命令 291
16.3.2 ifup和ifdown 292
16.3.3 ping命令 292
16.3.4 netstat命令 292
16.4 小结 292
练习题 293
第17章基本虚拟化配置 294
17.1 在Ubuntu上安装配置Xen 294
17.1.1 软件包的安装 294
17.1.2 配置虚拟机及其桌面环境 294
17.1.3 使用映像文件做虚拟硬盘 295
17.1.4 安装debtstrap 295
17.1.5 配置虚拟机 296
17.1.6 在虚拟机中使用GNOME桌面环境 296
17.2 在Ubuntu上安装配置KVM 297
17.2.1 安装“KVM”和“QEMU”软件包 297
17.2.2 安装Ubuntu虚拟机 298
17.2.3 高级网络配置 299
17.3 其他虚拟化软件和Ubuntu 302
17.3.1 在QEMU中安装WindowsXP 302
17.3.2 在Ubuntu中安装VirtualBox 304
17.4 小结 305
练习题 305
第18章搭建自动化的Ubuntu网络环境 306
18.1 DHCP实现自动分配IP 306
18.1.1 DHCP的常用概念 306
18.1.2 安装DHCP服务器 307
18.1.3 配置DHCP服务器 307
18.1.4 启动和关闭DHCP服务 309
18.1.5 租约文件 309
18.1.6 配置DHCP客户 309
18.2 NAT共享上网服务 310
18.2.1 NAT的基本概念 310
18.2.2 Netfilter/iptables系统 310
18.2.3 与NAT相关的iptables命令语法 313
18.3 小结 314
练习题 314
第19章Ubuntu文件服务 315
19.1 Ubuntu文件共享应用概述 315
19.2 FTP服务器 315
19.2.1 FTP与FTP服务器 315
19.2.2 Ubuntu中配置FTP服务 315
19.3 Samba服务器 320
19.3.1 SMB协议和Samba简介 320
19.3.2 Ubuntu中配置Samba服务 320
19.3.3 Samba常见故障排错 325
19.4 小结 328
练习题 328
第20章轻松远程管理Ubuntu 329
20.1 远程管理控制——SSH 329
20.1.1 OpenSSH简介 329
20.1.2 SSH远程连接 329
20.1.3 SFTP的使用 330
20.1.4 Windows下的SSH客户端 331
20.2 Webmin管理工具 332
20.2.1 Webmin管理工具概述 332
20.2.2 Webmin的安装 332
20.2.3 Webmin的常用维护操作 335
20.3 小结 348
练习题 348
第21章Ubuntu系统安全指南 349
21.1 防火墙配置 349
21.2 安全检查 352
21.2.1 检查suid和sgid程序 352
21.2.2 检查全局/组内用户可写的目录 352
21.2.3 检查监听端口状况 353
21.2.4 限制用户的访问资源 354
21.2.5 创建ARP表 354
21.2.6 桌面安全 356
21.2.7 防火墙 356
21.3 查毒软件 357
21.4 使用Tor代理 357
21.5 浏览器安全 358
21.6 小结 358
练习题 358
第22章Shell编程 359
22.1 Shell脚本简介 359
22.2 Shell脚本语言的基本语法 359
22.2.1 建立第一个Shell脚本 359
22.2.2 Shell脚本的执行 360
22.2.3 交互式脚本 360
22.2.4 变量的数值运算 361
22.2.5 脚本逻辑判断与表达式 361
22.2.6 条件判断if语句 363
22.2.7 case命令 365
22.2.8 循环 366
22.2.9 continue语句和break语句 367
22.2.10 exit命令 368
22.2.11 函数 368
22.3 脚本调试 368
22.4 正则表达式 369
22.4.1 以^匹配行首字符 369
22.4.2 以$匹配行尾字符 370
22.4.3 以.匹配单个字符 370
22.4.4 以*匹配0个或者多个字符序列 371
22.4.5 以[]匹配单个字符或者一个范围 371
22.4.6 使用{}模式匹配字符出现的次数 371
22.4.7 扩展的正则表达式元字符 372
22.5 如何保护Shell程序 372
22.5.1 改变Shell程序执行环境 372
22.5.2 加密Shell程序 373
22.6 小结 374
练习题 374
第23章Ubuntu LAMP 环境的搭建 376
23.1 以LAMP方式安装Ubuntu Server 376
23.1.1 Apache服务器介绍 376
23.1.2 MySQL数据库介绍 377
23.1.3 php介绍 378
23.1.4 安装Ubuntu Server 378
23.2 Apache的配置和使用 380
23.2.1 Apache配置文件说明 380
23.2.2 定制Apache 383
23.3 MySQL的配置和使用 385
23.3.1 MySQL常用命令 385
23.3.2 轻松管理MySQL的利器——phpMyAdmin 386
23.4 PHP的配置和使用 391
23.4.1 设置PHP配置文件 391
23.5 小结 392
练习题 392
第24章安全配置 Ubuntu服务器 393
24.1 隐藏Apache版本信息 393
24.1.1 使用Mod-Security保护Apache服务器 393
24.1.2 使用Suhosin保护PHP 394
24.1.3 禁用PHP的危险函数 395
24.1.4 隐藏PHP版本信息 395
24.1.5 禁用Telnet 395
24.1.6 加固SSH 396
24.1.7 修改SSH的默认端口 396
24.1.8 禁止编译 396
24.1.9 ProFTP 396
24.1.10 访问控制 397
24.1.11 创建SU用户组 397
24.1.12 Root用户通知 397
24.1.13 加固历史记录 397
24.1.14 使用欢迎消息 398
24.1.15 禁用所有特殊用户 398
24.1.16 修改危险文件的权限 398
24.1.17 限制Root用户使用的TTY设备 399
24.1.18 使用安全的密码 399
24.1.19 检查Rootkit 399
24.1.20 安装补丁 399
24.1.21 关闭无用的服务 400
24.1.22 检查监听端口 400
24.1.23 加固内核(sysctl.conf) 400
24.1.24 加固临时目录 402
24.2 高安全需求的配置方法 403
24.2.1 安装配置Apache 2 403
24.2.2 配置Apache 406
24.2.3 Chroot环境 408
24.2.4 启动脚本 409
24.3 安全配置PHP 410
24.3.1 功能需求 410
24.3.2 安装PHP 410
24.3.3 Chroot环境 412
24.3.4 配置PHP 413
24.3.5 防止跨站脚本攻击和SQL注入攻击 414
24.4 安全配置MySQL 414
24.4.1 功能需求 415
24.4.2 安装MySQL 415
24.4.3 测试MySQL 416
24.4.4 Chroot环境 416
24.4.5 配置服务器 418
24.5 PHP与MySQL的通信 419
24.5.1 启动脚本 419
24.6 小结 420
练习题 420
第25章Ubuntu Server 架站实务 421
25.1 快速打造自己的网站 421
25.1.1 Mombo简介 421
25.1.2 Mombo安装. 421
25.2 迅速搭建网站论坛BBS 426
25.2.1 Discuz简介 426
25.2.2 Discuz安装 426
25.2.3 Discuz设置 433
25.3 Blog和WiKi闪电上线 434
25.3.1 Blog简介 434
25.3.2 Blog安装 434
25.3.3 Wiki简介 439
25.3.4 Wiki安装 439
25.3.5 设置 442
25.4 网站的安全与管理 443
25.4.1 网站安全措施 443
25.4.2 网站的日常管理 446
25.5 小结 446
练习题 446
附录A GNU通用公共授权(第二版) 447
附录B GNU通用公共授权(第三版) 452
附录C Ubuntu与Windows常用程序对照表 461~
……
Ⅹ Linux常用命令
常用的命令有好多啊,你刚开始学,不用特意的去记,用到什么学什么就好了。 当然非要列举,下面列举的100条,是来自网络经验上的。 希望对你有帮助。
Linux常用命令大全100条:
1,echo “aa” 》 test.txt 和 echo “bb” 》》 test.txt
//》将原文件清空,并且内容写入到文件中,》》将内容放到文件的尾部
2,chmod go+w -R /home/zhangy //给组用户和其他用户添加写的权限
3,tar -tzvf test.tar.gz //列出归档内容
4, -ah //查看文件列表大小
5, -sh //查看所有文件的大小总和
6,echo ‘1+2’|bc -l //数学运算
7,uname -a //查看linux内核等的一些信息
8,badblocks -s /dev/sda //坏道扫描时显示进度
9,time command //查看命令的运行时间
10,ls -lrt //按时间的倒序排序
11,rsync -P //同步时显示进度
12.history -c //清楚历史命令
13,cd - //返回上次目录
14,tree //显示目录树
15,umount -n /mnt/hda2 //强制卸载
16,echo ~/ //显示用户的home目录
17,echo $[5*5] //算术运算
18,echo $((5*5)) //算术运算
19,eval ls;ps aux|grep httpd //这二个命令都能执行
20,free -m //有MB为单位显示内存
21,uptime
//显示系统已经运行了多长时间,它依次显示下列信息:现在时间、系统已经运行了多长时间、目前有多少登陆用户、系统在过去的1分钟、5分钟和15分钟内的平均负载
22,加法运算
[root@krlcgcms01 mytest]# let a=34+3;
[root@krlcgcms01 mytest]# echo $a;
23,export //查看所有环境变量
24,echo $PATH //查看单个变量
25,cmp file1 file2 //文件内容比对
26,clear //清屏
27,echo 23423 |awk --re-interval ‘/[0-9]{3,}/’ //如果不加re-interval的话,不显示
28,cal //得到一个整齐的日历格式
29,wc -l //统计行数,wc -w 统计单词
30,echo “AaDCbd23” |tr “[A-Z]” “[a-z]” 大写变小写,echo “AaDCbdc23” |tr -c b-d =
将b-d之外的字符串替换成=
31,echo “ADSF” | iconv -f UTF8 -t GBK //把字符由utf8转成gbk
-f是from和简写,-t好像terminal的简写
32,cat -n file //内容的前面会显示行号
33,chattr +i file //只读,root用户也没法对其进行修改
34,lsattr file //查看文件属性
35,cat /etc/passwd |awk -F: ‘{print $1}’ //查看系统中所有用户
36,cat /etc/group //查看系统中所有的组
37,groups //查前当前用户所在的,所有组
38,usermod -g 组名 用户 //这种方式是覆盖的方式,用的时候要小心,如果用户A性于mysql usermod -g php
mysql这样的话只属于php了
39,usermod -G 组名 用户 //这种方式是增加的方式,如果用户A性于mysql usermod -g php
mysql这样的话,mysql就属于2个组了
40,bc //进入数学计算中去
41,umask 003 u权限是7,g权限是7,其他用户是4,也就是774,777-003=774
42,mkfs -t vfat /dev/hda6 //将移动硬盘里面的一个分区格式化成vfat格式
43,mount /dev/cdrom /media/cdrom //挂载cdrom
44,getent group 532 //通过组ID,来查找组信息
45,last //登录成功用户记录
46,lastb //登录不成功用户记录
47,mp -S /dev/sda2 //查看一下要备份/dev/sda2所要的容量
48,mp -0j -f /dev/hda2/sda2_bak.mp.bz2 /dev/sda2 //将sda2进行备份并压缩
49,restore -t -f /dev/hda2/sda2_bak.mp //查看备份信息
50,restore -r -f /dev/hda2/sda2_bak.mp //还原备份
51,fc-list //查看系统中安装的字体
52,find 。/ -type f -exec grep -q “root” {} ; -exec echo {} ;
//查找目录下文件所包涵的字符串
53,vmstat 5 //每5显示一下次系统信息,cpu,memory,i/o等
54,top 后 在shift + P 所占进程的排序显示
55,top 后 在shift + M 所占内存的排序显示
56,iptraf -g //查看各个接口的流量
57,ostat -d -x /dev/sda2 2 //用iostat查看磁盘/dev/sda2的磁盘i/o情况,每两秒刷新一次
58, paste -sd ‘|||n’ test //文件的每4行转换成1行,并用|隔开
59,lsof -i :22 //知道22端口现在运行什么程序
60,lsof -c abc //显示abc进程现在打开的文件
61,lsof -p 12 //看进程号为12的进程打开了哪些文件
63,route //查看路由信息
64,ifup //开启网卡
65,ifdown //关闭网卡
66,route del -net 172.168.0.0 netmask 255.255.0.0 dev eth0 //删除
172.168这个网段
67,route add -net 172.168.10.0 netmask 255.255.255.0 dev eth0 //增加一个路由
68,netstat -tunl //列出监听的网络服务端口
69,netstat -tun //列出已连接的网络服务端口
70,nmap -sP 172.30.4.0/24 //在这个网段内有多少用户在我的主机上操作,一个不错的安全检查工具
71,vgdisplay //查看系统中的可用空间
72,lvextend -L+20G /dev/tank/part1 //向part1这个分区增加20G的空间
73,lvresize -L-10G /dev/tank/part2 //向part2这个分区减少10G的空间
74,pvdisplay //查看磁盘信息
75,mplayer -loop 10 /mnt/song/music/花儿开了.mp3 //循环播放10遍
76,pacman -S firefox -nd //nd去掉依赖
77,wget -c //断点下载
78,chroot /mnt/ubuntu //改变根目录到/mnt/ubuntu
79,ctrl+a //命令行下,光标称动到开头
80,ctrl+e //命令行下,光标移动结尾
81,cut -d: -f 1-4 test //用:分割文件,取分割后的1-4列
82,file /home/zhangy/test.php //用于查看文件的一些基本信息
83,touch test.txt //创建一个空文件 text.txt
84,htpasswd -cbd /usr/local/nginx/conf/authfile //创建访问控制文件
85,df //查看磁盘空间,和当前的磁盘数
86,fdisk -l //查看所有磁盘数
87,alsamixer //进入后,m键可以实现静音
88,killall httpd //把所有httpd进程杀掉
89,killall -9 mysqld_safe //有些进程超级用户也停止不了,-9是强制删除
90,mirror /mysql //下载mysql目录
91,mirror -R /mysql //上传mysql目录
92,rmmod pcspkr //关掉tab提示音
93,modprobe pcspkr //开启tab提示音
94,gpasswd -a zhangy wheel //将zhangy这个用户添加到wheel这个组
95,dd if=/dev/zero of=/virtual/ubuntu.virt.img bs=1M count=4096
//创建一个4G的IMG镜像
96,lspic //显示pci设备
97,lsusb //显示usb设备
98,history | less //less根more有点像,感觉less用着更舒服点
99,ln -s //如果忘了-s就变成硬链接了
100,tar zxvf test.tar.gz -C /home/zhangy //将内容解压到指定目录