Linux操作系统
文章平均质量分 64
RedWolf1999
victim of 996
展开
-
Ubuntu 20.04 修改网卡名称为eth0
查看当前网卡名称daily@jenkins:~$ ip a1: lo: <LOOPBACK,UP,LOWER_UP> mtu 65536 qdisc noqueue state UNKNOWN group default qlen 1000 link/loopback 00:00:00:00:00:00 brd 00:00:00:00:00:00 inet 127.0.0.1/8 scope host lo valid_lft forever preferred......原创 2021-02-20 10:38:16 · 11915 阅读 · 2 评论 -
Linux错误码对照表
./show_errno00 Success01 Operation not permitted02 No such file or directory03 No such process04 Interrupted system call05 Input/output error06 No such device or address07 Argument list too long08 Exec ...原创 2021-01-21 15:05:37 · 1318 阅读 · 0 评论 -
int daemon(int nochdir, int noclose);
#include int daemon(int nochdir, int noclose); Feature Test Macro Requirements for glibc (see feature_test_macros(7)): daemon(): _BSD_SOURCE || (_XOPEN_SOURCE && _XOPEN_SOURCE原创 2014-01-18 23:20:24 · 2204 阅读 · 0 评论 -
ubuntu关机死机问题解决办法
#vi /boot/grub/grub.cfg找到下面内容: inux --class gnu --class os { recordfail gfxmode $linux_gfx_mode insmod gzio insmod part_msdos insmod ext2 s转载 2014-03-19 23:27:25 · 6361 阅读 · 0 评论 -
ubuntu下的Samba配置:让每个用户可以用自己的用户名和密码登录自己的home目录
1.先要安装Sambasudo apt-get install samba openssh-server2.编译Samba配置文件sudo vi /etc/samba/smb.conf找到[homes]项,此项默认是注释掉的,取消其注释,然后修改其具体内容,修改成如下:[homes] comment = Home Directories browseab原创 2014-03-21 21:35:54 · 39385 阅读 · 5 评论 -
备忘:安装完ubuntu后安装ssh服务步骤
sudo apt-get install openssh-server#下面这一句解决每次连接ssh等待时间过长的问题sudo vi /etc/ssh/sshd_config#这个文件,在其中添加UseDNS nosudo service ssh restart原创 2012-12-15 18:10:51 · 917 阅读 · 0 评论 -
ubuntu修改主机名
修改如下两个文件中的原主机名为新主机名:1、/etc/hosts文件2、/etc/hostname文件执行hostname new_namelogout重新登录,执行hostname确认修改结果。翻译 2012-12-17 16:08:36 · 836 阅读 · 0 评论 -
网络协议栈的缩放(一)
这个文章是我翻译了Documentation/networking/scaling.txt,并加入了自己的理解,可以说是意译。第一次翻译,有些词的翻译把握不准,以及理解的不是那么透彻,应该会有一些问题。先作为v1吧。 http://blog.chinaunix.net/uid-20695170-id-3036641.html-----------------------------转载 2014-04-10 21:55:35 · 949 阅读 · 0 评论 -
VirtualBox虚拟机下Ubuntu关机卡死问题
一直以来我关机从来都是在命令行下用sudo halt来完成的,在VirtualBox下,只能偶尔关机成功,80%以原创 2014-06-07 10:26:47 · 11341 阅读 · 0 评论 -
ubuntu 12.04自己编译内核方法
1 #先获取内核源码包,这个不能直接从kernel.org上下,因为ubuntu的内核ubuntu公司对其打过补丁,即定制过,所以可用如下方法下载:sudo apt-cache search linux-source如:rebi@freedom:~$ sudo apt-cache search linux-source[sudo] password for rebi:linux原创 2012-12-20 14:12:53 · 6982 阅读 · 0 评论 -
使用crosstool_ng制作交叉链
目前最新版本为1.17.0wget http://crosstool-ng.org/download/crosstool-ng/crosstool-ng-1.17.0.tar.bz2tar xjf crosstool-ng-1.17.0.tar.bz2cd crosstool-ng-1.17.0#注意下面这里可能会失败,需要装一些东西,如texinfo、libtool等,具体可以看出错原创 2012-12-17 16:21:43 · 1205 阅读 · 2 评论 -
CONFIG_LOG_BUF_SHIFT的默认值
3.0的内核中,如果没有配置此项,其默认值在如下文件中定义:init/Kconfigconfig LOG_BUF_SHIFTint "Kernel log buffer size (16 => 64KB, 17 => 128KB)"range 12 21default 17help Select kernel log buffer size as a power of原创 2014-12-03 15:16:59 · 4161 阅读 · 0 评论 -
嵌入式开发中怎样正确配置内核?
说起配置内核大家可能会想不就是make menuconfig吗?这样说,也算对,但针对我们做嵌入式开发的,这种配置方法很有误导性。首先要知道,make menuconfig后,到底发生了什么?此时,脚本会在当前路径下找.config文件:如果找到.config:就打开它进入正常的内核配置界面。如果没有找到.config:1.判断当前正在使用的系统的架原创 2015-02-03 21:41:36 · 937 阅读 · 0 评论 -
libc错误码对照表
errno0 : Success errno1 : Operation not permitted errno2 : No such file or directory errno3 : No such process errno4 : Interrupted system call errno5 : Inpu原创 2015-02-10 19:53:46 · 2046 阅读 · 0 评论 -
一个关于EPOLLET和EPOLLLT的问题
觉得此文还不错,收藏以备日后学习。请教大家一个关于EPOLLET和EPOLLLT的问题今天在查看EPOLLET和EPOLLLT的细节的时候,发现一篇文章。 但不知文中说的是否有道理,望各位大大给个明确的答复。游戏服务器,我们用的是ET方式。剖析 epoll ET/LT 触发方式的性能差异误解(定性分析)平时大家使用 epoll 时都知道其转载 2016-07-10 10:29:58 · 1024 阅读 · 0 评论 -
配置syslog对于不同的消息输出到不同的文件
/etc/syslog.conf------>rsyslog.conf(ubuntu12.04)基本格式:消息类型.优先级 动作域(即,发到哪)消息类型 消息来源 kern 内核 User 用户程序 Damon 系统守护进程 Mail 电子邮件系统 Auth 与安全权限相关的命令 Lpr 打印机 News 新闻组信息 Uucp Uucp程序原创 2013-07-20 19:43:15 · 2715 阅读 · 0 评论 -
linux内核函数sleep_on_common中的自旋锁
static long __schedsleep_on_common(wait_queue_head_t *q, int state, long timeout){ unsigned long flags; wait_queue_t wait; init_waitqueue_entry(&wait, current); __set_current_state(state); s原创 2013-07-17 23:16:46 · 1663 阅读 · 0 评论 -
android 4.0.1源码编译成功后运行emulator提示No command 'emulator' found
test1@ubuntu:~/WORKING_DIRECTORY$ emulatorNo command 'emulator' found, did you mean: Command 'qemulator' from package 'qemulator' (universe)emulator: command not found1、编辑/etc/environment增加e原创 2012-03-04 12:57:32 · 7677 阅读 · 2 评论 -
oe-core环境搭建
这一次我使用是的Ubuntu12.101、需要预安装的软件如下:sudo apt-get install gawk wget git-core diffstat unzip texinfo build-essential chrpath libsdl1.2-dev xterm2、创建OE目录mkdir ~/OEcd ~/OE#下载oe-coregit clone git原创 2012-12-07 15:19:34 · 3554 阅读 · 0 评论 -
交叉编译开源软件的固定套路,以编译最新的gdb7.5 for arm为例
这里只讨论那些需要通过configure配置的情况,针对arm来。先下载最新的gdb7.5下载后解压,再cd gdb-7.5如我的本机路径现在进入到了/home/rebi/Downloads/gdb-7.5执行./configure配置:./configure --prefix=/home/rebi/Downloads/gdb-7.5/bin --host=arm-li原创 2012-12-08 14:46:31 · 3792 阅读 · 1 评论 -
linux下的静态库创建与查看,及如何查看某个可执行依赖于哪些动态库
创建静态库:ar -rcs test.a *.o查看静态库:ar -tv test.a解压静态库:ar -x test.a 查看程序依赖的动态库:readelf -a xxx|grep library如:可以看到,下面的交叉程序hello执行依赖于如下两个动态库。rebi@ubuntu:~/test$ arm-none-linux-gnueabi-reade原创 2012-10-11 23:43:06 · 4535 阅读 · 0 评论 -
ubuntu中将用户加入sudo group的最好方法
实际上,我们在安装ubuntu时默认会创建一个用户的,如我的用户叫rebi,这个用户是有sudo权限的。但当我们创建好系统后,再新建一个用户如test1后,用这个用户登录后,使用sudo xxx会提示这个用户没有在sudo group。现在网上一般给出的方法是编辑/etc/sudoers文件,这种方法虽然可以解决问题,但如果你增加了多个用户的话需要在这个文件里也相应的增加一堆用户很不方便。原创 2012-12-15 22:53:35 · 13003 阅读 · 1 评论 -
备忘:内核下载地址
总地址为:http://www.kernel.org/pub/linux/kernel在这里可以找到v2.0, v3.0分别对应2.x或3.x的内核,找到自己想要的下就行了。如果是在命令行下的话,用wgetwget http://www.kernel.org/pub/linux/kernel/v3.0/linux-3.0.51.tar.xz原创 2012-12-19 21:59:41 · 888 阅读 · 0 评论 -
64位?32位?32位程序如何在64位linux下运行?
装的是64位Ubuntu12.04,而且刚把内核升到3.2.4,从网上下载了arm-eabi-4.4.3解压后却发现无法运行,运行时提示:No such file or directory这可就奇怪了,明明是有的,问题提示不存在?仔细想想可能跟我64位系统有关系,查看arm-linux-gcc的信息:rebi@freedom:~/Downloads/arm-eabi-4.4.3/bin$原创 2012-12-20 20:35:09 · 5698 阅读 · 0 评论 -
为何要fork()两次来避免产生僵尸进程?
当我们只fork()一次后,存在父进程和子进程。这时有两种方法来避免产生僵尸进程:父进程调用waitpid()等函数来接收子进程退出状态。 父进程先结束,子进程则自动托管到Init进程(pid = 1)。 目前先考虑子进程先于父进程结束的情况: 若父进程未处理子进程退出状态,在父进程退出前,子进程一直处于僵尸进程状态。 若父进程调用waitpid()(这里使用阻塞调用确保子进程转载 2013-01-04 21:51:38 · 1315 阅读 · 1 评论 -
解决/proc/bus/usb/目录下没有devices文件问题
想查看usb设备的信息,输入: cat /proc/bus/usb/devices 但我的盖世兔系统显示:没有这个devices文件。 在网上搜了很久,发现没人进行该问题的讨论,郁闷了很久。无意间看到了解决方法,哈哈,大喜...... 解决办法: $ sudo mount -t usbfs usbfs /proc/bus/usb/转载 2013-01-08 20:57:27 · 6547 阅读 · 0 评论 -
linux内置防火墙iptables for embedded system
1、iptables通过使用由Netfilter提供的内核中框架来建立策略,所以要启动iptalbes,首先需要在内核中启动netfilter:make menuconfig->Networking support->Networking option->Network packet filtering framework首先要启动Network packet filtering fr原创 2013-01-11 16:37:31 · 1334 阅读 · 0 评论 -
[译]Linux内置防火墙iptables详解
注:本文由青蛙王子翻译自OpenSuSE 11.4下的iptables的man手册,转载请注明出处。在阅读本文之前,如果你连Linux下的iptables是什么,有什么作用都不清楚,建议别看了,先去了解清楚再来也不迟^_^命令:iptables –作用: IPv4包过滤和NAT的管理工具使用摘要: iptables [-t table] {-A|-D翻译 2011-06-28 02:23:00 · 1345 阅读 · 0 评论 -
linux平台下防火墙iptables原理(转)
iptables简介netfilter/iptables(简称为iptables)组成Linux平台下的包过滤防火墙,与大多数的Linux软件一样,这个包过滤防火墙是免费的,它可以代替昂贵的商业防火墙解决方案,完成封包过滤、封包重定向和网络地址转换(NAT)等功能。iptables基础规则(rules)其实就是网络管理员预定义的条件,规则一般的定义为“如果数据包头符合这样的条件,就这样转载 2013-01-12 00:29:54 · 1367 阅读 · 0 评论 -
交叉编译glibc时遇到的include/asm-arm目录不存在的问题
要编译glibc需要先拷贝linux内核头文件,对于这一步的实现,现在网上的所有资料都基本描述如下:首先执行make mrproper进行清理工作,然后执行make config ARCH=arm(或make menuconfig/xconfig ARCH=arm)进行配置(注意,一定要在命令行中使用ARCH=arm指定cpu架构,因为缺省架构为主机的cpu架构),这一步需要根据目标机的实际情原创 2012-12-10 17:25:46 · 3309 阅读 · 0 评论 -
unp中关于unix域套接字中bind的第三个参数lengh的取值问题解释
有两种说法,都是正确的。方法1:方法2:原创 2013-02-21 22:16:43 · 967 阅读 · 0 评论 -
linux内核调度器进化史:O(n)->O(1)->O(log(n))
一开始的调度器是复杂度为O(n)的始调度算法(实际上每次会遍历所有任务,所以复杂度为O(n)),这个算法的缺点是当内核中有很多任务时,调度器本身就会耗费不少时间,所以,从linux2.5开始引入赫赫有名的O(1)调度器,所以现在能看到的网上很多资料及教程书里面都讲的都是这个调度算法。然而,linux是集全球很多程序员的聪明才智而发展起来的超级内核,没有最好,只有更好,在O(1)调度器风光了没几原创 2013-05-18 20:05:27 · 2109 阅读 · 0 评论 -
Open SuSE11.4 Bug 导致samba启动失败
问题描述:1、启动smb失败,提示如下:bogon:/etc/samba # vi smb.confbogon:/etc/samba # service smb restartShutting down Samba SMB daemon Warning: dae原创 2011-10-15 21:23:50 · 2831 阅读 · 0 评论