ubuntu一些配置

打印

u盘安装

使用 usb-creator-gtk 来创建可以启动U盘。该程序可以到 Ubuntu software center 中查找 ‘Startup disk creator’ 进行安装

显卡驱动

1
2
3
4
5
6
7
lspci -nnk | grep VGA                         # 查看显卡型号
sudo add-apt-repository ppa:xorg-edgers/ppa # 安装 Nvidia 驱动的 ppa
sudo apt-get update
sudo apt-get purge nvidia* # 移除旧的的显卡驱动

# 安装新的驱动。最好通过 start-> Preferences -> Aditional Drivers 选择安装
sudo apt-get install nvidia-349

版本

ubuntu 所有的版本号以及 codeName :

1
lsb_release -a                      # 查看当前安装的 ubuntu 的版本

dpkg

1
dpkg -i package.deb

apt

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
apt-get -s install <package>
apt-cache policy <package>
apt-cache search <package> # 模糊查找package
apt-show-versions <package>
aptitude versions <package>

# 查询安装包安装了那些内容
dpkg-query -L <package_name>

# 列出所有已经安装的软件包
dpkg-query -l

# 查找指定的文件属于哪一个package
sudo apt-get install apt-file
sudo apt-file update
apt-file search filename
apt-file search /path/to/file

# 如果通过 dpkg 或 apt-get 安装时,依赖未满足,可以使用该命令删除
sudo apt-get remove xxx

7788

1
2
3
4
5
6
7
8
sudo apt-get install rar                 # rar
sudo apt-get install libreoffice # libreoffice
sudo apt-get install gnome-calculator # 计算器
sudo apt-get install curl

