From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Date: Tue, 1 Oct 2002 14:33:00 +0400 (MSD) From: Vitaly Lugovsky To: Subject: Re: [Comm] =?KOI8-R?Q?=EB=C1=CB_=D7_=D0=D2=CF=C7=D2=C1=CD=CD?= =?KOI8-R?Q?=C5_=CE=C1_=F3=C9_=D0=D2=CF=D7=C5=D2=C9=D4=D8_=CE=C1=CC?= =?KOI8-R?Q?=C9=DE=C9=C5_=3D=3FKOI8-R=3FQ=3F=5F=3DD3=3DC9=3DC4=3DC0=3 In-Reply-To: <3D9977FE.6080408@rodtext.indi.ru> Message-ID: MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=koi8-r Content-Transfer-Encoding: 8BIT Sender: community-admin@altlinux.ru Errors-To: community-admin@altlinux.ru X-BeenThere: community@altlinux.ru X-Mailman-Version: 2.0.13 Precedence: bulk Reply-To: community@altlinux.ru List-Unsubscribe: , List-Id: List-Post: List-Help: List-Subscribe: , List-Archive: Archived-At: List-Archive: List-Post: On Tue, 1 Oct 2002, Андрей Великоредчанин wrote: > >>Как в программе на Си проверить наличие сидюка в дисководе? Что-то нигде > >>ничего не нашел по этому поводу. :( > > > > 1) НА ФИГА?!? > > 2) Глупо, непортабельно, отвратительно, требует рутовых прав - заюзать > >ioctl навроде CDROM_DISC_STATUS или около того (см. cdrom.h за > >подробностями). > > > Мне это нужна для программки, кторая будет запускаться на initrd > загрузочного сидюка. Так что с правами и портабельностью все нормально. Тогда Ok. Но ведь если она запустилась, то сидюк точно в сидюководе... А вот где сам сидюковод - ещё выяснять надо. > А можно поподробнее на счет ioctl? То есть? Все подробности - в cdrom.h (обычно в /usr/include/linux/). DISC_STATUS я так просто предложил, может, проще окажется попользовать MEDIA_CHANGED (не помню точно, в каких случаях оно выставляется) или DRIVE_STATUS. Как дёргать за сами ioctl-и написано в man ioctl. Как узнать, на каком вообще block device сидюковод висит - не знаю.