亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频

? 歡迎來到蟲蟲下載站! | ?? 資源下載 ?? 資源專輯 ?? 關于我們
? 蟲蟲下載站

?? readme

?? 優龍2410linux2.6.8內核源代碼
??
?? 第 1 頁 / 共 5 頁
字號:
Current pseudo-tty (pty) devices are owned by root and read-writableby everyone. The user of a pty-pair cannot changeownership/protections without being suid-root.This could be solved with a secure user-space daemon which runs asroot and does the actual creation of pty-pairs. Such a daemon wouldrequire modification to *every* programme that wants to use this newmechanism. It also slows down creation of pty-pairs.An alternative is to create a new open_pty() syscall which does muchthe same thing as the user-space daemon. Once again, this requiresmodifications to pty-handling programmes.The devfs solution allows a device driver to "tag" certain devicefiles so that when an unopened device is opened, the ownerships arechanged to the current euid and egid of the opening process, and theprotections are changed to the default registered by the driver. Whenthe device is closed ownership is set back to root and protections areset back to read-write for everybody. No programme need be changed.The devpts filesystem provides this auto-ownership feature for Unix98ptys. It doesn't support old-style pty devices, nor does it have allthe other features of devfs.Intelligent device managementDevfs implements a simple yet powerful protocol for communication witha device management daemon (devfsd) which runs in user space. It ispossible to send a message (either synchronously or asynchronously) todevfsd on any event, such as registration/unregistration of deviceentries, opening and closing devices, looking up inodes, scanningdirectories and more. This has many possibilities. Some of these arealready implemented. See:http://www.atnf.csiro.au/~rgooch/linux/Device entry registration events can be used by devfsd to changepermissions of newly-created device nodes. This is one mechanism tocontrol device permissions.Device entry registration/unregistration events can be used to runprogrammes or scripts. This can be used to provide automatic mountingof filesystems when a new block device media is inserted into thedrive.Asynchronous device open and close events can be used to implementclever permissions management. For example, the default permissions on/dev/dsp do not allow everybody to read from the device. This issensible, as you don't want some remote user recording what you say atyour console. However, the console user is also prevented fromrecording. This behaviour is not desirable. With asynchronous deviceopen and close events, you can have devfsd run a programme or scriptwhen console devices are opened to change the ownerships for *other*device nodes (such as /dev/dsp). On closure, you can run a differentscript to restore permissions. An advantage of this scheme overmodifying the C library tty handling is that this works even if yourprogramme crashes (how many times have you seen the utmp database withlingering entries for non-existent logins?).Synchronous device open events can be used to perform intelligentdevice access protections. Before the device driver open() method iscalled, the daemon must first validate the open attempt, by running anexternal programme or script. This is far more flexible than accesscontrol lists, as access can be determined on the basis of othersystem conditions instead of just the UID and GID.Inode lookup events can be used to authenticate module autoloadrequests. Instead of using kmod directly, the event is sent todevfsd which can implement an arbitrary authentication before loadingthe module itself.Inode lookup events can also be used to construct arbitrarynamespaces, without having to resort to populating devfs with symlinksto devices that don't exist.Speculative Device ScanningConsider an application (like cdparanoia) that wants to find allCD-ROM devices on the system (SCSI, IDE and other types), whether ornot their respective modules are loaded. The application mustspeculatively open certain device nodes (such as /dev/sr0 for the SCSICD-ROMs) in order to make sure the module is loaded. This requiresthat all Linux distributions follow the standard device naming scheme(last time I looked RedHat did things differently). Devfs solves thenaming problem.The same application also wants to see which devices are actuallyavailable on the system. With the existing system it needs to read the/dev directory and speculatively open each /dev/sr* device todetermine if the device exists or not. With a large /dev this is aninefficient operation, especially if there are many /dev/sr* nodes. Asolution like scsidev could reduce the number of /dev/sr* entries (butof course that also requires all that inefficient directory scanning).With devfs, the application can open the /dev/sr directory(which triggers the module autoloading if required), and proceed toread /dev/sr. Since only the available devices will haveentries, there are no inefficencies in directory scanning or deviceopenings.-----------------------------------------------------------------------------Who else does it?FreeBSD has a devfs implementation. Solaris and AIX each have apseudo-devfs (something akin to scsidev but for all devices, with someunspecified kernel support). BeOS, Plan9 and QNX also have it. SGI'sIRIX 6.4 and above also have a device filesystem.While we shouldn't just automatically do something because others doit, we should not ignore the work of others either. FreeBSD has a lotof competent people working on it, so their opinion should not beblithely ignored.-----------------------------------------------------------------------------How it worksRegistering device entriesFor every entry (device node) in a devfs-based /dev a driver must calldevfs_register(). This adds the name of the device entry, thefile_operations structure pointer and a few other things to aninternal table. Device entries may be added and removed at anytime. When a device entry is registered, it automagically appears inany mounted devfs'.Inode lookupWhen a lookup operation on an entry is performed and if there is nodriver information for that entry devfs will attempt to calldevfsd. If still no driver information can be found then a negativedentry is yielded and the next stage operation will be called by theVFS (such as create() or mknod() inode methods). If driver informationcan be found, an inode is created (if one does not exist already) andall is well.Manually creating device nodesThe mknod() method allows you to create an ordinary named pipe in thedevfs, or you can create a character or block special inode if onedoes not already exist. You may wish to create a character or blockspecial inode so that you can set permissions and ownership. Later, ifa device driver registers an entry with the same name, thepermissions, ownership and times are retained. This is how you can setthe protections on a device even before the driver is loaded. Once youcreate an inode it appears in the directory listing.Unregistering device entriesA device driver calls devfs_unregister() to unregister an entry.Chroot() gaols2.2.x kernelsThe semantics of inode creation are different when devfs is mountedwith the "explicit" option. Now, when a device entry is registered, itwill not appear until you use mknod() to create the device. It doesn'tmatter if you mknod() before or after the device is registered withdevfs_register(). The purpose of this behaviour is to supportchroot(2) gaols, where you want to mount a minimal devfs inside thegaol. Only the devices you specifically want to be available (throughyour mknod() setup) will be accessible.2.4.x kernelsAs of kernel 2.3.99, the VFS has had the ability to rebind parts ofthe global filesystem namespace into another part of the namespace.This now works even at the leaf-node level, which means thatindividual files and device nodes may be bound into other parts of thenamespace. This is like making links, but better, because it worksacross filesystems (unlike hard links) and works through chroot()gaols (unlike symbolic links).Because of these improvements to the VFS, the multi-mount capabilityin devfs is no longer needed. The administrator may create a minimaldevice tree inside a chroot(2) gaol by using VFS bindings. As thisprovides most of the features of the devfs multi-mount capability, Iremoved the multi-mount support code (after issuing an RFC). Thisyielded code size reductions and simplifications.If you want to construct a minimal chroot() gaol, the followingcommand should suffice:mount --bind /dev/null /gaol/dev/nullRepeat for other device nodes you want to expose. Simple!-----------------------------------------------------------------------------Operational issuesInstructions for the impatientNobody likes reading documentation. People just want to get in thereand play. So this section tells you quickly the steps you need to taketo run with devfs mounted over /dev. Skip these steps and you will endup with a nearly unbootable system. Subsequent sections describe theissues in more detail, and discuss non-essential configurationoptions.DevfsdOK, if you're reading this, I assume you want to play withdevfs. First you should ensure that /usr/src/linux contains arecent kernel source tree. Then you need to compile devfsd, the devicemanagement daemon, available athttp://www.atnf.csiro.au/~rgooch/linux/.Because the kernel has a naming schemewhich is quite different from the old naming scheme, you need toinstall devfsd so that software and configuration files that use theold naming scheme will not break.Compile and install devfsd. You will be provided with a defaultconfiguration file /etc/devfsd.conf which will providecompatibility symlinks for the old naming scheme. Don't change thisconfig file unless you know what you're doing. Even if you think youdo know what you're doing, don't change it until you've followed allthe steps below and booted a devfs-enabled system and verified that itworks.Now edit your main system boot script so that devfsd is started at thevery beginning (before any filesystemchecks). /etc/rc.d/rc.sysinit is often the main boot scripton systems with SysV-style boot scripts. On systems with BSD-styleboot scripts it is often /etc/rc. Also check/sbin/rc.NOTE that the line you put into the bootscript should be exactly:/sbin/devfsd /devDO NOT use some special daemon-launchingprogramme, otherwise the boot script may not wait for devfsd to finishinitialising.System LibrariesThere may still be some problems because of broken software makingassumptions about device names. In particular, some software does nothandle devices which are symbolic links. If you are running a libc 5based system, install libc 5.4.44 (if you have libc 5.4.46, go back tolibc 5.4.44, which is actually correct). If you are running a glibcbased system, make sure you have glibc 2.1.3 or later./etc/securettyPAM (Pluggable Authentication Modules) is supposed to be a flexiblemechanism for providing better user authentication and access toservices. Unfortunately, it's also fragile, complex and undocumented(check out RedHat 6.1, and probably other distributions as well). PAMhas problems with symbolic links. Append the following lines to your/etc/securetty file:vc/1vc/2vc/3vc/4vc/5vc/6vc/7vc/8This will not weaken security. If you have a version of util-linuxearlier than 2.10.h, please upgrade to 2.10.h or later. If youabsolutely cannot upgrade, then also append the following lines toyour /etc/securetty file:12345678This may potentially weaken security by allowing root logins over thenetwork (a password is still required, though). However, since thereare problems with dealing with symlinks, I'm suspicious of the levelof security offered in any case.XFree86While not essential, it's probably a good idea to upgrade to XFree864.0, as patches went in to make it more devfs-friendly. If you don't,you'll probably need to apply the following patch to/etc/security/console.perms so that ordinary users can runstartx. Note that not all distributions have this file (e.g. Debian),so if it's not present, don't worry about it.--- /etc/security/console.perms.orig    Sat Apr 17 16:26:47 1999 +++ /etc/security/console.perms Fri Feb 25 23:53:55 2000 @@ -14,7 +14,7 @@  # man 5 console.perms  # file classes -- these are regular expressions -<console>=tty[0-9][0-9]* :[0-9]\.[0-9] :[0-9] +<console>=tty[0-9][0-9]* vc/[0-9][0-9]* :[0-9]\.[0-9] :[0-9]  # device classes -- these are shell-style globs  <floppy>=/dev/fd[0-1]* If the patch does not apply, then change the line:<console>=tty[0-9][0-9]* :[0-9]\.[0-9] :[0-9]with:<console>=tty[0-9][0-9]* vc/[0-9][0-9]* :[0-9]\.[0-9] :[0-9]Disable devptsI've had a report of devpts mounted on /dev/pts not workingcorrectly. Since devfs will also manage /dev/pts, there is noneed to mount devpts as well. You should either edit your/etc/fstab so devpts is not mounted, or disable devpts fromyour kernel configuration.Unsupported driversNot all drivers have devfs support. If you depend on one of thesedrivers, you will need to create a script or tarfile that you can useat boot time to create device nodes as appropriate. There is asection which describes this. Anothersection lists the drivers which havedevfs support./dev/mouseMany disributions configure /dev/mouse to be the mouse devicefor XFree86 and GPM. I actually think this is a bad idea, because itadds another level of indirection. When looking at a config file, ifyou see /dev/mouse you're left wondering which mouseis being referred to. Hence I recommend putting the actual mousedevice (for example /dev/psaux) into your/etc/X11/XF86Config file (and similarly for the GPMconfiguration file).Alternatively, use the same technique used for unsupported driversdescribed above.The KernelFinally, you need to make sure devfs is compiled into your kernel. SetCONFIG_EXPERIMENTAL=y, CONFIG_DEVFS_FS=y and CONFIG_DEVFS_MOUNT=y byusing favourite configuration tool (i.e. make config ormake xconfig) and then make clean and then recompile your kernel and modules. At boot, devfs will be mounted onto /dev.If you encounter problems booting (for example if you forgot aconfiguration step), you can pass devfs=nomount at the kernelboot command line. This will prevent the kernel from mounting devfs atboot time onto /dev.In general, a kernel built with CONFIG_DEVFS_FS=y but without mountingdevfs onto /dev is completely safe, and requires noconfiguration changes. One exception to take note of is whenLABEL= directives are used in /etc/fstab. In thiscase you will be unable to boot properly. This is because themount(8) programme uses /proc/partitions as part ofthe volume label search process, and the device names it finds are notavailable, because setting CONFIG_DEVFS_FS=y changes the names in

