没那么神秘:Linux下生存实录

来源:51CTO 作者:杨新涛
  

 说起操作系统,大部分人只知道windows,认为电脑只有装了windows才能正常运行,很少人知道还有linux,即便知道,也片面地觉得难用(敲一堆命令)、难看(没有桌面环境)。汉语,全球五分之一的人以它为母语,是使用人数最多的一门语言;英语,世界各地都有人使用,是使用范围最广的一门语言。windows与linux,就好像汉语与英语,windows人人在用(至少在冏朝),而linux频繁出现在你日常生活中,你却不认识:pc桌面领域、服务器领域、嵌入式领域(智能机器人、机顶盒、主动柜员机、车载电脑、航天航空)。

我无意说服你抛弃目前娴熟使用的操作系统另寻新欢,但,假如你对当前系统保守封闭早已不满,假如你崇尚自由、渴求本质、热爱折腾,不妨试试linux!

【发行套件】

linux本身还算不上操作系统,它仅是内核(一方面管理协调下层的硬件资源,一方面为上层软件提供基础服务支撑),需搭配系统软件(shell、编译器、包管理器、桌面环境等等)、应用软件(办公软件、网页浏览器、视频播放器、图片编辑器等等)才能成为一套具备日常使用功能的操作系统,即,发行套件。

一、发行套件的选择

linux发行套件数量庞大(约140种)、用途迥异(如,专供盲人使用的、专供教育培训使用的、专用于家庭影院使用的),对每个发行套件逐一评测、比对选优,完全是费神耗时、意义不大。目前,知名的发行套件包括:puppy、slackware、debian、fedora、

arch、gentoo、ubuntu、lfs、opensuse等,它们各具特色、追随者众,如,slackware是目前存活时间最长的古董级发行套件(经验丰富),fedora是redhat进行新技术实验的发行套件(技术创新),ubuntu号称用户零配置开箱即用的发行套件(简单易用)、lfs(linux from scratch)让你从无到有构建专属于你的发行套件(配置灵活)、经验丰富+技术创新+简单易用+配置灵活 = opensuse!(-_-#)

opensuse最早是slackware在德国的本地化版本,后来因其加入了大量特色功能升格为单独的发行套件,其原名为suse linux,10.2版本后改名opensuse。opensuse是由novell公司赞助、社区推动的发行套件,它的相关源码和技术可由novell使用,作为novell企业版发行套件sles的基础。opensuse旨在:a、推进linux在全球广泛使用;b、降低linux使用门槛,成为易于上手的发行套件;c、成为技术黑客和软件开发人员的首选平台。

(LOGO)

opensuse的logo是只可爱的变色龙,以此象征opensuse灵活、敏捷的特性。

opensuse当前正式版本为12.1,下个版本12.2预计在12年9月中旬发布。关于发行套件版本升级,通常我会在最新正式版放出后半年左右再考虑,原因有二:一方面经过半年的大规模外部用户测试,大部分bug已被发现并修正,一定程度上规避了使用系统的不稳定性;一方面各类应用软件开发人员有足够时间针对新版本的发行套件进行功能升级和兼容性优化,让我真真正正感受到新版本带来的各项提升。所以,今年暂时不升级了,明年3月份再考虑。

 

二、发行套件的安装

既然是普通用户使用的发行套件,其势必继承了某种桌面环境以便用户通过可视化界面操作计算机(linux最底层由x.org提供图形图像服务,中间由桌面环境负责统一管理各应用软件发起的图形绘制请求并协调x.org予以响应)。opensuse 12.1提供gnome和kde两种桌面环境供君选择(此外,还有xfce、lxde、ede、rox等等其他桌面环境可单独下载安装)。gnome是隶属gnu项目的子项目,全称为the gnu network object model environment,采用gtk(由c语言编写)作为底层开发库;kde全称kool desktop environment,采用qt(由c++语言编写)作为底层开发库。gnome和kde是linux中最为流行的桌面环境,从操作习惯和界面风格来看,我更喜欢gnome。因此,本文将以采用gnome的opensuse 12.1为例进行后文讲解。

1、下载镜像。访问http://software.opensuse.org/121/en,选择gnome、32位(或64位视情况而定)直接下载即可;

2、制作安装u盘。u盘安装既节省光盘介质费用,又能大幅提升安装速度,逐渐成为你安装系统的首选。官网上提供了制作opensuse安装u盘的工具imagewriter,分为windows版本(https://github.com/downloads/opensuse/kiwi/imagewriter.exe)和linux版本。windows版有个小bug,下载的镜像文件扩展名为iso,而imagewriter在选择镜像文件时只能识别扩展名为raw的文件,所以需要先调整镜像文件扩展名才能正常写入u盘;

3、安装系统。整个过程一路next,除了几个关键点稍加留意外,基本零难度(注,安装过程中,部分窗口过小,无法查看窗口中完整内容,可用鼠标拖动窗口边框以调整合适大小)。

1)时区设置。如果你是冏朝公民,按下图设置,其中必须勾选“将硬件时钟设置为utc”,否则时间有问题。

(时区设置)

2)创建分区。建议依次创建如下分区:/、swap、/home、/data。说明几点:

a)linux的分区不同于windows,分区后没有所谓的c:、d:盘,而是一个个文件系统,这些文件系统没有具体名称,必须先挂载到某个目录(称之为挂载点)下才能正常使用,每个分区对应一个目录,但多个目录可能对应在同个分区中(如,/home/yangyang_gnu和/home可能都在通过分区上);

b)操作系统为扩展物理内存容量通常设有“虚拟内存”机制,将不活波内存页(如,未关闭但长时间没使用的程序)从物理内存中移至硬盘的虚拟内存中,从而释放宝贵的物理内存空间,swap分区就是所谓的虚拟内存,一般大小等同于物理内存,swap分区不用挂载目录;

c)用户相关信息(如,各应用程序的配置文件)通常放在/home目录中,为避免重装系统导致各类配置文件丢失,需将/home放在独立分区上;

d)所有非系统数据(如,歌曲、ebook、安装程序)都放在独立分区/data上,以便定期备份。按提示操作后,界面类似如下:

(硬盘分区)

3)安装前确认。正式安装系统前,可对先前安装设置信息进行确认、调整。如下图所示:

(安装前确认)

4)系统引导设置。opensuse为防止因异常导致系统无法正常启动,除安装“真正操作系统”之外,还附带安装了所谓的“紧急启动镜像”,个人觉得意义不大,如果不需要,可点击“booting”,可删除紧急启动镜像:

(紧急启动镜像)

另外,双击opensuse 12.1(真正的操作系统),参照如下设置,分别取消启动时硬盘检查和设置字符模式下的分辨率:

(引导设置:取消硬盘检查、设置字符模式分辨率)

此外,进入"boot loader installation"->"boot loader options",取消引导程序等待用户选择操作系统耗时:

(引导设置:取消引导等待)

 

三、发行套件的设置

刚装好的操作系统都是默认设置,按个人习惯适当调整才贴心。

1、升级系统。linux上系统升级分两部分,一部分是内核升级,一部分是发行套件升级(即,除内核外的驱动程序、系统软件、应用软件等升级)。升级内核是为了享受新内核带来的安全增强以及更多的设备支持,由于涉及内核编译等高级主题,另文详讲;在进行发行套件升级前,先说说软件仓库。

前面说过,发行套件是集成内核、驱动程序、系统软件、应用程序等一整套可支撑普通用户日常工作、生活需求的操作系统,可见,发行套件充当了软件筛选、软件打包、软件依赖库测试、软件兼容性测试等多个角色,为确保发行套件的健壮性,发行套件厂商(或社区)将它筛选、打包、测试过的软件放在官方软件仓库中,这样,不论哪个厂商开发的应用程序,用户只需到软件仓库中查找、下载、安装即可,不用(像windows)再到各个软件官网逐一下载,当然,软件仓库中没有的,你仍可到软件官网单独下载,但要注意依赖库是否正确。

软件仓库一般放在发行套件官方服务器上,用户通过更新源访问软件仓库。因此,更新源就是软件仓库的路牌。冏朝的网络是具有社会主义特色滴,要么无法访问国外、要么满如蜗牛,给我们访问国外官方的软件仓库带来很大阻碍。幸好,国内还有几家上规模又有良心的it企业,通过它们自身带宽优势,准实时地从发行套件官网同步软件仓库到国内服务器上,冏朝用户可调整更新源,实现从这些企业的服务器上高速访问软件仓库。目前为各大发行套件建立国内软件仓库的企业主要包括搜狐和网易(感谢张总、丁总对中国开源事业的支持,曹总、马总你们人影呢),另外,各大专院校也建有本地软件仓库,学生朋友可参照使用。好了,了解了软件仓库、更新源等概念后,我们可以按如下步骤升级发行套件啦:

1)更改更新源。运行yast->software repositories,删除所有来之官网的更新源(即,opensuse.org相关的),增加搜狐的软件仓库镜像:a)sohu-opensuse-12.1-oss:http://mirrors.sohu.com/opensuse/distribution/12.1/repo/oss、

b)sohu-opensuse-12.1-non-oss:http://mirrors.sohu.com/opensuse/distribut

ion/12.1/repo/non-oss;c)sohu-opensuse-12.1-update:http://mirrors.sohu.

com/opensuse/update/12.1;

2)升级系统。一旦指示系统启动升级,系统先在软件仓库(加载的所有更新源)中寻找是否有升级的可能。具体而言,命令zypper update,对于本地已安装程序,在软件仓库中是否有更新版本,若有则更新之,忽略系统有安装但仓库中根本不存在的软件;命令zypper dist-upgrade,将系统与软件仓库同步一致,也就是说,本地安装的软件必须只能是仓库中有的且版本必须一致,换言之,一旦执行该命令,将存在降级(本地版本高而仓库版本低)、升级(本地版本低而仓库版本高)、更改软件信息(发行套件官方更改应用软件某些信息)、甚至卸载(本地安装而仓库没有)等几种可能,特别是当你有通过源码安装过软件时切勿使用该命令。两个命令差异巨大,就日常而言,建议使用前者即可。

2、安装驱动。windows环境中增加了硬件,通常需要到硬件官网下载驱动,安装重启后系统才能识别新增硬件设备,linux对驱动的管理,你可以(片面地)理解为全都打包进内核中了,只要是较新版本内核(这正是前面说升级内核的主要目的之一),几乎能正常识别99%的硬件,换言之,你不用针对主板、芯片、(有/无线)网卡、显卡、声卡、甚至g3上网卡(后文将教你如何在linux下使用运营商的上网卡)单独安装驱动,因为内核已经集成了它们的驱动,当然,我指的是集成驱动能很好地管理对应硬件设备,如果管理得不是那么好呢?那就单独安装吧,比如,n卡驱动。opensuse内置了n卡驱动程序的开源版本nouveau,nouveau由第三方开发,并未得到nvidia官方支持,是开发人员对n卡官方驱动逆向分析后的重新编码,实现难度巨大,虽效果不尽人意但也值得你尊重。作为普通用户,肯定希望最大程度发挥显卡特性,那就安装n卡针对opensuse发布的(闭源)官方显卡驱动吧。先增加n卡官方更新源ftp://download.nvidia.com/opensuse/12.1,再升级即可。

3、美化桌面。前面提过,我选装的是gnome桌面环境。gnome3相较先前版本,不论从界面外观还是操作习惯都有非常大的差异,比如,窗口右上角只有关闭按钮,不再有最大化、最小化的概念,比如,托盘从任务栏中剥离出来,默认情况下为隐藏状态,比如,要选择桌面上的某个窗口,先得调出所有窗口的列表,在点击选择需要的那个,比如,不再有桌面图标,如此这些,让很多人无法适应、被人诟病。也许是心态问题,我倒是挺适应这种操作模式的,使用gnome3也有一年多时间了,虽谈不上驾轻就熟,但也不存在任何使用障碍,非要让我提一点意见的话,嗯~嗯~,好吧,真心希望gnome开发团队将横向布局的任务栏改为纵向布局,至于原因,你知道,如今的显示器几乎都是宽屏的,这就意味着屏幕的水平空间充裕而垂直空间紧张,现在又将任务栏水平放置在最顶部,进一步缩小了可用垂直空间,所以,强烈建议将任务栏垂直放置在屏幕左侧(效果类似ubuntu的unity),希望下一版本能有所改善。另外,个人认为,对于一项新生事务(我说的是gnome3),不妨抱着“拥抱变化、迎接未来”的心态去尝试接纳,或许,你会发现,原来它才是你的最爱。

扯远了,接着说gnome的美化。桌面美化,无非就是选一套符合你审美观的主题,下载、安装、启用即可:

1)下载主题。推荐两个gnome3相关的主题网站:gnome-look.org与devianta

rt.com,慢慢选,喜欢哪个下哪个。个人非常喜欢那种扁、平、薄的风格,比如android 4.0主题风格,正好又有人将其移植到gnome3上,称之为holo(http://tiheum.devian

tart.com/art/holo-280076980),搭配faience系列图标(http://tiheum.deviant

art.com/art/faience-icon-theme-255099649)

