ubuntu系统及软件安装相关知识

本文详细介绍Windows7与Ubuntu双系统安装步骤、分区方案及启动菜单配置。此外,还介绍了Ubuntu系统下的软件管理技巧,包括dpkg命令使用、键盘布局调整、字符界面字体设置等。

系统安装相关知识

安装双系统Windows 7和Ubuntu

(一)安装和分区问题

1,先装Windows7

这次U盘安装Windows7 64位系统时出现问题

“windows无法完成安装,若要在此计算机上安装,请重新启动安装。”

解决办法:

最后(终极方法),出现提示的时候按下 shift+F10 , 出现命令窗口依次输入以下代码:

cd  oobe
msoobe     然后,安装节奏就会继续正常执行。

安装的过程中用Win7自带程序对磁盘分区,第一个主分区100G留出来给Linux,第二个主分区100G是Windows系统,剩余空闲


2,再装Ubuntu

为了照顾Windows 7只能分有4个主分区的限制,Ubuntu用第一个主分区挂Linux根目录,Win7刚才安装在第二个主分区中,其他都划成逻辑分区

最后按这个分区方案执行,#8,#9,#10是留给Windows7的D,E,F盘,最后格式成NTFS



  1. 下面是参考分区步骤

  2. 第一次分区:

    挂载点:“/”

    大小:22000MB

    新分区的类型:主分区

    新分区的位置:空间起始位置

    用于:EXT4日志文件系统

  3. 第二次分区:

    挂载点:(不设置)

    大小:2048MB(物理内存的2倍)

    新分区的类型:逻辑分区

    新分区的位置:空间起始位置

    用于:交换空间

  4. 第三次分区:

    挂载点:/boot  

    大小:200MB(笔者暂时设置为200MB)

    新分区的类型:逻辑分区

    新分区的位置:空间起始位置

    用于:EXT4日志文件系统

  5. 第四次分区:

    挂载点:/home 

    大小:(剩余全部)

    新分区的类型:逻辑分区

    新分区的位置:空间起始位置

    用于:EXT4日志文件系统

你分区的时候只要按照楼上那样对要安装linux的硬盘分区进行linux式的分区,至少一个root,一个swap,就行了。

有人习惯于在WinPE里面分区,不过进PE可能要格式化,就这点不好


(二)说完了分区说说启动菜单的事

先装windows7,然后安装ubuntu,windows的启动菜单bootmgr会被ubuntu的grub取代,会出现双系统的选项。装好后一看是32位的,接着换64位的,第一遍安装把除boot分区外的所有linux分区格式化,重启后出现内核崩溃,提示Kernel panic - not syncing:No init found。也没找到什么好方法,修复也无效,再重装吧。
第二遍安装,把boot分区也格式化了,不再出现内核崩溃(无法验证是拔掉U盘还是格式化boot到底哪个起作用),导致找不到
windows7启动项目。所以要在Ubuntu默认的GRUB引导菜单中添加windows7启动项目


Ubuntu的引导文件为grub.cfg(文本文件),存储路径为sudo gedit /boot/grub/grub.cfg,我们需要做的就是修改它,在里面添加windows7菜单。
由于grub.cfg属性为只读,要先设置可写。
设置方法:在终端(Terminal)使中用这个命令

sudo chmod +w /boot/grub/grub.cfg
然后就是打开它,输入命令

sudo vim /boot/grub/grub.cfg


因为之前我把windows7装到了sda2上

然后在### END /etc/grub.d/05_debian_theme ###后加入以下代码保存。


### BEGIN /etc/grub.d/30_os-prober ###
menuentry 'Windows 7 (loader) (on /dev/sda2)' {
insmod ntfs
set root=(hd0,2)
search –no-floppy –fs-uuid –set fe24211f2420dc81
chainloader +1
}
### END /etc/grub.d/30_os-prober ###


