安装ubuntu系统后有很多东西需要自己瞎搞一下,这里把一些瞎搞的过程记录在这里,方便以后重新装系统后重新配置。

一、安装。

  可以在windows下制作启动盘(软碟通),然后开机u盘启动即可安装,预留出50G大小的硬盘差不多了。

  安装过程中预留4G的交换空间,剩余的直接挂在到:/ 下即可;

  其它的东西基本上不需要动了。

下面是基础的软件安装:

二、vim

 安装命令: sudo apt-get install vim
 vim的基础配置:vim ~/.vimrc

"=========================================================================
" DesCRiption: 适合自己使用的vimrc文件,for Linux/Windows, GUI/Console
"
" Last Change: 2010年08月02日 15时13分
"
" Version: 1.80
"
"========================================================================= set mouse=a
set nocompatible " 关闭 vi 兼容模式
syntax on " 自动语法高亮
colorscheme desert " 设定配色方案
set number " 显示行号
set cursorline " 突出显示当前行
set ruler " 打开状态栏标尺
set shiftwidth= " 设定 << 和 >> 命令移动时的宽度为 4
set softtabstop= " 使得按退格键时可以一次删掉 4 个空格
set tabstop= " 设定 tab 长度为 4
set nobackup " 覆盖文件时不备份
set autochdir " 自动切换当前目录为当前文件所在的目录
filetype plugin indent on " 开启插件
set backupcopy=yes " 设置备份时的行为为覆盖
set ignorecase smartcase " 搜索时忽略大小写,但在有一个或以上大写字母时仍保持对大小写敏感
set nowrapscan " 禁止在搜索到文件两端时重新搜索
set incsearch " 输入搜索内容时就显示搜索结果
set hlsearch " 搜索时高亮显示被找到的文本
set noerrorbells " 关闭错误信息响铃
set novisualbell " 关闭使用可视响铃代替呼叫
set t_vb= " 置空错误铃声的终端代码
" set showmatch " 插入括号时,短暂地跳转到匹配的对应括号
" set matchtime=2 " 短暂跳转到匹配括号的时间
set magic " 设置魔术 正则打开(不是很懂)
set hidden " 允许在有未保存的修改时切换缓冲区,此时的修改由 vim 负责保存
set guioptions-=T " 隐藏工具栏
set guioptions-=m " 隐藏菜单栏
set smartindent " 开启新行时使用智能自动缩进
set backspace=indent,eol,start
" 不设定在插入状态无法用退格键和 Delete 键删除回车符
set cmdheight= " 设定命令行的行数为 1
set laststatus= " 显示状态栏 (默认值为 1, 无法显示状态栏)
set statusline=\ %<%F[%*%M%*%n%R%H]%=\ %y\ %(%{&fileformat}\ %{&encoding}\ %c:%l/%L%)\
" 设置在状态行显示的信息
"set foldenable " 开始折叠
"set foldmethod=syntax " 设置语法折叠
"set foldcolumn=0 " 设置折叠区域的宽度
"setlocal foldlevel=1 " 设置折叠层数为
" set foldclose=all " 设置为自动关闭折叠
" nnoremap <space> @=((foldclosed(line('.')) < 0) ? 'zc' : 'zo')<CR>
" 用空格键来开关折叠 " return OS type, eg: windows, or linux, mac, et.st..
function! MySys()
if has("win16") || has("win32") || has("win64") || has("win95")
return "windows"
elseif has("unix")
return "linux"
endif
endfunction " 用户目录变量$VIMFILES
if MySys() == "windows"
let $VIMFILES = $VIM.'/vimfiles'
elseif MySys() == "linux"
let $VIMFILES = $HOME.'/.vim'
endif " 设定doc文档目录
let helptags=$VIMFILES.'/doc' " 设置字体 以及中文支持
if has("win32")
set guifont=Inconsolata:h12:cANSI
endif " 配置多语言环境
if has("multi_byte")
" UTF-8 编码
"set encoding=utf-8
"set termencoding=utf-8
"set formatoptions+=mM
"set fencs=gbk,utf-8 "set encoding=utf-8 "设置gvim内部编码,默认不更改
"set fileencoding=utf-8 "设置当前文件编码,可以更改,如:gbk(同cp936)
"set fileencodings=gbk,ucs-bom,utf-8,cp936,latin-1 "设置支持打开的文件的编码 set fileencodings=gb2312,utf-,unicode
set fileencoding=gb2312 "浏览器是GB2312编码 , java是unicode , gedit是utf-8
set termencoding=utf- if v:lang =~? '^\(zh\)\|\(ja\)\|\(ko\)'
set ambiwidth=double
endif if has("win32")
source $VIMRUNTIME/delmenu.vim
source $VIMRUNTIME/menu.vim
language messages zh_CN.utf-
endif
else
echoerr "Sorry, this version of (g)vim was not compiled with +multi_byte"
endif " Buffers操作快捷方式!
nnoremap <C-RETURN> :bnext<CR>
nnoremap <C-S-RETURN> :bprevious<CR> " Tab操作快捷方式!
nnoremap <C-TAB> :tabnext<CR>
nnoremap <C-S-TAB> :tabprev<CR> "关于tab的快捷键
" map tn :tabnext<cr>
" map tp :tabprevious<cr>
" map td :tabnew .<cr>
" map te :tabedit
" map tc :tabclose<cr> "窗口分割时,进行切换的按键热键需要连接两次,比如从下方窗口移动
"光标到上方窗口,需要<c-w><c-w>k,非常麻烦,现在重映射为<c-k>,切换的
"时候会变得非常方便.
"nnoremap 是在命令模式下才可以使用
"inoremap 是在插入模式下才可以使用
nnoremap <C-h> <C-w>h
nnoremap <C-j> <C-w>j
nnoremap <C-k> <C-w>k
nnoremap <C-l> <C-w>l "一些不错的映射转换语法(如果在一个文件中混合了不同语言时有用)
nnoremap <leader> :set filetype=xhtml<CR>
nnoremap <leader> :set filetype=css<CR>
nnoremap <leader> :set filetype=javascript<CR>
nnoremap <leader> :set filetype=php<CR> " set fileformats=unix,dos,mac
" nmap <leader>fd :se fileformat=dos<CR>
" nmap <leader>fu :se fileformat=unix<CR> " use Ctrl+[l|n|p|cc] to list|next|previous|jump to count the result
" map <C-x>l <ESC>:cl<CR>
" map <C-x>n <ESC>:cn<CR>
" map <C-x>p <ESC>:cp<CR>
" map <C-x>c <ESC>:cc<CR> " 让 Tohtml 产生有 CSS 语法的 html
" syntax/2html.vim,可以用:runtime! syntax/2html.vim
let html_use_css= " Python 文件的一般设置,比如不要 tab 等
autocmd FileType python set tabstop= shiftwidth= expandtab
autocmd FileType python map <F12> :!python %<CR> " 选中状态下 Ctrl+c 复制
vmap <C-c> <ESC>y " 打开javascript折叠
let b:javascript_fold=
" 打开javascript对dom、html和css的支持
let javascript_enable_domhtmlcss=
" 设置字典 ~/.vim/dict/文件的路径
autocmd filetype javascript set dictionary=$VIMFILES/dict/javascript.dict
autocmd filetype css set dictionary=$VIMFILES/dict/css.dict
autocmd filetype php set dictionary=$VIMFILES/dict/php.dict "-----------------------------------------------------------------
" plugin - bufexplorer.vim Buffers切换
" \be 全屏方式查看全部打开的文件列表
" \bv 左右方式查看 \bs 上下方式查看
"----------------------------------------------------------------- "-----------------------------------------------------------------
" plugin - taglist.vim 查看函数列表,需要ctags程序
" F4 打开隐藏taglist窗口
"-----------------------------------------------------------------
if MySys() == "windows" " 设定windows系统中ctags程序的位置
let Tlist_Ctags_Cmd = '"'.$VIMRUNTIME.'/ctags.exe"'
elseif MySys() == "linux" " 设定windows系统中ctags程序的位置
let Tlist_Ctags_Cmd = '/usr/bin/ctags'
endif
nnoremap <silent><F4> :TlistToggle<CR>
let Tlist_Show_One_File = " 不同时显示多个文件的tag,只显示当前文件的
let Tlist_Exit_OnlyWindow = " 如果taglist窗口是最后一个窗口,则退出vim
let Tlist_Use_Right_Window = " 在右侧窗口中显示taglist窗口
let Tlist_File_Fold_Auto_Close= " 自动折叠当前非编辑文件的方法列表
let Tlist_Auto_Open =
let Tlist_Auto_Update =
let Tlist_Hightlight_Tag_On_BufEnter =
let Tlist_Enable_Fold_Column =
let Tlist_Process_File_Always =
let Tlist_Display_Prototype =
let Tlist_Compact_Format = "-----------------------------------------------------------------
" plugin - mark.vim 给各种tags标记不同的颜色,便于观看调式的插件。
" \m mark or unmark the word under (or before) the cursor
" \r manually input a regular expression. 用于搜索.
" \n clear this mark (i.e. the mark under the cursor), or clear all highlighted marks .
" \* 当前MarkWord的下一个 \# 当前MarkWord的上一个
" \/ 所有MarkWords的下一个 \? 所有MarkWords的上一个
"----------------------------------------------------------------- "-----------------------------------------------------------------
" plugin - NERD_tree.vim 以树状方式浏览系统中的文件和目录
" :ERDtree 打开NERD_tree :NERDtreeClose 关闭NERD_tree
" o 打开关闭文件或者目录 t 在标签页中打开
" T 在后台标签页中打开 ! 执行此文件
" p 到上层目录 P 到根目录
" K 到第一个节点 J 到最后一个节点
" u 打开上层目录 m 显示文件系统菜单(添加、删除、移动操作)
" r 递归刷新当前目录 R 递归刷新当前根目录
"-----------------------------------------------------------------
" F3 NERDTree 切换
map <F3> :NERDTreeToggle<CR>
imap <F3> <ESC>:NERDTreeToggle<CR> "-----------------------------------------------------------------
" plugin - NERD_commenter.vim 注释代码用的,
" [count],cc 光标以下count行逐行添加注释(7,cc)
" [count],cu 光标以下count行逐行取消注释(7,cu)
" [count],cm 光标以下count行尝试添加块注释(7,cm)
" ,cA 在行尾插入 /* */,并且进入插入模式。 这个命令方便写注释。
" 注:count参数可选,无则默认为选中行或当前行
"-----------------------------------------------------------------
let NERDSpaceDelims= " 让注释符与语句之间留一个空格
let NERDCompactSexyComs= " 多行注释时样子更好看 "-----------------------------------------------------------------
" plugin - DoxygenToolkit.vim 由注释生成文档,并且能够快速生成函数标准注释
"-----------------------------------------------------------------
let g:DoxygenToolkit_authorName="Asins - asinsimple AT gmail DOT com"
let g:DoxygenToolkit_briefTag_funcName="yes"
map <leader>da :DoxAuthor<CR>
map <leader>df :Dox<CR>
map <leader>db :DoxBlock<CR>
map <leader>dc a /* */<LEFT><LEFT><LEFT> "-----------------------------------------------------------------
" plugin – ZenCoding.vim 很酷的插件,HTML代码生成
" 插件最新版:http://github.com/mattn/zencoding-vim
" 常用命令可看:http://nootn.com/blog/Tool/23/
"----------------------------------------------------------------- "-----------------------------------------------------------------
" plugin – checksyntax.vim JavaScript常见语法错误检查
" 默认快捷方式为 F5
"-----------------------------------------------------------------
let g:checksyntax_auto = " 不自动检查 "-----------------------------------------------------------------
" plugin - NeoComplCache.vim 自动补全插件
"-----------------------------------------------------------------
let g:AutoComplPop_NotEnableAtStartup =
let g:NeoComplCache_EnableAtStartup =
let g:NeoComplCache_SmartCase =
let g:NeoComplCache_TagsAutoUpdate =
let g:NeoComplCache_EnableInfo =
let g:NeoComplCache_EnableCamelCaseCompletion =
let g:NeoComplCache_MinSyntaxLength =
let g:NeoComplCache_EnableSkipCompletion =
let g:NeoComplCache_SkipInputTime = '0.5'
let g:NeoComplCache_SnippetsDir = $VIMFILES.'/snippets'
" <TAB> completion.
inoremap <expr><TAB> pumvisible() ? "\<C-n>" : "\<TAB>"
" snippets expand key
imap <silent> <C-e> <Plug>(neocomplcache_snippets_expand)
smap <silent> <C-e> <Plug>(neocomplcache_snippets_expand) "-----------------------------------------------------------------
" plugin - matchit.vim 对%命令进行扩展使得能在嵌套标签和语句之间跳转
" % 正向匹配 g% 反向匹配
" [% 定位块首 ]% 定位块尾
"----------------------------------------------------------------- "-----------------------------------------------------------------
" plugin - vcscommand.vim 对%命令进行扩展使得能在嵌套标签和语句之间跳转
" SVN/git管理工具
"----------------------------------------------------------------- """""新文件标题""""""""""
"新建.c,.h,.sh,.java文件,自动插入文件头
autocmd BufNewFile *.cpp,*.[ch],*.sh,*.java exec ":call SetTitle()"
""定义函数SetTitle,自动插入文件头
func SetTitle()
"如果文件类型为.sh文件
if &filetype == 'sh'
call setline(,"\#########################################################################")
call append(line("."), "\# File Name: ".expand("%"))
call append(line(".")+, "\# Author: Bai Yan")
call append(line(".")+, "\# 功能:")
call append(line(".")+, "\# Created Time: ".strftime("%c"))
call append(line(".")+, "\#########################################################################")
call append(line(".")+, "\#!/bin/bash")
call append(line(".")+, "")
else
call setline(, "/*************************************************************************")
call append(line(".") , " > File Name: ".expand("%"))
call append(line(".")+, " > Author: Bai Yan")
call append(line(".")+, " > 题意:")
call append(line(".")+, " > Created Time: ".strftime("%c"))
call append(line(".")+, " ************************************************************************/")
call append(line(".")+, "")
endif
"if &filetype == 'cpp'
"call append(line(".")+6, "#include<iostream>")
"call append(line(".")+7, "using namespace std;")
"call append(line(".")+8, "")
"endif
"if &filetype == 'c'
"call append(line(".")+6, "#include<stdio.h>")
"call append(line(".")+7, "")
"endif
"新建文件后,自动定位到文件末尾
autocmd BufNewFile * normal G
endfunc
""""""""""""""""""""""""""""""" "-----------------------------------------------------------------
" plugin – a.vim
"----------------------------------------------------------------- if has("autocmd")
au InsertEnter * silent execute "!gconftool-2 --type string --set /apps/gnome-terminal/profiles/Default/cursor_shape ibeam"
au InsertLeave * silent execute "!gconftool-2 --type string --set /apps/gnome-terminal/profiles/Default/cursor_shape block"
au VimLeave * silent execute "!gconftool-2 --type string --set /apps/gnome-terminal/profiles/Default/cursor_shape ibeam"
endif

 