sudo apt-get install p7zip # 7z
7z x xxx.7z -r -o /home/xx # 7z : 解压
7z a -t7z -r manager.7z /home/manager/* # 7z : 压缩

修改主机名

1
2
3
4
5
6
7
sudo hostname your-new-hostname

sudo vim /etc/hostname
your-new-hostname

sudo vim /etc/hosts
127.0.1.1 your-new-hostname

中文字体

参考这里

1
2
3
4
5
6
7
sudo apt-get install ttf-wqy-microhei   #文泉驿-微米黑
sudo apt-get install ttf-wqy-zenhei #文泉驿-正黑
sudo apt-get install xfonts-wqy #文泉驿-点阵宋体
sudo apt-get install fonts-wqy-microhei fonts-wqy-zenhei
# sudo mkfontscale
# sudo mkfontdir
# sudo fc-cache -fv

输入法

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
sudo add-apt-repository ppa:fcitx-team/nightly
sudo apt-get update
sudo apt-get install fcitx
#sudo apt-get install gnome-language-selector
im-config # or im-switch


# 以下三种输入法选择其一就可以了。
sudo apt-get install fcitx-googlepinyin
sudo apt-get install fcitx-sunpinyin
# 搜狗输入法 for linux http://pinyin.sogou.com/linux/


# 后续配置

# 防止Fcitx的Ctrl+Shift+F进行繁简转换:语言指示图标上右键->Configure->Addon
# ->选中 "Simple Chinese To Tranditional Chinese" -> 点击底部的Configure按钮
# -> 取消相应的快捷键即可。

#fcitx -r --enable fcitx-qimpanel
#fcitx-qimpanel

gedit

安装

1
2
3
4
5
6
7
8
9
10
11
sudo apt-cache search gedit
sudo apt-get install gedit
sudo apt-get install gedit-plugins

# gmate https://github.com/gmate/gmate
sudo apt-add-repository ppa:ubuntu-on-rails/ppa
sudo apt-get update
sudo apt-get install gedit-gmate

# 移除旧的 文本编辑器 leafpad
sudo apt-get remove leafpad

配置

1
2
3
4
5
6
7
8
9
10
11
12
13
14
View -> 取消选中 'toolbar'
Edit -> Preferences :
View
-> 选中 'Display line numbers'
-> 选中 'Highlight current line'
-> 选中 'Highlight matching brackets'
Editor
-> Tab width 设置为 4
-> 选中 'Insert spaces instead tabs'
-> 选中 'Enable automatic indentation'
-> 取消选中 'Create a backup copy of files before saving'
-> 取消选中 'Autosave files every 10 minutes'
Font & Colors
-> 选择一个自己喜爱的 Color Schema

gnome-terminal

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18

gnome-terminal : Edit : Profiles : New : xxx : 并设置默认为该 profile
: General
: 取消选中 Use the system fixed width font,并选择使用 Monospace 14 / ubuntu mono 14
: 选中 Use custom default terminal size : 120x30
: Title and Command
: 选中 Run command as login shell
// : 选中 Run a cunstom command instead of my shell,并输入 `env TERM=xterm-color /bin/bash`

# gnome-terminal 彩色显示
vi /etc/profile.d/xxx.sh
export TERM=xterm-color

# 使命令行提示符只显示父目录,而非整个路径
vi ~/.bashrc
查找 PS1 并将其中最后的 \w 替换为 \W
修改ll别名
alias ll='ls -lF'

常用快捷键

hot key descrption
Alt+1 主键盘上的额数字键,可以快速切换至第N个标签页
Ctrl+Shift+T 开启新的标签页
Ctrl+Shift+C 复制
Ctrl+Shift+V 粘贴
Ctrl+E 清屏
Ctrl+R 搜索历史命令
Ctrl+W 向后删除一个词
Ctrl+C 取消当前行的输入,新开始一行
Ctrl+U 清空当前输入行
Ctrl+D 如果当前行是空白行时,可以退出登录,直到退出当前窗口。

文件管理器 PCManFM

1
2
3
Edit : Preference :
General : Default View : Detailed list view
Layout : 选中 Filesystem root

桌面图标

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
# 复制既有应用的图标
ll /usr/share/applications/*.desktop
cp /usr/share/applications/firefox.desktop ~/Desktop

# 自定义一个图标

vi ~/Desktop/idea-IU-135.909.desktop
[Desktop Entry]
Version=1.0
Type=Application
Terminal=false
Icon[en_US]=gnome-panel-launcher
Name[en_US]=idea-IU-135.909
Exec=env UBUNTU_MENUPROXY= /home/zll/work/idea-IU-135.909/bin/idea.sh
Icon=/home/zll/work/idea-IU-135.909/bin/idea.png

chromium-browser

1
[me@locahost:~]$ sudo apt-get install chromium-browser

NOTICE: 该浏览器中文乱码可以参考这里

1
sudo rm /etc/fonts/conf.d/65-droid-sans-fonts.conf

service

1
2
3
# 等价于CentOS上的chkconfig
[me@localhost:~]$ sudo apt-get install sysv-rc-conf
[me@localhost:~]$ sudo sysv-rc-conf --help

JDK

安装Oracle JDK

1
2
3
4
5
6
7
8
9
10
11
12
13
14
sudo apt-get install python-software-properties
sudo add-apt-repository ppa:webupd8team/java
sudo apt-get update
sudo apt-get install oracle-java7-installer

# 缓存文件
# /var/cache/oracle-jdk8-installer/jdk-8u5-linux-x64.tar.gz

# abort
sudo killall -9 apt-get
ps aux | grep dpkg # kill them
dpkg --configure -a
sudo dpkg -r oracle-java7-installer

qq

参考这里

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28

#sudo add-apt-repository ppa:ubuntu-wine/ppa
#sudo apt-get update
#sudo apt-get install wine1.7


sudo apt-get install \
libasound2 \
libgtk2.0-0 \
liblcms2-2 \
libpng12-0 \
libsm6 \
libncurses5 \
libcups2 \
libpulse0 \
libmpg123-0 \
libasound2-plugins \
ttf-wqy-microhei

sudo apt-get install libgtk2.0-0:i386
sudo apt-get install ia32-libs
sudo apt-get install lib32ncurses5

sudo dpkg -i wine-qqintl_0.1.3-2_i386.deb
sudo apt-get install -f
#sudo apt-get remove wine-qqintl

cp /usr/share/applications/qqintl.desktop ~/Desktop

python

1
2
sudo apt-get install python-dev
sudo apt-get install python-pip

Ruby

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
# 1.9.3
sudo apt-get install ruby1.9.3

# FIXME 2.0+
wget http://cache.ruby-lang.org/pub/ruby/2.1/ruby-2.1.1.tar.gz
tar zxvf ruby-2.1.1.tar.gz
cd ruby-2.1.1/
./configure
???

# RVM
curl -sSL https://get.rvm.io | bash -s stable
# in new console
rvm install 2.1.1

常见问题

  • 禁止自动login
1
2
3
4
$ sudo vi /etc/lightdm/lightdm.conf
[SeatDefaults]
#autologin-user=xxx # comment this line
#autologin-user-timeout=0 # comment this line
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
$ vi ~/.config/openbox/lubuntu-rc.xml

<keybind key="W-r">
<action name="Execute">
<!-- <command>lxsession-default launcher_manager</command> -->
<command>lxpanelctl run</command>
</action>
</keybind>


<!-- Take a screenshot of the current window with scrot when Alt+Print are pressed -->
<keybind key="A-Print">
<action name="Execute">
<!--<command>lxsession-default screenshot window</command>-->
<command>scrot -u -b</command>
</action>
</keybind>
<!-- Launch scrot when Print is pressed -->
<keybind key="Print">
<action name="Execute">
<!--<command>lxsession-default screenshot</command>-->
<command>scrot</command>
</action>
</keybind>

<!-- 打开控制台-->
<keybind key="W-t">
<action name="Execute">
<command>gnome-terminal</command>
</action>
</keybind>

<!-- Lubuntu 锁屏-->
<keybind key="W-l">
<action name="Execute">
<!-- <command>xscreensaver-command -lock</command>-->
<command>dm-tool lock</command>
</action>
</keybind>

$ openbox --reconfigure

SSH

1
2
3
sudo apt-get install openssh-client
sudo apt-get install openssh-server
sudo service ssh status

登录画面的number lock

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
# for login

sudo vi /etc/xdg/lubuntu/lxdm/lxdm.conf
[base]
numlock=1

sudo vi /etc/lxdm/default.conf
[base]
numlock=1

# for lock screen
sudo vi /etc/lightdm/lightdm.conf.d/20-lubuntu.conf
greeter-setup-script=/usr/bin/numlockx on

# ???
sudo apt-get install numlockx
echo "/usr/bin/numlockx on" | sudo tee -a /etc/xdg/lxsession/Lubuntu/autostart

sudo vi /etc/X11/xinit/xinitrc
# 追加一下几行
/usr/bin/numlockx on

# ???
sudo vi /usr/share/lightdm/lightdm.conf.d/60-lightdm-gtk-greeter.conf
greeter-setup-script=/usr/bin/numlockx on

Adobe Flash Player

火狐安装的版本一般都比较低,而Chromium浏览器自带一般相对高些。具体可以通过该网页检测查看。

1
2
3
4
sudo apt-get install flashplugin-installer 

#sudo apt-get install pepperflashplugin-nonfree
#sudo update-pepperflashplugin-nonfree --install

文件关联

1
2
vi ~/.local/share/applications/mimeapps.list
cat /usr/share/applications/defaults.list

Mount UDF/ISO-13346 镜像

1
sudo mount -t auto /dev/cdrom0 / media/cdrom0

静态IP地址

参考这里

先禁用图形化的网络管理工具

1
2
3
4
5
6
7
8
sudo vi /etc/NetworkManager/NetworkManager.conf
[main]
plugins=ifupdown,keyfile,ofono
#dns=dnsmasq # 注释掉这一行

[ifupdown]
#managed=false
managed=true # 将值改为true

配置静态IP地址

1
2
3
4
5
6
7
8
9
10
11
12
13
sudo vi /etc/network/interfaces

auto lo
iface lo inet loopback


auto eth0
iface eth0 inet static
address 192.168.115.222
gateway 192.168.115.1
netmask 255.255.255.0
dns-nameservers 8.8.8.8 8.8.4.4
# ??? DNS貌似也可以配置在 /etc/resolvconf/resolv.conf.d/base

重启网络

1
2
sudo service network-manager stop
sudo service network-manager start

配置DNS

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
# 方法1
sudo vi /etc/network/interfaces
# 追加一下一行
dns-nameservers 192.168.101.1

# 方法2
sudo vi /etc/resolvconf/resolv.conf.d/base
nameserver 8.8.8.8

# 最后,更新
sudo resolvconf -u
cat /etc/resolv.conf

sudo ifdown eth0 && sudo ifup eth0
cat /etc/resolv.conf

# 补充
# 可以检测dns有没有在没有记录的时候提供替代地址,比如 189so 网址导航服务
dig @8.8.8.8 www.not-exist-domain.com

wine

wine 可以让部分Windows程序运行在Linux环境下,主要原理是其重新实现了Windows的API。

安装参考

netbook/laptop screen brightness

1
2
3
4
5
6
7
8
9
10
11
12
13
# done.
xrandr -q | grep " connected"
xrandr --output LVDS1 --brightness 0.5
#xrandr --output VGA1 --brightness 0.9
#xbacklight -inc XX

sudo vi /etc/default/grub
# GRUB_CMDLINE_LINUX_DEFAULT="quiet splash"
# OK...............
GRUB_CMDLINE_LINUX_DEFAULT="quiet splash acpi_osi="
#GRUB_CMDLINE_LINUX_DEFAULT="quiet splash acpi_backlight=vendor"
sudo update-grub

远程桌面

TO windows

1
sudo apt-get install grdesktop

PHP

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
sudo apt-get install nginx
sudo apt-get install php5-fpm php5-cli php5-cgi php5-mysql
sudo service php5-fpm status

sudo vi /etc/php5/fpm/php.ini
cgi.fix_pathinfo=0

sudo vi /etc/php5/fpm/pool.d/www.conf
owner = www-data
group = www-data
listen.owner = www-data
listen.group = www-data
listen.mode = 0660


sudo vi /etc/nginx/sites-available/default
location ~ \.php$ {
fastcgi_split_path_info ^(.+\.php)(/.+)$;
# # NOTE: You should have "cgi.fix_pathinfo = 0;" in php.ini
#
# # With php5-cgi alone:
# fastcgi_pass 127.0.0.1:9000;
# # With php5-fpm:
fastcgi_pass unix:/var/run/php5-fpm.sock;
fastcgi_index index.php;
include fastcgi_params;
}

sudo service php5-fpm restart
sudo service nginx restart

vi /usr/share/nginx/html/my.php
<?php phpinfo(); ?>

# 访问浏览器 http://localhost/my.php

自动挂载Windows分区

1
2
3
4
sudo blkid   # 查看各个分区的UUID
id # 查看自己当前账户的uid和gid
sudo vi /etc/fstab
UUID=519CB82E5888AD0F /media/Data ntfs defaults,gid=1000,uid=1000 0 0

环境变量的配置

1
2
3
4
5
 sudo mkdir /etc/profild.d/xx.sh  通常为电脑的名字
在脚本中输入以下内容:(以java为列)
((#!sh /bin/bash)) 这句可以不写
export JAVA_HOME=/usr/local/jdk1.8.0_91
export PATH=$JAVA_HOME/bin:$PATH

uml建模

uml建模我使用Astah

ubuntu无法识别windows下的硬盘(双系统)

双系统下ubuntu无法查看windows硬盘

1
2
## 错误提示
Error mounting /dev/sdb4 at /media/xxx/xx: Command-line`mount -t "ntfs" -o"uhelper=udisks2,nodev,nosuid,uid=1000,gid=1000,dmask=0077,fmask=0177""/dev/sdb4" "/media/eden/文檔"' exited with non-zero exit status14: The disk contains an unclean file system (0, 0).

解决办法

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
1、打开终端,输入sudo fdisk -l 可列出所有的分区情况,找到自己windows硬盘的分区;
设备 启动 起点 终点 块数 Id 系统
/dev/sda1 * 63 163846934 81923436 7 HPFS/NTFS/exFAT
分区 1 未起始于物理扇区边界。
/dev/sda2 163846996 859797503 347975254 f W95 扩展 (LBA)
分区 2 未起始于物理扇区边界。
/dev/sda5 163846998 404500634 120326818+ 7 HPFS/NTFS/exFAT

2、得知分区为:/dev/sdb4,创建挂载目录:

sudo mkdir /media/xxx/yyy (xxx为用户名,yyy为挂载的硬盘的名字)
3、挂载硬盘:

mount -t ntfs-3g /dev/sdb4 /media/xxx/yyy/ -o force

4、还是不行,网上一搜,用以下命令,大功告成:

sudo ntfsfix /dev/sdb6

网址收藏记录

转载比较好的篇幅

  • 问题点:

      1. 2台计算机发送超大文件的实现
      1. 路由和转发的区别
      1. 自定义通信协议注意点有哪些
  • 计算机网络基础知识

    • tcp/ip协议群简介

      1
      对我们开发一个高可用的网络是一个基础
    • java内存介绍篇

      1
      文章补充:虽然后面说明了android的。但同属一个概念。
    • tcp发送和接收数据的原理概念(多篇文章组合观看): 1 2 3

      1
      2
      3
      4
      5
      6
      7
         文章补充说明:
      带着问题点去看:当2台计算机发送一个超大文件,那么发送中的数据存储在哪里,发送方存储在路由器中还是内存中,接收端收到部分数据是在内存
      中还是硬盘中?接收至一半的数据突然中断,何时会被删除?计算机写入一个可以非常快,发送端是一次发送还是如何发送?发送慢是发送端网络慢,还是
      路由慢 还是接收端慢
      重点词:1.窗口 2.收到确认
      重点信息:tcp发送信息有一个窗口维持。同时发送的数据需要确认后才会发送下一个序号数据。
      部分理解回答: 发送和接收端都有一个缓冲区。发送端每次发送发送的数据需要接收端回复确认才继续发送下一个序号数据
    • 自定义通信协议基础: 1 2

  1. elasticsearch中文记录
  2. 华为云学院

vm下ubuntu server共享主机文件夹

事实上,虚拟机上自带的VMware-tools就可以实现,但是VMware tools需要自己安装,下面介绍一下安装方法:

  1. 安装VMware-tools

  2. 点击VMware工具栏’’VM”——“install VMware tools…”,这时桌面会出现光盘形状的VMware Tools,而且会自动跳出目录,里面包含两个文件,”manifest.txt”与”VMwareTools-8.4.5-324285.tar.gz”。(server版本的用命令进入(下文))

  3. cd /media/VMware Tools 进入安装文件目录

  4. cp VMwareTools-8.4.5-324285.tar.gz /tmp 将VMware Tools压缩包拷贝到临时文件夹/tmp下(当前目录是没有权限的)

  5. cd /tmp 进入临时文件夹

  6. tar -zxvf VMwareTools-8.4.5-324285.tar.gz 解压该压缩文件

  7. cd vmware-tools-distrib 进入该文件夹

  8. ./vmware-install.pl 安装vmware-tools

  9. 一路Enter,VMware-tools就安装成功了。

在vm的设置里面共享

  1. 点击 VM——setting——options——shared Folders,选择Always enabled,点击下面Add添加windows中的共享文件夹,我选择的是F盘,然后保存修改。

  2. 重新启动ubuntu,你就可以在目录/mnt/hgfsz下发现名为”F”的文件夹了,双击就会发现时windows下的F盘的内容,你可以在ununtu下在里面进行读写操作了。

vim一些配置

安装

CentOS 的最小化安装默认只安装了最小版的VI,可以通过以下命令安装全部功能的Vim:

1
2
yum install vim-common vim-enhanced vim-minimal
sudo apt-get install vim

修改环境变量

1
2
[root@h01 ~]# vi /etc/profile.d/custom.sh
alias vi=vim

或者

1
2
[root@h01 ~]# vi ~/.bashrc
alias vi=vim

修改vim配置文件

修改用户级别的 需要修改 ~/.vimrc。修改全局的,需要修改 /etc/vimrc (可以通过 :version 看到)

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
set nocompatible
set number
colors desert
syntax on
set ruler
set showcmd
set cursorline
set fileencodings=utf-8,gbk
set expandtab
set tabstop=4
set shiftwidth=4
set softtabstop=4
set fileformats=unix
set hlsearch
set formatoptions-=cro
set paste
" set list
" comment here

filetype

vi ~/.vim/filetype.vim, 在 vim 中可以通过 :set syntax? 查看当前 syntax 的值

1
2
autocmd BufRead,BufNewFile my.cnf set syntax=dosini
autocmd BufRead,BufNewFile build.gradle set syntax=groovy

colorschema

1
2
3
ll /usr/share/vim/vim74/colors
# 或者在vim中
:colo <tab>

安装vba插件

largeFile,
Manual
wget http://www.drchip.org/astronaut/vim/vbafiles/LargeFile.vba.gz
gunzip LargeFile.vba.gz
vi LargeFile.vba
:source %

1
2
3
4


:source %

将换行符从dos格式变为unix格式

参考:1

1
2
3
4
:update                     Save any changes.
:e ++ff=dos Edit file again, using dos file format ('fileformats' is ignored).
:setlocal ff=unix This buffer will use LF-only line endings when written.
:w Write buffer using unix (LF-only) line endings.
  • 删除BOM头
1
2
:set nobomb
:wq

全局替换

1
:%s/\t/    /g

tab

1
2
3
4
5
6
7
8
# 显示空白字符
:set list

# 替换为空格
:%s/\t/ /g

# 不显示空白字符
:set nolist

命令模式

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
# 文件
:open pathToFile # 打开指定的文件
:bn # 查看下一个文件
:bp # 查看上一个文件
:args # 查看当前打开的文件列表
:split pathToFile # 在分割窗口中打开指定的文件
Ctrl+ww # 在分割窗口中循环切换文件
:e ftp://192.168.1.101/xxx.txt # 打开远程文件(FTP)
:e \\sambahost\share\xxx.txt # 打开远程文件(Samba)


# 光标移动
h # 左移1个字符(可前接数字)
l # 右移1个字符(可前接数字)
k # 上移1个字符(可前接数字)
j # 下移1个字符(可前接数字)

^ # 移至行首第一个非空白字符
0 # 移至行首
<Home> # 移至行首
$ # 移至行尾(可前接数字)
<End> # 移至行尾

w # 向后移动1个单词,光标停在单词首部(可前接数字)
b # 向后移动1个单词,光标停在单词首部(可前接数字)
e # 向后移动1个单词,光标停在单词尾部(可前接数字)
ge # 向后移动1个单词,光标停在单词尾部(可前接数字)

# 缩进
<< # 当前行向左缩进
>> # 当前行向右缩进

查看当前set的值
:set expandtab? # 打印该选项的使用方法和值
:set autoindent! # 该选项值取反(针对bool型)
:set option& # 重置该选项值为默认值
:verbose set textwidth? # 查看值


# 进入插入模式
i # 在当前光标位置前插入
I # 在当前行的行首插入
a # 在当前光标位置后插入
A # 在当前行的行尾插入
o # 在当前行之后插入一行
O # 在当前行之前插入一行

# 进入 visual 模式
v

插入模式

1
2
3
# 缩进
C-d # 当前行向左缩进
C-t # 当前行向右缩进

visual 模式

1
2
<                               # 当前选区向左缩进
> # 当前选区向右缩进