保存,依次输入命令:
$ sudo grub-mkconfig -o /boot/grub/grub.cfg
$ reboot
有的人电脑是grub2,就要执行下面这些命令
$ grub2-mkconfig -o /boot/grub2/grub.cfg 
$ reboot
然后windows就成功营救回来了


营救完继续调整Grub启动顺序

sudo vim /etc/default/grub”命令打开该配置文件。
GRUB_DEFAULT=0”就是设置的默认启动项了。GRUB启动项是按照启动菜单依次使用数字进行索引了,起始数字为0。结合前面的系统启动菜单,我们可以看到,Windows8的启动项在第5项,因此这里我们就需要修改为4
修改完成,保存退出之后,还需要执行一下“sudo update-grub”来重新生成GRUB启动配置项。



软件相关知识

(一)DPKG

参照这篇文章:http://m.blog.youkuaiyun.com/article/details?id=25562971

dpkg查看的需要是通过dpkg -i等方式,或者apt-get install方式从包管理器下载安装的。

源码安装的无法用dpkg来看,因为不是包管理方式安装的。如果要看文件的安装路径,具体的要看make文件的内容才可以。


应用范例:
查询系统中属于nano的文件:
$ dpkg --listfiles nano

$ dpkg-query -L nano


查看软件nano的详细信息:

$ dpkg -s nano
$ dpkg-query -s nano

查看系统中软件包状态, 支持模糊查询:
$dpkg -l
$dpkg-query -l

查看某个文件的归属包:
$ dpkg-query -S nano
$ dpkg -S nano

如果ubuntu要安装新软件,已有deb安装包(例如:iptux.deb),但是无法登录到桌面环境。那该怎么安装?答案是:使用dpkg命令。
dpkg命令常用格式如下:
sudo dpkg -I iptux.deb#查看iptux.deb软件包的详细信息,包括软件名称、版本以及大小等(其中-I等价于--info)
sudo dpkg -c iptux.deb#查看iptux.deb软件包中包含的文件结构(其中-c等价于--contents)
sudo dpkg -i iptux.deb#安装iptux.deb软件包(其中-i等价于--install)
sudo dpkg -l iptux#查看iptux软件包的信息(软件名称可通过dpkg -I命令查看,其中-l等价于--list)
sudo dpkg -L iptux#查看iptux软件包安装的所有文件(软件名称可通过dpkg -I命令查看,其中-L等价于--listfiles)
sudo dpkg -s iptux#查看iptux软件包的详细信息(软件名称可通过dpkg -I命令查看,其中-s等价于--status)
sudo dpkg -r iptux#卸载iptux软件包(软件名称可通过dpkg -I命令查看,其中-r等价于--remove)


如果使用源代码安装的软件,需要卸载

如果原先的source还在的话,很多source的Makefile都有写uninstall规则,直接在Souce里make uninstall就可行,不过碰到无良作者没写的,那一句一句看Makefile里install部分他都干了些什么,然后挨个删除。
如果source没了.....那就一边郁闷吧
到目前为止, 我装的都可以make uninstall.......
 (因为总是不小心装错地方, 结果就make uninstall&&make clean,然后重新configure......)


(二)更改键盘布局

由于大意,当初安装Ubuntu的时候选了键盘布局错误,导致VIM中esc键总是不能退出。最后决定还是修改默认设置。上网找了一下,有的人说用'sudo dpkg-reconfigure console-setup',试了一下,只能用来改变终端字符集而已,键盘布局根本不能用这个命令改。
方法1:也许是以前的Ubuntu版本可以用这个命令改,现在的键盘布局被独立分开设置,于是我尝试了一下,发现正确的命令应该是:

sudo dpkg-reconfigure keyboard-configuration,这个才对,使用这个命令后会出现非常人性化的伪图形界面供我们设置。


(三)ubuntu-server-12.04.2字符界面字体大小设置
命令: sudo dpkg-reconfigure console-setup
之后根据个人喜好选择,我这里选择了UTF-8 --> Latin7--> Terminus--> 20x10 --> OK
方案二:UTF-8 --> latin1 and latin5 -western Europe and Turkic languages,这种字体下有较大的字体大小选择空间。--> TernimusBold,因为我要用Framebuffer来显示。--> 最大那一个 --> OK