三、C语言编译器: g++

sudo apt-get install g++

四、联通终端和粘贴板的工具:xclip

sudo apt-get install xclip

五、一种更好用的shell命令行:fish-shell

sudo apt-get install fish
//设置开机自动运行fish,即不用手动启用fish
whereis fish //根据上个命令返回的路径,(基本上不会变) chsh -s /usr/bin/fish //重启计算机就可以看到效果

六、JAVA整套环境;

  ① JDK安装:

    地址:http://www.oracle.com/technetwork/java/javase/downloads/jdk7-downloads-1880260.html 

    解压命令    

   sudo tar zxvf ./jdk-7u45-linux-x64.tar.gz

   移动命令顺便改了个名字

    sudo mv jdk1..0_45/ jdk1./

    编辑 .bashrc 文件。

    在终端输入如下命令:

    vi ~/.bashrc

    在该文件的末尾,加上以上几行代码:

  

      
  export JAVA_HOME=/opt/Java/jdk/jdk1.7
      export JRE_HOME=${JAVA_HOME}/jre
    export CLASSPATH=.:${JAVA_HOME}/lib:${JRE_HOME}/lib
    export PATH=${JAVA_HOME}/bin:$PATH

    为了让更改立即生效,请在终端执行如下命令:

   source ~/.bashrc

  ② eclipse 安装

    将eclipse解压到你想安装到的目录下,然后将jdk安装目录下的jre文件拷贝到eclipse安装目录中,然后双击eclipse运行图标,eclipse启动起来了。

    

    如何在桌面创建eclipse启动器

    1、sudo apt-get install --no-install-recommends gnome-panel

    2、完成后,运行:gnome-desktop-item-edit ~/ --create-new
 
    或者使用如下方法:
 
    $ sudo su
    # vim /usr/share/applications/eclipse.desktop
     写入以下内容
     [Desktop Entry]
     Name=Eclipse
     Comment=Eclipse SDK
     Encoding=UTF-8
     Exec=/usr/local/eclipse/eclipse                                                                  
     Icon=/usr/local/eclipse/icon.xpm
     Terminal=false
     Type=Application
     Categories=Application;Development;

    完成后可以在Application-Programming下看到eclipse图标。

    注意:

    Exec=/usr/local/eclipse/eclipse                                                                  
    Icon=/usr/local/eclipse/icon.xpm
 
    分别是eclipse可执行文件和图标所在目录,根据自己的实际情况修改。

