详解rcs文件


经常会看到rcs文件只知道它是动态链接库的文件却不知道它到底干什么用,今天来了解一下。

参考资料

参考1
参考2
参考3

rcS常常用在自己制作系统的过程中

修改内核配置
$ make menuconfigFile systems —>
Pseudo filesystems —>
[] Virtual memory file system support (former shm fs)
[
] Tmpfs POSIX Access Control Lists
重新编译内核
$ make zImage
在etc下创建init.d目录,并在init.d下创建rcS文件
$ mkdir /etc/init.d -p
$ vim /etc/init.d/rcS
rcS文件内容为:
#!/bin/sh
#This is the first script called by init process
/bin/mount -a
为rcS添加可执行权限:
$ chmod +x init.d/rcS
在etc下添加profile文件
$ vim /etc/profile
文件内容为:

#!/bin/sh
export HOSTNAME=farsight
export USER=root
export HOME=root
#export PS1="[\u@\h \W]$ "
export PS1="[ U S E R @ USER@ HOSTNAME \W]# "
PATH=/bin:/sbin:/usr/bin:/usr/sbin
LD_LIBRARY_PATH=/lib:/usr/lib:$LD_LIBRARY_PATH
export PATH LD_LIBRARY_PATH

一个更加详细的脚本解释

#! /bin/sh
PATH=/sbin:/bin:/usr/sbin:/usr/bin:/usr/local/bin:
runlevel=S   

设置系统运行级别为S(single user mode),即单用户模式,只有一个控制台终端,供“root”帐号做系统维护。
prevlevel=N 

umask 022 

新建一个文件或文件夹,它们的默认权限,权限的基本码-umask(屏蔽位),按规定,文件夹的基本码rwxrwxrwx(777),文件的基本码rw-rw-rw-(666)


export PATH runlevel prevlevel

#
# Trap CTRL-C &c only in this shell so we can interrupt subprocesses.
#

trap ":" INT QUIT TSTP

捕捉INT、QUIT、TSTP信号
trap 为shell中捕捉信号的命令,其基本形式有三种:
(1)trap "cmd" signal-list
trap收到与signal-list列出的信号相同时,执行cmd命令
(2)trap  signal-list
执行信号的本身默认的操作
(3)trap " " signal-list
忽视signal-list指定的信号

/bin/hostname iTOP-iMX6-XIANG

设置主机名

#/bin/mount -n -t proc none /proc
#/bin/mount -n -t sysfs none /sys
#/bin/mount -n -t usbfs none /proc/bus/usb
#/bin/mount -t ramfs none /dev

[ -e /proc/1 ] || /bin/mount -n -t proc none /proc
[ -e /sys/class ] || /bin/mount -n -t sysfs none /sys
[ -e /dev/tty ] || /bin/mount -t ramfs none /dev

挂载"虚拟"文件系统,-t指明文件系统的类型,-n只是单纯的mount,而不会去写/etc/mtab文件
echo /sbin/mdev > /proc/sys/kernel/hotplug

调用mdev管理程序动态的创建插拔设备。kernel在每次设备出现变动时调用上面一句传递进去的用户空间应用程序/sbin/mdev来处理对应的信息,进而mdev操作/dev目录下的设备,进行添加或删除。
/sbin/mdev -s

内核可以在/dev目录下自动创建设备节点

#/bin/hotplug

设置内核的hotplug handler为mdev,由mdev接受来自内核的消息并作出相应的回应,比如挂载U盘等。


# mounting file system specified in /etc/fstab
mkdir -p /dev/pts
mkdir -p /dev/shm
/bin/mount -n -t devpts none /dev/pts -o mode=0622
/bin/mount -n -t tmpfs tmpfs /dev/shm
#/bin/mount -n -t ramfs none /tmp
#/bin/mount -n -t ramfs none /var

创建然后指定的文件夹下挂载文件系统

mkdir -p /var/empty
mkdir -p /var/log
mkdir -p /var/log/boa
mkdir -p /var/lock
mkdir -p /var/run
mkdir -p /var/tmp

#ln -sf /dev/ttyS2 /dev/tty2
#ln -sf /dev/ttyS2 /dev/tty3
#ln -sf /dev/ttyS2 /dev/tty4

syslogd

记录系统或应用程序产生的各种信息,并把信息写到日志中 


/etc/rc.d/init.d/netd start
echo " " > /dev/tty1
echo "Starting networking..." > /dev/tty1

开启网络服务

#sleep 1
#/etc/rc.d/init.d/httpd start
#echo " " > /dev/tty1
#echo "Starting web server..." > /dev/tty1
#sleep 1
#/etc/rc.d/init.d/leds start
#echo " " > /dev/tty1
#echo "Starting leds service..." > /dev/tty1
#echo " "
#sleep 1

mkdir /mnt/disk
sleep 1
/sbin/ifconfig lo 127.0.0.1
/etc/init.d/ifconfig-eth0

执行ifconfig-eth0,配置网络

了解linux的基本文件内容