2)安装主题。将上面两个下载后的压缩文件分别解压至~/.themes和~/.icons目录。

3)选择主题。运行advanced settings,参照下图选择窗口和图标主题:

(选择主题)

4)启用主题。键入alt+f2,输入r回车,看到没,刚才选择的主题已经生效。如果存在滚动条粗大、按钮错位等情况,请检查相关主题引擎(murrine、pixbuf、unico、

adwaita)是否都已正确安装。最终效果如下:

(gnome3-holo)

5)字体。opensuse中文显示默认采用文泉驿字体,相比之下,更喜欢微软雅黑那种方方正正的饱满字体,但微软雅黑中的英文字体又不咋地,有人发布了一款增强了英文字体的微软雅黑——yahei consolas hybrid字体,可以下来试试,效果非常不错(本文全文采用的及时这个字体)。双击字体按提示安装,安装完后进入advanced settings,按如下设置即可:

(字体设置)

 

【应用软件】

说了这么多,作为普通用户,我们关注的还是opensuse如何支撑我们的日常工作、生活需求。接下来看看,那些借助社区力量开发的优秀开源产品。开始之前,请增加第三方更新源packman(ftp://packman.inode.at/suse/opensuse_12.1/)。packman相对于发行套件的官方软件仓库有如下“优势”:

a)包含大量采用新技术的软件(发行套件追求稳定,从这个角度看,如果引入过多新技术软件,未经过严格兼容性测试,极有可能影响系统稳定性);

b)包含大量私有属性的闭源软件(发行套件通常是由社区制作,如果含有闭源软件,可能引入版权、专利问题)。

因此,应将packman仓库与官方仓库搭配使用,可扩大用户的软件选择范围。(注,未特别说明,以下介绍的软件均可通过软件仓库查找、下载、安装。)

一、日常办公

现在的企事业单位几乎都需借助电脑办公,医生看病开处方、营业厅办理业务、会计帐务处理等等,电脑已成为各行各业办公的主要途径和手段。下面介绍几类常见的办公需求。

1、办公文书。word、excel、powerpoint等三个软件是windows中必装的办公文书软件,以支撑我们文字处理、表格制作、汇报演示等工作需要。linux中我们对应有writer、calc、impress等软件,这三个软件(外加draw、math、base)就是大名鼎鼎的libreoffice套件。libreoffice完全兼容ms-office文档,甚至还可以直接转存为pdf格式文件,

  • 软件名称:libreoffice
  • 界面截图:

(writer)

(calc)

(impress)

  • 设置调整:tools->options->language settings->writing aids,取消options中的所有选项,以禁止拼写检查;

2、电邮收发。很多人习惯通过邮件服务提供商官网进行邮件收发,强烈建议改用邮件客户端,避免频繁登录邮箱,同时,还能离线查阅邮件内容。好的邮件客户端除了正常收发邮件外,还应具备地址簿管理、垃圾邮件过滤、多账户管理、日程安排、同步删除远程邮件,甚至为常见邮件提供商智能配置等等高级功能,thunderbird算是不错的。

  • 软件名称:thunderbird
  • 界面截图:


(thunderbird)

(写邮件)

3、电子书阅读。电子书格式类型较多,包括hlp、lit、wdl、ceb、abm、pdg、

epub、pdf、chm等等,但常见的还是最后两类。下面介绍下pdf和chm的阅读器。

1)pdf阅读。

  • 软件名称:evince
  • 界面截图:

if !supportLists]>n

界面截图:

(evince)

  • 使用问题:大家知道,正常情况下,被选中的文本段会反色高亮显示,不知道是evince本地化问题还是什么,某些中文pdf文档,反色显示的文字会成乱码,虽不影响真正复制到粘贴板中的内容(换言之,从evince中复制出来的文字仍正常),但给我等喜欢选中一段看一段的用户带来阅读体验影响。如下图所示:

(未选前的文本)

(选中后的文本)

  • 其他说明:推荐几个常用的软件开发相关电子书下载网站:

http://ishare.iask.sina.com.cn/

http://library.nu/

http://www.freetechbooks.com/

2)chm阅读。

  • 软件名称:chmsee
  • 界面截图:

(chmsee)

 

二、娱乐休闲