七、mysql 卸载与安装 

  删除 mysql

    sudo apt-get autoremove --purge mysql-server-5.0
    sudo apt-get remove mysql-server
    sudo apt-get autoremove mysql-server
    sudo apt-get remove mysql-common //这个很重要
    上面的其实有一些是多余的。

  清理残留数据

    dpkg -l |grep ^rc|awk '{print $2}' |sudo xargs dpkg -P

  安装 mysql

    sudo apt-get install mysql-server
    sudo apt-get install mysql-client
    sudo apt-get install php5-mysql
    // 安装php5-mysql 是将php和mysql连接起来
    一旦安装完成,MySQL 服务器应该自动启动。您可以在终端提示符后运行以下命令来检查 MySQL 服务器是否正在运行:
    sudo netstat -tap | grep mysql

    当您运行该命令时,您可以看到类似下面的行:

    tcp 0 0 localhost.localdomain:mysql *:* LISTEN -

    如果服务器不能正常运行,您可以通过下列命令启动它:

    sudo /etc/init.d/mysql restart

    注意:   此时系统会自动分配一个用户名和密码,很长很怪,我们先登陆进去然后更改就好了; 

    sudo gedit /etc/mysql/debian.cnf   //用户名和密码所在; 
    mysql -u debian-sys-maint -p    //登录这个用户;
    set password for 'root'@'localhost' = password('yourpass');  //修改密码;

    进入mysql

    $mysql -u  root -p 管理员密码

  配置 MySQL 的管理员密码:

    sudo mysqladmin -u root password newpassword

