• Linux实用配置(fc,redhat)


    -

     1         网络相关配置

    1.1      修改主机名

    /etc/sysconfig/network(文件)

    NETWORKING=yes
    NETWORKING_IPV6
    =no
    NETWORKING_IPV4
    =yes
    HOSTNAME
    =localhost.localdomain /* 主机名定义,将localhost改成你对应的主机名,如bea */
    DOMAINNAME
    =localdomain
    GATEWAY
    =192.168.0.1
    
    

    /etc/hosts(文件,定义ip和主机名对应关系)

    127.0.0.1 localhost.localdomain localhost /* 将localhost改成你对应的主机名,如bea */主机名
    
    

     该文件改后为:重启后生效

    127.0.0.1 bea.localdomain bea
    
    

     

    1.2      IP设置

    临时修改可以使用如下命令:

    ifconfig eth0 x.x.x.x netmask x.x.x.x
    
    

    更改ip后,如果没有重启服务,实际上是不发生变化的。

    重启网络服务的命令是:

    service network restart或者/etc/init.d/network restart
    #有时你可能需要用到如下的命令
    #停用网络设备
    ifconfig eth0 down
    #启用网络设备
    ifconfig eth0 up
    
    

    如想永久性的修改ip,则可以通过如下的两种途径来解决,两种途径任选一种即可。

    <a>输入命令来配置ip,命令为:

    setup
    
    

     <b>或者直接编辑文件。

    /etc/sysconfig/network-scripts/ifcfg-ethX (Redhat and Fedora)
    /etc/sysconfig/network/ifcfg-ethX (SuSE)
    /etc/network/ interfaces (Debian和Ubuntu)
    
    

     文件内容如下:

    a.静态ip地址:
    DEVICE
    =eth0
    BOOTPROTO
    =static
    ONBOOT
    =yes
    TYPE
    =ethernet
    NETMASK
    =255.255.255.0
    IPADDR
    =192.168.0.1
    GATEWAY
    =192.168.0.1
    BROADCAST
    =192.168.0.255


    b.DHCP:
    DEVICE
    =eth0
    BOOTPROTO
    =dhcp
    ONBOOT
    =yes

    
    

    1.3      dns设置

    /etc/resolv.conf文件,该文件内容如下:

    domain 21php.com     /*指定默认的域,可不要*/ 
    nameserver 11.0.0.1  /*
    指定了dns服务器的地址,你可以最多写上三个地址,作为前一个失败时的候选dns服务器*/

    修改后使用

    /etc/rc.d/init.d/named restart

    使修改生效--(注:fc6下该命令貌似无效,修改文件后即可生效)

    1.4      其它相关文件说明

    1.4.1    /etc/hosts 文件

    127.0.0.1 localhost.localdomain localhost

    /*定义了主机名和ip地址的对应,其中也有将要运行dns这台电脑的ip地址和主机名*/

    1.4.2    /etc/host.conf 文件

    "order hosts bind"语句,指定了对主机名的解析顺序是先到hosts中查找,然后到dns服务器的记录里查找。

    "multi on"则是允许一个主机名对应多个ip地址。内容:

    order hosts, bind 
    multi on 
    nospoof on

    1.4.3    /etc/resolv.conf 文件

    domain 21php.com     /*指定默认的域*/
    nameserver 11.0.0.1  /*
    指定了dns服务器的地址,你可以最多写上三个地址,作为前一个失败时的候选dns服务器*/

    1.4.4    /etc/named.boot 文件

    早期版本的bind软件使用的配置文件,现在新版本中已经让位于“named.conf”。named.confdns server配置的核心文件。

    1.4.5    /etc/sysconfig/static-routes 文件

    静态路由配置文件,格式如下:

    eth0 net 192.168.0.0 netmask 255.255.255.0 gw 192.168.0.1
    eth1 net 192.168.1.0 netmask 255.255.255.0 gw 192.168.1.1

    可以用如下命令添加

    route add -net 192.168.0.0 netmask 255.255.255.0 gw 192.168.0.1 eth0
    route add -net 192.168.1.0 netmask 255.255.255.0 gw 192.168.1.1 eth1

    2         vi使用技巧

    h: 左移一个字符               j: 下移一个字符                k: 上移一个字符               l: 右移一个字符
    i: 
    从指令模式进入文本插入编辑模式          "x":指令模式下删除某个字符    "dd":指令模式下删除一行
    esc:
    返回指令模式         ":q!":指令模式下不保存退出
    ":wq":
    指令模式下保存退出       ":wq!":指令模式下强制保存退出       "/ok":在文本中查找ok字符串
    ":&":
    指令模式下到文本的最后一行    "空格":文本翻页  

    u : 撤销操作一次     

    通过 less   more 也可以查看 文本文件

    3           进程查看

    # 查询实时进程,按“1”可以查看各个cpu的实时使用情况
    top
    # 在进程中查找包含tomcat字段的进程
    ps 
    -ef | grep tomcat 
    # 显示所有进程
    ps 
    -aux
    # 分页显示所有进程
    ps 
    -aux|more

     

    4           网络情况查看

    netstat -antp                     /*查看所有的端口*/
    netstat -antp |grep mysql   /*查看mysql开启的端口*/

    5         setnumber

    给文件加入行号,通过:number,如:2 ,进入第二行。

    6         软件下载

    wget http地址

    7         软件包处理

    rpm -qa /**//*查找所有的软件包*/
    rpm
    -qa|grep mail /**//*查找含有mail字符的软件包*/
    rpm
    -e **/**//*卸载掉某某软件包*/
    rpm
    -ivh **/**//*安装某某软件包*/
    rpm
    -ql **| cat -n /**//*软件包安装信息查看*/

    在Linux中使用RPM升级软件包和安装软件包类似,只要在 shell 提示下键入以下命令即可:
    #rpm -Uvh foo-2.0-1.i386.rpm
    你在上面的例子里看不到的是,RPM 自动删除 foo 软件包的任何老版本。事实上,你可能想一直使用 -U 来安装软件包,因为即便没有安装软件包的任何先前版本,它也可以用来安装该软件包。

    rpm -e --nodeps java-1.4.2-gci... /*忽略依赖卸载软件包*/

    8          当第一次可以正常安装软件,再一次安装时报错时,可以用

    #清空缓存后,再次编译安装

    make clean

    补充:
    1.make
    根据makefile制定的规则,将c\c
    ++文件编译成*.o文件,然后进一步生成可执行文件。
    2.make clean
    删除源代码(C\C
    ++ code)生成的执行文件和所有的中间目标文件
    3.make depend
    一种makefile的规则,通过扫描各个目录下的所有C\C
    ++ 代码,从而判断出文件之间的依赖关系,如a.cc文件中调用了b.h(如以形势include<b.h>),如果之后a.cc文件被改动,那么只需要重新编译a.cc文件,不需要编译b.h文件。否则所有的文件都需要重新编译 

    9         如何安装更新linux 软件包

    通过软件包管理工具是最好的途径,软件包管理工具有

    yum(http://ayo.freshrpms.net/ 下载对应版本)RPM软件包来管理软件。

    apt-get则是DebianDeb软件包管理工具

    yum 用法:

    yum install 软件名 /**//*下载安装对应软件包*/
    yum info 软件名
    /**//*查看软件包的详细信息*/
    yum list
    |grep kernel /**//*查找kernel的软件包*/
    yum update firefox
    /**//*更新firefox*/
    yum remove bmp
    -mp3 /**//*移除bmp-mp3*/
    man yum
    /**//*yum命令详细信息查看*/
    
    
    yum 文件的配置路径为 /etc/yum.conf
    #0表示不保存下载的文件,1表示保存下载的文件,默认为不保存
    keepcache=0
    #指定下载文件的保存路径,文件保存在 分类目录/packages/ 中
    cachedir=/var/cache/yum
    10   用户管理

     

    #添加用户moonson
    shell
    > useradd moonson      
    #给moonson用户设置密码,根据出来的提示走就好了
    shell
    > passwd moonson
    #修改用户moonson
    ,可以修改登录名、用户的家目录等等
    shell> usermod moonson
    #删除用户moonson,如果想同时删除用户对应的目录,请加入参数
    -r
    shell
    > userdel -r moonson
    #注销用户
    首先用w命令查看该用户tty号,然后用fuser -k tty号(或显示pts/*)就可以踢出了
    #注销当前用户快捷键
    Ctrl+Alt+Backspace
    #查看系统用户
    查看/etc/passwd文件即可。看第三个参数:500以上的,就是后面建的用户了.其它则为系统的用户.

    11   时间与时区

    11.1 时间设置

    #我们一般使用“date -s”命令来修改系统时间。比如将系统时间设定成1996年6月#10日的命令如下。
    date 
    -2004/10/16 
    #将系统时间设定成下午1点12分0秒的命令如下。  
    date 
    -13:12:00 
    注意,这里说的是系统时间,是linux由操作系统维护的。在系统启动时,Linux操作系统将时间从CMOS中读到系统时间变量中,以后修改时间通过修改系统时间实现。为了保持系统时间与CMOS时间的一致性, Linux每隔一段时间会将系统时间写入CMOS。由于该同步是每隔一段时间(大约是11分钟)进行的,在我们执行date 
    -s后,如果马上重起机器,修改时间就有可能没有被写入CMOS,这就是问题的原因。如果要确保修改生效可以执行如下命令。 
    clock 
    -
    # 这个命令强制把系统时间写入CMOS。

    #通过网络校对时间,“
    0.fedora.pool.ntp.org”为fedora的时间服务器
    #其他时间服务器还有:
    #“
    1.fedora.pool.ntp.org”
    #“
    2.fedora.pool.ntp.org”
    ntpdate 
    0.fedora.pool.ntp.org

     

     

    11.2 时区设置

    #查看当前时区 
    vi 
    /etc/sysconfig/clock
    #修改设置时区 
    #方法(
    1)
    tzselect
    #方法(
    2 仅限于RedHat Linux 和 CentOS)
    timeconfig 
    #复制相应的时区文件,替换系统默认时区 
    cp 
    /usr/share/zoneinfo/$主时区/$次时区 /etc/localtime
    #对于中国服务器则执行:
    cp 
    /usr/share/zoneinfo/Asia/Shanghai /etc/localtime
    #将当前时间写入BIOS永久生效(避免重启后失效) 
    hwclock -w
    #读取bios中的硬件时间

    hwclock -r  

     

    12   挂载ntfs分区

    12.1     运行:

    #yum install ntfs-3g

    12.2     root身份新建文件 /sbin/mount.ntfs,该文件代码为:

    #!/bin/sh export LANG=en_US.UTF-8 exec /sbin/mount.ntfs-3g "$@"

    然后赋予该文件执行权限:

    #chmod a+x /sbin/mount.ntfs

    12.3     #尝试挂载本地ntfs,先查看分区信息:

    #/sbin/fdisk -l

    然后在/mnt目录下建立一个文件夹,用来存放挂载的NTFS分区:

    #mkdir /mnt/c

    然后挂载:

    #mount -t ntfs-3g -o nls=utf8,umask=000 /dev/hda1 /mnt/c

    依次添加就是了.

    12.4       自动挂载,在/etc/fstab中加入类似:

    /dev/hda1 /mnt/c ntfs-3g defaults 0 0

    依此添加就OK.

    12.4      卸载分区

    #umount /mnt/c

    依此卸载就可以了

    12.5      常用挂载方式

    #挂载光驱
    mount 
    /dev/cdrom /mnt/cdrom
    #挂载u盘
    #查看要挂载的设备信息
    fdisk 
    -l
    #挂载设备
    mount 
    /dev/XX /mnt/U
    #挂载iso文件
    mount 
    -o loop /root/rhel5.1-dvd.iso /mnt/dvd
    #卸载已挂载的设备
    umount 
    /mnt/cdrom

    13   目录文件操作  

    rm -rf 文件名   /**//*删除文件或目录*/
    mkdir  
    文件名   /**//*创建文件或目录*/

    14   最大连接数

    ulimit -a            /**//*查看连接数*/
    ulimit -n 8192    /**//*
    修改最大连接数*/

    15   远程拷贝

    scp ./zabbix-1.4.6.tar.gz(要拷贝的文件路径)  root@192.168.0.221:/root(远程电脑的位置)

    16   权限修改

    chmod a+x j2sdk-1_4_2_01-linux-i586-rpm.bin
    
    /*给所有的用户添加执行的权限, a 表示所有用户,+x表示添加执行权限。除了a外,其它参数还有:
    
    
    u 表示该档案的拥有者,g 表示与该档案的拥有者属于同一个群体(group)者,o 表示其他以外的人,a 表示这三者皆是*/
    
    
    chown chen love.txt /*将love.txt文件的所有者更改为chen*/
    
    
    chgrp chen love.txt /*将love.txt文件的所有组更改为chen*/
    
    
    chown chen:xi love.txt /*将love.txt文件的所有者更改为chen,所有组更改为xi*/

    
    

     

    17   环境变量的配置 

    /etc/profile文件最下面添加

    export JAVA_HOME=/usr/java/jdk1.6.0_10
    export CLASSPATH
    =$CLASSPATH:$JAVA_HOME/lib:$JAVA_HOME/jre/lib
    export PATH
    =$JAVA_HOME/bin:$JAVA_HOME/jre/bin:$PATH:$HOMR/bin
    
    

     18   文件加解压

    # tar -cf all.tar *.jpg

    这条命令是将所有.jpg的文件打成一个名为all.tar的包。-c是表示产生新的包,-f指定包的文件名。
    # tar -rf all.tar *.gif

    这条命令是将所有.gif的文件增加到all.tar的包里面去。-r是表示增加文件的意思。
    # tar -uf all.tar logo.gif

    这条命令是更新原来tarall.tarlogo.gif文件,-u是表示更新文件的意思。 
    # tar -tf all.tar

    这条命令是列出all.tar包中所有文件,-t是列出文件的意思
    # tar -xf all.tar

    这条命令是解出all.tar包中所有文件,-x是解包的意思

     

    对于.rar

    要在linux下处理.rar文件,需要安装RAR for Linux,可以从网上下载,但要记住,RAR for Linux

    不是免费的;然后安装:
    # tar -xzpvf rarlinux-3.2.0.tar.gz
    # cd rar
    # make

    这样就安装好了,安装后就有了rarunrar这两个程序,rar是压缩程序,unrar是解压程序。它们的参数选项很多,这里只做简单介绍,依旧举例说明一下其用法:
    <1>将当前目录下所有mp3文件压缩成一个名为music.rar的包。
    #rar a music.rar *.mp3
    <2>
    解开music.rar到当前目录(不保留目录结构)
    #unrar e music.rar
    <3>
    解开music.rar到当前目录(保留目录结构)
    #unrar x music.rar

    19   引导区设置

    /boot/grub/grub.conf

    20   命令化名(别名)配置

    Linux alias文件的配置.账户根目录下的.bashrc文件
    root
    用户:/root/.bashrc
    zjs
    用户:/home/zjs/.bashrc

    编辑这个文件,如 添加

    alias vi='vim'  /**//* 注意哦,在修改vi时要保证vim命令存在,否则你的vi命令在修改后就不能用了 */保存退出后,注销再登录,输入“vi”就相当于执行了“vim”

    当然 由于对cp来说,可以通过 \cp ,c\p, "cp", 'cp', "c"p 在消除alias的影响

    因此对alias中其它的设置来说,应该也可以通过类似的方式来消除alias的影响

    21   开机启动项的配置

    /etc/rc.local文件中输入即可

    22 文件拷贝

    cp -rf 文件1 文件2             /*将文件1拷贝到文件2,-r代表拷贝子目录,-f代表强制掩盖,不询问*/

    小提示:由于fc6默认时会有 化名配置:alias cp='cp -i' ,-i代表掩盖有提示

    因而你会发现使用cp -rf 拷贝文件仍然会有提示,此时你将.bashrc文件里的该项注释掉就好了

    当然如果你只是拷贝一次的话,也可以通过\cp -rf 文件1 文件2 ,来暂时完成拷贝

    23 文件搜索

    find / -name zabbix -print     /*在/及其子目录下查找包含zabbix的文件及文件夹,-print代表输出*/ 

    find / -iname zabbix* -print     /*在/及其子目录下查找包含zabbix(不区分大小写)的文件及文件夹,-print代表输出*/  

    24 软硬件信息查看

    dmesg

    和 查看 /proc下面的相关信息

    25 文件信息查看

    #more /var/log/ha-log /*详细显示ha-log文件的内容*/
    #less
    /var/log/ha-log /*简要显示ha-log文件的内容*/
    #tail
    -f /var/log/ha-log /*显示ha-log文件的最后内容,且实时更新*/
    
    
    26 vim 显示行号
    如果你用vim,那么默认的情况下是不显示行号的,如果需要显示行号的话,可以通过下面的命令来显示行号
    set nu
    但是,每一次你都需要执行此命令才能显示行号。
    所以,如果你想默认的在启动vim的时候就显示行号,你可以编辑VIM安装目录下面的_vimrc文件
    在开头添加
    set nu
    就可以了。以后每次在启动vim的时候,就会自动地显示行号。
    对于fc6,该文件位于/etc/vimrc
    27 vim块操作
    Ctrl+v 进入视图模式
    <Esc>退出视图模式
    在Ctrl+v 后:
    <Dollar>+ A在块的每行末尾添加
    I 插入
    y 块抽取 p 块粘贴
    c 修改
    28 不显示注释掉的内容
    #显示ha.cf文件中 不匹配#的行
    cat ha.cf 
    | grep -"#"
    29 后台启动服务
    #以后台模式启动文件
    .
    /run.sh &

    30 init 解释

    init 0:停机 
    init 
    1:单用户形式,只root进行维护 
    init 
    2:多用户,不能使用net file system 
    init 
    3:完全多用户 
    init 
    5:图形化 
    init 
    6:重启 

    31 防火墙配置

     
    #修改防火墙配置需要修改 /etc/sysconfig/iptables 这个文件
    vi 
    /etc/sysconfig/iptables
    #如果要开放哪个端口,在里面添加一条。
    -A RH-Firewall-1-INPUT -m state --state NEW -m tcp -p tcp --dport 1521 -j ACCEPT
    #就可以了,其中 
    1521 是要开放的端口号,然后重新启动linux的防火墙服务。 
    #停止,启动防火墙
    service iptables stop 
    --停止 
    service iptables start 
    --启动 
    (service命令位于
    /sbin)
    #重启后自动开启
    chkconfig iptables on
    #重启后不开启
    chkconfig iptables off

    32 磁盘信息查看

    df -lh

    33 日志配置

    系统日志请查看文件/etc/syslog.conf

    34 系统硬盘找不到时的处理

    bios 中设置  或者

    安装 linux时使用 linux dd进行安装,来加载第三方驱动 或者

    硬盘没划分,需要先划分一下硬盘

    35 shell中上下翻页

    上翻页:shift+PgUp

    下翻页:shift+PgDn

    36 在目录下查找对应的字符串

    grep --'look' *
    #查找字符串时可以使用'\'来代表符号
    grep --'\$look' *
    #在当前目录及其子目录中查找字符串$look,输出时显示行号
    grep --n -i 'look' *
    #在当前目录及其子目录中查找字符串look,忽略大小写,输出时显示行号

    37 方便的两个命令

    #用于编辑的工具
    nano a.txt
    #用于浏览web的工具
    links http://www.google.com/

    38 shell中以某个用户的身份运行一条命令

    在控制台中以某个用户的身份运行一条命令可以用

    su -c command user
    #例如
    su -c './
    zabbix_agentd -c zabbix_agentd_linux.conf' zabbix
    su -c ./run.sh zabbix

    su会提示你输入密码,而且密码只能从键盘以交互式输入,不支
    持重定向。

    39 获取系统版本信息

    cat /etc/issue

    40 windows linux 文件格式转换

    #dos2unix
    >dos2unix 文件名
    unix2dos
    >unix2dos 文件名

    41 selinux 禁用

    #编辑文件/etc/selinux/config
    >vi /etc/selinux/config
    #将其中的SELINUX
    =enforcing改为SELINUX=disabled

     42 用mv取代rm,将删除文件放入自己的回收站

    #1.编辑用户路径下的.bashrc文件,如
    >vi /root/.bashrc
    #将alias rm
    ='rm -i'改为
    #alias rm
    ='mv -t /root/.trash'

    #
    2.到用户路径下创建.bashrc文件夹
    >mkdir /root/.trash

     43 用户组管理

    代码
    #添加组,如
    >groupadd redhats
    #删除组,如
    >groupdel redhats
    #修改组,如
    >groupmod redhats
    #将用户加入组
    #修改
    /etc/group文件,如将hh用户添加到system组:  
    #直接在第一行system:
    *:0:root后添加",hh"就行了

    44 selinux关闭

    1.临时关闭
    执行命令:setenforce 
    0
    setenforce 
    1 设置SELinux 成为enforcing模式
    setenforce 
    0 设置SELinux 成为permissive模式
    2.永久关闭
    修改文件:vi 
    /etc/sysconfig/selinux
    SELINUX
    =disabled

     45 磁盘管理

    =============5:查看目标节点存储设备信息,并创建磁盘分区
    找到要挂载的盘:
    #fdisk -l 

    创建磁盘分区:
    #fdisk /dev/sdb
    "n"创建分区
    "w"写入分区信息
    =============6.格式化设备(格式化会清空所有数据,请确保所有数据为不再需要的数据)
    mkfs.ext3 /dev/sde
    mkfs -t ext3 /dev/sde
    =============7.挂载设备
    mount -t ext3 /dev/sde /mnt/iscsi
    =============8.检查是否挂载成功
    #df -h
    补充:需要系统启动时自动挂接,需要编辑/etc/fstab,加入如下行:
    /dev/sde    /mnt/iscsi    ext3    defaults    0 0
    =============9.Linux 下查找大于100M的文件
    find . -type f -size +1000000k
    =============10.查看当前目录下,每个文件、文件夹所占大小。 

    du -h --max-depth=1

    46 断开会话,中断用户

    查看用户连接
    who
    
    断开远程用户
    X为who查看到的tty序号
    fuser -k /dev/pts/X
    
    断开本地用户
    X为who查看到的tty序号
    fuser -k /dev/ttyX
    
  • 相关阅读:
    Python开发之路
    openstack系列阅读目录
    linux基础
    PEP8规范
    我真的还是18岁的那个我
    为什么很多IT公司不喜欢进过培训机构的人呢?
    GRE与VXLAN
    VLAN模式
    网络虚拟化基础一:linux名称空间Namespaces
    四:OVS+GRE之网络节点
  • 原文地址:https://www.cnblogs.com/moonson/p/1321487.html
Copyright © 2020-2023  润新知