linux不是it大牛的专属系统,它不仅可以支撑生产运维,同时,也可为你提供日常休闲娱乐。

1、听歌聆听。常见的音频格式包括:mp3、ogg、aac、mp4、ape、wav、flac等,windows下知名的音频播放器foobar2000完美支持这些格式,linux下的deadbeef从解码效果来看,有过之而无不及。

  • 软件名称:deadbeef
  • 界面截图:

(deadbeef)

  • 下载安装:直接从软件仓库选择安装即可;

(deadbeef音频输出配置)

  • 设置调整:输出设备及音频解码插件请按下图设置,否则无法播放:
  • 使用问题:目前不支持双击界面空白跳转到正在播放文件处,找了一圈也没发现解决该问题的插件。

2、电影观赏。我看电影有个习惯,喜欢把电影全屏铺满后再看,这样不至于在如今满是宽屏幕的环境中把人物压缩得又扁又胖。linux下几乎找不到支持该功能的视频播放器(包括大名鼎鼎的vcl和mplayer),除了——smplayer2。smplayer2是基于mplayer二次开发的软件,默认支持(即内置相关格式解码器)mkv、wmv、avi、mpg、3gp、mov、

rm、mpeg、mp4等视频格式。

  • 软件名称:smplayer2
  • 界面截图:

(普通比例)

(全屏铺满)

  • 设置调整:A)smplayer2默认不支持rmvb格式,需要先安装realplayer(当然是linux版的);B)全屏铺满设置:video->aspect ratio->disabled;
  • 使用问题:全屏纵向拉伸设置只能针对单部影片有效,无法保持为永久设置,播放其他影片需要重新设置;
  • 其他说明:推荐两个不错的电影下载网站:

人人影视:http://www.yyets.com

电影天堂:http://www.dy2018.com/

3、音频编辑。听到一首喜欢的歌曲,想把它设置为手机来电铃声,但整首歌曲又太长,最好能把高潮部分提取出来,一来电就进入高潮(-_-$,你想啥~)。

  • 软件名称:audacity;
  • 界面截图:

(audacity)

 

三、上网冲浪

问:宅男最怕失去啥?答:网络(谁说苍老师?@_@!)。网络在给我们带来无限乐趣的同时,也在不断地改变着人类生活方式。

1、无线上网。目前无线上网形式包括:adsl+无线路由器方式、wlan方式、3g上网卡方式。第一种是大家平时最常见的方式,找运营商开通宽度,自己买个无线路由器,将宽度帐号和密码设置进路由器,加电即用,该方式上网速度快,但受空间限制较大,一旦超过路由器信号覆盖就无法上网了;第二种方式需要先联系电信运营商开通wlan业务,联网后在运营商提供的页面输入帐号和密码即可上网,这种方式上网速度还是不错,但,费用高(按流量收费)、择区域(只有在热点附近才能使用wlan业务,通常小城市热点非常少,即便大城市也往往只有机场、星巴克等场所才有);第三种方式,3g上网卡方式,网速基本可接受(可在线观看非高清视频),包月费用约100rmb,将上网卡插入电脑,随时随地即可高速上网,这里为大家详细介绍下这种方式。3g上网卡有两个概念普及下,a)当前中移动、中电信、中联通等三家运营商均有提供各自3g上网卡,分别采用td、cdma2000、wcdma等三种网络制式,网速、费用、稳定性各不相同;b)华为、中兴两家是主流的卡设备提供商。运营商、设备请按个人情况选择,我用的是华为中移动g3上网卡,下文将以此为例进行介绍。

华为g3上网卡官方仅发布了windows驱动,linux下咋办?前面介绍升级内核时我提过,windows与linux对驱动的管理模式差异,windows需用户针对各个硬件单独下载、安装驱动,而linux在内核中已经集成了(绝大部分)硬件设备驱动程序,包括,这里说的华为中移动g3上网卡驱动。

大致原理如下:linux能识别g3上网卡,但默认将其视为usb存储设备,我们需要告诉系统说"它是一个网络拨号moden,不是u盘",一旦系统接受了该设备模式转换请求,后续只需用某种拨号程序执行拨号操作即可。

先准备两个命令行程序:usb_modeswitch、wvdial,直接从软件仓库中安装。另外,必须先关闭系统自带的网络管理程序,在opensuse中,你可以这样:yast->network devices->network settings->globa options->network setup methods->traditional method with ifup (instead of network manager)