八、更换ubuntu的系统主题和图标

    

    1. 安装Unity Tweak Tool

      在你能对Ubuntu外观做任何有效地修改之前,你不得不安装Unity Tweak Tool。

      这是一个Unity桌面环境下特殊设置管理软件,并且通过它你可以实现替换系统图标和主题。

      你可以从Ubuntu软件中心下载该软件,如果你更加偏爱terminal终端的话,你也可以使用下面的命令:

    

      sudo apt-get install unity-tweak-tool 

      如果你正在使用Gnome桌面环境,那么你可能需要尝试Gnome Tweak Tool这款软件。

      你也可以从Ubuntu软件中心和使用以下命令来安装该软件:

      sudo apt-get install gnome-tweak-tool 

    2. 安装GTK主题

      对于Ubuntu有很多定制的主题,这些主题可以影响应用和窗口的外观。我正在使用的主题是Numix GTK+。

      你可以在http://numixproject.org/找到关于Numix主题和图标的更多信息。

      你可以通过打开终端并输入以下命令来安装Numix主题

        

     sudo add-apt-repository ppa:numix/ppa
     sudo apt-get update && sudo apt-get install numix-gtk-theme

      为了使该主题生效,我们需要打开Unity Tweak Tool,选择“外观标题”下的“主题”选项,

      然后在“已有主题”一栏中选择该主题。只要相应的软件仓库名字一致,对于其他主题,

      你可以重复该过程来应用。你可以访问Gnome-Look.org获得更多的主题。、

      另一个和Numix主题很相似的主题是Moka,

      你可以在http://mokaproject.com/获得更多关于Moka主题的信息。

    3. 安装图标

      以上截图中使用的图标是来自Numix主题的Numix圆形图标。你可以通过在终端输入以下命令来安装该图标集

      

    sudo apt-add-repository ppa:numix/ppa
    sudo apt-get update
    sudo apt-get install numix-icon-theme-circle

      为了使该图标集生效,我们需要在Unity Tweak Tool中选择“图标”选项,然后选择该图标集。

      再一次声明,这个方法对于任何图标集是可行的。Moka也提供给你的桌面带来多彩的、一致性设计的图标集。

    4. 安装conky系统监视软件

      Conky是一个轻量级桌面系统监视软件。该软件本身是非常简单的,不过它是可定制的,这样一来它就可以显示很多的有用的信息。

      你可以通过在终端输入以下命令来      

      安装Conky:

  1.       sudo apt-get install conky conky-all 

      你将会需要curl这个软件,你可以通过以下这个命令来安装该软件:

    1. sudo apt-get install curl 

      上面截图中使用的conky主题是Harmattan,它可以以15种不同的样式来显示时间、天气、以及系统进程。

      要安装该主题,你可以从deviantART下载zip文件,然后解压。

      将.conky-weather文件夹和位于主题文件夹的.conkyrc文件(你可能需要按Ctrl+H来显示这些隐藏文件)移动到你的home文件夹。

      Conky有很多的主题。尝试这些主题,你所需要做的就是用所要使用主题的.conkyrc文件替换在home文件夹的.conkyrc文件。

    5. 安装一些指示器程序

      有很多第三方的指示器程序,通过这些程序你可以监视你的桌面信息,例如天气、系统性能等。我所使用的指示器程序相当简单。

      因为天气和系统性能已经在conky中显示,所以我没有安装这些指示器。不过你可以在终端输入以下命令来安装他们:

    1. sudo apt-get install indicator-weather
      sudo apt-get install indicator-multiload 我所使用的两个指示器程序是大小写指示程序以及触摸板控制器,这是因为我的笔记本没有大小写指示灯和控制触摸板开关的热键。
      你可以通过以下命令来安装这两个软件:
    1. sudo add-apt-repository ppa:tsbarnes/indicator-keylock
      sudo add-apt-repository ppa:atareao/atareao
      sudo apt-get update
      sudo apt-get install indicator-keylock
      sudo apt-get install touchpad-indicator

       你可能需要注销并重新登录来使用这些应用。

