分页: 1 / 2

关于ubuntu的“关键性”疑问(极为关键,不骗你的)

发表于 : 2010-04-30 8:25
四海皆狂龙
:em09
比如说
1.程序是如何关联的,对于WINDOWS系统来说使用的是注册表来关联,ubuntu既然也可双击提醒运用某打开,自然就应该有类似的机制吧,这个机制是什么?
2.同样可以看到类似于类似于WINDOWS的快捷方式的东西,而ubuntu又是如何实现的,我们又有什么方法知道该快捷方式关联到具体的位置?
3.ubuntu 也应该有文件类型吧,类似于常见的DEB,常用于安装,但是DEB文件是否就意味着WINDOWS的EXE和COM这样的执行文件?而ubuntu系统的执行文件又是什么类型的文件,而更多的类型还有什么?
好,暂时就这些。虽然我们常常是对一个文件指点点打开,但我们认为了解其运作机制才是正道,才可以一通百通。

Re: 关于ubuntu的“关键性”疑问(极为关键,不骗你的)

发表于 : 2010-04-30 8:31
gyteng
linux不是靠后缀来判断文件的类型的

Re: 关于ubuntu的“关键性”疑问(极为关键,不骗你的)

发表于 : 2010-04-30 10:09
四海皆狂龙
看来积极性不高哦 :em17

Re: 关于ubuntu的“关键性”疑问(极为关键,不骗你的)

发表于 : 2010-04-30 10:31
goldfox_79
四海皆狂龙 写了::em09
比如说
1.程序是如何关联的,对于WINDOWS系统来说使用的是注册表来关联,ubuntu既然也可双击提醒运用某打开,自然就应该有类似的机制吧,这个机制是什么?
2.同样可以看到类似于类似于WINDOWS的快捷方式的东西,而ubuntu又是如何实现的,我们又有什么方法知道该快捷方式关联到具体的位置?
3.ubuntu 也应该有文件类型吧,类似于常见的DEB,常用于安装,但是DEB文件是否就意味着WINDOWS的EXE和COM这样的执行文件?而ubuntu系统的执行文件又是什么类型的文件,而更多的类型还有什么?
好,暂时就这些。虽然我们常常是对一个文件指点点打开,但我们认为了解其运作机制才是正道,才可以一通百通。
小白瞎猜

2. 实际上就是ln创建的一个链接

3. deb实际上是若干程序打包/压缩存放在一起生成的文件,同时添加了一些必要的信息,比如每个程序应该拷贝复制到哪里,跟exe好像不是一个概念

Re: 关于ubuntu的“关键性”疑问(极为关键,不骗你的)

发表于 : 2010-04-30 12:07
四海皆狂龙
看来还是要等救兵阿

Re: 关于ubuntu的“关键性”疑问(极为关键,不骗你的)

发表于 : 2010-04-30 17:34
可爱的诡异
ubuntu-tweak里面可以设置 :em11

具体实现原理不晓得 :em03

Re: 关于ubuntu的“关键性”疑问(极为关键,不骗你的)

发表于 : 2010-04-30 17:46
farta
大致回答一下第二个和第三个问题。看起来像Windows下的快捷方式的那种文件,在Linux下叫“符号连接(symbolic link)”。其功能也确实和Windows下的快捷方式差不多。

想查看他的目标是什么很简单。在GUI下可以直接右击选属性,属性窗口中会显示他的目标。

在CLI下也很简单。用file命令探测这个文件就可以。

farta@farta-desktop:~$ file /initrd.img
/initrd.img: symbolic link to `boot/initrd.img-2.6.32-21-generic'

farta@farta-desktop:~/下载$ file /usr/bin/gcc
/usr/bin/gcc: symbolic link to `gcc-4.4'

