安装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 " 设定 << 和 >> 命令移动时的宽度为 4 set softtabstop=4 " 使得按退格键时可以一次删掉 4 个空格 set tabstop=4 " 设定 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 " 设定命令行的行数为 1 set laststatus=2 " 显示状态栏 (默认值为 1, 无法显示状态栏) set statusline=\ %<%F[%1*%M%*%n%R%H]%=\ %y\ %0(%{&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-8,unicode set fileencoding=gb2312 "浏览器是GB2312编码 , java是unicode , gedit是utf-8 set termencoding=utf-8 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-8 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>1 :set filetype=xhtml<CR> nnoremap <leader>2 :set filetype=css<CR> nnoremap <leader>3 :set filetype=javascript<CR> nnoremap <leader>4 :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=1 " Python 文件的一般设置,比如不要 tab 等 autocmd FileType python set tabstop=4 shiftwidth=4 expandtab autocmd FileType python map <F12> :!python %<CR> " 选中状态下 Ctrl+c 复制 vmap <C-c> <ESC>y " 打开javascript折叠 let b:javascript_fold=1 " 打开javascript对dom、html和css的支持 let javascript_enable_domhtmlcss=1 " 设置字典 ~/.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 = 1 " 不同时显示多个文件的tag,只显示当前文件的 let Tlist_Exit_OnlyWindow = 1 " 如果taglist窗口是最后一个窗口,则退出vim let Tlist_Use_Right_Window = 1 " 在右侧窗口中显示taglist窗口 let Tlist_File_Fold_Auto_Close=1 " 自动折叠当前非编辑文件的方法列表 let Tlist_Auto_Open = 0 let Tlist_Auto_Update = 1 let Tlist_Hightlight_Tag_On_BufEnter = 1 let Tlist_Enable_Fold_Column = 0 let Tlist_Process_File_Always = 1 let Tlist_Display_Prototype = 0 let Tlist_Compact_Format = 1 "----------------------------------------------------------------- " 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=1 " 让注释符与语句之间留一个空格 let NERDCompactSexyComs=1 " 多行注释时样子更好看 "----------------------------------------------------------------- " 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 = 0 " 不自动检查 "----------------------------------------------------------------- " plugin - NeoComplCache.vim 自动补全插件 "----------------------------------------------------------------- let g:AutoComplPop_NotEnableAtStartup = 1 let g:NeoComplCache_EnableAtStartup = 1 let g:NeoComplCache_SmartCase = 1 let g:NeoComplCache_TagsAutoUpdate = 1 let g:NeoComplCache_EnableInfo = 1 let g:NeoComplCache_EnableCamelCaseCompletion = 1 let g:NeoComplCache_MinSyntaxLength = 3 let g:NeoComplCache_EnableSkipCompletion = 1 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(1,"\#########################################################################") call append(line("."), "\# File Name: ".expand("%")) call append(line(".")+1, "\# Author: Bai Yan") call append(line(".")+2, "\# 功能:") call append(line(".")+3, "\# Created Time: ".strftime("%c")) call append(line(".")+4, "\#########################################################################") call append(line(".")+5, "\#!/bin/bash") call append(line(".")+6, "") else call setline(1, "/*************************************************************************") call append(line(".") , " > File Name: ".expand("%")) call append(line(".")+1, " > Author: Bai Yan") call append(line(".")+2, " > 题意:") call append(line(".")+3, " > Created Time: ".strftime("%c")) call append(line(".")+4, " ************************************************************************/") call append(line(".")+5, "") 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.7.0_45/ jdk1.7/
编辑 .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:
-
sudo apt-get install conky conky-all
你将会需要curl这个软件,你可以通过以下这个命令来安装该软件:
-
-
sudo apt-get install curl
-
上面截图中使用的conky主题是Harmattan,它可以以15种不同的样式来显示时间、天气、以及系统进程。
要安装该主题,你可以从deviantART下载zip文件,然后解压。
将.conky-weather文件夹和位于主题文件夹的.conkyrc文件(你可能需要按Ctrl+H来显示这些隐藏文件)移动到你的home文件夹。
Conky有很多的主题。尝试这些主题,你所需要做的就是用所要使用主题的.conkyrc文件替换在home文件夹的.conkyrc文件。
5. 安装一些指示器程序
有很多第三方的指示器程序,通过这些程序你可以监视你的桌面信息,例如天气、系统性能等。我所使用的指示器程序相当简单。
因为天气和系统性能已经在conky中显示,所以我没有安装这些指示器。不过你可以在终端输入以下命令来安装他们:
-
-
sudo apt-get install indicator-weather sudo apt-get install indicator-multiload
我所使用的两个指示器程序是大小写指示程序以及触摸板控制器,这是因为我的笔记本没有大小写指示灯和控制触摸板开关的热键。
你可以通过以下命令来安装这两个软件:
-
-
-
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包含了挂在磁盘的必要信息,在系统启动时读入。 1. 先用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-8 0 0 #Data分区 /dev/sda6 /media/Data ntfs defaults,locale=zh_CN.UTF-8 0 0
十二、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 调整文件夹权限 这个是避免“500 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