以下操作均在命令行中执行,全流程步骤如下:

  1)获取g3上网卡usb信息。执行:

  1. lsusb | grep "huawei" 

系统显示类似如下

  1. bus 002 device 003: id 12d1:1da1 huawei technologies co., ltd. 

记录下你对应12d1:1da1位置的信息;

  2)g3上网卡模式转换。

  a)指定要进行模式转换的设备。用如下信息换/etc/usb_modeswitch.conf内容:

  1. defaultvendor=0x12d1 
  2. defaultproduct=0x1da1 
  3. targetvendor=0x12d1 
  4. targetproduct=0x1da1 
  5. huaweimode=1 

b)进行模式转换操作。执行:

  1. usb_modeswitch -c /etc/usb_modeswitch.conf 

显示如下信息 

  1. looking for target devices ... 
  2. found devices in target mode or class (1) 
  3. ... 
  4. scsi inquiry data (for identification) 
  5. ------------------------- 
  6. vendor string: huawei 
  7. model string: mobile cmcc cd 
  8. revision string: 1.25 
  9. ------------------------- 
  10. usb description data (for identification) 
  11. ------------------------- 
  12. manufacturer: huawei mobile 
  13. product: huawei mobile system solution 
  14. serial no.: 111111-11-111111 
  15. ------------------------- 
  16. sending huawei control message ... 
  17. ok, huawei control message sent 
  18. -> run lsusb to note any changes. bye. 

注,这一步执行过程可能僵死,重新插入上网卡重新执行该步骤;

c)确认转换完成。执行第一步命令显示如下信息

  1. bus 002 device 009: id 12d1:1d09 huawei technologies co., ltd. 

如果先前的1da1变为1d09那么恭喜你,关键一步已经成功了;

d)查看设备信息。执行:

  1. ls /dev/ttya* 

输出信息为

  1. ttyacm0 ttyacm1 ttyacm2 

那就转换成功了;

3)拨号上网。

a)生成g3上网卡拨号配置文件。执行: 

  1. wvdialconf 

