• linux工作知识点滴


    1. 要学会使用ldd *.so来查看动态库所依赖的库,以排除一些异常错误。

    2. ldconfig是一个动态链接库管理命令,ldconfig命令的用途,主要是在默认搜索目录(/lib和/usr/lib)以及动态库配置文件/etc/ld.so.conf内所列的目录下,搜索出可共享的动态链接库(lib*.so*),进而创建出动态装入程序(ld.so)所需的连接和缓存文件,缓存文件默认为/etc/ld.so.cache,此文件保存已排好序的动态链接库名字列表,ldconfig通常在系统启动时运行,而当用户安装了一个新的动态链接库时,就需要手工运行ldconfig这个命令。

    3. 启动某个服务失败时,可以使用命令netstat -anp|grep "端口",查看是否是端口已经被占用了, 然后可以kill -9 "端口",再次运行。

    4. yum install “某个包”,提示没有找到“每个包”,可以执行命令yum install epel-release

    5. 在安装完某服务后,输入命令md5sum *.so > lib.md5(or ls |xargs  md5sum > lib.md5),来防止以后因为无意修改了*.so而导致出错

    6. 给Centos7安装NTP来同步服务器的时间,yum -y install ntp,crontab -e(*/30 * * * * /usr/sbin/ntpdate cn.ntp.org.cn) 

    7. 在工作中,修改环境变量的几个路径:vim /root/.bashrc ,   vim /etc/profile ,  vim /etc/bashrc,  cd /etc/ld.so.conf.d(这里面的修改完要ldconfig)

    8. 在linux中,运行命令,如yum install ntp -y, 提示Database environment version mismatch 的话,可以运行如下命令解决:rpm --rebuild,yum clean all

    9. 查询PID,可以用命令pgrep -l XXX(名字,如service)

    10. Linux中出现这种错误:dbenv->open:BDB0091 DB_VERSION_MISMATCH: Database environment version mismatch,可以用如下命令进行修复:①rm /var/lib/rpm/__xx(or rm ~/.rpmdb/__db**)      ②rpm --rebuilddb      

    11. 用ssh登录到别的机子上时,需要输入密码, 如果想在一条命令行里面直接输入密码登录到远程主机的时候,可以使用 sshpass -p 123456 ssh root@192.168.5.6

    12. ls -bash: ls: command not found解决方法:export PATH=/usr/local/sbin:/usr/local/bin:/sbin:/bin:/usr/sbin:/usr/bin:/root/bin

    13. 测试生成core文件:kill -s SIGSEGV pid

    14. 用ps afx可以更直观的看到服务的运行状态

    15. du -sh * 查找占用磁盘大小

    16. 以后在安装环境的时候,如果发现缺少某些so的话,可以直接去开发的75机子上找到相应的so,然后放在自己本地建立的一个专门用来存放这些so的目录下(如/fsp_sss_stream/lib下,mv libstdc++.so.6.0.20 /lib64/,ll libstdc++.so.6,rm libstdc++.so.6,ln -s libstdc++.so.6.0.20 libstdc.so.6, ldconfig),然后在vim /etc/ld.so.conf.d/fsp_sss_stream.conf中写入/fsp_sss_stream/lib,最后ldconfig完事。

    17.  tail -f sc.log | grep -v 'ClientCnxn'(过滤不想要的内容) 

    18. 用yum安装服务的时候,有时候出提示(

    Multilib version problems found. This often means that the root
    cause is something else and multilib version checking is just
    pointing out that there is a problem),我这里是因为我用rpm -Uvh “安装包”时候出现(可能是因为有.i686和x86_64两种包)。解决方法如下:①yum list --showduplicates libnghttp2,找出不是你需要的包,然后②rpm --erase --nodeps libnghttp2,yum update,最后再安装一遍想要的服务yum install libnghttp2

    19. linux下查看CPU、带宽、内存:①带宽用top(运行过程中可以按数字“1”,来查看每个CPU的使用情况) ②带宽使用:watch more /proc/net/dev (现在最好下载一些工具来配合使用,如:nload) ③内存 free -m

    20. 用ansible安装curl(支持http2)的时候,发现有个别机器会报这样的错误:configure: error: one or more libs available at link-time are not available。但是安装别的机器的时候又都能正常,于是①vim /etc/ld.so.conf 添加/opt/nghttp2(这个是curl要支持http2的前置要安装的库) ②删除之前所有curl和nghttp2相关的源码包 ③重新用ansible安装

  • 相关阅读:
    JS原型链与instanceof底层原理
    流程关系图制作---ProcessOn从入门到精通
    VBA比较两个Excel数据的异同
    C# 通过 Quartz .NET 实现 schedule job 的处理
    C# 通过 Quartz .NET 实现Timer Job并将其注册成为Windows Service
    在.Net Framework中调用Python的脚本方法 (以VB和C#为例)
    用Python建立连接直接读取与更改Rockwell Control Logix Controller的tag值
    C#通过第三方组件生成二维码(QR Code)和条形码(Bar Code)
    如何根据条件来确定某个字段是否应该被序列化
    在Asp.Net MVC 中如何用JS访问Web.Config中appSettings的值
  • 原文地址:https://www.cnblogs.com/Allen-ling/p/5915627.html
Copyright © 2020-2023  润新知