九、GitHub

    1. 安装

      

    sudo apt-get install git

    2. git clone 文件夹的网络地址

     会在本地clone一个一样的文件夹

    3. 然后就可以进行写东西了。

    4. 写完东西后push到远端。

      git pull

      git add tmp.cpp

      git commit -m "balabalabala"

      git push

    5. 需要从远端下载就

      git pull

十、LAMP环境搭建

  上面已经安装过Mysql了;

  下面安装 apache2

  

sudo apt-get install apache2  apache2-doc

http://localhost 打开看看是否可以使用了,我的就已经可以了;

  然后 安装php5

终端:sudo apt-get install php5 libapache2-mod-php5 。

重启Apache服务使php模块生效,
终端:sudo service apache2 restart 。
重启失败,需要更改一下apache2的设置;
/etc/apache2/apache2.conf
加入代码:ServerName localhost 测试php5是否安装成功,先编辑一个测试文件,
终端:sudo vim /var/www/html/phpinfo.php,输入如下内容:

<?php

phpinfo();

?>

然后在浏览器打开http://localhost/phpinfo.php  , 看看是否可以使用了;

然后就要连接数据库和php了

上面的数据库安装的时候有;

十一、开机自动挂载分区

ubuntu自动挂载ntfs分区就要手动编辑/etc/fstab 文件,/etc/fstab包含了挂在磁盘的必要信息,在系统启动时读入。
. 先用fdisk命令查看磁盘信息
sudo fdisk -l 2. 修改开机启动文件
sudo gedit /etc/fstab
3. 每一行使用一个tab分成6列,分别为filesystem, mountpoint, type, options, dump, pass
分别表示:原来在文件系统的位置,加载点位置,类型,参数等,可以使用man fstab来查看各个参数的定义
将以下内容添加到/etc/fstab 文件尾部,保存,重启即可自动挂载其他分区了。 #Other分区
/dev/sda5 /media/Other ntfs defaults,locale=zh_CN.UTF-
#Data分区
/dev/sda6 /media/Data ntfs defaults,locale=zh_CN.UTF-