(四)如何设置putty连接ubuntu server
步骤一、在ubuntu系统中安装ssh,如果是服务器版安装过程中会有选择。也可使用如下的命令进行安装: 

sudo apt-get install openssh-server
步骤二、为了保险起见,安装完成后重启一下ssh服务,命令如下:sudo /etc/init.d/ssh restart
步骤三、下载putty,运行,输入IP地址即可,注意端口号不要改



(五)apt-get

sudo apt-cache search all
它会出来一堆软件的列表
如果你想要看下里面总共有哪些软件,那么,你可以使用如下命令:
sudo apt-cache search all | wc
如果你想要用apt-get 命令来安装一个软件,但是你只知道大概有几个字母,那么,你可以用下面的命令来进行查询,看下跟这个字母有关的软件都有哪些,它会给你把列表列出来:
sudo apt-cache search all | grep gcc
刚测试的时候出来了11个左右
但是,如果你测试的是
sudo apt-cache search all | grep qq
那么,结果会让你很失望,因为是0个.


源文件位置
备份并替换/etc/apt/sources.list的源内容:


网上的更改源文件内容
sudo vi /etc/apt/sources.list
deb http://mirrors.aliyun.com/ubuntu/ xenial main restricted universe multiverse 
deb http://mirrors.aliyun.com/ubuntu/ xenial-security main restricted universe multiverse 
deb http://mirrors.aliyun.com/ubuntu/ xenial-updates main restricted universe multiverse 
deb http://mirrors.aliyun.com/ubuntu/ xenial-backports main restricted universe multiverse 
##测试版源 
deb http://mirrors.aliyun.com/ubuntu/ xenial-proposed main restricted universe multiverse 
# 源码 
deb-src http://mirrors.aliyun.com/ubuntu/ xenial main restricted universe multiverse 
deb-src http://mirrors.aliyun.com/ubuntu/ xenial-security main restricted universe multiverse 
deb-src http://mirrors.aliyun.com/ubuntu/ xenial-updates main restricted universe multiverse 
deb-src http://mirrors.aliyun.com/ubuntu/ xenial-backports main restricted universe multiverse 
##测试版源 
deb-src http://mirrors.aliyun.com/ubuntu/ xenial-proposed main restricted universe multiverse 
# Canonical 合作伙伴和附加 
deb http://archive.canonical.com/ubuntu/ xenial partner 
deb http://extras.ubuntu.com/ubuntu/ xenial main


另一个可以更换apt-get源的内容,但好像速度不行
deb http://cn.archive.ubuntu.com/ubuntu dapper main restricted universe multiverse 
deb http://cn.archive.ubuntu.com/ubuntu dapper-security main restricted universe multiverse 
deb http://cn.archive.ubuntu.com/ubuntu dapper-updates main restricted universe multiverse 
deb http://cn.archive.ubuntu.com/ubuntu dapper-backports main restricted universe multiverse 
deb http://mirror.lupaworld.com/ubuntu/ubuntu-cn dapper main restricted universe multiverse 
deb http://security.ubuntu.com/ubuntu dapper-security main restricted universe multiverse 
deb-src http://cn.archive.ubuntu.com/ubuntu dapper main restricted universe multiverse 
deb-src http://cn.archive.ubuntu.com/ubuntu dapper-security main restricted universe multiverse 
deb-src http://cn.archive.ubuntu.com/ubuntu dapper-updates main restricted universe multiverse 
deb-src http://cn.archive.ubuntu.com/ubuntu dapper-backports main restricted universe multiverse 
deb-src http://security.ubuntu.com/ubuntu dapper-security main restricted universe multiverse


sudo apt-get update #这一步是更新你的源列表,换源后必须执行 

