• 企业400电话
  • 微网小程序
  • AI电话机器人
  • 电商代运营
  • 全 部 栏 目

    企业400电话 网络优化推广 AI电话机器人 呼叫中心 网站建设 商标✡知产 微网小程序 电商运营 彩铃•短信 增值拓展业务
    如何从Windows到Ubuntu(不动声色的变迁)

    Ubuntu版本

    12.04 LTS

    下载与安装
    官网,下载.iso镜像后,可以刻光盘,也可以刻U盘

    中文输入-ibus
    推荐 ibus-pinyin,并默认调整为"半角"输入

    sudo apt-get install ibus-pinyin

    gedit工具支持中文
    在Open打开文件的时候,注意左下脚有个"Character Encoding",点击后, 可以在此添加GBK,GB2312等字符集支持.

    vpn设置

    公司内的wiki已经有很多文章介绍了.在此就不在赘述.注意两点:

    1、配置文件

    vim /etc/vpnc/default.conf
    IPSec gateway xxxx.com IPSec ID             #ID
    IPSec secret         #组密码
    Xauth username xxxx

    2、执行
    sudo vpnc
    输入token认证,完成后,执行route -n查看是否有很多路由信息,存在的话,就证明连接成功了.

    keepass(保存密码)

    设置软件源
    keepass

    修改文件: /etc/apt/sources.list
    Display sources.list entries for: Choose your Ubuntu version Precise (12.04)
    deb http://ppa.launchpad.net/jtaylor/keepass/ubuntu precise main deb-src http://ppa.launchpad.net/jtaylor/keepass/ubuntu precise main

    Meld Diff Viewer(代码比对)

    Thunderbird(邮件收发)

    最常出问题的地方(供参考):

    Server Type: IMAP Mail Server
    Server Name: xxx
    Port: 143
    Security Settings
    Connection security: STARTTLS
    Authentication method: Normal password
    SMTP Server

    Description: 随意填写

    Server Name: xxx
    Port: 25
    Security and Authentication
    Connection security: STARTTLS
    Authentication method: Normal password
    User Name: xxxx
    mkpasswd.pl(生成随机密码)
    CentOS系统下的mkpasswd命令,在Ubuntu系统下,改为mkpasswd.pl

    mkpasswd.pl -s 0 -l 16

    Oracle VM Virtualbox(虚拟机)

    1、U盘

    使用lsusb命令把设备信息查出来# lsusb
    ...
    Bus 002 Device 007: ID 12d1:0001 Huawei Technologies Co., Ltd.

    依次选择Machine-Settings-USB

    Name:       Z
    Vendor  ID: 12d1
    Product ID: 0001
    ...

    剩下的不需要填写

    2、调整虚拟文件大小

    vboxmanage modifyhd VirtualBoxVMs/win7_x64/win7_x64.qed --resize 3000
    0%...
    Progress state: VBOX_E_NOT_SUPPORTED

    只能扩大,不能减小,否则会报错.
    VBoxManage: error: Resize hard disk operation for this format is not implemented yet!

    LibreOffice 4

    参考 http://askubuntu.com/questions/252612/how-do-i-install-libreoffice-4


    复制代码
    代码如下:

    sudo add-apt-repository ppa:libreoffice/libreoffice-4-1
    sudo apt-get update
    sudo apt-get dist-upgrade/p> p>sudo apt-get install libreoffice


    工具优化三部曲

    想知道如何实现主机名自动补全吗?如何在本地就可以"直接"连线上服务器吗?如何在本地"直接"连线上MySQL吗?
    请仔细查看该部分内容

    自动补全主机名

    bash-completion
    在ubuntu中安装bash-completion工具,就可以实现一些基本命令的主机名自动补齐,比如ssh, rsync等.

    1、deb包安装
    sudo apt-get install bash-completion

    2、编译安装
    从官网下载最新的release版本,注意不要从git下载,有可能文件不全,导致安装失败.
    修改~/.profile文件,写入如下内容: [[ $PS1 -f /usr/local/share/bash-completion/bash_completion ]] \
        . /usr/local/share/bash-completion/bash_completion


    3、开始编译安装


    复制代码
    代码如下:

    ./configure
    make
    make check # optional, requires dejagnu and tcllib
    make install # as root

    4、文件验证
    查看是否存在该文件:/usr/local/share/bash-completion/bash_completion
    注意:

    补齐的主机名默认来源是~/.ssh/known_hosts文件
    需要将/etc/ssh/ssh_config或者~/.ssh/config中的HashKnownHosts设置为no

    自动登录主机

    说明

    关于自动登录主机的问题,wiki已经有很多相关的文章了,我这里介绍的方法,优缺点如下(输入token是必须的):

    优点: 不需要本机生成无passphrase的私钥/公钥对,也不需要通过跳板机把公钥传到每台服务器上
    缺点:

    需要把跳板机上面的私钥复制到本地
    打开终端,设置为"a login shell"模式
    需要修改/创建的文件如下

    ~/master #用户放共享通道文件,例如
    ~/.profile #profile配置文件
    ~/.ssh/config #ssh配置文件
    ~/bin/ssh-add-pass # 判断ssh-agent,并自动输入passphrase
    ~/bin/passfile # 存放passphrase的密码文件
    ~/bin/ssh-attach # 判断ssh-agent,设置环境变量

    注意:mac本的ssh-agent命令生成文件不在/tmp目录下,需要根据实际情况略做修改.

    详细配置过程
    配置本地的.profile文件(CentOS为.bash_profile),追加如下内容


    复制代码
    代码如下:

    # Auto-passphrase
    ~/bin/ssh-add-pass ~/bin/passfile
    eval $(~/bin/ssh-attach)

    ssh配置文件:
    位置: ~/.ssh/config
    内容:

    复制代码
    代码如下:

    Host *
    User xxxx
    Port 22
    PreferredAuthentications publickey,password,gssapi-with-mic,hostbased,keyboard-interactive
    StrictHostKeyChecking no
    HashKnownHosts no/p> p>Host *.xxx.com
    ServerAliveCountMax 6
    ServerAliveInterval 300
    ControlMaster auto
    ControlPath ~/master/master-%h
    ControlPersist yes

    ssh-add-pass


    复制代码
    代码如下:

    #!/bin/bash/p> p># reference:
    # a href="http://stackoverflow.com/questions/13033799/how-to-make-ssh-add-read-passphrase-from-a-file">http://stackoverflow.com/questions/13033799/how-to-make-ssh-add-read-passphrase-from-a-file/a> if [ $# -ne 1 ] ; then
    echo "Usage: ssh-add-pass passfile" exit 1
    fi
    pass=$(cat $1) for SSH_AUTH_SOCK in /tmp/ssh-*/agent.*; do if [ -S $SSH_AUTH_SOCK ]; then
    # ssh-add -l >/dev/null echo export SSH_AUTH_SOCK=$SSH_AUTH_SOCK
    # $(export SSH_AUTH_SOCK=$SSH_AUTH_SOCK)
    exit 0 else eval $(ssh-agent)
    fi
    done/p> p># 这里的spawn后面接的私钥,只能使用绝对路径.否则会报找不到文件.
    # spawn ssh-add xxx_rsa
    expect EOF
    spawn ssh-add xxx_rsa/p> p> expect "Enter passphrase" send "$pass\r" expect eof
    EOF

    passfile
    密码文件
    ssh-attach


    复制代码
    代码如下:

    #!/bin/bash/p> p># reference:
    # https://github.com/jianingy/trash/blob/master/tools/ssh-attach # find if ssh-add and ssh-agent exists for prog in ssh-add ssh-agent; do which $prog >/dev/null || exit
    done for SSH_AUTH_SOCK in /tmp/ssh-*/agent.*; do [ -S $SSH_AUTH_SOCK ] ssh-add -l >/dev/null echo export SSH_AUTH_SOCK=$SSH_AUTH_SOCK exit 0
    done/p> p># try again by prompting user to input passpharses.
    create_new_agent=1 for SSH_AUTH_SOCK in /tmp/ssh-*/agent.*; do if [ -S $SSH_AUTH_SOCK ]; then
    create_new_agent=0
    ssh-add xxx_rsa || continue ssh-add -l >/dev/null echo export SSH_AUTH_SOCK=$SSH_AUTH_SOCK exit 0
    fi
    done/p> p># create new ssh-agent and run again
    # echo "no avaiable ssh-agent, starting a new one" >2 if [ $create_new_agent -eq 1 ]
    then
    ssh-agent >/dev/null exec $0 $@
    fi/p> p>exit 1/p> p># vim: ts=4 sw=4 et ai

    参考命令
    显示所有的key
    ssh-add -l
    删除所有的key
    ssh-add -D
    删除所有的ssh-agent
    killall ssh-agent

    自动登录MySQL
    核心:qmysql.py脚本

    1、获取方法
    git clone http://xxx
    2、使用方法
    把脚本放到~/bin目录下
     本地保存mysql密码
    首次执行生成~/bin/qmysql.py生成~/.qmysql.ini文件,分别填上连接线上数据库的用户名/密码/线上主机的密码
    3、修改~/.profile,增加自动主机名补全功能
    意思是qmysql.py脚本的自动补全由_ssh函数完成.
    # Auto-Comple
    complete -F _ssh qmysql.py
    3、使用
    qmysql l-dbc 按tab自动补全 -P port, 默认3306

    RTX
    前言:
    在Ubuntu下,用wine装的rtx真心不好用:

    控制面板隐藏在最底层,如果设置为总是在最前,看其他窗口又不方便
    聊天窗口,多个聊天窗口叠加在一起,也不知道哪个有新消息
    查看历史的消息记录,直接报错退出
    不同ubuntu版本安装rtx可能会遇到不同的问题,但是基本顺序都类似.我的安装过程如下:

    1、设置软件源并安装wine


    复制代码
    代码如下:

    sudo add-apt-repository ppa:ubuntu-wine/ppa
    sudo apt-get update
    sudo apt-get install wine winetricks

    2、安装依赖工具和库
    winetricks msxml3 gdiplus riched20 riched30 vcrun6 vcrun2005sp1 vcrun6sp6 vb6run

    在这期间报了一个错,如下:
    p11-kit: couldn't load module: /usr/lib/i386-linux-gnu/pkcs11/gnome-keyring-pkcs11.so: /usr/lib/i386-linux-gnu/pkcs11/gnome-keyring-pkcs11.so: cannot open shared object file: No such file or directory
    至于gnome-keyring-pkcs11.so这是个啥玩意,我也没搞清楚,总之是缺少,那么就去安装一个


    复制代码
    代码如下:

    # 下载(环境不同,版本可能不同)
    apt-get download gnome-keyring:i386
    # 解压
    dpkg -x gnome-keyring_3.2.2-2ubuntu4.1_i386.deb gnome-keyring
    # 复制文件
    cp -r gnome-keyring/usr/lib/i386-linux-gnu/pkcs11/ /usr/lib/i386-linux-gnu/

    3、安装rtx
    wine rtxclient2012formal.exe

    4、最后遇到一个报错,没记住...直接忽略了.

    参考

    复制代码
    代码如下:

    https://forums.eveonline.com/default.aspx?g=postsm=3532013
    http://hi.baidu.com/wantonzone/item/5c3ac5679da8a8157cdecc7a
    http://littlexiang.me/linux/install-wine-rtx-on-linux-x86_84.html


    Tips
    设置win + D键显示桌面

    1、打开Dash Home或者终端
    2、输入
    gconf-editor
    3、找到
    apps -> metacity -> global keybingdings -> show desktop
    把值改为d

    FAQ

    手贱把Desktop,Documents等目录删除了,如何恢复?
    重新设置一下语言环境就可以恢复了.方法如下:
    System-Settings -> Language-Support -> (Language for menus and windos) 把"汉语(中国)"拖到最上面
    重新登录,系统会提示你是否更新文件夹命名.然后这些系统目录就"回来"了.
    收尾工作:再把语言环境改回来.

    上一篇:Ubuntu下无线网卡搜索不到信号怎么办?
    下一篇:Ubuntu系统更新后WiFi图标显示不正常解决方法
  • 相关文章
  • 

    © 2016-2020 巨人网络通讯 版权所有

    《增值电信业务经营许可证》 苏ICP备15040257号-8

    如何从Windows到Ubuntu(不动声色的变迁) 如何,从,Windows,到,Ubuntu,