安装Ubuntu后必须要做的几件事(二)--开发工具篇

t#安装完善的编辑套件
讲开发没有编译器,那么一切都是浮云。
Ubuntu默认是不安装g++的

sudo apt-get install build-essential
  • 1
  • 1

下面这些看自己爱好:
安装词法和语法分析器

sudo apt-get install flex
sudo apt-get install bison
  • 1
  • 2
  • 1
  • 2

编辑器


vim(编辑器之神 & 黑客的编辑器)

当然您也可以选择emacs,关于他们哪个好我已经不想再说了,他们的圣战如同编译器的圣战一样,年代久远且永无止境。
曾经无数的“高手”对我说,世界上只有三种程序员,一种是用vim,一种是用emacs,另一种就是用其它编辑器的
1.用root账户登录Ubuntu,命令行中输入vim,如果未安装会得到下面的提示:

程序“vim”已包含在下列软件包中:
 * vim
 * vim-gnome
 * vim-tiny
 * vim-gtk
 * vim-nox
请尝试:apt-get install <选定的软件包>
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7

按照提示输入安装

apt-get install vim
  • 1
  • 1

更加详细的安装和配置请参见
Vim的安装与配置
安装Ubuntu后必须要做的几件事(二)--开发工具篇

sublime text(最性感的编辑器)


sudo add-apt-repository ppa:webupd8team/sublime-text-3
sudo apt-get update
sudo apt-get install sublime-text
  • 1
  • 2
  • 3
  • 1
  • 2
  • 3

更加详细的信息请参见
Sublime Text[崇高文本]—-最性感的编辑器(程序员必备)

Sublime Text 3配置Windows下C/C++编译环境

Sublime text 3设置用用空格替换tab键

Ubuntu下Sublime Text 3解决无法输入中文的方法

atom(21世纪最易于配置的文本编辑器)

在开发编辑器相争的领域,我们看到了不少的更新换代。最后一次使Web开发界轰动的编辑器,非Sublime Text莫属了,特别是在Package Control出现之后,更为其增添了不少光彩,它提供了完美的包管理功能,使用户能够方便的安装管理各种插件。

如今,Github开始坐不住了,它发布了一款新的编辑器的Beta版,名字叫做Atom,誓要刮起Web开发界的一场新风暴。我有幸拿到了Beta版本的程序,接下来我要为你们展示这个编辑器究竟提供了什么样的功能。还有一件事需要提醒的是,此编辑器的文档甚是匮乏,所以有些功能需要一探究竟才能知道它使干什么用的

sudo add-apt-repository ppa:webupd8team/atom
sudo apt-get update
sudo apt-get install atom
  • 1
  • 2
  • 3
  • 1
  • 2
  • 3

注意:如果遇到 Node.js 相关错误,请先添加这个 Node.js PPA。

如果要从 Ubuntu 中删除 Atom 文本编辑器,可以使用如下命令:

sudo apt-get remove atom
  • 1
  • 2
  • 3
  • 1
  • 2
  • 3

解压缩工具


7z解压缩*.7z以及rar


linux安装7z命令
linux上安装7z命令有两种方式:在线安装和安装包安装,下面分别介绍。

使用apt-get安装

如果你的宿主机Linux可以连接外网,推荐用这种方式,方便简单,执行命令:

sudo apt-get install p7zip
  • 1
  • 1

即可在线安装7z命令。

源码包安装

7z(准确点说是7-Zip)提供了线下的程序安装包,也可自己编译安装。这里讲的是用7z提供的bin包来安装。

宿主机linux一般是X86的,而7z提供编译好了的bin包,可以很方便的安装。步骤如下:
1 去网站
http://sourceforge.net/projects/p7zip/files/
http://sourceforge.net/projects/p7zip/files/p7zip/
上下载p7zip的包,当前最新版本是9.38.1;

2) 找到对应版本号进去,页面会提供两个供你下载,一个是bin包,另一个是源码包,这里下的是bin包,以9.38.1为例,下载的包名称是:p7zip_9.38.1_src_all.tar.bz2;

3) 在Linux上执行下面命令(解压和安装):