十二、ftp 服务器

Ubuntu 用vsftpd 配置FTP服务器
网上的文章好难懂啊。。只想要简单粗暴,弄好能用就行啊,复杂的以后研究不行吗。。。折腾好久,其实弄出来能用不就这么点内容吗。。。 本文在Ubuntu Server 14.04 amd64系统测试。 Made By:CSGrandeur 安装ftp sudo apt-get install vsftpd
配置vsftpd.conf sudo nano /etc/vsftpd.conf
复制代码
#禁止匿名访问
anonymous_enable=NO
#接受本地用户
local_enable=YES
#允许上传
write_enable=YES
#用户只能访问限制的目录
chroot_local_user=YES
#设置固定目录,在结尾添加。如果不添加这一行,各用户对应自己的目录,当然这个文件夹自己建
local_root=/home/ftp
复制代码
看网上说加一行“pam_service_name=vsftpd”,我看我这个配置文件本来就有,就不管了。 添加ftp用户 sudo useradd -d /home/ftp -M ftpuser
sudo passwd ftpuser
调整文件夹权限 这个是避免“ OOPS: vsftpd: refusing to run with writable root inside chroot()” sudo chmod a-w /home/ftp
sudo mkdir /home/ftp/data
这样登录之后会看到data文件夹,虽然稍麻烦,原因不表了。。查资料这么辛酸已经不易。。 改pam.d/vsftpd 这时候直接用useradd的帐号登录ftp会530 login incorrect sudo nano /etc/pam.d/vsftpd
注释掉 #auth required pam_shells.so
重启vsftpd sudo service vsftpd restart
这时就可以用刚才建的ftpuser这个用户登录ftp了,看到的是local_root设置的/home/ftp,并且限制在该目录。 可以在浏览器用ftp://xxx.xxx.xxx.xxx访问,也可以用ftp软件比如flashFXP,密码就是ftpuser的密码。
关于用户访问文件夹限制 由chroot_local_user、chroot_list_enable、chroot_list_file这三个文件控制,转别人的一段话: 首先,chroot_list_enable好理解,就是:是否启用chroot_list_file配置的文件,如果为YES表示chroot_list_file配置的文件生效,否则不生效;
第二,chroot_list_file也简单,配置了一个文件路径,默认是/etc/vsftpd.chroot_list,该文件中会填入一些账户名称。但是这些账户的意义不是固定的,是跟配置项chroot_local_user有关的。后一条中说明;
第三,chroot_local_user为YES表示所有用户都*不能*切换到主目录之外其他目录,但是!除了chroot_list_file配置的文件列出的用户。chroot_local_user为NO表示所有用户都*能*切换到主目录之外其他目录,但是!除了chroot_list_file配置的文件列出的用户。也可以理解为,chroot_list_file列出的“例外情况”的用户。 如果客户端登录时候提示“以pasv模式连接失败” 编辑/etc/vsftpd.conf
最后添加
pasv_promiscuous=YES
然后再重启vsftpd服务。

十三.Latex

Latex安装

OS: Ubuntu 