然后是可执行文件的类型的问题。Linux下并没有规定可执行文件的扩展名,而且绝大多数Linux下的二进制可执行文件实际上都是没有扩展名的。要求执行任何一个文件时,Linux会自己探测此文件是否是可执行文件,以及你有没有执行他的权限。Linux下的二进制可执行文件的ELF格式,也与Windows下的PE格式不同。至于deb格式的文件,其实是一种特殊的压缩包。除了像普通的压缩包那样包含有文件外,还包含有如何安装其中的程序的信息。它并不是可执行文件,安装deb包的是dpkg程序。

想查看一个文件的类型,最好的方法还是file命令。探测一个文件的时候,通常只有这样的结果才能表明这是一个像Windows下的exe那样的二进制可执行文件。

farta@farta-desktop:~/下载$ file /usr/bin/gcc-4.4
/usr/bin/gcc-4.4: ELF 32-bit LSB executable, Intel 80386, version 1 (SYSV), dynamically linked (uses shared libs), for GNU/Linux 2.6.15, stripped

Re: 关于ubuntu的“关键性”疑问(极为关键,不骗你的)

发表于 : 2010-05-01 6:03
四海皆狂龙
可爱的诡异 写了:ubuntu-tweak里面可以设置 :em11

具体实现原理不晓得 :em03
只发了一个帖子啊 :em20

Re: 关于ubuntu的“关键性”疑问(极为关键,不骗你的)

发表于 : 2010-05-01 6:10
四海皆狂龙
farta 写了:大致回答一下第二个和第三个问题。看起来像Windows下的快捷方式的那种文件,在Linux下叫“符号连接(symbolic link)”。其功能也确实和Windows下的快捷方式差不多。

想查看他的目标是什么很简单。在GUI下可以直接右击选属性,属性窗口中会显示他的目标。

在CLI下也很简单。用file命令探测这个文件就可以。

farta@farta-desktop:~$ file /initrd.img
/initrd.img: symbolic link to `boot/initrd.img-2.6.32-21-generic'

farta@farta-desktop:~/下载$ file /usr/bin/gcc
/usr/bin/gcc: symbolic link to `gcc-4.4'

然后是可执行文件的类型的问题。Linux下并没有规定可执行文件的扩展名,而且绝大多数Linux下的二进制可执行文件实际上都是没有扩展名的。要求执行任何一个文件时,Linux会自己探测此文件是否是可执行文件,以及你有没有执行他的权限。Linux下的二进制可执行文件的ELF格式,也与Windows下的PE格式不同。至于deb格式的文件,其实是一种特殊的压缩包。除了像普通的压缩包那样包含有文件外,还包含有如何安装其中的程序的信息。它并不是可执行文件,安装deb包的是dpkg程序。

想查看一个文件的类型,最好的方法还是file命令。探测一个文件的时候,通常只有这样的结果才能表明这是一个像Windows下的exe那样的二进制可执行文件。

farta@farta-desktop:~/下载$ file /usr/bin/gcc-4.4
/usr/bin/gcc-4.4: ELF 32-bit LSB executable, Intel 80386, version 1 (SYSV), dynamically linked (uses shared libs), for GNU/Linux 2.6.15, stripped
如此看来,区别很大。不过,还是实现方法不同而已。
有必要深入了解。

Re: 关于ubuntu的“关键性”疑问(极为关键,不骗你的)

发表于 : 2010-05-01 8:41
samool
linux是靠配置文件来关联一切的,没有所谓的注册表。也就是为什么有些系统设置要修改配置文件的参数,而不是修改注册表,不同的程序,模块,有不同的配置表。

Re: 关于ubuntu的“关键性”疑问(极为关键,不骗你的)

发表于 : 2010-05-01 9:24
速腾1994
:em11 :em11

Re: 关于ubuntu的“关键性”疑问(极为关键,不骗你的)

发表于 : 2010-05-01 9:46
lainme
1.反正不是后缀名,不过有些软件还是用后缀名的。

2.符号链接。命令行下的命令是“ln”,有硬链接和软链接之分。软链接相当于快捷方式。查看方法楼上说过

3.ubuntu 也应该有文件类型吧,类似于常见的DEB,常用于安装,但是DEB文件是否就意味着WINDOWS的EXE和COM这样的执行文件?
差不多吧。不知道对不对,我的理解是,它们都是一种特殊的打包。