tar xjvf p7zip_9.38.1_src_all.tar.bz2
cd p7zip_9.38.1
sh install.sh
  • 1
  • 2
  • 3
  • 1
  • 2
  • 3

注意上面的命令权限,需要root权限,因此最好在tar和sh命令前加上sudo。

到此,就安装完成了。
注意:7za不仅仅支持.7z压缩格式,还支持.tar.bz2等压缩类型的。如上所述,用-t指定即可。

rarlinux解压缩rar


官方网址:http://www.rarlab.com/
下载对应的源码包
也可以直接用wget获取

wget http://www.rarlab.com/rar/rarlinux-5.2.1.tar.gz
  • 1
  • 1

编译安装

tar -zxvf rarlinux-5.2.1.tar.gz
cd rarlinux
make
make install

  • 1
  • 2
  • 3
  • 4
  • 5
  • 1
  • 2
  • 3
  • 4
  • 5

安装git


直接Git

但由于直接使用 sudo apt-get install git 安装的版本较老,因此我们参考【2】中给出的PPA源。

sudo add-apt-repository ppa:git-core/ppa
sudo apt-get update
sudo apt-get install git
  • 1
  • 2
  • 3
  • 1
  • 2
  • 3

安装完成后,检查是否安装成功

git --version
  • 1
  • 1

源码安装


wget https://github.com/git/git/archive/v2.3.0.zip
unzip v2.3.0.zip
cd git-2.3.0
  • 1
  • 2
  • 3
  • 1
  • 2
  • 3

编译安装

将其安装在“/usr/local/git”目录下。

make prefix=/usr/local/git all
sudo make prefix=/usr/local/git install
  • 1
  • 2
  • 1
  • 2

此时你如果使用git –version 查看git版本的话,发现git仍然是1.7.1版本。这是因为它默认使用了”/usr/bin”下的git。

你可以用下面的命令查看git所在的路径:

whereis git
git: /usr/bin/git /usr/local/git /usr/share/man/man1/git.1.gz
  • 1
  • 2
  • 1
  • 2

我们要把编译安装的git路径放到环境变量里,让它替换”/usr/bin”下的git。为此我们可以修改“/etc/profile”文件(或者/etc/bashrc文件)。

sudo vim /etc/profile
  • 1
  • 1

然后在文件的最后一行,添加下面的内容,然后保存退出。

export PATH=/usr/local/git/bin:$PATH
  • 1
  • 1

使用source命令应用修改。

source /etc/profile
  • 1
  • 1

然后再次使用git –version 查看git版本,发现输出2.3.0,表明安装成功。

设置Git

设置用户名和email。

git config --global user.name "Your Name"
git config --global user.email "youremail@domain.com"
  • 1
  • 2
  • 1
  • 2

此时,Home目录下会新建一个.gitconfig文件

为GitHub账号添加SSH Keys

以公钥认证方式访问SSH协议的Git服务器时无需输入口令,而且更安全。(访问HTTP协议的Git服务器时,比如提交修改,每次都需要输入口令。)
创建SSH key

ssh-keygen -t rsa -C "youremail@163.com"
  • 1
  • 1

系统会提示key的保存位置(一般是~/.ssh目录)和指定口令,保持默认,连续三次回车即可。

(2)Copy SSH Key

然后用vim打开该文件,id_rsa.pub文件内的内容,粘帖到github帐号管理的添加SSH key界面中。

vim ~/.ssh/id_rsa.pub
  • 1
  • 1

(3)添加到GitHub

登录github-> Accounting settings图标-> SSH key-> Add SSH key-> 填写SSH key的名称(可以起一个自己容易区分的),然后将拷贝的~/.ssh/id_rsa.pub文件内容粘帖-> add key”按钮添加。

(4)测试

ssh -T git@github.com
  • 1
  • 1
  1. 为GitHub上的Repository提交修改
    (1)git clone已存在GitHub上的Repository。(在新建的~/MyTestFolder目录中)
git clone https://github.com/zhchnchn/ZhchnchnTest.git
  • 1
  • 1

修改一个文件,然后提交

vim README.md
git status
git add README.md
git status
git commit -m "Edit by WorkUbuntu 1204"
git status
git remote add origin https://github.com/zhchnchn/ZhchnchnTest.git
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7

