小荷才露尖尖角:linux的起步

        最近,有时间开始长期的学习linux了真是有点做梦的感觉!想当初上学的时候,linux上课也不认真听,一、没兴趣;二、没意思;后来毕业了才发现社会上需要linux人才的还真不少,于是乎开始有想学linux的想法,可惜又没有了时间。这次真好公司作一个项目缺少人手,就把我抓去了! 呵呵, 在犹豫好就之后决定把目光看远一些, 不要重复学生时代的愚蠢过程◎_◎!
        这两天计划把linux的基本命令搞清楚,用熟练;然后就开始shell编程;再接下来是gcc, gdb开发;最后去搞minigui和arm设计。不知道还需要多少时间,不过每天都有新的东西学到这就很好了,以下是我这两天学到的内容:
【datetime】2006-08-09
【title】完成一次linux嵌入式开放的基本过程
1.生成内核映象文件uImage,和文件系统文件sc_ramdisk.gz
2.配置内核
3.开启tftp服务,提供开发板与PC机的网口连接
4.编写启动脚本uboot
5.通过网口下载uImage和sc_ramdisk.gz到开发板上
6.设置一个挂载点在pc机上
7.调试自己的程序

【title】今天学习的Linux命令
【cmd】echo $LANG
【desc】查看语言包
【cmd】grep
【desc】查找给出文件中与命令行匹配的行,并打印出来
【cmd】useradd
【desc】添加一个用户
【cmd】passwd
【desc】设置用户的密码
【cmd】su
【desc】切换用户
【cmd】ls |more
【desc】列表与管道组合命令,|more用于分页显示内容
【cmd】mount
【desc】挂载点
【cmd】mkdir
【desc】创建目录
【cmd】switchdesk
【desc】切换桌面

【title】关于探伤要学习的内容
1.熟悉linux命令,文件操作,软件压缩和打包,文件系统,远程控制,Shell脚本
2.gcc编译器 ,gdb调试器,内核,连接过程, 界面编程
3.ARM体系结构,系统引导过程
4.驱动程序的编写

【datetime】2006-08-10
【title】samba服务器
今天遇到了一个问题就是window怎么也连不上Linux服务器了,我认为可能是samba服务器出了点毛病,于是开始了研究samba服务器的配置。
samba服务器有一个配置文件在/etc/samba/下的smb.conf,其中定义了几个节[global][home]...。在global节中几个重要的字段是workgroup提供了NT域名或工作组名;server string提供了指定的服务信息通常为samba服务;hosts allow允许登陆到Linux-samba的主机名单,以ip的信息给出。在修改了这几个字段后,重启samba服务器(samba执行文件是/etc/rc.d/init.d目录下的smb,重启服务器的命令是$ ./smb stop; $ ./smb start)依然没有效果。于是又重新设置了一个新用户密码(#smbpasswd -a user)。重启服务器结果还是没有效果,windows依然连不上服务器,最后我尝试用telnet登陆,但是telnet也登陆不上。使用ifconfig命令发现inet addr字段中不是ip地址,于是我进入x windows查看网卡设置,原来是网卡没有启用。启用网卡后一切都解决。

【title】vi编辑器的使用
在使用vi编辑器时发现,使用windows的操作方式无法修改一个已有的文件的内容,查看帮助发现在使用vi进入文件时,文件是处于只读状态需要按一下键盘的insert键才能进入编辑状态。如果一旦对文件进行了修改,vi编辑器要求你必须保存后才能退出(保存命令:w,退出命令:q),也可以使用(:wq)。在vi中,从编辑模式切换到命令模式使用ESC键来完成。

【title】文件构建命令tar
在linux中常常见到.tar和.tar.gz文件,.tar文件是结构文件;.tar.gz文件是.tar文件经过压缩的文件。对于.tar文件的操作,linux提供了服务的命令参数:
建立结构文件:tar cv [file] 建立时显示文件内容
                            tar cvf  [object]  [source]
查看tar文件内容: tar tf [file] 查看结构文件列表
                             tar tvf [file] 查看详细的文件信息
                             tar tzf [file] 查看压缩文件信息
解压tar.gz文件: tar xzf [dir] [file] 可以使用-c选项来指定目录位置。

【title】linux编程
在linux中如果你使用c或c++来编程,那么gcc编译器和gdb调试器为你提供了强大的编程控制能力。我目前只学习了这两个工具的一点皮毛,准备下一步等熟悉了linux大部分命令后好好研究研究这两个工具。
gcc的设置:
 -o 产生一个可执行文件,并作一些优化
 -g 产生调试设置,想进行gdb调试必须加上这一项
注意:这两个参数顺序还要注意,-o -g先优化再加入调试信息,这样调试时可能不太方便。-g -o先加入调试信息再优化,但是如果想调试建议只用-g来编译。
gdb的设置:
 -q 不显示许可信息
 -d 显示可执行程序的目录
【error|../sysdeps/i386/elt/start.s;没有那个文件或目录】这个错误产生的原因就是上面注意中写到的-o在-g前面或是没有用-g进行编译。解决办法是重新用-g编译一下就好了。
下面列出了gdb中常用的基本命令:
【cmd】file
【desc】装入想要调试的可执行文件
【cmd】kill
【desc】终止正在调试的程序
【cmd】list [m,n]
【desc】列出可执行文件的源代码部分,m和n是要显示首次出现错误的起始行和结束行的行号,如果不带m,n则显示附近10行的代码。
【cmd】next
【desc】执行一行源代码,但不进入函数内部。
【cmd】step
【desc】执行一行源代码,进入函数内部。
【cmd】run
【desc】运行当前被调试的程序
【cmd】quit
【desc】终止gdb
【cmd】watch variable
【desc】监视一个变量的值
【cmd】break [linenum | funcname] [if expr]
【desc】设置代码断点,可以是行号或是函数名,也可加上条件表达式
【cmd】make
【desc】在不退出的情况下就可以产生可执行文件。
【cmd】print
【desc】打印一个变量的值
【cmd】delete
【desc】删除断点
【cmd】disable
【desc】禁用断点
【cmd】continue
【desc】继续断点后的信息
【cmd】shell
【desc】在gdb中使用shell命令
  还需要努力啊!

posted @ 2006-08-11 13:11  moonz-wu  阅读(584)  评论(0编辑  收藏  举报