输出

  1. editing `/etc/wvdial.conf'. 
  2. scanning your serial ports for a modem. 
  3. modem port scan<*1>: s0 s1 s2 s3 
  4. wvmodem<*1>: cannot get information for serial port. 
  5. ttyacm0<*1>: atq0 v1 e1 -- ok 
  6. ttyacm0<*1>: atq0 v1 e1 z -- ok 
  7. ttyacm0<*1>: atq0 v1 e1 s0=0 -- ok 
  8. ttyacm0<*1>: atq0 v1 e1 s0=0 &c1 -- ok 
  9. ttyacm0<*1>: atq0 v1 e1 s0=0 &c1 &d2 -- ok 
  10. ttyacm0<*1>: atq0 v1 e1 s0=0 &c1 &d2 +fclass=0 -- ok 
  11. ttyacm0<*1>: modem identifier: ati -- manufacturer: huawei 
  12. ttyacm0<*1>: speed 4800: at -- ok 
  13. ttyacm0<*1>: speed 9600: at -- ok 
  14. ... 
  15. ttyacm0<*1>: speed 230400: at -- ok 
  16. ttyacm0<*1>: speed 460800: at -- ok 
  17. ttyacm0<*1>: max speed is 460800; that should be safe. 
  18. ttyacm0<*1>: atq0 v1 e1 s0=0 &c1 &d2 +fclass=0 -- ok 
  19. wvmodem<*1>: cannot get information for serial port. 
  20. ttyacm1<*1>: atq0 v1 e1 -- ok 
  21. ttyacm1<*1>: atq0 v1 e1 z -- ok 
  22. ttyacm1<*1>: atq0 v1 e1 s0=0 -- ok 
  23. ttyacm1<*1>: atq0 v1 e1 s0=0 &c1 -- ok 
  24. ttyacm1<*1>: atq0 v1 e1 s0=0 &c1 &d2 -- ok 
  25. ttyacm1<*1>: atq0 v1 e1 s0=0 &c1 &d2 +fclass=0 -- ok 
  26. ttyacm1<*1>: modem identifier: ati -- manufacturer: huawei 
  27. ttyacm1<*1>: speed 4800: at -- ok 
  28. ttyacm1<*1>: speed 9600: at -- ok 
  29. ttyacm1<*1>: speed 19200: at -- ok 
  30. ttyacm1<*1>: speed 38400: at -- ok 
  31. ttyacm1<*1>: speed 57600: at -- ok 
  32. ttyacm1<*1>: speed 115200: at -- ok 
  33. ttyacm1<*1>: speed 230400: at -- ok 
  34. ttyacm1<*1>: speed 460800: at -- ok 
  35. ttyacm1<*1>: max speed is 460800; that should be safe. 
  36. ttyacm1<*1>: atq0 v1 e1 s0=0 &c1 &d2 +fclass=0 -- ok 
  37. wvmodem<*1>: cannot get information for serial port. 
  38. ttyacm2<*1>: atq0 v1 e1 -- ok 
  39. ttyacm2<*1>: atq0 v1 e1 z -- ok 
  40. ttyacm2<*1>: atq0 v1 e1 s0=0 -- ok 
  41. ttyacm2<*1>: atq0 v1 e1 s0=0 &c1 -- ok 
  42. ttyacm2<*1>: atq0 v1 e1 s0=0 &c1 &d2 -- ok 
  43. ttyacm2<*1>: atq0 v1 e1 s0=0 &c1 &d2 +fclass=0 -- ok 
  44. ttyacm2<*1>: modem identifier: ati -- manufacturer: huawei 
  45. ttyacm2<*1>: speed 4800: at -- ok 
  46. ... 
  47. ttyacm2<*1>: speed 460800: at -- ok 
  48. ttyacm2<*1>: max speed is 460800; that should be safe. 
  49. ttyacm2<*1>: atq0 v1 e1 s0=0 &c1 &d2 +fclass=0 -- ok 
  50. found an usb modem _disibledevent=0 &c1 &d2 +fclass=0" 
  51. ttyacm1<info>: speed 460800; init "atq0 v1 e1 s0=0 &c1 &d2 +fclass=0" 
  52. ttyacm2<info>: speed 460800; init "atq0 v1 e1 s0=0 &c1 &d2 +fclass=0" 

b)修改拨号配置文件。将/etc/wvdial.conf文件内容替换为

  1. [dialer defaults] 
  2. init1 = atz 
  3. init2 = atq0 v1 e1 s0=0 &c1 &d2 +fclass=0 
  4. password = any 
  5. phone = *99***1# 
  6. modem type = usb modem 
  7. stupid mode = 1 
  8. baud = 460800 
  9. new pppd = yes 
  10. modem = /dev/ttyacm0 
  11. isdn = 0 
  12. username = any 

c)执行拨号联网。执行:

  1. wvdial 

输出

  1. --> wvdial: internet dialer version 1.60 
  2. --> cannot get information for serial port. 
  3. --> initializing modem. 
  4. --> sending: atz 
  5. atz 
  6. ok 
  7. --> sending: atq0 v1 e1 s0=0 &c1 &d2 +fclass=0 
  8. atq0 v1 e1 s0=0 &c1 &d2 +fclass=0 
  9. ok 
  10. --> modem initialized. 
  11. --> sending: atdt*99***1# 
  12. --> waiting for carrier. 
  13. atdt*99***1# 
  14. connect 2800000 
  15. --> carrier detected. starting ppp immediately. 
  16. --> starting pppd at mon jun 22 11:11:50 2009 
  17. --> pid of pppd: 4134 
  18. --> using interface ppp0 
  19. --> local ip address 10.140.162.111 
  20. --> remote ip address 192.200.1.21 
  21. --> primary dns address 221.130.33.60 
  22. --> secondary dns address 221.130.33.52 
  23. --> connected... press ctrl-c to disconnect 

4)其他说明。

a)如果是第一次使用3G上网卡,那么需要依次执行以上每步,后续只需执行wvdial命令即可拨号联网(有时3G信号不稳定,需要重复多次执行wvdial命令);

b)系统自带的网络管理程序NetworkManager与wvdial命令有冲突,如果通过无线路由器上网,请手工运行NetworkManager命令,如果使用g3上网卡,需要先杀掉NetworkManager相关进程(包括NetworkManager、dhclient、dhcpcd),再执行wvdial拨号。下图演示了如何杀NetworkManager相关进程:


时间:2012-08-18 09:08来源:51CTO 作者:杨新涛责任编辑:zhangkai

好文,顶一下
(0)
0%
文章真差,踩一下
(0)
0%
------分隔线----------------------------


把开源带在你的身边-精美linux小纪念品
论坛精华
一周热点
无觅相关文章插件,快速提升流量