zoukankan      html  css  js  c++  java
  • linux一路填坑...

    1、安装ubuntu

    从ubuntu9.0开始,一路更新,越来越垃圾,更可恶的是工作上经常指定特定的版本,于是乎,我电脑里装了n个版本的ubuntu.

    Win7 + Ubuntu 15.10

    1)装完win7之后,删除一个分区留给ubuntu用

    2)接着装完ubuntu 15.10 ,发现windows7不能启动,启动文件损坏。

    3)运行sudo update-grub2修复启动文件ok.

    dong@ubuntu:~$ sudo update-grub2
    [sudo] dong 的密码: 
    Generating grub configuration file ...
    Warning: Setting GRUB_TIMEOUT to a non-zero value when GRUB_HIDDEN_TIMEOUT is set is no longer supported.
    Found linux image: /boot/vmlinuz-4.2.0-16-generic
    Found initrd image: /boot/initrd.img-4.2.0-16-generic
    Found memtest86+ image: /boot/memtest86+.elf
    Found memtest86+ image: /boot/memtest86+.bin
    Found Windows 7 (loader) on /dev/sda1
    done
    dong@ubuntu:~$ 

    如何安装win7/win10和linux [ubuntu16.04LTS]双系统(与原系统共存方式)

    https://blog.csdn.net/doublezsx/article/details/79674725

    http://rufus.ie/

    2、linux指令备忘

    apt-get install xxxx 安装
    apt-get remove xxxx 卸载但不删除配置
    apt-get purge xxxx 卸载并且删除相关配置

    Ubuntu apt-get彻底卸载软件包

    grep -rn "hello,world" *

    3、source /etc/profile永久生效

    命令来把某个路径加入.bashrc文件。

    echo "source /etc/profile" >> ~/.bashrc

    然后通过

    source ~/.bashrc

    4、VM

    我的vmware workstations 12中的ubuntu14.04虚拟机在安装过vmware tools之后,依然不能从windows拷贝文件,且不能【自适应客户机】。
    解决方案如下:卸载sudo apt-get remove open-vm-tools, 
    重新安装sudo apt-get install open-vm-tools-desktop。
    sudo reboot.恢复正常。
     
    5、Linux中Kill进程的N种方法
     
    6、ubuntu gedit乱码
     
    6、新安装的ubuntu系统安装编译工具链
    1)ubuntu 64 交叉编译工具找不到路径
    sudo apt-get install lib32ncurses5 lib32z1
    sudo apt-get install libglib2.0-dev

    error while loading shared libraries: libstdc++.so.6: cannot open shared obj

    原因在于,ubuntu,ia32_libs 被废弃了导致没有32位的lib库。
    解决方法
    sudo apt-get install lib32stdc++6
    sudo apt-get install lib32z1
    2)添加环境变量
    export PATH=$PATH:/usr/local/gcc-linaro-arm-linux-gnueabihf/bin
    export PATH=$PATH:/usr/local/gcc-linaro-arm-linux-gnueabihf/bin
    export PATH="$PATH:/usr/local/gcc-linaro-arm-linux-gnueabihf/bin"
    echo "export PATH=$PATH:/usr/local/gcc-linaro-arm-linux-gnueabihf/bin" >> ~/.bashrc
    eg:
    export PATH=$PATH:/usr/local/gcc-linaro-arm-linux-gnueabihf/bin
    echo "export PATH=$PATH:/usr/local/gcc-linaro-arm-linux-gnueabihf/bin" >> ~/.bashrc

    export PATH=/usr/local/node-v4.9.1-linux-armv7l/bin:$PATH
    export LD_LIBRARY_PATH=/usr/local/node-v4.9.1-linux-armv7l/lib:$LD_LIBRARY_PATH

    export PATH="/usr/local/node-v4.9.1-linux-armv7l/bin:"$PATH
    export LD_LIBRARY_PATH="/usr/local/node-v4.9.1-linux-armv7l/lib:"$LD_LIBRARY_PATH

    export PATH=$PATH:/usr/local/node-v4.9.1-linux-armv7l/bin
    export LD_LIBRARY_PATH=$LD_LIBRARY_PATH:/usr/local/node-v4.9.1-linux-armv7l/lib

    export PATH="$PATH:/usr/local/node-v4.9.1-linux-armv7l/bin"
    export LD_LIBRARY_PATH="$LD_LIBRARY_PATH:/usr/local/node-v4.9.1-linux-armv7l/lib"
    7、linux下的.so文件为共享库,相当于windows下的dll文件,使用方法如下
    在你的工程源代码里包含.h头文件,然后可以调用动态库里的函数,在链接的时候加上如下编译器参数:
    -l xx.so
    如果你的so文件是以lib开头的,还可以直接这样使用:
    -lxx
    xx是你的.so文件名
     
    8、虚拟机和主机网络配置
    nat模式是上网用的,桥接模式能将虚拟机ip配置成主机同一网段,有时候自动获取的ip不在同一网段,需要手动调整。
     
    9、VM拓展ubuntu磁盘容量
    fdisk -l

    parted -l

    fdisk /dev/sda
    n p 3 w

    parted -l

    partprobe

    df

    mkfs.ext4 /dev/sda3

    mount /dev/sda3 /root
     
    10、 nfs
    1) mount /dev/sda3 /root/disk

    2) minicom

    3) nfs

    pc:
    sudo vi /etc/exports
    /home/dong/_install *(rw,sync,no_root_squash,no_subtree_check)

    sudo /etc/init.d/nfs-kernel-server restart
    sudo /etc/init.d/rpcbind restart
    sudo ifconfig eth0 172.16.23.157 broadcast 172.16.23.254 netmask 255.255.255.0



    board:
    ifconfig eth0 172.16.23.158 broadcast 172.16.23.254 netmask 255.255.255.0
    mount -t nfs -o nolock 172.16.23.157:/home/dong/_install /root/_install
    11、Werror=deprecated-declarations
    export LD_LIBRARY_PATH=$(pwd)/ffmpeg/lib:$LD_LIBRARY_PATH

    gcc -o main main.c
    -I $(pwd)
    -I $(pwd)/ffmpeg/include
    -I $(pwd)/ffmpeg/include/libavcodec
    -I $(pwd)/ffmpeg/include/libavdevice
    -I $(pwd)/ffmpeg/include/libavfilter
    -I $(pwd)/ffmpeg/include/libavformat
    -I $(pwd)/ffmpeg/include/libavutil
    -I $(pwd)/ffmpeg/include/libpostproc
    -I $(pwd)/ffmpeg/include/libswresample
    -I $(pwd)/ffmpeg/include/libswscale
    -I $(pwd)/ffmpeg/include/libpostproc
    -I $(pwd)/ffmpeg/include/libyasm
    -I $(pwd)/ffmpeg/include/SDL2
    -L $(pwd)/ffmpeg/lib
    -Wno-deprecated-declarations -lx264 -lSDL2 -lavformat -lavutil -lavdevice -lavcodec -lswresample -lavfilter -lswscale -lpostproc -lz -lm  -lpthread -std=c99
     
    -Werror=deprecated-declarations
    -Wno-deprecated-declarations
     

    12、linux syslog服务器配置,自动发日志到另一台日志服务器

    1.客户端:168.1.20.66
    修改/etc/syslog.conf  添加
    syslog.info   @168.1.80.30

    2.日志服务器:168.1.80.30
    修改/etc/sysconf/syslog 修改SYSLOGD_OPTIONS为 "-r -x -m 0"   #-r表示允许接收外来的消息,-x表示不解析DNS,

    #-m 0表示时间戳标记间隔,如果指定只接受某个或多个ip过来的日志,例"-s 168.1.1.1:168.1.1.2"
    修改/etc/syslog.conf 添加
    syslog.info;syslog.!err;syslog.!crit;syslog.!alert       /var/log/mylog      #info信息记录到日志服务器的/var/log/mylog中
    syslog.err                                                          /var/log/testerror    #error信息记录到日志服务器的/var/log/testerror中

    3.客户端和日志服务器都执行service syslog restart


    4.经测试,可以分类存放日志到不同的文件。测试方法:在客户端程序如下程序:

    #include <stdio.h>
    #include <syslog.h>
    int main(int argc, char* argv[])
    {
            //openlog(argv[0], LOG_CONS | LOG_PID, LOG_USER);
            int count = 0;
            while(count<5){
                    syslog(LOG_SYSLOG|LOG_INFO, "%d:, syslog user test", count);
                    count++;
            }
            //closelog();
            return 0;
    }

     

    13. unrecognized relocation (0x2a) in section `.text`

    https://blog.csdn.net/daxiang10m/article/details/93190949

    14. sudo make install

    sudo make install

    mkdir -p /usr/local/include/hiredis /usr/local/include/hiredis/adapters /usr/local/lib
    cp -pPR hiredis.h async.h read.h sds.h alloc.h /usr/local/include/hiredis
    cp -pPR adapters/*.h /usr/local/include/hiredis/adapters
    cp -pPR libhiredis.so /usr/local/lib/libhiredis.so.1.0.0
    cd /usr/local/lib && ln -sf libhiredis.so.1.0.0 libhiredis.so
    cp -pPR libhiredis.a /usr/local/lib
    mkdir -p /usr/local/lib/pkgconfig
    cp -pPR hiredis.pc /usr/local/lib/pkgconfig

    15. ssh

    https://www.cnblogs.com/asyang1/p/9467646.html

  • 相关阅读:
    面向对象高级
    Intellij IDEA 激活码 | Intellij IDEA 注册码
    如何保证核心链路稳定性的流控和熔断机制?
    消息模型:主题和队列有什么区别?
    MySQL中悲观锁和乐观锁到底是什么?
    SQL是如何在数据库中执行的?
    ZooKeeper 面试题(30道ATM精选问题)
    线上服务的FGC问题排查,看这篇就够了!
    一次线上JVM调优实践,FullGC40次/天到10天一次的优化过程
    由多线程内存溢出产生的实战分析
  • 原文地址:https://www.cnblogs.com/dong1/p/5919896.html
Copyright © 2011-2022 走看看