RHEL5笔记(以前的)

TFTP的使用

先用setup命令,查看tftp是否已经安装完,再用根用户去执行
netstat -a | grep tftp
如果返回有
udp 0 0 *:tftp *:*
之类符号的就表示已经启动了,然后查看tftp主工作目录是否建立
/tftpboot    
然后再执行 vi /etc/xinetd.d/tftp
把Disable 写成no
server args的位置写-s /tftpboot
最后/etc/init.d/xinetd start

NFS的使用
同样可以用setup查看是否已经安装并启动nfs
vi /etc/exports
打入以下内容
/home (共享文件夹//这个不用打) 192.168.255.*(rw,sync,no_root_squash)
启动nfs命令
/etc/init.d/nfs start
另外一台机想用这台机的共享目录的话,用以下命令
mount -t nfs 192.168.255.241:/home /mnt/nfs

Samba的使用
先要设置好LINUX的IP,把IP设成跟XP的IP是同一个IP段,再把VM右下角的连接方式改成bridge方式
用setup改IP
192.168.255.240
把网关等都设好后
/etc/init.d/network restart
然后再ping 192.168.255.241(IP为XP的IP)
如果ping成功就连接上了。就可以设置SMB了
vi /etc/samba/smb.conf

[root]
        comment = Root Directories
        browseable = yes
        writable = yes
        path = / (共享路径)
        valid users = linliqiang (访问用户名)
添加一段代码到smb.conf里面,
保存退出后,
smbpasswd -a linliqiang (访问用户名)
它会要求你输入密码。输入完后,执行
/etc/init.d/smb restart
重启后,你就可以用XP-开始-运行-ping 192.168.255.240 (RTEL5的IP)
输入账号密码,成功。


SHELL的使用
首先不用说
#!/bin/sh         (这是一个链接文件,在/bin这个文件夹里。)
echo “Hello world!” (注意,这里echo后面要有一空格 。)
------------------------
#!/bin/bash
hello="var1"
echo $hello
function func1 {
        local hello="var2"
        echo $hello
        }
func1
echo $hello
------------------------
这个是一个例子文件。运行结果为
var1
var2
var1
当编写完一个shell文本后,需要把这个shell文本的权限改成777
然后就可以用./运行

-e    文件已经存在
-f     文件是普通文件
-s    文件大小不为零
-d    文件是一个目录
-r    文件对当前用户可以读取
-w    文件对当前用户可以写入
-x    文件对当前用户可以执行
-----------------
#!/bin/sh 
folder=/home
[ -r "$folder" ] && echo "Can read $folder" 
[ -f "$folder" ] || echo "this is not file" 
------------------

GCC的使用
.c .a .C.cc .cxx .h .i .ii .o .s .S各种后缀文件
设已有的hello.c文件,需要编译
gcc hello.c -o hello
执行完后会生成一个可执行文件hello

-c只编译。输出一个.o文件
-g产生调试信息
-O进行优化编译链接
-O2比-O更好的优化编译
-I 增加头文件目录
-L 增加库文件目录
-static 静态链接库文件
-D 宏定义

GDB使用
要在编译的时候加上-g
b[行号、函数名]      加断点
i b     查看断点情况
q     退出
n     next下一步,不进子函数
s     step下一步,进入子函数
r     run    运行
finish      在函数中执行,运行到函数结束为止
l[a]     显示代码
p 变量     print,显示变量值


系统调用
读写文件的时候,文件读写指针都会跟随移动,当读了3个字节之后
指针就相对移动3位,读完再写的时候就会从读完的位置开始写。
lseek(int fd,offset_t offset,int whence)函数则可以人为的移动文件读写指针。
有三个相对基准点
SEEK_SET    : 相对文件开头
SEEK_CUR     相对文件读写指针的当前位置
SEEK_END     相对文件末尾

lseek(fd,0,SEEK_END)返回值为文件长度

access(const char*pathname,int mode)
判断一个文件是否可以进行某种操作(读写执行)
if(access("/etc/passwd",R_OK)==0)        //R_OK可读    W_OK可写    X_OK可执行    F_OK文件存在
判断/etc/passwd文件是否可读,如果测试成功,即可读的话,返回0值,不符返回-1



GCC安装办法
一、查询是否安装gcc  : which gcc  
[root@lvshou media]# which gcc
/usr/bin/which: no gcc in (/usr/kerberos/sbin:/usr/kerberos/bin:/usr/local/sbin:/usr/local/bin:/sbin:/bin:/usr/sbin:/usr/bin:/root/bin)
#如果系统已安装会出现:/usr/bin/gcc
二、挂载光盘 mount /dev/cdrom /media
三、按顺序分别安装以下RPM包

rpm -ivh cpp ....
rpm -ivh kernel-headers...
rpm -ivh glibc-headers...
rpm -ivh glibc-devel...
rpm-ivh libgomp...
rpm -ivh gcc...
四、测试是否安装成功
[root@lvshou media]# which gcc
/usr/bin/gcc






你可能感兴趣的:(RHEL5笔记(以前的))