zoukankan      html  css  js  c++  java
  • 第四章 源代码安装编译

    第四章 源代码安装编译

    8、源代码编译与安装
    1)安装编译工具,先要配yum
    查看gcc是否存在:gcc --version
    查看make是否存在:make --version
    2)安装yum仓库
    vim /etc/yum.repos.d/server.repo
    [base]
    name=rhce
    baserurl=file:///mnt
    gpgcheck=0
    挂载光盘
    mount /devrom /mnt
    3) 安装
    yum -y install 包名 安装
    yum -y remove 包名 卸载
    rpm -qa vsftpd 查看

    mount /dev/cdrom /mnt
    yum -y install gcc
    yum -y groupinstall "Development Tools"
    yum -y install pcre-devel apr-devel apr-util-devel
    获取源码包:httpd-2.4.29.tar

    #配置apache2
    tar -xf httpd-2.4.29.tar.bz2 -C /usr/local/ #解压
    cd /usr/local-》ls-》cd httpd-2.4.29-》ls-》vim INSTALL
    cd /usr/local-》ls-》httpd-2.2.29-》cd /httpd-2.2.29-》ls-》./configure --prefix=usr/local/apache2
    make #编译
    make install
    cd /usr/local-》ls-》cd apache2-》cd conf-》vim httpd.conf-》搜/ServerName-》在第195行处输入ServerName localhost:80

    保存退出后-》cd ../bin-》ls-》./apachectl restart

    netstat -tunlp 或者 ss -tul #可查看服务是否已启动

    vim /etc/profile.d/http.sh-》编辑上 export PATH=/usr/local/apache2/bin:$PATH 保存退出-》cd /etc/profile.d

    . http.sh #运行起这个脚本

    echo $PATH

    此时,无论在哪个路径下,都可以直接启动这个脚本
    apachectl stop

    yum -y install elinks #安装一个浏览器
    elinks http://localhost

    按q就可以退出来了

    9、用户高级权限-1
    ——访问控制列表(access control List)
    setfacl设置和取消文件或目录的访问控制列表
    setfacl -m [ u | g ]:[ user_name | group_name ]:permission [ file_name | dir_name ]
    setfacl -x [ u | g ]:[ user_name | group_name ]:permission [ file_name | dir_name ]
    #setfacl -m u:user1:rwx /tmp/file1 添加ACL权限
    #setfacl -x u:user1 /tmp/file1 删除ACL权限
    ——getfacl查看文件或目录的访问控制列表
    getfacl [ file_name | dir_name ]
    #get /tmp/file1
    ——Default ACL 默认ACL
    setfacl -d -m [ u | g ]:[ user_name | group_name ]:permission dir_name
    取消目录的Default ACL权限,使用“-x”选项。

    ——chacl更改文件和目录的ACL或Default ACL属性
    chacl -B [u| g]:[ user_name | group_name ]:permission dir_name
    执行命令“chacl”时使用“-B”选项,在删除文件或目录的ACL的同时,也删除
    了文件或目录上ACL属性特征符号“+”。

    2)用户高级权限-2
    SUID
    设置特殊权限SUID示例:
    chmod u+s /usr/bin/vim

    SGID
    设置特殊权限SGID示例:
    对二迚制文件应用SGID : chmod 2755 /usr/bin/ls

    对目录应用SGID : chmod g+s /tmp/test
    Sticky

    设置特殊权限Sticky的表示方式有两种,一是使用符号表示“o+t”;另一种是使
    用八迚制数值表示“1XXX”(XXX代表八迚制数值表示的基本权限)。

    设置特殊权限SGID示例:
    chmod 1755 /tmp/example

    3)权限委派sudo

    查看/etc/sudoers文件的内容,该文件中存在权限委派的示例,最典型的示例如下

    root ALL=(ALL) ALL %wheel ALL=(ALL) ALL

    命令二进制文件的绝对路径可以通过“which command”命令查询,如查询useradd命令的二进制文件的绝对路径,可执行“which useradd”
    另外,多个命令二进制文件的绝对路径以“,”分隔,逗号后面建议空一格。

    被委派的用户必须具有密码,否则无法执行完成sudo命令。用户在执行委派的命令时,必须要以sudo起头。

    vim /etc/sudoers 或者 visudo
    root ALL=(ALL) ALL
    用户名 ALL=(ALL) /usr/sbin/useradd,/usr/sbin/userdel,usr/sbin/usermod
    允许admin1用户创建、修改、删除用户的权限 #92,0-1 85%

    10、性能检测与优化
    评估CPU:
    uptime
    uptime”命令输出的内容可以作为Linux系统整体性能评估的一个参考

    vmstat
    vmstat是一个比较全面的性能分析工具,通过此工具可以对系统的进程情况、内存使用
    情况、swap和块设备IO以及CPU使用情况进行统计并报告相应的信息。


    评估内存:
    top
    top是一个动态显示过程,即可以通过用户按键来不断刷新当前状态。如果在前台执行该
    命令,它将独占前台,直到用户终止该程序为止

    free
    “free”命令是查看系统内存使用情况最常用的方式。
    free -m #以m 为单位,查看内存信息包括物理内存和虚拟内存。

    评估磁盘I/O:
    评估磁盘的性能常使用“iostat”命令。

    iostat命令的选项如下:
    -c 仅显示CPU使用统计信息,与-d选项互斥
    -d 仅显示磁盘I/O统计信息,与-c选项互斥
    -k 以KB为单位显示每秒的磁盘请求数,默认单元为块
    -p 后加具体的设备名或参数ALL,用于显示某块设备及系统分区的统计信息
    -t 输出结果时,显示收集的时间
    -V 打印版本号和帮助信息
    -x 输出扩展信息

    评估网络性能:

    ping : 网络连接状态的测试,通常使用因特网包探测器(Packet Internet Groper,简称
    ping)。ping命令能够对网络的连接状态、网络延时进行检测,从而可以进行网络状态的分析和故障判断,及时发现出网络中存在的问题

    #netstat -tulnp
    netstat: netstat 能够对网络接口状态进行监控,采集网络接口的状态信息。
    #netstat -i #查看接口的详细信息

    Ctrl+shift+t #打开另一个终端

    查看CPU信息
    #cat /proc/cpuinfo
    #cat /proc/meminfo #查看内存信息

    2)Linux 内核优化
    内核模块存放的目录位置是 /lib/modules。
    内核模块查看 lsmod modinfo
    ll -h /boot #查看内核
    modinfo +文件名 #查看某一模块的详细信息
    lsmod |grep +文件系统 #查看文件系统是否被加载
    modprobe +模块名 #加载模块命令
    modprobe -r +模块名 #卸载模块
    2.1)开启IP转发

    vim /usr/lib/sysctl.d/00-system.conf #永久开启
    进入后,配置 net.ipv4.ip_forward = 1 保存退出
    刷新内核参数 sysctl -p /usr/lib/sysctl.d/00-system.conf
    echo1 > /proc/sys/net/ipv4/ip_forward #临时开启ip转发

    2.2)禁止ping命令
    vim /usr/lib/sysctl.d/00-system.conf
    net.ipv4.icmp_echo_ignore_all = 1
    刷新内核参数 sysctl -p /usr/lib/sysctl.d/00-system.conf

  • 相关阅读:
    怎样确定需求
    xampp进程和非进程执行
    将博客搬至CSDN
    管理心得
    数据库性能优化
    开发、架构总结
    activeMQ总结
    php数组操作函数
    Examples_08_08
    保险采购单的修复
  • 原文地址:https://www.cnblogs.com/wx9527/p/14906623.html
Copyright © 2011-2022 走看看