sudo apt-get dist-upgrade #这一步是更新软件,如果你对新版本软件的需求不是那么迫切,可以不执行


(六)aptitude与 apt-get 一样,是 Debian 及其衍生系统中功能极其强大的包管理工具。与 apt-get 不同的是,aptitude在处理依赖问题上更佳一些。举例来说,aptitude在删除一个包时,会同时删除本身所依赖的包。这样,系统中不会残留无用的包,整个系统更为干净。

(七)gmake是GNU Make的缩写。 Linux系统环境下的make就是GNU Make,之所以有gmake,是因为在别的平台上,make一般被占用,GNU make只好叫gmake了。 比如在安装二进制文件进行编译时要使用make命令,但如果在Solaris或其他非GNU系统中运行,必须使用GNU make,而不是使用系统自带的make版本,这时要用gmake代替make进行编译。


(八) 在Ubuntu Linux上安装squid代理
$ sudo apt-get install squid
2. 安装好后会自动启动,如果使用默认配制,在另一台机器上设置代理(这是我在Chrome上设置代理):端口3128
3. 看来还没有Access的权限,配制squid,编辑文件squid.conf
$ sudo vi /etc/squid/squid.conf
4. 把下面676这行注释去掉,允许localnet的访问
即:
673 # Example rule allowing access from your local networks.
674 # Adapt localnet in the ACL section to list your (internal) IP networks
675 # from where browsing should be allowed
676 http_access allow localnet
677 http_access allow localhost
5. 重启squid
$ sudo /etc/init.d/squid restart
6. 然后在另一台机器上可以上网了!!



(九),解决Putty连接服务器总是断开连接的问题,目前证明和putty本身设置没关系,下面的2发挥了作用
1,echo $TMOUT
如果显示空白,表示没有设置, 等于使用默认值0, 一般情况下应该是不超时. 如果大于0, 可以在如/etc/profile之类文件中设置它为0.
Definition: TMOUT: If set to a value greater than zero, the value is interpreted as the number of seconds to wait for input after issuing the primary prompt. Bash terminates after waiting for that number of seconds if input does not arrive.
2,ClientAliveInterval 60
vim  /etc/ssh/sshd_config
在/etc/ssh/sshd_config中增加ClientAliveInterval 60, ClientAliveInterval指定了服务器端向客户端请求消息的时间间隔, 默认是0, 不发送.而ClientAliveInterval 60表示每分钟发送一次, 然后客户端响应, 这样就保持长连接了.这里比较怪的地方是:不是客户端主动发起保持连接的请求(如FTerm, CTerm等),而是需要服务器先主动.
另外,至于ClientAliveCountMax(这个值我没有发现), 使用默认值3即可.ClientAliveCountMax表示服务器发出请求后客户端没有响应的次数达到一定值, 就自动断开. 正常情况下, 客户端不会不响应。
3,启用putty keepalive
putty -> Connection -> Seconds between keepalives ( 0 to turn off ), 默认为0, 改为60
前两部就能解决,至于具体是那个没有细研究



(十),Vim不能保存只读文件的问题
使用命令
:w !sudo tee %
还有一种办法,先把权限改了就不会提示只读
sudo chmod 777 /etc/postgresql/9.3/main/pg_hba.conf



(十一),
用户不在sudoers文件中的解决方法


执行vi命令,编辑/etc/sudoers文件,添加要提升权限的用户;在文件中找到root  ALL=(ALL) ALL,在该行下添加提升权限的用户信息,如:

root    ALL=(ALL)       ALL
user    ALL=(ALL)       ALL

说明:格式为(用户名    网络中的主机=(执行命令的目标用户)    执行的命令范围)


由于执行了命令 chmod 777 /etc/sudoers
再执行 sudo usermod -g root odoo
会出现

sudo: /etc/sudoers is world writable

修复方法
pkexec chmod 0755 /etc/sudoers.d
pkexec chmod 0755 /etc/sudoers

然后执行sudo usermod -g root odoo
成功



评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值