Under FreeBSD, data on conventional hard disks is stored in the UNIX File System or UFS format. CD-ROMs and CD-Rs use a different file system, the ISO 9660 format, which is compatible with other systems. This is not a problem when you mount a CD-ROM: FreeBSD includes a read-only
The first step is to create the ISO 9660 file system image, frequently simply called an ISO image. There are a number of ports available in the Ports Collection; here we'll look at mkisofs, which is part of the cdrtools port. Installation isn't quite as straightforward as you might expect: you need a special fag to install mkisofs:
# cd /usr/ports/sysutils/cdrtools # make install -DMKISOFS
mkisofs has a bewildering number of parameters. Here are the important ones:
-A option specifies the application ID, a text string written to the header of the file system to describe the "application" on the image. It can be up to 128 characters long.-b if you want to be able to boot from the CD, such as a FreeBSD -f option tells mkisofs to follow -J option makes the CD compatible with Microsoft's Joliet format. You don't need it for FreeBSD, but it doesn't cost much, so it's a good idea to include it if there's a chance the CD will be used in a Microsoft environment.-o option to specify the name of the resultant ISO image. This image is the size of the resultant CD, so it could be up to 700 MB.-p option specifies the preparer ID, another -r option specifies the Rock Ridge Extensions that are used to store UNIX file names. It makes a number of –T option tells mkisofs to include a translation file TRANS.TBL in each directory for use by systems that don't support the .) and up to three more characters). The names bear a slight resemblance to the original names.-table-name option, which implies -T. For example, if you write -table-name.MAP you will generate names that won't show up with a normal ls command.-V option specifies the volume ID for the file system. This will normally be more specific than the application ID; for example, each CD in a set of This is a lot of stuff to type in every time. It's easier to write a Make file and use make:
APPLID = "Dummy application "
BOOT =
#To make it bootable, put in something like this:
#Note that the -b option is there as well
#BOOT = "-b floppies/boot.flp "
ISO = /var/tmp/isoimage
PREPARER = "me "
VOLID = "Volume 0000 "
DIR = .
cdrom:
mkisofs -A ${APPLID} ${BOOT} -J -o ${ISO} -f \
-p ${PREPARER} -r -T -V ${VOLID} ${DIR}
For example, to make a
# make cdrom DIR=/home/release/R/cdrom/disc1 mkisofs -A "Dummy application " -J -o ../iso -table-name .MAP -p "Greg Lehey " -r –T -V "Volume 000" 6.40% done, estimate finish Sun Aug 27 13:34:54 2000 12.79% done, estimate finish Sun Aug 27 13:35:02 2000 19.19% done, estimate finish Sun Aug 27 13:35:05 2000 25.57% done, estimate finish Sun Aug 27 13:35:10 2000 31.97% done, estimate finish Sun Aug 27 13:35:10 2000 38.36% done, estimate finish Sun Aug 27 13:35:10 2000 44.75% done, estimate finish Sun Aug 27 13:35:10 2000 51.15% done, estimate finish Sun Aug 27 13:35:12 2000 57.54% done, estimate finish Sun Aug 27 13:35:12 2000 63.94% done, estimate finish Sun Aug 27 13:35:12 2000 70.34% done, estimate finish Sun Aug 27 13:35:11 2000 76.72% done, estimate finish Sun Aug 27 13:35:13 2000 83.12% done, estimate finish Sun Aug 27 13:35:12 2000 89.52% done, estimate finish Sun Aug 27 13:35:13 2000 95.90% done, estimate finish Sun Aug 27 13:35:13 2000 Total translation table size: 35119 Total rockridge attributes bytes: 59724 Total directory bytes: 104448 Path table size(bytes): 256 Max brk space used 86224 78211 extents written (152 Mb)
The progress reports are rather boring nowadays, considering that the whole process only takes a couple of minutes, but the summary information at the bottom can be of interest.
So now you have an ISO image. How do you know it's correct? It's just a single file, and it could have just about anything on it. You can burn a CD, of course, but if it's
The md driver creates a number of different kinds of pseudo-device. See the man page md (4) for more details. We use the vnode device, a special file that refers to file mdconfig:
# kldload md load the kld module if necessary kldload: can't load md: File exists already loaded or in the kernel # mdconfig -a -t vnode -f iso-image configure the device md0 this is the name assigned # mount -t cd9660 /dev/md0 /mnt mount it
After this, you will be able to access the image at /mnt as a normal file system. Don't forget to un mount and un configure the file when you're finished:
# umount /mnt # mdconfig -d -u 0
Older releases of FreeBSD used the vn driver, which used different syntax.
Once you have created and tested an ISO image, you can copy it to CD-R. For SCSI burners, you use cdrecord; ATA (IDE) CD-R burners you use burncd. In the following sections we'll look at both programs.
To burn a CD-R in an ATA (or IDE) burner, use burncd, which is part of the base system. Typically you'll only have one CD-R burner on the system, so it will be called /dev/acd0. You'll have something like this in your dmesg output:
acd0: CD-RW <RWD RW4224> at atal-slave BIOSPIO
burncd has both fags and commands. For our purposes, the most important fags are:
-f device option specifies the device to use for the burning process.-m option tells burncd to close the disk in multi session mode.-q option tells burncd to be quiet and not to print -s speed option specifies the speed of the burner device. It defaults to 1, so you'll save a lot of time using this.-t option specifies a test write: burncd does not actually write on the medium.-v (verbose) option prints a few extra The most important commands for writing
data or model write data tracks, also known as model tracks, for the image files named on the command line.fixate fixates the medium by generating the table of contents. This should be the last command to burncd.If burncd doesn't raw. If you have an ISO file called raw, you‘ll have to rename it before you can burn it with burncd.
Before you start, you should decide on the recording speed. If your machine is fast enough, use the rated recording speed. In the case of the example machine, that's an 8x speed (i.e. it records at eight times the speed at which a normal
To make sure you don't make coasters, you should do a test run. The system goes through all the motions, but it doesn't actually write anything to the CD-R blank. Nevertheless, it tests all aspects of the burn, so you must have a valid CD-R blank in the drive, otherwise the attempt will fail. To test burn an image called iso, enter:
# burncd -f /dev/acd0c -t -v -s 8 data iso fixate adding type 0x08 file iso size 184576 KB 92288 blocks next writeable LBA 0 addr = 0 size = 189005824 blocks = 92288 writing from file iso size 184576 KB written this track 6880 KB (3%) total 6880 KB
At this point, burncd overwrites the line with progress indications until it is find. Finally, you see:
written this track 184576 KB (100%) total 184576 KB fixating CD, please wait.. burncd: ioctl(CDRIOCFIXATE): Input/output error
This last line appears a little alarming. It's not really serious, though: the CD has not really been written, so it's not possible to read from it. A number of CD-R drives return
If everything was OK in the test run, you can repeat the command without the -t fag:
# burncd -f /dev/acd0c -v -s 8 data iso fixate
The output is identical, but this time you should not get the error message.
If you have a SCSI burner, use cdrecord, which is part of the cdrtools port we installed on page 243. cdrecord has a rather strange habit of not using device names: instead, it accesses the device directly by its SCSI parameters (bus, unit and dmesg output in /var/run/dmesg.boot, but there's an easier way:
# cdrecord -scanbus Cdrecord 1.9 (i386-uriknown-freebsd4.1) Copyright (C) 1995-2000 Jorg Schilling Using libscg version 'schily-0.1' scsibus0: 0,0,0 0) 'MATSHITA' 'CD-R CW-7503 ' '1.06' Removable CD-ROM cdrecord: Warning: controller returns zero sized CD capabilities page, cdrecord: Warning: controller returns wrong size for CD capabilities page, cdrecord: Warning: controller returns wrong page 0 for CD capabilities page (2A). 0,1,0 1) ‘IEAC ' 'CD-ROM CD-532S ' '1.0A' Removable CD-ROM 0,2,0 2) * 0,3,0 3) * 0,4,0 4) 'SONY ' 'SDT-10000 ' '0101' Removable Tape 0,5,0 5) * 0,6,0 6) * 0,7,0 7) * 0,8,0 8) 'QUANTUM ' 'QM318000TD-SW ' 'N491' Disk
This output doesn't tell you exactly which devices are CD-Rs, and it also doesn't look at any except the first SCSI bus. Alternatively, you can use the standard system utility camcontrol:
<MATSHITA CD-R CW-7503 1.06> at scbus0 target 0 lun 0 (pass0,cd0) <TEAC CD-ROM CD-532S 1.0A> at scbus0 target 1 lun 0 (pass1,cd1) <SONY SDT-10000 0101> at scbus0 target 4 lun 0 (sa0,pass2) <QUANTUM QM318000TD-SW N491> at scbus0 target 8 lun 0 (pass3,da0) <EXABYTE EXB-8505SMBANSH2 0793> at scbus1 target 1 lun 0 (sa1,pass4) <Quantum DLT4000 CC1E> at scbus1 target 3 lun 0 (sa2,pass5) <AIWA GD-8000 0119> at scbus1 target 4 lun 0 (sa3,pass6) <NRC MBR-7 110> at scbus1 target 6 lun 0 (pass7,cd2) <NRC MBR-7 110> at scbus1 target 6 lun 1 (pass8,cd3) <NRC MBR-7 110> at scbus1 target 6 lun 2 (pass9,cd4) <NRC MBR-7 110> at scbus1 target 6 lun 3 (pass10,cd5) <NRC MBR-7 110> at scbus1 target 6 lun 4 (pass11,cd6) <NRC MBR-7 110> at scbus1 target 6 lun 5 (pass12,cd7) <NRC MBR-7 110> at scbus1 target 6 lun 6 (pass13,cd8)
Either way, you need to 0,0,0 (bus 0, target 0,
The next thing to look at is the recording speed. If your machine is fast enough, use the rated recording speed. In the case of the example machine, that's an 8x speed (i.e. it records at 8 times the speed at which a normal
To make sure you don't make coasters, you should do a dummy run. The system goes through all the motions, but it doesn't actually write anything to the CD-R blank. Nevertheless, it tests all aspects of the burn, so you must have a valid CD-R blank in the drive, otherwise the attempt will fail. To burn an image called iso, enter:
# cdrecord -dummy -v dev=0,0,0 -speed=8 iso Cdrecord 1.9 (i386-unknown-freebsd5.0) Copyright (C) 1995-2000 Jorg Schilling TOC Type: 1 = CD-ROM scsidev: '0,0,0' scsibus: 0 target: 0 lun: 0 Using libscg version 'schily-0.1' atapi: 0 Device type : Removable CD-ROM Version : 2 Response Format: 2 Capabilities : SYNC LINKED Vendor_info : 'MATSHITA' Identifikation : 'CD-R CW-7503 ' Revision : '1.06' Device seems to be: Generic mmc CD-R. Using generic SCSI-3/mmc CD-R driver (mmc_cdr). Driver flags : SWABAUDIO FIFO size : 4194304 = 4096 KB Track 01: data 152 MB Total size: 175 MB (17:22.84) = 78213 sectors Lout start: 175 MB (17:24/63) = 78213 sectors Current Secsize: 2048 ATIP info from disk: Indicated writing power: 5 Is not unrestricted Is not erasable ATIP start of lead in: -11080 (97:34/20) ATIP start of lead out: 335100 (74:30/00) Disk type: Long strategy type (Cyanine, AZO or similar) Manuf. index: 11 Manufacturer: Mitsubishi Chemical Corporation Blocks total: 335100 Blocks current: 335100 Blocks remaining: 256887 RBlocks total: 342460 RBlocks current: 342460 RBlocks remaining: 264247 Starting to write CD/DVD at speed 8 in dummy mode for single session. Last chance to quit, starting dummy write in 1 seconds. Waiting for reader process to fill input buffer ... input buffer ready. Starting new track at sector: 0 Track 01: 0 of 152 MB written (fifo 100%).
At this point, cdrecord overwrites the last line with progress indications until it is finished. If you're watching, keep an eye on the fifo information at the end of the line. This gives you an idea how well the system is keeping up with the burner. If the utilization drops to 0, you will get an
Finally, you see:
Track 01: 152 of 152 MB written (fifo 100%). Track 01: Total bytes read/written: 160176128/160176128 (78211 sectors). Writing time: 136.918s Fixating... WARNING: Some drives don't like fixation in dummy mode. Fixating time: 35.963s cdrecord: fifo had 2523 puts and 2523 gets. cdrecord: fifo was 0 times empty and 2451 times full, min fill was 96%.
The summary information at the end shows that at some point the fifo dropped below 100% full, but this is far from being a problem. If, on the other hand, there was a lot of disk activity at the same time, you might find the fifo level dropping much lower.
When you're sure that you won't have any problems, you can do the real thing: just repeat the command without the -dummy option. The output looks almost identical.
Frequently you'll want to make a verbatim copy of another CD. There are copyright
CD-ROMs are already in ISO format, of course, so to get a file /iso, as in the examples above, you could just perform a literal copy with dd:
# dd if=/dev/cd0c of=iso bs=128k
The bs=128k tells dd to copy in blocks of 128 kB. It's not strictly necessary, but if you omit it, it will perform a separate transfer for every sector, and on a slow machine it can be much less efficient.
There's an even easier way, though, if you have two
# burncd -f /dev/acd0c -t -v -s 8 data /dev/cd1c fixate
In this example, the -f option indicates that /dev/acd0c is the (IDE) CD-R burner. /dev/cd1c is the (SCSI) CD-ROM drive with the original CD-ROM. You don't need to mount /dev/cd1c, since it's being accessed as
When you're sure this will work, remove the -t tag and repeat. For SCSI, enter
# cdrecord -dummy -v dev=0,0,0 -speed=8 /dev/cd1c
When it completes satisfactorily, remove the -dummy and repeat.
Для получения официальных документов о завершении программы дополнительного профессионального образования (удостоверения о повышении квалификации, дипломов о профессиональной переподготовке и MBA) необходимо предоставить:
Внимание! Вы можете не заказывать доставку бумажной версии официального документы, а скачать его в электронном виде и распечатать самостоятельно. Информация о выданном документе в течение 1 месяца загружается в Федеральную информационную систему «Федеральный реестр сведений о документах об образовании и (или) о квалификации, документах об обучении» - ФИС ФРДО.
Доступ на новый сайт осуществляется с использованием адреса электронной почты, который был указан вами при регистрации на "старом". Мы постарались перенести все ваши данные с прежнего ресурса, однако не исключена вероятность потери части информации.
При возникновении проблемы со входом, воспользуйтесь функцией сброса пароля
Если вы обнаружите несоответствия, пожалуйста, сообщите нам.