网上有许多方法,比较复杂,尤其是讲到中文配置的时候,更为复杂。 懒得看了,想到了一个比较简单的方法,即:使用apt-get从网络上直接下载包来安装。 

三个比较重要的命令:
apt-cache search
apt-cache show
sudo apt-get install 使用apt-cache search latex, 可以看到许多包。
选择安装texlive-latex-base, 它的描述是:Tex Live: Basic LaTex packages.
sudo apt-get install texlive-latex-base 这样就安装好Latex了,可以直接使用。 但编译中文时,由于没有安装CJK中文环境,会提示找不到CJK包。
apt-cache search cjk, 有许多关于CJK 环境的包。
选择安装latex-cjk-all, 它的描述是:Installs all LaTex CJK packages.
sudo apt-get install latex-cjk-all 这样就可以使用中文环境了。 有些.sty文件可能没有安装,例如:lastpage.sty. 这个时候不要到网络上去询问是因为什么, Latex的输出错误信息已经很明显了。
使用下面的命令来查找相应的包:
apt-cache search lastpage (注意不要加.sty文件后缀)
可以看到需要下面的包,以及对这个包的描述:
texlive-latex-extra - TeX Live: LaTeX supplementary packages
选择安装即可:
sudo apt-get install texlive-latex-extra 完成上面的这三步,就可以完全满足我平时的应用需求了。 如果以后需要使用到新的包,可以使用上面第三步的方法来查找相应的安装包,并选择安装即可。 sudo apt-get install texmaker
安装texmaker程序,它是一个图形化界面的Tex书写,编译,生成,预览集合为一体的程序。 与Windows操作系统中的WinTex界面很相似。 Texlive-publishers包也可以安装一下, support for publishers, theses, standards, conferences, etc.
sudo apt-get install texlive-publishers
使用apt-cache show texlive-publishers命令可以看到它所支持的CTAN包的信息。 随后还要安装ctex, cjk-langue 的套装

4、TexMaker配置

首先把软件换成中文界面(事实证明,英文界面会大大减弱你接下来步骤的正确性):菜单栏->options->interface languages->zh_CN

当然了,另外那个zh也是中文……解放台湾岛,活捉林志凌

现在,重启TexMaker以后,在菜单栏->选项->配置TexMaker打开后的那个窗口里面有个“快速配置”->快速构建命令,选择XeLaTex->PDF View。

为什么要选择这个呢?主要是原来的那个对中文的支持不好,现在配置好了以后,你就直接可以按F1直接生成pdf文件了~

5、字体安装

ubuntu什么的字体一直是个大问题……你的LaTex论文最终好看与否,最终还是看你系统的字体的……你需要的字体有win字体+Adobe字体。

对于win的字体,如果你能找到一台win电脑,找到C:\\windows\fonts(大小写自己注意……),把下面的字体文件(后缀为ttf的文件)全部复制到你的电脑~/.fonts下面,运行命令

fc-cache -fv
ok~

对于Adobe字体,上网络上下载就可以了~当然和win一样的节奏~~~

现在你可以方便的使用LaTex了~

十四、unity3D

http://blogs.unity3d.com/2015/08/26/unity-comes-to-linux-experimental-build-now-available/
下载
sudo dpkg -i unity-editor-5.1.0f3\ 2015082501_amd64.deb

十五、c#

sudo apt-key adv --keyserver keyserver.ubuntu.com --recv-keys3FA7E0328081BFF6A14DA29AA6A19B38D3D831EF  

echo "deb http://download.mono-project.com/repo/debian wheezy main" | sudo tee /etc/apt/sources.list.d/mono-xamarin.list  

sudo apt-get update  

sudo apt-get install mono-complete  

sudo apt-get install monodevelop

十六、安装字体

下载或是从win文件夹复制过来ttc文件
然后新建文件夹:
sudo mkdir /usr/share/fonts/windows/
sudo mv msyh.ttc /usr/share/fonts/windows/
baiyan@Acoder ~> cd /usr/share/fonts/windows/
baiyan@Acoder /u/s/f/windows> sudo mkfontscale
baiyan@Acoder /u/s/f/windows> sudo mkfontdir
baiyan@Acoder /u/s/f/windows> sudo fc-cache -fv 查看已安装的中文的字体
fc-list :lang=zh

