Category Archives: Linux系统

Linux,gentoo系统相关文章

软链接和硬链接

软链接经常用到。比如GLIBC中动态链接库有很多子版本,就用软链接解决一些子版本变化问题。 为了搞清软链接和硬链接,首先得知道文件和文件名的关系。磁盘上的文件,都是通过i-node索引的,i-node中存着关于这个文件的信息,而ls看到的文件名,就是对这个数据结构的一个引用。硬链接就是创建一个对i-node的引用。你可以用ln命令创建硬链接。如下: ln a-file.txt b-file.txt 所产生的效果如下图所示,图来自参考1. 两个文件名其实都指向同一个i-node. 但硬链接有两个问题: 不能为文件夹创建硬链接,因为这样可能把目录树变成有环的图,这就不可能根据文件名得到它的存储位置。 因为使用i-node,所以硬链接只能在相同的文件系统上使用,如果文件系统不同i-node结构不同,就没法使用。 于是软链接就诞生了。软链接也成为符号链接,它其实是一个文件,存着被链接文件的路径。路径可以指向目录树中的任何文件或文件夹。可以使用命令 ln -s 创建: ln -s a-file.txt b-file.txt 示意图如下: 可以看到b-file.txt的inode保存了一个路径,指向同目录下的a-file.txt. 参考: http://www.ugrad.cs.ubc.ca/~cs219/CourseNotes/Unix/commands-links.html Understanding Linux Kernel 3rd,Daniel P. Bovet, P14

Posted in IT职业和生活, Linux系统 | Tagged , | 6 Comments

走进Debian和Gentoo中的系统初始化过程

介绍Linux系统的头号进程init和启动过程,以及Gentoo,Debian系统下,如何配置启动项。 Continue reading

Posted in Linux系统 | Tagged , , , , , | Leave a comment

龙芯电脑常见问题

root密码多少? loongson 如何添加新用户? adduser username 怎么修改IP? vim /etc/network/interfaces 如何重启网络? /etc/init.d/networking restart 如何启动ssh? /etc/init.d/ssh start 为啥root账户在/目录下修改,都提示 read only filesystem?因为根分区在挂载时以只读挂载.可以执行 mount / -o remount,rw. 如果以后都想要root在/下可写,可以修改/etc/init.d/discover,把倒数第二行mount的命令注掉即可。

Posted in IT职业和生活, Linux系统 | Tagged , , , , , , , , | 1 Comment

Gentoo 沙盘简介

emerge一个软件包时Portage的工作方式: 1,Portage下载源码tar包和补丁(如果需要的话) 2,Portage解压缩tar包到指定位置,所有的编译将在该目录展开,Portage默认使用/var/tmp/portage/packagename/work 3,解压和打补丁(如果需要的话)后(ebuild中的src_unpack()函数),Portage开始编译,一般情况下在特定目录(ebuild使用${WORKDIR}变量指定目录)下执行configure和make命令. 4,编译完成后,portage将所有指定目录下的文件合并到正在运行的系统中.(通常为/,但通过合并时设置ROOT=”/路径”可以修改),为了避免非法或不正确的ebuild对整个文件系统造成不可逆的破坏,我们需要严格限制文件系统的哪个区域允许portage在解压和编译时修改,这就是沙盘工作的路径,默认时,沙盘启动,并限定ebuild(和它执行过程中的明林)都在指定的区域内写磁盘.若ebuild越过沙盘保护的环境,试图在外部区域写磁盘,就构成了沙盘越界.

Posted in Linux系统 | Tagged , , , , , , | 1 Comment

如果SourceForge.net沦为政治工具?

刚开电脑就看到一条新闻,souceforge在古巴,伊朗,朝鲜,叙利亚,苏丹不能访问,被屏蔽了。这些都是与美国为敌的国家。服务器在别人的手里,不管你打着多么大公无私的旗号,多么贡献开源,人家看你不爽,一拔网线,你就啥都干不了。 每个喜欢互联网技术,拥护开源的人都不想让开源沦为政治工具,但这是一个政治主导的世界,你得听政府的,政府是老大,你在政府的地盘上混,管你什么道义,什么自由,什么开源,统统只是工具。

Posted in Linux系统 | Tagged , | 9 Comments

WebKit和Firefox的JavaScript性能对比