?? 快捷鍵說明

復制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號 Ctrl + =
減小字號 Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
午夜精品免费在线观看| 不卡的av电影在线观看| 国产成人高清在线| 欧美群妇大交群中文字幕| 欧美激情在线一区二区| 日本中文字幕一区二区视频| 日本精品免费观看高清观看| 亚洲国产高清在线观看视频| 美腿丝袜在线亚洲一区| 欧美日韩大陆一区二区| 亚洲三级在线免费观看| 国产乱码精品一区二区三区五月婷| 色狠狠色狠狠综合| 中文字幕一区二区三区精华液 | 欧美日韩免费视频| **性色生活片久久毛片| 成人午夜视频免费看| 精品国产免费一区二区三区四区| 五月婷婷欧美视频| 欧美午夜视频网站| 亚洲高清中文字幕| 51精品久久久久久久蜜臀| 一区二区三区国产精华| 色综合天天综合| 国产精品二三区| 91亚洲资源网| 伊人一区二区三区| 欧美三级电影在线观看| 午夜久久电影网| 欧美日韩精品一区二区| 午夜精品福利一区二区蜜股av| 色哟哟国产精品| 亚洲一区二区三区小说| 欧美日韩一区二区在线观看| 五月激情丁香一区二区三区| 欧美精品乱码久久久久久按摩| 日韩精品国产精品| 精品欧美一区二区在线观看| 国产乱人伦精品一区二区在线观看| 26uuu色噜噜精品一区| 国产成人免费9x9x人网站视频| 久久久久九九视频| 91在线观看一区二区| 亚洲综合成人在线| 日韩一二在线观看| 国产精品一区二区三区乱码| 国产精品福利一区| 欧美视频在线播放| 免费成人在线视频观看| 国产亚洲欧洲997久久综合| 国产九九视频一区二区三区| 国产精品伦一区| 欧美日韩一级二级| 久久精品国产99国产| 久久综合色一综合色88| 99精品国产一区二区三区不卡| 亚洲与欧洲av电影| 日韩欧美的一区| va亚洲va日韩不卡在线观看| 亚洲一区二区三区四区五区中文| 欧美精品在线视频| 国产成人综合精品三级| 亚洲蜜桃精久久久久久久| 777午夜精品免费视频| 国产成人精品亚洲午夜麻豆| 亚洲一区二区不卡免费| 久久先锋影音av鲁色资源| 97se亚洲国产综合自在线观| 日韩电影一二三区| 一区免费观看视频| 欧美成人乱码一区二区三区| 91在线视频观看| 韩国成人精品a∨在线观看| 樱桃国产成人精品视频| 久久女同精品一区二区| 欧美视频一区二| 国产成人99久久亚洲综合精品| 亚洲伊人色欲综合网| 国产女主播一区| 日韩精品一区二区三区中文精品 | 欧美性极品少妇| 丁香啪啪综合成人亚洲小说| 日韩和欧美的一区| 亚洲免费在线电影| 日本一区二区在线不卡| 日韩一区二区免费在线观看| 色综合久久久久综合| 国产一区二区日韩精品| 日本不卡一二三| 亚洲在线中文字幕| 亚洲日本护士毛茸茸| 国产婷婷精品av在线| 日韩精品中文字幕一区二区三区| 色94色欧美sute亚洲线路一久| 国产剧情在线观看一区二区| 美女尤物国产一区| 性欧美大战久久久久久久久| 自拍偷自拍亚洲精品播放| 2023国产一二三区日本精品2022| 在线成人av网站| 91精彩视频在线观看| 99九九99九九九视频精品| 国产宾馆实践打屁股91| 国产麻豆视频一区| 国产激情视频一区二区三区欧美| 久久se这里有精品| 日本伊人午夜精品| 日本亚洲三级在线| 六月婷婷色综合| 久久er精品视频| 精品亚洲porn| 国产一区视频在线看| 国产一区二区三区免费播放| 六月婷婷色综合| 国产一区啦啦啦在线观看| 激情小说亚洲一区| 色婷婷av一区二区三区gif| 91麻豆国产精品久久| 色综合天天综合在线视频| 91欧美一区二区| 欧美性大战xxxxx久久久| 欧美日韩国产影片| 欧美xxxxx裸体时装秀| 久久精品人人爽人人爽| 国产精品污污网站在线观看| 国产精品久久久久久久久搜平片| 亚洲欧美经典视频| 午夜精品aaa| 国产酒店精品激情| 91亚洲大成网污www| 欧美色区777第一页| 日韩亚洲欧美一区二区三区| 欧美一区二区三区影视| 精品日韩在线观看| 国产精品久久久久久久久久久免费看 | 一区二区三区高清不卡| 午夜精品福利视频网站| 国产一区福利在线| 色噜噜狠狠成人中文综合| 4hu四虎永久在线影院成人| 久久久99免费| 亚洲一区二区在线播放相泽 | 亚洲午夜久久久久久久久电影院| 亚洲在线视频网站| 久久国产人妖系列| 91一区在线观看| 日韩一区二区三区免费看| 国产精品网友自拍| 性做久久久久久免费观看欧美| 国产综合久久久久久久久久久久| 波多野结衣一区二区三区| 欧美美女激情18p| 中文字幕不卡在线| 婷婷综合五月天| 国产99久久久国产精品潘金网站| 在线观看不卡一区| 久久精品亚洲精品国产欧美| 亚洲综合免费观看高清在线观看| 国精产品一区一区三区mba视频| 色呦呦一区二区三区| 精品欧美久久久| 亚洲国产欧美在线| www.欧美色图| 精品久久一区二区| 亚洲成人激情av| 91麻豆成人久久精品二区三区| 精品成人在线观看| 亚洲超碰精品一区二区| 99综合电影在线视频| 精品福利一区二区三区免费视频| 一区二区三区在线观看网站| 国产一区二区三区不卡在线观看| 欧美情侣在线播放| 有码一区二区三区| av亚洲精华国产精华| 久久这里只有精品首页| 日韩精品五月天| 欧美日韩亚洲综合一区二区三区| 国产精品国产三级国产aⅴ原创| 久久精品国产999大香线蕉| 欧美日韩中文精品| 亚洲视频一区二区在线观看| 国产.精品.日韩.另类.中文.在线.播放 | 亚洲成人777| 在线观看日韩电影| 亚洲激情中文1区| 99re这里都是精品| 国产精品久久久久aaaa| 国产成人在线观看免费网站| 亚洲国产人成综合网站| 在线观看日韩国产| 一区二区三区日韩精品视频| 99久久99久久精品免费观看| 国产精品九色蝌蚪自拍| www.亚洲色图.com| 亚洲欧美怡红院| 一本色道a无线码一区v| 一区二区在线看| 欧美日韩在线播放一区| 亚洲成人高清在线|