根文件系统一直以来都是所有类Unix操作系统的一个重要组成部分,也可以认为是嵌入式Linux系统区别于其他一些传统嵌入式操作系统的重要特征,它给Linux带来了许多强大和灵活的功能,同时也带来了一些复杂性。我们需要清楚的了解根文件系统的基本结构,以及细心的选择所需要的系统库、内核模块和应用程序等,并配置好各种初始化脚本文件,以及选择合适的文件系统类型并把它放到实际的存储设备的合适位置。
  Linux的根文件系统以树型结构组织,包含内核和系统管理所需要的各种文件和程序,一般说来根目录”/”下的顶层目录都有一些比较固定命名和用途。
下面列出了一个Linux根文件系统中的比较常见的目录结构:
/bin 存放二进制可执行命令的目录
  该目录下存放所有用户都可以使用的、基本的命令,这些命令在挂接其它文件系统之前就可以使用,所以/bin目录必须和根文件系统在同一个分区中。
  /bin目录下常用的命令有:cat,chgrp,chmod,cp,ls,sh,kill,mount,umount,mkdir,m knod,[,test等“[”命令其实就是test命令,我们在利用Busybox制作根文件系统时,在生成的bin目录下,可以看到一些可执行的文件,也就是可用的一些命令。
/dev 存放设备文件的目录
  该目录下存放的是设备文件,设备文件是Linux中特有的文件类型,在Linux系统下,以文件的方式访问各种设备,即通过读写某个设备文件操作某个具体硬件。比如通过"dev/ttySAC0"文件可以操作串口0,通过"/dev/mtdblock1"可以访问MTD设备的第2个分区。
/etc 存放系统管理和配置文件的目录
  该目录下存放着各种配置文件,对于PC上的Linux系统,/etc目录下的文件和目录非常多,这些目录文件是可选的,它们依赖于系统中所拥有的应用程序,依赖于这些程序是否需要配置文件。在嵌入式系统中,这些内容可以大为精减。
/home 用户主目录,比如用户user的主目录就是/home/user,可以用~user表示
  用户目录,它是可选的,对于每个普通用户,在/home目录下都有一个以用户名命名的子目录,里面存放用户相关的配置文件。
/lib 存放动态链接共享库的目录
  该目录下存放共享库和可加载(驱动程序),共享库用于启动系统。运行根文件系统中的可执行程序,比如:/bin /sbin 目录下的程序。
/sbin存放系统管理员使用的管理程序的目录
  该目录下存放系统命令,即只有管理员能够使用的命令,系统命令还可以存放在/usr/sbin,/usr/local/sbin目录下,/sbin目录中存放的是基 本的系统命令,它们用于启动系统,修复系统等,与/bin目录相似,在挂接其他文件系统之前就可以使用/sbin,所以/sbin目录必须和根文件系统在同一个分区中。
  /sbin目录下常用的命令有:shutdown reboot fdisk fsck等,本地用户自己安装的系统命令放在/usr/local/sbin目录下。

/tmp 公用的临时文件存储点
  用于存放临时文件,通常是空目录,一些需要生成临时文件的程序用到的/tmp目录下,所以/tmp目录必须存在并可以访问。
/root 系统管理员的主目录
  根用户的目录,与此对应,普通用户的目录是/home下的某个子目录。
/mnt 系统提供这个目录是让用户临时挂载其他的文件系统。
  用于临时挂载某个文件系统的挂接点,通常是空目录,也可以在里面创建一引起空的子目录,比如/mnt/cdram /mnt/hda1 。用来临时挂载光盘、硬盘。
/proc 虚拟文件系统,可直接访问这个目录来获取系统信息。
  这是一个空目录,常作为proc文件系统的挂接点,proc文件系统是个虚拟的文件系统,它没有实际的存储设备,里面的目录,文件都是由内核临时生成的,用来表示系统的运行状态,也可以操作其中的文件控制系统。
/usr 最庞大的目录,要用到的应用程序和文件几乎都在这个目录。
  /usr目录的内容可以存在另一个分区中,在系统启动后再挂接到根文件系统中的/usr目录下。里面存放的是共享、只读的程序和数据,这表明/usr目录下的内容可以在多个主机间共享,这些主要也符合FHS标准的。/usr中的文件应该是只读的,其他主机相关的,可变的文件应该保存在其他目录下,比如/var。/usr目录在嵌入式中可以精减。
/var 某些大文件的溢出区
  与/usr目录相反,/var目录中存放可变的数据,比如spool目录(mail,news),log文件,临时文件。

微软的一种文件格式

RCS 文件摘要

RCS 文件与 二 种文件类型相关联,可以使用 RandomControl 开发的 RandomControl Fryrender查看。 总的来说,这种格式与 三 种已知的软件应用程序相关联。 它们通常以 RandomControl Scene File 文件格式存在。 这些文件分为 3D Image Files 或 Game Files。 在大多数情况下,这些文件属于 3D Image Files。

Windows 和 Mac支持文件扩展名 RCS。 这些类型的文件主要可以在桌面设备上和某些移动设备上找到。 RCS 文件扩展名的普及性为“低”,这意味着这些文件在大多数用户的文件存储中都不常见。

请参阅下面的详细信息,以了解有关 RCS 文件和可以打开它们的程序的更多信息。 此外,我们还提供简单的故障排除信息,以帮助您打开 RCS 文件。

发布了105 篇原创文章 · 获赞 415 · 访问量 3万+

猜你喜欢

转载自blog.csdn.net/weixin_43914889/article/details/104770772
今日推荐