slitaz-base-files annotate rootfs/sbin/mktazdevs.sh @ rev 191

add comments into mktazdev.sh
author Christophe Lincoln <pankso@slitaz.org>
date Fri Jun 01 22:57:58 2012 +0200 (2012-06-01)
parents 2f92b6818996
children c17d58ea0ead
rev   line source
pascal@0 1 #!/bin/sh
pankso@191 2 #
pascal@0 3 # mktazdevs.sh: Make device files for SliTaz GNU/Linux
pankso@191 4 # 2007/10/02 - 2012 <pankso@slitaz.org>
pascal@0 5 #
pankso@191 6 # As of SliTaz 5.0 we have a radicaly minimal /dev tree for ARM and we
pankso@191 7 # use mdev to create devices nodes on the fly. On i486 we use udev and
pankso@191 8 # mount a devtmpfs on /dev, minimal tree for udev is in: /lib/udev/devices
pankso@191 9 # This script yet be usefull to rescue a broken system but may be removed.
pankso@191 10 #
pankso@191 11 . /lib/libtaz.sh
pascal@0 12
pascal@0 13 # We do our work in the dev/ directory.
pascal@0 14 if [ -z "$1" ] ; then
pascal@0 15 echo "usage: `basename $0` path/to/dev"
pascal@0 16 exit 1
pascal@0 17 fi
pascal@0 18
MikeDSmith25@48 19 # Make useful directories.
pascal@0 20 echo -n "Starting to build directories... "
pascal@0 21 mkdir pts input net usb shm
pascal@0 22 status
pascal@0 23
MikeDSmith25@48 24 # Script start.
pascal@0 25 #
pascal@0 26 echo -n "Starting to build devices... "
pascal@0 27
MikeDSmith25@48 28 # Input devs.
pascal@0 29 #
pascal@0 30 mknod input/event0 c 13 64
pascal@0 31 mknod input/event1 c 13 65
pascal@0 32 mknod input/event2 c 13 66
pascal@0 33 mknod input/mouse0 c 13 32
pascal@0 34 mknod input/mice c 13 63
pascal@0 35 mknod input/ts0 c 254 0
pascal@0 36
pascal@0 37 # Miscellaneous one-of-a-kind stuff.
pascal@0 38 #
pascal@0 39 mknod logibm c 10 0
pascal@0 40 mknod psaux c 10 1
pascal@0 41 mknod inportbm c 10 2
pascal@0 42 mknod atibm c 10 3
pascal@0 43 mknod console c 5 1
pascal@0 44 mknod full c 1 7
pascal@0 45 mknod kmem c 1 2
pascal@0 46 mknod mem c 1 1
pascal@0 47 mknod null c 1 3
pascal@0 48 mknod port c 1 4
pascal@0 49 mknod random c 1 8
pascal@0 50 mknod urandom c 1 9
pascal@0 51 mknod zero c 1 5
pascal@0 52 mknod rtc c 10 135
pascal@0 53 mknod sr0 b 11 0
pascal@0 54 mknod sr1 b 11 1
pascal@0 55 mknod agpgart c 10 175
pascal@0 56 mknod ttyS0 c 4 64
pascal@0 57 mknod audio c 14 4
pascal@0 58 mknod beep c 10 128
pascal@0 59 mknod ptmx c 5 2
pascal@0 60 mknod nvram c 10 144
pascal@0 61 ln -s /proc/kcore core
pankso@25 62 # DSP
pankso@25 63 mknod -m 0666 dsp c 14 3
pascal@0 64 # PPP dev.
pascal@0 65 mknod ppp c 108 0
pascal@0 66
pascal@0 67 # net/tun device.
pascal@0 68 #
pascal@0 69 mknod net/tun c 10 200
pascal@0 70
pascal@0 71 # Framebuffer devs.
pascal@0 72 #
pascal@0 73 mknod fb0 c 29 0
pascal@0 74 mknod fb1 c 29 32
pascal@0 75 mknod fb2 c 29 64
pascal@0 76 mknod fb3 c 29 96
pascal@0 77 mknod fb4 c 29 128
pascal@0 78 mknod fb5 c 29 160
pascal@0 79 mknod fb6 c 29 192
pascal@0 80
pascal@0 81 # usb/hiddev.
pascal@0 82 #
pascal@0 83 mknod usb/hiddev0 c 180 96
pascal@0 84 mknod usb/hiddev1 c 180 97
pascal@0 85 mknod usb/hiddev2 c 180 98
pascal@0 86 mknod usb/hiddev3 c 180 99
pascal@0 87 mknod usb/hiddev4 c 180 100
pascal@0 88 mknod usb/hiddev5 c 180 101
pascal@0 89 mknod usb/hiddev6 c 180 102
pascal@0 90
pascal@0 91 # IDE HD devs.
paul@61 92 # With a few conceivable partitions, you can do
pascal@0 93 # more of them yourself as you need 'em.
pascal@0 94 #
pascal@0 95
pascal@0 96 # hda devs.
pascal@0 97 #
pascal@0 98 mknod hda b 3 0
pascal@0 99 mknod hda1 b 3 1
pascal@0 100 mknod hda2 b 3 2
pascal@0 101 mknod hda3 b 3 3
pascal@0 102 mknod hda4 b 3 4
pascal@0 103 mknod hda5 b 3 5
pascal@0 104 mknod hda6 b 3 6
pascal@0 105 mknod hda7 b 3 7
pascal@0 106 mknod hda8 b 3 8
pascal@0 107 mknod hda9 b 3 9
pascal@0 108
pascal@0 109 # hdb devs.
pascal@0 110 #
pascal@0 111 mknod hdb b 3 64
pascal@0 112 mknod hdb1 b 3 65
pascal@0 113 mknod hdb2 b 3 66
pascal@0 114 mknod hdb3 b 3 67
pascal@0 115 mknod hdb4 b 3 68
pascal@0 116 mknod hdb5 b 3 69
pascal@0 117 mknod hdb6 b 3 70
pascal@0 118 mknod hdb7 b 3 71
pascal@0 119 mknod hdb8 b 3 72
pascal@0 120 mknod hdb9 b 3 73
pascal@0 121
pascal@0 122 # hdc and hdd.
pascal@0 123 #
pascal@0 124 mknod hdc b 22 0
pascal@0 125 mknod hdd b 22 64
pascal@0 126
pascal@0 127 # sda devs.
pascal@0 128 #
pascal@0 129 mknod sda b 8 0
pascal@0 130 mknod sda1 b 8 1
pascal@0 131 mknod sda2 b 8 2
pascal@0 132 mknod sda3 b 8 3
pascal@0 133 mknod sda4 b 8 4
pascal@0 134 mknod sda5 b 8 5
pascal@0 135 mknod sda6 b 8 6
pascal@0 136 mknod sda7 b 8 7
pascal@0 137 mknod sda8 b 8 8
pascal@0 138 mknod sda9 b 8 9
pascal@0 139 ln -s sda1 flash
pascal@0 140
pascal@0 141 # sdb devs.
pascal@0 142 #
pascal@0 143 mknod sdb b 8 16
pascal@0 144 mknod sdb1 b 8 17
pascal@0 145 mknod sdb2 b 8 18
pascal@0 146 mknod sdb3 b 8 19
pascal@0 147 mknod sdb4 b 8 20
pascal@0 148 mknod sdb5 b 8 21
pascal@0 149 mknod sdb6 b 8 22
pascal@0 150 mknod sdb7 b 8 23
pascal@0 151 mknod sdb8 b 8 24
pascal@0 152 mknod sdb9 b 9 25
pascal@0 153
pascal@0 154 # Floppy device.
pascal@0 155 #
pascal@0 156 mknod fd0 b 2 0
pascal@0 157
pascal@0 158 # loop devs.
pascal@0 159 #
pascal@0 160 for i in `seq 0 7`; do
pascal@0 161 mknod loop$i b 7 $i
pascal@0 162 done
pascal@0 163
pascal@0 164 # ram devs.
pascal@0 165 #
pascal@0 166 for i in `seq 0 7`; do
pascal@0 167 mknod ram$i b 1 $i
pascal@0 168 done
pascal@0 169 ln -s ram1 ram
pascal@0 170
pascal@0 171 # tty devs.
pascal@0 172 #
pascal@0 173 mknod tty c 5 0
pascal@0 174 for i in `seq 0 7`; do
pascal@0 175 mknod tty$i c 4 $i
pascal@0 176 done
pascal@0 177
pascal@0 178 # Virtual console screen devs.
pascal@0 179 #
pascal@0 180 for i in `seq 0 7`; do
pascal@33 181 mknod vcs$i c 7 $i
pascal@0 182 done
pascal@0 183 ln -s vcs0 vcs
pascal@0 184
pascal@0 185 # Virtual console screen w/ attributes devs.
pascal@0 186 #
pascal@0 187 for i in `seq 0 7`; do
pascal@32 188 mknod vcsa$i c 7 $(($i + 128))
pascal@0 189 done
pascal@0 190 ln -s vcsa0 vcsa
pascal@0 191
pascal@0 192 status
pascal@0 193
pascal@0 194 # Symlinks.
pascal@0 195 #
pascal@0 196 ln -snf /proc/self/fd fd
pascal@0 197 ln -snf /proc/self/fd/0 stdin
pascal@0 198 ln -snf /proc/self/fd/1 stdout
pascal@0 199 ln -snf /proc/self/fd/2 stderr
pascal@0 200
pascal@0 201 # Changes permissions.
pascal@0 202 #
pascal@0 203 echo -n "Changing permissions on devices... "
pascal@0 204 chmod 0666 ptmx
pascal@0 205 chmod 0666 null
pascal@0 206 chmod 0622 console
pascal@0 207 chmod 0666 tty*
pascal@0 208 status
pascal@0 209
pascal@0 210 # Script end.
paul@61 211 echo -n "All devices are built..."
pascal@0 212 status
pascal@0 213