fatal: remote origin already exists.

解决办法【3】:

$ git remote rm origin
然后再次执行 git remote add origin https://github.com/zhchnchn/ZhchnchnTest.git
  • 1
  • 2
  • 1
  • 2

(3)之后,需要将修改push到GitHub上

git push -u origin master
  • 1
  • 1

执行该条命令后,会要求输入GitHub账户的用户名和密码。
提交完成后,查看GitHub上的Repository,会发现内容修改成功。

安装nfs服务


NFS安装


服务器端安装 : 
sudo apt-get install nfs-common nfs-kernel-server portmap

在客户端则需要安装: 

sudo apt-get install nfs-common portmap

启动服务 
sudo /etc/init.d/nfs-kernel-server start

停止服务 
sudo /etc/init.d/nfs-kernel-server stop

重启服务 
sudo /etc/init.d/nfs-kernel-server restart
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9
  • 10
  • 11
  • 12
  • 13
  • 14
  • 15
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9
  • 10
  • 11
  • 12
  • 13
  • 14
  • 15

NFS配置


配置/etc/exports文件

sudo vim /etc/exports
  • 1
  • 1

书写规则是:(每个共享规则一行)
共享目录 主机 ( 参数 )
例如:

/home/fzu/dd 219.229.128.44(ro,sync, no_root_squash)
  • 1
  • 1

注:nfs允许挂载的目录及权限在文件/etc/exports中进行了定义。其中:/rootnfs是要共享的目录,*代表允许所有的网络段访问,rw是可读写权限,sync是资料同步写入内存和硬盘,no_root_squash是nfs客户端分享目录使用者的权限,如果客户端使用的是root用户,那么对于该共享目录而言,该客户端就具有root权限。

nfs常用的参数有:

参数 意义
ro 只读访问
rw 读写访问sync 所有数据在请求时写入共享
async nfs在写入数据前可以响应请求
secure nfs通过1024以下的安全TCP/IP端口发送
insecure nfs通过1024以上的端口发送
wdelay 如果多个用户要写入nfs目录,则归组写入(默认)
no_wdelay 如果多个用户要写入nfs目录,则立即写入,当使用async时,无需此设置。
hide 在nfs共享目录中不共享其子目录
no_hide 共享nfs目录的子目录录
subtree_check 如果共享/usr/bin之类的子目录时,强制nfs检查父目录的权限(默认)
no_subtree_check 和上面相对,不检查父目录权限
all_squash 共享文件的UID和GID映射匿名用户anonymous,适合公用目录。
no_all_squash 保留共享文件的UID和GID(默认)
root_squash root 用户的所有请求映射成如anonymous用户一样的权限(默认))
no_root_squas root 保留共享文件的UID和GID(默认)
anonuid=xxx 指定nfs服务器/etc/passwd文件中匿名用户的UID
anongid=xxx 指定nfs服务器/etc/passwd文件中匿名用户的GID

测试


显示出共享出来的目录

showmount -e
  • 1
  • 1

将nfs的rootnfs目录挂载到本地磁盘上。

sudo mount -t nfs localhost:/rootnfs /mnt
  • 1
  • 1

查看挂载情况

df
  • 1
  • 1

卸载挂载

sudo umount /mnt
  • 1
  • 1

远程管理主机


ssh命令行登陆


ubuntu下开启ssh服务

安装ssh服务器:

sudo apt-get install openssh-server
  • 1
  • 1

查看ssh服务是否在后台开启,出现了sshd字样表示ssh后台服务默认已开启

ps -e | grep ssh
10588 ?        00:00:00 sshd
  • 1
  • 2
  • 1
  • 2

你的服务器也可以是Mac或者Windows,只需要安装ssh服务器,并开启ssh后台服务即可

Windows下安装ssh客户端

secure shell client:免费开源,但中文显示乱码,无法传输中文乱码名的文件,不能记住密码

putty : 占用内存最小,每次登陆时需要重新连接,可通过设置编码为UTF-8不会显示中文乱码