严格的说WebKit仅仅是个浏览器核心,采用该核心的浏览器很多,如国内的搜狗浏览器,遨游浏览器。其他的如google的chrome(Windows平台,linux平台下为chromium),epiphany(linux平台下,gnome2.28版本之后),苹果的Safari 都采用了webkit的内核。Firefox则是采用Gecko的内核,这是NetScape公司开发的内核,后来开源,mozilla继续开发。另外,现在还有另外两种常见的浏览器内核,Trident主要用在IE系列上,Presto主要用在Opera上。 这篇文章仅仅针对浏览器处理JavaScript的性能作比较,主要在X86平台和龙芯平台。先来解释一下JavaScript,JavaScript是互联网内较为常用的脚本语言,面向对象,主要在浏览器内解释执行,用于生成动态网页,因为很多语言特性受Java影响,所以叫JavaScript。通过JavaScript,浏览器可以运行服务器想要在访问者终端上运行的一些计算程序,以达到更好的浏览体验。

Posted in Linux系统, 编译技术 | Tagged , , , , , , , , , , , , , , , , , , , , | 8 Comments

暴力了一把

要在玲珑电脑上安装qtcreator,发现默认的源,同创的完全连不上,龙梦的没有想要的东西。又从盒子里拷了rays的源还是没有qtcreator。。。。。。 龙芯的源太混乱了,大家都在维护自己的,倒不如都按照debian的标准来做,画地为牢太劳民伤财了,一起努力做好一个源就不错了。 推荐一个现在在用的源,unstable的: deb ftp://210.51.187.182/loongson2f/sid/ ./ deb-src ftp://210.51.187.182/loongson2f/sid/ ./ deb ftp://210.51.187.182/debian sid main non-free contrib deb-src ftp://210.51.187.182/debian sid main non-free contrib

Posted in Linux系统 | Tagged , , , , , , , , | 1 Comment

JOKE:新建域名不能访问和lingcc.net PageRank到3

刚刚试着创建新的子域名,但都国内无法访问,当然用代理是完全没问题的。其实,我只想记录自己的学习生活和工作过程中遇到的问题,我也很想能记录些和龙芯相关,和编译器相关的内容,希望日后能给别人一些参考,给自己一点回忆的空间,仅此而已,仅此而已。远离浮躁的技术风气,以对知识和技术渴求和尊重的心态写几篇拙文,不做恶!何必呢,以后的世界肯定是兼容并包,开放互联的。 更正,今天下午已经可以访问的子域名,估计是增加了审核机制。 另外一件事是,lingcc.net的pagerank居然到了3!!现在lingcc.com的内容都移植自lingcc.net,且之后一直在lingcc.com中更新。看来是前不久一次pagerank更新将lingcc.net提上去的,问题是lingcc.com还是0。 两件事情都很joke。抱歉,本文不接受讨论,有问题请email给我

Posted in Linux系统 | Tagged , , , , , , | 1 Comment

使用crossdev安装龙芯的O32 gnu交叉工具链

先来介绍一下n32和O32是啥,N32和O32就是MIPS系统上不同的ABI,即Application Binary Interface。MIPS体系结构最早只有o32的系统,但后来改进了寄存器的功能和分配方式,于是就又有了N32,相对于O32,N32的速度更快些。但二者目前在龙芯系统上还无法兼容。因为龙芯目前官方只支持O32,而N32有只有zhllg的overlay中有,所以使用gentoo来安装O32的工具链需要额外解决些问题,所以才有了这篇文章,之所以之前又写了N32的安装方法,是因为有zhllg大牛的技术支持,使得能直接安装N32的工具链。

Posted in Linux系统 | Tagged , , , , , , , , , , , , , , , , , , | 2 Comments

用crossdev装龙芯的n32 gnu交叉工具链

不管怎样,龙芯是咱们应该骄傲的,但是用它来编译东西确实很慢,我们很需要一个交叉编译器,能够在性能稍好的平台上为龙芯平台编译程序,x86是目前比较常见的平台,本博在实际工作中,需要在gentoo系统上安装支持龙芯n32的交叉编译器,下面分享一下本博的安装过程。
crossdev是gentoo系统下很方便的交叉编译环境安装和卸载工具,想进一步了解可以参考本博的这篇文章,这里只讨论有了crossdev之后的安装过程。
首先,我们需要支持n32的gcc,glibc,linux-header,insight和binutils.其中,gcc,gdb,insight和 linux-header都已经有了官方支持,我们还需要glibc的一些patch。头疼打patch这种繁重的劳动?别急,已经有国内的开源爱好者们做好了这些,我们仅仅需要几个附加步骤即可。 Continue reading

Posted in Linux系统 | Tagged , , , , , , , , , , , , , , , , , , , | 3 Comments