ubuntu--基础环境瞎搞集合的更多相关文章

  1. ubuntu 基础环境

    一.序言 这里记录了安装ubuntu 系统,以及里面常用的东西,jdk,idea,maven,svn,git 等等工具的安装,因为这些动作不是经常操作的,因此这里做一个记录,方便新手或者忘记的时候看看 ...

  2. 完整部署CentOS7.2+OpenStack+kvm 云平台环境(1)--基础环境搭建

    公司在IDC机房有两台很高配置的服务器,计划在上面部署openstack云平台虚拟化环境,用于承载后期开发测试和其他的一些对内业务.以下对openstack的部署过程及其使用做一详细介绍,仅仅依据本人 ...

  3. Spark环境搭建(上)——基础环境搭建

    Spark摘说 Spark的环境搭建涉及三个部分,一是linux系统基础环境搭建,二是Hadoop集群安装,三是Spark集群安装.在这里,主要介绍Spark在Centos系统上的准备工作--linu ...

  4. RHCE基础环境系统的搭建

    RHCE基础环境系统的搭建 安装前提: 安装的时候对系统和硬件的要求: 红帽系统安装队系统的要求:Windows操作系统选择64位的内存至少6GCPU需要支持虚拟化技术在做红帽系统实验的时候,把360 ...

  5. OpenStack实践系列①openstack简介及基础环境部署

    OpenStack实践系列①openstack简介及基础环境部署 一.OpenStack初探1.1 OpenStack简介 OpenStack是一整套开源软件项目的综合,它允许企业或服务提供者建立.运 ...

  6. (一)Hyperledger Fabric 1.1安装部署-基础环境搭建

    在学习和开发hyperledger fabric的时候遇到了一些坑,现将自己的一些总结和心得整理如下,以期对大家有所帮助.本次使用的宿主机环境:ubuntu,版本:Ubuntu 16.04.3 LTS ...

  7. openstack kilo部署-基础环境

    公司也想搞个私有云玩玩,于是展开了一系列的调研,部署测试,openstack 有几个版本真是坑爹!!,如果喜欢被虐有兄弟,你就试试 openstack 的 juno , icehouse等版本,用不了 ...

  8. Ubuntu Touch环境搭建

    最近搞了一下Nexus 5的MultiRom Manger,体验了一把Ubuntu Touch和Android L,总体感觉还不错,不过Android L的NFC驱动还有问题,Ubuntu Touch ...

  9. Spring Boot的学习之路(03):基础环境搭建,做好学习前的准备工作

    1. 前言 <论语·魏灵公>:"工欲善其事,必先利其器.居是邦也,事其大夫之贤者,友其士之仁者." 工欲善其事必先利其器.我们在熟悉一个陌生项目的时候,首先会大概去看一 ...

随机推荐

  1. 箭头函数 -------JavaScript

    本文摘要:http://www.liaoxuefeng.com/ ES6标准新增了一种新的函数:Arrow Function(箭头函数). 为什么叫Arrow Function?因为它的定义用的就是一 ...

  2. java从键盘输入学生成绩,找出最高分,并输出学生成绩等级。

    /*从键盘输入学生成绩,找出最高分,并输出学生成绩等级:成绩 >=最高分-10 等级为A成绩 >=最高分-20 等级为B成绩 >=最高分-30 等级为C其余为 等级为D 提示:先输入 ...

  3. Microsoft .Net framework 4.0出现 安装不成功,错误代码0x80240037 的解决方法

    ,安装Microsoft .Net framework 时出现 解决方法:用QQ管家 之后 以上就解决了

  4. 二十八、MySQL 元数据

    MySQL 元数据 你可能想知道MySQL以下三种信息: 查询结果信息: SELECT, UPDATE 或 DELETE语句影响的记录数. 数据库和数据表的信息: 包含了数据库及数据表的结构信息. M ...

  5. java+Mysql大数据的一些优化技巧

    众所周知,java在处理数据量比较大的时候,加载到内存必然会导致内存溢出,而在一些数据处理中我们不得不去处理海量数据,在做数据处理中,我们常见的手段是分解,压缩,并行,临时文件等方法; 例如,我们要将 ...

  6. python3 练习题100例 (八)

    题目八:暂停一秒输出,并格式化当前时间. #!/usr/bin/env python3 # -*- coding: utf-8 -*- """ 题目八:暂停一秒输出,并格 ...

  7. Olympic Class Ships【奥林匹克级邮轮】

    Olympic Class Ships You probably know about the Titanic, but it was actually just noe of three state ...

  8. SharedPreferences使用(通过键值保存数据)

    保存数据到SharedPreferences中 要想使用SharedPreferences来存储数据, 首先需要获取到SharedPreferences对象. Android中主要提供了三种方法用于得 ...

  9. JVM——自定义类加载器

    )以上两种情况在实际中的综合运用:比如你的应用需要通过网络来传输 Java 类的字节码,为了安全性,这些字节码经过了加密处理.这个时候你就需要自定义类加载器来从某个网络地址上读取加密后的字节代码,接着 ...

  10. Redis实现之事件

    事件 Redis服务器是一个事件驱动程序,服务器需要处理以下两类事情: 文件事件(file event):Redis服务器通过套接字与客户端(或者其他Redis服务器)进行连接,而文件事件就是服务器对 ...