Xshell和Xftp: 商用软件,但有免费版,可以保存设置的登陆会话,能记住密码,传输文件和显示中文时都可以通过设置编码为UFT-8而不会产生乱码,效果最佳。

推荐使用XShell+Xftp软件,创建新会话,填写完ip地址、用户名和密码就可登陆你的Ubuntu服务器

远程界面登陆服务器


安装x11vnc:

sudo apt-get install x11vnc
  • 1
  • 1

设置vnc连接密码,根据提示输入密码并保存:

命令: x11vnc -storepasswd

执行信息:
Enter VNC password: 
Verify password:    
Write password to /home/charles/.vnc/passwd?  [y]/n y
Password written to: /home/charles/.vnc/passwd
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7

启动vncserver:

后台自动启动

sudo cp ~/.vnc/passwd /etc/x11vnc.pass
  • 1
  • 1

创建/etc/init/x11vnc.conf文件,内容如下:

start on login-session-start
script
       x11vnc -display :0 -auth /var/run/lightdm/root/:0 -forever -bg -o /var/log/x11vnc.log -rfbauth /etc/x11vnc.pass -rfbport 5900  
end script
  • 1
  • 2
  • 3
  • 4
  • 1
  • 2
  • 3
  • 4

单次手动启动:

x11vnc -forever -shared -rfbauth ~/.vnc/passwd
  • 1
  • 1

重启ubuntu系统,再在Windows上用vnc viewer登陆

输入VNC Server名字-IP地址:端口号,后再输入设置vnc的连接密码

x11vnc常用命令(待补充)

x11vnc -kill :1 杀掉1号端口的vnc server进程
  • 1
  • 1

开启 telnet 服务


首先安装openbsd-inetd:

sudo apt-get install openbsd-inetd
  • 1
  • 1

然后检查文件/etc/inetd.conf,确保有这一行

telnet        stream    tcp    nowait    root    /usr/sbin/tcpd    /usr/sbin/in.telnetd
  • 1
  • 1

然后启动:

sudo /etc/init.d/openbsd-inetd restart
  • 1
  • 1

就可以了
查看telnet服务是否启动:

netstart -a | grep telnet
  • 1
  • 1

如果已经启动,可以得到如下信息:

tcp        0      0 *:telnet                *:*                     LISTEN 
  • 1
  • 1

可以通过登录本机,测试telnet服务是否可用:

telnet localhost
  • 1
  • 1

如果可用,得到下面的提示:

Trying ::1...
Trying 127.0.0.1...
Connected to localhost.
Escape character is '^]'.
Ubuntu 10.04.1 LTS
eric-ztxie-desktop login:
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6

安装串口调试终端


安装

sudo apt-get install ckermit
  • 1
  • 1

2、用户要目录下配置 .kermrc
内容如下:

set line /dev/ttyUSB0
set speed 115200
set carrier-watch off
set handshake none
set flow-control none
  • 1
  • 2
  • 3
  • 4
  • 5
  • 1
  • 2
  • 3
  • 4
  • 5

说明:若用串口第一行为set line /dev/ttyS0 若用了USB转串口线,用当前配置就好。
3、测试

连接串口:kermit -c
Ctrl+/+c进入ckermit命令模式,可以随时更改传输协议
退出:ctrl+/+c 再按q
  • 1
  • 2
  • 3
  • 1
  • 2
  • 3

开启apache服务


安装Apache2


打开终端,然后并输入以下命令,那么从服务器上面下载并安装Apache2

sudo apt-get install apache2
  • 1
  • 1

修改etc/apache2/conf.d/charset


这个是网站编码配置,里面内容很少,打开看就知道了,我这里将最后行的

#AddDefaultCharset UTF-8
  • 1
  • 1

前面的#去掉,使用UTF-8编码,当然也可以把 UTF-8改成别的编码。

修改httpd.conf


增加以下内容:

    ServerName 127.0.0.1:80
  • 1
  • 1

修改cgi文件目录


/etc/apache2/sites-available/default
  • 1
  • 1

这个是网站目录配置,想更改网站目录的话,就修改这个,上面的目录的 apache2.conf 里面也有网站目录的。详细见相关配置