而ubuntu系统的执行文件又是什么类型的文件,而更多的类型还有什么?
脚本啊什么的。关键是要文件本身是可执行的,比较shell脚本,而是文件要有可执行权限。二者缺一不可。

Re: 关于ubuntu的“关键性”疑问(极为关键,不骗你的)

发表于 : 2010-05-01 10:24
kamui0523
四海皆狂龙 写了::em09
比如说
1.程序是如何关联的,对于WINDOWS系统来说使用的是注册表来关联,ubuntu既然也可双击提醒运用某打开,自然就应该有类似的机制吧,这个机制是什么?
2.同样可以看到类似于类似于WINDOWS的快捷方式的东西,而ubuntu又是如何实现的,我们又有什么方法知道该快捷方式关联到具体的位置?
3.ubuntu 也应该有文件类型吧,类似于常见的DEB,常用于安装,但是DEB文件是否就意味着WINDOWS的EXE和COM这样的执行文件?而ubuntu系统的执行文件又是什么类型的文件,而更多的类型还有什么?
好,暂时就这些。虽然我们常常是对一个文件指点点打开,但我们认为了解其运作机制才是正道,才可以一通百通。
1.linux下没有注册表这个东西,唯一有关联性的就是lib库,相当于win下的dll,也就是说,只要lib库正确,即使你默认装在A目录下的程序,直接剪切到B目录照样可以运行,这还只是针对于二进制程序的,如果是SHELL或者PERL或者PYTHONE写的程序,直接复制到其他机器都可以直接运行.
2.比如/bin/sh是个软连接,可以通过ls -l /bin/sh来查看连接的源文件是哪个
3.linux不靠后缀识别文件,靠的是文件的header信息,即使一个aaa.mp3,你改成aaa.doc,照样可以播放.
其他问题相信LS几位已经回答很清楚了.

Re: 关于ubuntu的“关键性”疑问(极为关键,不骗你的)

发表于 : 2010-05-01 10:56
slax
四海皆狂龙 写了::em09
比如说
1.程序是如何关联的,对于WINDOWS系统来说使用的是注册表来关联,ubuntu既然也可双击提醒运用某打开,自然就应该有类似的机制吧,这个机制是什么?
2.同样可以看到类似于类似于WINDOWS的快捷方式的东西,而ubuntu又是如何实现的,我们又有什么方法知道该快捷方式关联到具体的位置?
3.ubuntu 也应该有文件类型吧,类似于常见的DEB,常用于安装,但是DEB文件是否就意味着WINDOWS的EXE和COM这样的执行文件?而ubuntu系统的执行文件又是什么类型的文件,而更多的类型还有什么?
好,暂时就这些。虽然我们常常是对一个文件指点点打开,但我们认为了解其运作机制才是正道,才可以一通百通。
1: gconf ?
终端命令 file XX 可检测文件类型。
优先后缀名,在没有后缀名或后缀名沒注册时 检测文件类型,试一下将音乐文件如 "lady gaga.mp3"改名 "lady gaga"
2:符号链接 windows下快捷方式 是以 .lnk 结尾的文本文件,内有目标地址、快捷方式图标等,linux下是 文件的磁盘位置 的挂载(类mount?)直接是地址的跳转
3:deb本质上是一个压缩文件 用debi安装时本质上是分析deb的软件信息再解压缩文件到 / 中。
大部分执行文件是elf文件格式( ELF 32-bit LSB executable )并且标记可执行才有权执行。
还有exe(wine),shell(执行脚本)...都要求标记可执行才有权执行。
gnome下gconf比较广泛 kde下有个类似的忘了。

Re: 关于ubuntu的“关键性”疑问(极为关键,不骗你的)

发表于 : 2010-05-01 11:03
BigSnake.NET
可执行文件一般有两种
二进制可执行文件和脚本

PS: 内核有个功能可以把特定的文件类型绑到某个程序上,例如将windows程序关联到wine