① linux使用技巧与故障排除速查手册的目录
第1篇Linux使用技巧篇
第1章Linux的基本使用知识
1.1系统安装
1.1.1技巧001如何安装Fedora7系统
1.1.2技巧002安装后如何设置Fedora7
1.2Linux图形操作界面
1.2.1技巧003认识XWindow
1.2.2技巧004详解xorg.conf配置文件
1.2.3技巧005如何使用GNOME和KDE桌面
1.3字符界面操作基础
1.3.1技巧006如何进行图形界面和字符界面的切换
1.3.2技巧007如何使用vim文本编辑器
1.4Linux系统常用命令
1.4.1技巧008何为终端窗口
1.4.2技巧009如何进行信息显示
1.4.3技巧010如何备份文件
1.4.4技巧011如何进行系统管理
1.4.5技巧012如何进行网络管理
第2章Linux基本操作技巧
2.1XWindow基本操作
2.1.1技巧013桌面环境基本操作技巧
2.1.2技巧014搜索文件技巧
2.1.3技巧015打开文件与运行程序技巧
2.1.4技巧016查看磁盘分区技巧
2.1.5技巧017挂载Windows分区技巧
2.1.6技巧018开机自动挂载Windows分区技巧
2.2玩转桌面
2.2.1技巧019关于XGL3D桌面的使用技巧
2.2.2技巧020虚拟桌面设置技巧
2.2.3技巧021使用应用程序菜单和桌面菜单技巧
2.2.4技巧022面板添加小程序技巧
2.2.5技巧023添加面板技巧
2.2.6技巧024桌面添加应用程序启动器技巧
2.2.7技巧025面板添加抽屉技巧
2.2.8技巧026启动自动登录及登录画面设置技巧
2.2.9技巧027设置GRUB技巧
2.3文字环境的操作
2.3.1技巧028进入文本操作技巧
2.3.2技巧029登录技巧
2.3.3技巧030注销关机技巧
2.3.4技巧031创建和删除目录技巧
2.3.5技巧032改变工作目录和显示目录内容技巧
2.3.6技巧033链接文件技巧
2.3.7技巧034文件显示技巧
2.3.8技巧035匹配、排序技巧
2.3.9技巧036比较文件内容技巧
2.3.10技巧037复制、删除和移动文件技巧
2.3.11技巧038加载光盘和软盘技巧
2.3.12技巧039打包、压缩与解压缩的技巧
第3章Linux常用软件使用技巧
3.1浏览器软件使用技巧
3.1.1技巧040指定默认下载文件夹
3.1.2技巧041让临时文件搬家
3.1.3技巧042滚动速度自由指定
3.1.4技巧043自由定制工具栏
3.1.5技巧044关闭标签时请勿警告
3.1.6技巧045网页文字大小随意调
3.1.7技巧046主页个数随你定
3.1.8技巧047备份收藏的网页
3.1.9技巧048教你如何玩提速
3.1.10技巧049在Konqueror中用axel下载
3.2Kmail邮件客户端软件使用技巧
3.2.1技巧050如何在Kmail中添加签名档
3.2.2技巧051如何在Kmail中配置邮件收发
3.2.3技巧052Kmail配置的其他注意事项
3.3命令行下载工具使用技巧
3.3.1技巧053Wget软件使用技巧
3.3.2技巧054Prozilla软件使用技巧
3.3.3技巧055Axel软件使用技巧
3.3.4技巧056MyGet软件使用技巧
3.3.5技巧057Curl软件使用技巧
3.4Linux下聊天软件使用技巧
3.4.1技巧058Pidgin软件使用技巧
3.4.2技巧059Linux系统下QQ的使用技巧
3.5文本编辑软件使用技巧
3.5.1技巧060打开Vim文本编辑器的技巧
3.5.2技巧061Vim文本编辑器在编辑模式下的使用技巧
3.5.3技巧062Vim文本编辑器在插入模式下的使用技巧
3.5.4技巧063Vim文本编辑器在命令模式下的使用技巧
3.5.5技巧064设置Vim文本编辑器的运行环境
3.5.6技巧065Emacs文本编辑器的启动技巧
3.5.7技巧066Emacs文本编辑器中移动光标的技巧
3.5.8技巧067Emacs文本编辑器中插入与删除的技巧
3.5.9技巧068Emacs文本编辑器中恢复与撤销技巧
3.5.10技巧069Emacs文本编辑器对文件的操作技巧
3.5.11技巧070Emacs文本编辑器的缓冲区操作技巧
3.5.12技巧071Emacs文本编辑器搜索字符和字符串的技巧
3.5.13技巧072Emacs文本编辑器的多窗口操作技巧
3.5.14技巧073gedit文本编辑软件的打开技巧
3.5.15技巧074gedit文本编辑软件的使用技巧
3.6Office软件的使用技巧
3.6.1技巧075打开OpenOffice.org的技巧
3.6.2技巧076OpenOffice.org的打开与保存文件的技巧
3.6.3技巧077OpenOffice.orgWriter的“剪切”、“粘贴”和“复制”技巧
3.6.4技巧078OpenOffice.orgWriter的“替换和查找”技巧
3.6.5技巧079OpenOffice.orgWriter中添加工具条的技巧
3.6.6技巧080使用OpenOffice.orgWriter编辑文本的插入技巧
3.6.7技巧081OpenOffice.orgWriter中对表格的编辑技巧
3.6.8技巧082在OpenOffice.orgWriter中使用快捷键的技巧
3.6.9技巧083OpenOffice.orgCalc中插入和重命名工作表的技巧
3.6.10技巧084OpenOffice.orgCalc中进行数据编辑的技巧
3.6.11技巧085OpenOffice.orgImpress操作界面的区域划分
3.6.12技巧086OpenOffice.orgImpress的创建与保存技巧
3.6.13技巧087OpenOffice.orgImpress编辑幻灯片的技巧
3.6.14技巧088OpenOffice.orgImpress中快捷键的使用技巧
3.7应用软件技巧
3.7.1技巧089如何安装图形管理软件Picasa
3.7.2技巧090Picasa的图片浏览技巧
3.7.3技巧091Picasa中星标的妙用
3.7.4技巧092如何使Picasa找到.avi等格式的视频文件
3.7.5技巧093利用Picasa轻松制作相片拼贴效果
3.8多种视听娱乐软件的使用技巧
3.8.1技巧094如何安装MPlayer
3.8.2技巧095巧妙添写MPlayer的配置文件
3.8.3技巧096MPlayer使用技巧简介
3.8.4技巧097如何安装RealPlayer
3.8.5技巧098RealPlayer10针对低配置机器的优化措施
3.8.6技巧099如何安装音频软件Amarok
3.8.7技巧100Amarok的快捷键技巧
3.8.8技巧101修正Amarok歌曲信息中的乱码
3.9在Linux上玩Windows
3.9.1技巧102如何安装Wine
3.9.2技巧103Linux系统下运行WarcraftⅢ
第4章Linux系统管理技巧
4.1账号与磁盘空间管理技巧
4.1.1技巧104如何创建账号
4.1.2技巧105如何停用账号
4.1.3技巧106如何删除账号
4.1.4技巧107如何创建组群
4.1.5技巧108账号切换
4.1.6技巧109普通账号执行root权限
4.1.7技巧110账号查询
4.1.8技巧111教你进行用户空间管理(quota)
4.2文件系统和权限设置技巧
4.2.1技巧112详解文件系统的结构
4.2.2技巧113如何查看目录、文件的使用权限
4.2.3技巧114如何修改目录、文件的使用权限
4.2.4技巧115特殊权限设置
4.2.5技巧116如何应用硬链接和符号链接
4.3系统信息查看技巧
4.3.1技巧117如何查看登录的用户
4.3.2技巧118如何管理执行中的程序
4.3.3技巧119如何修改进程的优先级
4.4用户环境设置技巧
4.4.1技巧120巧解shell的各种功能
4.4.2技巧121shell下的特殊字符
4.4.3技巧122如何设置shell环境变量
第5章Linux系统升级和安全配置技巧
5.1Linux系统升级技巧
5.1.1技巧123进行准备工作
5.1.2技巧124如何设置内核
5.1.3技巧125如何编译内核
5.1.4技巧126如何安装内核
5.1.5技巧127如何修补内核
5.2Linux系统安全设置技巧
5.2.1技巧128如何进行BIOS安全设置229
5.2.2技巧129如何进行GRUB安全设置
5.2.3技巧130账号安全设置技巧
5.2.4技巧131重要文件的安全设置技巧
5.3Linux系统服务安全保障技巧
5.3.1技巧132如何保障系统开启服务的安全
5.3.2技巧133系统端口安全配置技巧
5.3.3技巧134日志文件的安全技巧
5.3.4技巧135如何进行网络安全设置
第6章Linux防火墙配置技巧
6.1iptables命令使用技巧
6.1.1技巧136iptables命令参数
6.1.2技巧137常用处理动作(用参数j指定)
6.1.3技巧138常用封包对比参数
6.2iptables配置技巧
6.2.1技巧139安装iptables
6.2.2技巧140开启和关闭iptables服务
6.2.3技巧141设置静态防火墙
6.2.4技巧142设置FTP服务器防火墙
6.2.5技巧143设置邮件服务器防火墙
6.2.6技巧144使用脚本进行防火墙设置
6.2.7技巧145设置有状态防火墙
6.2.8技巧146如何运行iptables脚本防火墙
6.3iptables访问控制技巧
6.3.1技巧147如何用iptables实现NAT或IP伪装
6.3.2技巧148如何使用iptables实现端口转发
6.3.3技巧149如何使用iptables禁止ping连接
第7章Linux网络配置技巧
7.1DHCP服务器配置与使用技巧
7.1.1技巧150如何安装DHCP服务器
7.1.2技巧151如何配置DHCP服务器
7.1.3技巧152启动和停止DHCP服务器技巧
7.1.4技巧153如何使用denyunknown-clients
7.1.5技巧154小型共享网络中DHCP地址池的设置技巧
7.2DNS服务器配置与使用技巧
7.2.1技巧155如何配置DNS服务器
7.2.2技巧156如何使用图形化工具配置DNS服务器
7.2.3技巧157如何管理配置DNS详细日志
7.2.4技巧158如何配置实现域名服务器的负载均衡
7.2.5技巧159如何配置实现泛域名解析
7.3NFS服务器配置与使用技巧
7.3.1技巧160NFS服务器的配置技巧
7.3.2技巧161NFS服务器的图形化配置技巧
7.3.3技巧162配置NFS客户端技巧
7.3.4技巧163启动和停止NFS服务器技巧
7.3.5技巧164NFS服务器调优技巧
7.3.6技巧165加强NFS服务器安全的技巧
7.4Samba服务器配置与使用技巧
7.4.1技巧166Samba服务器安装启动技巧
7.4.2技巧167Samba配置文件说明
7.4.3技巧168设置一个简单的share等级Server端
7.4.4技巧169用图形化界面配置user等级Server端
7.4.5技巧170利用webmin中的Samba服务器设置共享打印机
7.4.6技巧171查看连接到Samba服务器上的用户
7.5Apache服务器使用技巧
7.5.1技巧172如何安装Apache服务器
7.5.2技巧173如何启动/停止/重新启动Apache服务器
7.5.3技巧174详解Apache服务器配置文件httpd.conf
7.5.4技巧175Apache服务器如何实现用户验证
7.6FTP服务器配置与使用
7.6.1技巧176如何安装、启动vsftpd
7.6.2技巧177详解vsftpd配置文件
7.6.3技巧178如何配置FTP匿名服务器
7.6.4技巧179如何配置真实账号FTP服务器
7.6.5技巧180FTP服务器常用命令
7.6.6技巧181如何配置FTP服务器其他常见功能
7.6.7技巧182FTP服务器日志管理
7.7Mail服务器配置与使用技巧
7.7.1技巧183如何启动sendmail
7.7.2技巧184sendmail的配置技巧
7.7.3技巧185设置主机名称技巧
7.7.4技巧186服务器使用权限的设置技巧
7.7.5技巧187为账号设置别名技巧
7.7.6技巧188使用客户端寄信的技巧
7.7.7技巧189使用客户端收信的技巧
7.7.8技巧190设置检查邮件时间间隔技巧
7.8SSH服务器配置与使用技巧
7.8.1技巧191SSH服务器安装技巧
7.8.2技巧192SSH服务器启动和停止技巧
7.8.3技巧193SSH服务器文件配置说明
7.8.4技巧194用Webmin设置SSH服务器
7.8.5技巧195Linux客户端远程登录SSH服务器
7.8.6技巧196Windows客户端远程登录SSH服务器
7.8.7技巧197使用公钥认证登录
7.9Linux下NAT配置与使用技巧
7.9.1技巧198简述NAT的优缺点
7.9.2技巧199NAT服务器的安装与使用
7.9.3技巧200如何正确使用“-jMASQUERADE”与“-jSNAT”
7.9.4技巧201高负载NAT时的一些优化技巧
7.9.5技巧202如何正确设定NAT同时支持的用户数量
7.10代理服务器Squid配置与使用技巧
7.10.1技巧203安装Squid后如何更改访问控制列表的默认设置
7.10.2技巧204启动Squid后,如何验证Squid是否在工作
7.10.3技巧205如何查看Squid代理的详尽执行信息
7.10.4技巧206如何在Linux中设置Squid的用户认证存取控制
7.10.5技巧207如何限定squid最大连接数
第8章管理工具Webmin使用技巧
8.1Webmin概述
8.1.1Webmin运行原理
8.1.2Webmin相对于其他GUI管理工具的优点
8.2安装Webmin
8.2.1技巧208下载rpm包安装Webmin
8.2.2技巧209下载.tar.gz压缩包安装Webmin
8.3Webmin的管理与配置
8.3.1技巧210顺利启动Webmin
8.3.2技巧211如何进入Webmin
8.3.3技巧212如何修改Webmin的默认端口
8.3.4技巧213如何将Webmin修改为中文环境
8.3.5技巧214Webmin界面功能的简介
8.3.6技巧215如何将Webmin设置为开机自动启动
8.3.7技巧216Webmin密码忘了怎么办
8.3.8技巧217注意Webmin的安全性
8.4Webmin的配置设定
8.4.1技巧218Webmin的活动日志(Log文件)
8.4.2技巧219创建Webmin的新用户
8.4.3技巧220创建Webmin的新工作组
8.4.4技巧221如何安装和删除Webmin模块
第2篇Linux故障排除篇
第9章Linux安装及更新故障排除
9.1Linux启动安装进程故障排除
9.1.1故障001开机启动后GRUB失败
9.1.2故障002使用GRUB引导Windows系统失败
9.1.3故障003使用GRUB引导Linux系统失败
9.1.4故障004使用GRUB引导多系统失败
9.2救援模式
9.2.1故障005无法进入救援模式
9.2.2故障006配置文件丢失
9.3重装Windows后无法进入Linux系统的故障排除
9.3.1故障007无法进入Linux系统
9.3.2故障008MBR损坏无法进入GRUB引导系统
9.3.3故障009无法进入GRUB界面
第10章Linux图形界面支持故障排除
10.1键盘、鼠标故障排除
10.1.1故障010更换键盘后检测不到键盘
10.1.2故障011更换鼠标后检测不到鼠标
10.1.3故障012鼠标左右键功能与平时相反
10.2显示卡驱动配置故障排除
10.2.1故障013无法判断是否安装显示卡驱动程序
10.2.2故障014无法在X下双击安装显示卡驱动程序
10.2.3故障015显示卡驱动程序成功安装仍无法开启桌面效果
10.2.4故障016开启桌面效果后窗口边框消失,终端显示空白
10.2.5故障017更改显示卡驱动程序设置导致无法进入X界面
10.3声卡驱动故障排除
10.3.1故障018播放mp3时没有声音
10.3.2故障019播放时声音效果不好
10.4界面故障排除
10.4.1故障020桌面背景更换程序崩溃
10.4.2故障021分辨率达不到1024×768
10.4.3故障022误更改配置文件xorg.conf导致无法进入X界面
10.4.4故障023刷新率过高、过低引起黑屏、闪烁
第11章Linux软件安装故障排除
11.1软件包安装与管理
11.2安装软件包故障排除
11.2.1故障024在Fedora7系统中安装NS2软件后无法运行
11.2.2故障025FedoraCore6中的添加删除程序无法使用
11.2.3故障026RHEL5Server无法使用system-config-packages
11.2.4故障027安装httpd软件rpm包时提示依赖性错误
11.2.5故障028如何将.src.rpm格式的包编译成.rpm格式
11.2.6故障029rpm包安装之后找不到486
11.2.7故障030安装fcitx-3.0.0-1.i386.rpm包后无法打开输入法
11.2.8故障031RedHatAS3.0下安装gcc出错
11.2.9故障032不知该下载i386.rpm还是i686.rpm
11.2.10故障033rpm升级程序不成功的问题
11.2.11故障034rpm-e卸载模块问
第12章Linux系统管理故障排除
12.1编译内核后的常见故障
12.1.1故障035kernelpanics
12.1.2故障036内核无法启动
12.1.3故障037无法启动X
12.1.4故障038出现异常I/O错误
12.1.5故障039无法关机
12.1.6故障040内核反应缓慢
12.1.7故障041鼠标灯亮却无法驱动
12.1.8故障042主板自带声卡无法识别或无法多音频输出
12.2Linux文件系统分区和磁盘管理故障排除
12.2.1故障043计算机不引导(没有引导界面)
12.2.2故障044文件误被删除
12.2.3故障045不能卸载目录
12.2.4故障046ext3文件系统损坏
12.3yum和用户管理故障排除
12.3.1故障047使用yum太慢
12.3.2故障048root用户密码丢失
第13章Linux中文显示故障排除
13.1中文显示
13.1.1故障049SCIM输入法无法用“Ctrl+Space”启动
13.1.2故障050英文环境下SCIM输入法无法使用
13.2常见中文显示故障
13.2.1故障051英文界面下系统无法按拼音排序中文
13.2.2故障052挂载光盘的中文文件名称为乱码
13.2.3故障053在Fedora7系统下挂载光盘的中文名称为乱码
13.2.4故障054Fat32分区无法显示中文文件名称
13.2.5故障055字体在GNOME环境和KDE环境下大小不同
13.3字体美化
13.3.1电脑字体简介
13.3.2故障056XFree86下无法使用TrueType字体
13.3.3故障057X.Org下无法像在XFree86下一样安装VeraSansYuanTi字体
13.3.4故障058如何安装文泉驿字体
13.3.5故障059在Fedora7下没有root用户权限,无法按上述方法安装字体
13.4控制台中文显示问题
13.4.1故障060FedoraCore5的文本模式下无法显示中文
13.4.2故障061无法将zhcon设置为开机自动启动
13.5其他常见应用程序中文显示故障
13.5.1故障062Samba服务器无法显示中文共享名称
13.5.2故障063Xmms软件无法显示中文歌曲名和播放列表
13.5.3故障064MPlayer软件无法使用中文字幕
13.5.4故障065Evolution软件升级后中文显示效果不好
13.5.5故障066Xpdf软件中文显示问题
13.5.6故障067Apache服务器(2.0.x版)无法正常显示中文
13.5.7故障068Wine软件下无法显示中文
13.5.8故障069Wine软件运行缓慢
13.5.9故障070使用Gaim软件进入中文聊天室无法显示中文
13.5.10故障071Emacs软件无法正确辨别中文编码
13.5.11故障072某些gtk程序无法正确显示中文
第14章Linux网络配置故障排除
14.1DHCP服务器配置故障排除
14.1.1故障073/var/lib/dhcp/dhcpd.leases造成的启动问题
14.1.2故障074subnet设置错误造成的启动问题
14.1.3故障075客户端没有eth0,造成无法上网
14.2DNS服务器配置故障排除
14.2.1故障076DNS启动时找不到文件
14.2.2故障077DNS无法加载地址记录和别名
14.2.3故障078未设定授权记录文件的TTL值来代替默认的最小值
14.3NFS服务器配置故障排除
14.3.1故障079NFS服务器启动失败
14.3.2故障080挂载远程NFS目录失败
14.3.3故障081卸载远程NFS目录失败
14.4Samba服务器配置故障排除
14.4.1故障082连接Samba服务器时出现无权限访问
14.4.2故障083陌生人访问Samba
14.4.3故障084连接数太多影响机器性能
14.5Web服务器配置与管理故障排除
14.5.1故障085服务器Apache进程自动退出的案例分析
14.5.2故障086Apache运行故障
14.5.3故障087MySQL连接数满导致内存大量消耗、服务器宕机
14.5.4故障088修改Apache服务器默认端口后无法访问Web站点
14.5.5故障089局域网内其他电脑无法访问Apache服务器主机
14.6FTP服务器配置与使用故障排除
14.6.1故障090用户名或密码错误,无法登录FTP服务器
14.6.2故障091连接用户太多,无法登录FTP服务器
14.6.3故障092匿名用户无法登录FTP服务器
14.6.4故障093用户IP受限,无法登录FTP服务器
14.6.5故障094同一用户无法多线程连接FTP服务器
14.6.6故障095匿名用户无法上传文件到FTP服务器
14.6.7故障096防火墙设置不正确,用户无法登录FTP服务器
14.6.8故障097vsftpd下显示的时间与系统时间不一致
14.7Mail服务器配置与使用故障排除
14.7.1故障098sendmail无法发送邮件
14.7.2故障099接收邮件的故障
14.7.3故障100大量电子邮件排队
14.8SSH服务器配置故障排除
14.8.1故障101使用公钥认证登录显示“Serverrefusedourkey”
14.8.2故障102使用putty登录SSH显示不出中文
14.9NAT配置故障排除
14.9.1故障103通过NAT上网的内部IP主机连接FTP出错
14.9.2故障104服务器主机的连接跟踪表提示“tablefull”
14.9.3故障105常见NAT故障一例
14.10代理服务器Squid故障排除
14.10.1故障106在运行一段时间后,Squid变慢
14.10.2故障107Squid出现错误“Addressalreadyinuse”14.10.3故障108找不到core文件
② linux手册翻译——socket(2)
socket - 创建一个用于通信的端点
socket() 创建用于通信的端点并返回引用该端点的文件描述符。 成功调用时返回的文件描述符,将是当前没有被进程打开的所有文件描述符中编号最低的。
domain 参数指定一个通信域; 以决定用于通信的协议族。 这些系列在 <sys/socket.h> 中定义。 目前 Linux 内核理解的格式包括:
当然最常用的当然是 AF_INET ,即IPV4。
上述地址族的更多详细信息以及其他几个地址族的信息可以在 address_families(7) 中找到。
套接字具有指定的 type ,它指定了通信语义。 当前定义的类型有:
某些套接字类型可能不会被所有协议族实现。
从 Linux 2.6.27 开始,type 参数有第二个用途:除了指定套接字类型之外,它还可以包含以下任何值的按位或,以修改 socket() 的行为:
老朋友了,上述两个,第一个是非阻塞,第二个是执行exec时自动关闭。
protocol 指定要与套接字一起使用的特定协议。 通常只存在一个协议来支持给定协议族中的特定套接字类型 ,在这种情况下,protocol 可以指定为 0。但是,可能存在许多协议,在这种情况下,必须在此指定特定协议方式。 特定协议对应的编号可以查看文件: /etc/protocols
SOCK_STREAM 类型的套接字是全双工字节流。 它们不保留记录边界。 流套接字必须处于连接状态,然后才能在其上发送或接收任何数据。 到另一个套接字的连接是通过 connect(2) 调用创建的。 连接后,可以使用 read(2) 和 write(2) 调用或 其变体send(2) 和 recv(2) 的来传输数据。 当会话完成时,可以执行 close(2)。 带外数据也可以按照 send(2) 中的描述进行传输,并按照 recv(2) 中的描述进行接收。
实现 SOCK_STREAM 的通信协议确保数据不会丢失或重复。 如果协议的缓冲空间中存在一条数据在合理的时间内不能成功传输,则认为该连接已失效。 当 SO_KEEPALIVE 在套接字上启用时,将会以特定于协议的方式检查另一端是否仍然存在。 如果进程在损坏的流上发送或接收,则会引发 SIGPIPE 信号; 这会导致不处理信号的进程退出。 SOCK_SEQPACKET 套接字使用与 SOCK_STREAM 套接字相同的系统调用。 唯一的区别是 read(2) 调用将只返回请求的数据量,到达数据包中剩余的其他数据都将被丢弃。 传入数据报中的所有消息边界也被保留。
SOCK_DGRAM 和 SOCK_RAW 套接字允许将数据报发送到在 sendto(2) 调用中指定的通信者。 数据报通常用 recvfrom(2) 接收,它返回下一个数据报及其发送者的地址。
SOCK_PACKET 是一种过时的套接字类型,用于直接从设备驱动程序接收原始数据包。 改用 packet(7)。
An fcntl(2) F_SETOWN operation can be used to specify a process or process group to receive a SIGURG signal when the out-of-band data arrives or SIGPIPE signal when a SOCK_STREAM connection breaks unexpectedly. This operation may also be used to set the process or process group that receives the I/O and asynchronous notification of I/O events via SIGIO. Using F_SETOWN is equivalent to an ioctl(2) call with the FIOSETOWN or SIOCSPGRP argument.
When the network signals an error condition to the protocol mole (e.g., using an ICMP message for IP) the pending error flag is set for the socket. The next operation on this socket will return the error code of the pending error. For some protocols it is possible to enable a per-socket error queue to retrieve detailed information about the error; see IP_RECVERR in ip(7).
套接字的操作由套接字选项控制。 这些选项在 <sys/socket.h> 中定义。 函数setsockopt(2) 和getsockopt(2) 用于设置和获取选项。对于选项的描述,详见socket(7).
成功时,将返回新套接字的文件描述符。 出错时,返回 -1,并设置 errno 以指示错误。
POSIX.1-2001, POSIX.1-2008, 4.4BSD.
The SOCK_NONBLOCK and SOCK_CLOEXEC flags are Linux-specific.
socket() appeared in 4.2BSD. It is generally portable to/from non-BSD systems supporting clones of the BSD socket layer (including System V variants).
在 4.x BSD 下用于协议族的清单常量是 PF_UNIX、PF_INET 等,而 AF_UNIX、AF_INET 等用于地址族。 但是,BSD 手册页已经承诺:“协议族通常与地址族相同”,随后的标准到处都使用 AF_*。
③ linux怎么切换用户
Linux系统中用户切换的命令为su。
1、命令格式及参数
su [-fmp] [-c command] [-s shell] [--help] [--version] [-] [USER [ARG]]
参数说明:
-f , –fast:不必读启动文件(如 csh.cshrc 等),仅用于csh或tcsh两种Shell。
-l , –login:加了这个参数之后,就好像是重新登陆一样,大部分环境变量(例如HOME、SHELL和USER等)都是以该使用者(USER)为主,并且工作目录也会改变。如果没有指定USER,缺省情况是root。
-m, -p ,–preserve-environment:执行su时不改变环境变数。
-c command:变更账号为USER的使用者,并执行指令(command)后再变回原来使用者。
–help 显示说明文件
–version 显示版本资讯
USER:欲变更的使用者账号,
ARG: 传入新的Shell参数。
2. su [user] 和 su - [user]的区别:
su [user]切换到其他用户,但是不切换环境变量,su - [user]则是完整的切换到新的用户环境。
如:
[root@rac1 ~]# pwd --当前目录
/root
[root@rac1 ~]# su oracle --使用su [user]
[oracle@rac1 root]$ pwd --当前目录没有改变,还是之前的用户目录
/root
[oracle@rac1 root]$ su - oracle --使用su - [user]
Password:
[oracle@rac1 ~]$ pwd --当前目录变为当前用户的家目录
/home/oracle
[oracle@rac1 ~]$