设置方法:修改ScriptAlias /cgi-bin/ /var/www/cgi-bin 部分即可

通过127.0.0.1/cgi-bin/*.cgi即可访问

安装结束后:

    产生的启动和停止文件是:/etc/init.d/apache2
    启动:sudo apache2ctl -k start
    停止:sudo apache2ctl -k stop
    重新启动:sudo apache2ctl -k restart
  • 1
  • 2
  • 3
  • 4
  • 1
  • 2
  • 3
  • 4

安装sqlite3


介绍:sqlite3是linux上的小巧的数据库,一个文件就是一个数据库。
安装:

要安装sqlite3,可以在终端提示符后运行下列命令:

sudo apt-get install sqlite3
  • 1
  • 1

检查版本

sqlite3 -version
  • 1
  • 1

测试

当前目录下建立test.db测试数据库文件

sqlite3 test.db
  • 1
  • 1

查询信息

.database
  • 1
  • 1

退出

.exit
  • 1
  • 1

图形界面

可以选择sqlitebrowser程式(qt3)

sudo apt-get install sqlitebrowser
  • 1
  • 1

启动图形界面可以在终端提示符后输入sqlitebrowser

安装MySQL


sudo apt-get install mysql-server
  • 1
  • 1

这个应该很简单了,而且我觉得大家在安装方面也没什么太大问题,所以也就不多说了,下面我们来讲讲配置。

配置MySQL

注意,在Ubuntu下MySQL缺省是只允许本地访问的,如果你要其他机器也能够访问的话,那么需要改变/etc/mysql/my.cnf配置文件了!下面我们一步步地来:

默认的MySQL安装之后根用户是没有密码的,所以首先用根用户进入:

mysql -u root
  • 1
  • 1

在这里之所以用-u root是因为我现在是一般用户(firehare),如果不加-u root的话,mysql会以为是firehare在登录。注意,我在这里没有进入根用户模式,因为没必要。一般来说,对mysql中的数据库进行操作,根本没必要进入根用户模式,只有在设置时才有这种可能。

进入mysql之后,最要紧的就是要设置Mysql中的root用户密码了,否则,Mysql服务无安全可言了。

mysql> GRANT ALL PRIVILEGES ON *.* TO root@localhost IDENTIFIED BY "123456";
  • 1
  • 1

注意,我这儿用的是123456做为root用户的密码,但是该密码是不安全的,请大家最好使用大小写字母与数字混合的密码,且不少于8位。

这样的话,就设置好了MySQL中的root用户密码了,然后就用root用户建立你所需要的数据库。我这里就以xoops为例:

mysql>CREATE DATABASE xoops;

mysql>GRANT ALL PRIVILEGES ON xoops.* TO xoops_root@localhost IDENTIFIED BY "654321";
  • 1
  • 2
  • 3
  • 1
  • 2
  • 3

这样就建立了一个xoops_roots的用户,它对数据库xoops有着全部权限。以后就用xoops_root来对xoops数据库进行管理,而无需要再用root用户了,而该用户的权限也只被限定在xoops数据库中。

如果你想进行远程访问或控制,那么你要做两件事:

其一:

mysql>GRANT ALL PRIVILEGES ON xoops.* TO xoops_root@"%" IDENTIFIED BY "654321";
  • 1
  • 1

允许xoops_root用户可以从任意机器上登入MySQL。

其二:

sudo gedit /etc/mysql/my.cnf
  • 1
  • 1

老的版本中

>skip-networking => # skip-networking
  • 1
  • 1

新的版本中

>bind-address=127.0.0.1 => bind-address= 你机器的IP
  • 1
  • 1

这样就可以允许其他机器访问MySQL了。

markdown编辑器


我使用Remarkable
主页:http://remarkableapp.net/
下载:http://remarkableapp.net/download.html
下载deb包

sudo  dpkg -i remarkable_1.41_all.deb
  • 1
  • 1

最后修复依赖关系

sudo apt-get install -f

安装Ubuntu后必须要做的几件事(二)--开发工具篇


转载:http://blog.csdn.net/gatieme/article/details/44917753

上一篇:龙芯的go之路(一)-在龙芯中安装go


下一篇:Java--反射机制详解