Linux私房菜

man的配置文件和路径
/etc/man.conf
/usr/share/man
man -f man
有多少个man文件,默认情况下按照/etc/man.conf里面的配置显示先搜索到的

使用fsck的时候该分区应该是umount状态

一个档案的权限不仅与自己本身权限有关,而且与所在文件夹的权限有关。
文件具有w属性是只能编辑内容而不能删除文件吗?
文件夹有w属性就可以任意删除其内的文件而忽视此文件的属性吗?
文件夹具备r属性就可以列出内容,但是不能进入该文件夹当作工作目录

文件是666-umask
文件夹是777-umask
直接加减法计算会出错
比如666-003=663,实际应该是664

basename
dirname

cd .= cd ./

为什么LANG=en ls -al可以正常显示
LANG=en
ls -al
就不能显示英文

文件类型file

which用来寻找可执行文件
whereis
locate
updatedb更新数据库

不同的硬盘由于内部碟片数量不同而磁柱的大小不同,磁柱是分区的最小单位。
扇区是硬盘的最小存储量,而文件系统通常会以扇区的2的n次方的倍数来划分block
每个扇区512bytes

每个分区都有一个superblock,superblock 的作用是储存像是档案系统的大小、空的和填满的区块,以及他各自的总数和其他诸如此类的资讯等等
扩展分区也有superblock,用来存储逻辑分区表。
同时MBR记录也可以存储在superblock里。

chattr +i
+a 只能增加不能删除,是指文件内容

logfile 建议增加i
passwd增加a

查看分区inode、block等信息
dumpe2fs /dev/hda1

系统目前已启用的档案系统则有∶
[root@linux ~]# cat /proc/filesystems

一个好的管理员,有时候也会将自己的 partition table 记录下来,以备不时之需呀

『执行 fsck 时, 被检查的 partition 务必不可挂载到系统上!亦即是需要在卸载的状态喔!』

mount -o remount,rw /
将/重新挂载并加上参数,
可以吗,怎么能将/重新挂载???
单用户模式

[root@www ~]# partprobe <==强制讥核心重新捉一次 partition table
无需重启

在修改过fstab后,通常使用mount -a测试一下。

/etc/fstab是开机时的设置文件,实际filesystem的 挂载是记录到/etc/mtab与/proc/mounts这2个文件中的,当我们修改fstab时以上2个文件都会同步修改。一旦我们设置错误,无法顺利开机时进入单用户模式/是只读模式的,无法修改/etc/fstab,可以使用
mount -n -o remount,rw /

[root@linux ~]# dd if=/dev/hda of=/tmp/mbr.back bs=512 count=1
1+0 records in
1+0 records out

这就得好好了解一下棉~我们知道整颗硬碟的 MBR 为 512 bytes,
#就是放在硬碟的第一个 sector 啦,因此,我可以利用这个方式来将
MBR 内的所有资料都纪录下来,真的很厉害吧! _

vi编辑以后可以按:e!还原到初始状态。

G
gg

type [-tpa] name

echo $$ 本shell的pid
echo $? 上次命令执行的结果

? $# :代表后接的参数『个数』,以上表为例这里显示为『 4 』;
? $@ :代表『 “$1” “$2” “$3” “$4” 』之意,每个发量是独立的(用双引号括起来);
? $* :代表『 “$1c$2c$3c$4” 』,其中 c 为分隔字符,默认为空格键, 所以本例中代表『 “$1 $2 $3 $4” 』之意。

shift 向左偏移变量

dmesg | grep -n -A3 -B2 --color=auto ‘eth’

[root@linux ~]# LANG <==主语言的环境
[root@linux ~]# LC_CTYPE <==字元辨识的编码
[root@linux ~]# LC_NUMERIC <==数字系统的显示讯息
[root@linux ~]# LC_TIME <==时间系统的显示资料
[root@linux ~]# LC_COLLATE <==字串的比较与排序等
[root@linux ~]# LC_MONETARY <==币值格式的显示等
[root@linux ~]# LC_MESSAGES <==讯息显示的内容,如功能表、错误讯息等
[root@linux ~]# LC_ALL <==语言环境的整体设定
基本上,你可以逐一设定每个与语系有关的变数资料,但事实上,如果其他的语系变数都未设定, 且您有设定 LANG 或者是 LC_ALL 时,则其他的语系变数就会被这两个变数所取代! 这也是为什么我们在 FC4 当中,通常仅设定 LANG 这个变数而已!因为他是最主要的设定变数。 好了,那么你应该要觉得奇怪的是,为什么在 Linux 主机的终端机介面 (tty1 ~ tty6) 的环境下,如果 LANG=zh_TW.big5 这个设定值生效后,使用 man 或者其他讯息输出时, 都会有一堆乱码,尤其是使用 ls -l 这个参数时?

因为在 Linux 主机的终端机介面下,那个环境是无法显示像中文这么复杂的编码的文字, 所以,就会产生乱码了。也就是如此,所以,我们才会必须要在 tty1 ~ tty6 的环境下, 加装一些中文化介面的软体,才能够看到中文啊!不过,如果您是在 Windows 主机以远端连线伺服器的软体连线到主机的话,那么,嘿嘿!其实文字介面确实是可以看到中文的。 所以,此时反而您得要在 LANG 设定中文编码才好呢!

无论如何,如果发生一些乱码的问题,那么设定系统里面保有的语系编码, 例如∶ en_US 或 en_US.utf8 等等的设定,应该就 OK 的啦!好了,那么系统预设支援多少种语系呢? 当我们使用 locale 时,系统是列出目前 Linux 主机内保有的语系档案, 这些语系档案都放置在∶ /usr/lib/locale/ 这个目录中。 但是,目前的这个 shell 环境所支援的语系,则是要看 SUPPORTED 这个变数才对喔!

那么,如果我想要修订系统的语系支援呢?可以修订 /etc/sysconfig/i18n 这个档案呢! 这个档案的内容有点像这样∶
[root@linux ~]# vi /etc/sysconfig/i18n
LANG=“en_US.UTF-8”
SYSFONT=“latarcyrheb-sun16”
SUPPORTED=“zh_TW.UTF-8:zh_TW:zh:en_US.UTF-8”

你可以在这个档案当中加入 LC_TIME 或者其他语系相关变数的设定内容, 也可以直接修改 LANG 那个变数即可啊! _ 但,事实上,我们还可以透过个人的环境设定档来设定 LANG 呢! 如此一来,则不必修订系统的语系档案,比较安全啦!

[root@linux ~]# ulimit [-SHacdflmnpstuv] [配额]
参数∶
-H ∶hard limit ,严格的设定,必定不能超过设定的值;
-S ∶soft limit ,警告的设定,可以超过这个设定值,但是会有警告讯息,
并且,还是无法超过 hard limit 的喔!也就是说,假设我的 soft limit
为 80 , hard limit 为 100 ,那么我的某个资源可以用到 90 ,
可以超过 80 ,还是无法超过 100 ,而且在 80~90 之间,会有警告讯息的意思。
-a ∶列出所有的限制额度;
-c ∶可建立的最大核心档案容量 (core files)
-d ∶程序资料可使用的最大容量
-f ∶此 shell 可以建立的最大档案容量 (一般可能设定为 2GB)单位为 Kbytes
-l ∶可用于锁定 (lock) 的记忆体量
-p ∶可用以管线处理 (pipe) 的数量
-t ∶可使用的最大 CPU 时间 (单位为秒)
-u ∶单一使用者可以使用的最大程序(process)数量。
范例∶
范例一∶列出所有的限制资料
[root@linux ~]# ulimit -a

范例二∶限制使用者仅能建立 1MBytes 以下的容量的档案
[root@linux ~]# ulimit -f 1024

history

-a
-r
-w

[root@linux ~]# vi /etc/motd
Hello everyone,
Our server will be maintained at 2005/10/10 0:00 ~ 24:00.
Please don’t login at that time

find /home -name testing > list 2>&1
find /home -name testing > list 2>>list
下面方法是否可以?

cat > catfile < somefile
cat > catfile <<eof
上面命令是以文件代替标准输入
下面命令是键盘输入内容至catfile直至输入eof,或ctrl+d

[root@linux ~]# tar -cvf - /home | tar -xvf -

grep root /etc/passwd | cut -d ‘:’ -f2
sort 排序
uniq 去除重复
wc 统计
-l 仅列出行
-w 列出多少字
tee 读取标准输入输出到标准输出和文件
tr 文字转换
cp /etc/passwd /root/passwd && unix2dos /root/passwd
cat /root/passwd | tr -d ‘\r’ > /root/passwd.linux
col 将tab键转换成对等的空格

expand 将tab键转换成空格
split 文件分割
xargs 读入stdin的数据,并且以空格或断行做分隔符将stdin分割成参数
cut -d’:’ -f1 /etc/passwd |head -n 3| xargs finger

join 处理2个档案中相同的一样加到一起
join -t ‘:’ /etc/passwd /etc/shadow

paste 直接将2个文件 的对应行加到一起以tab隔开
[dmtsai@linux~]$sudo su -

pstree -A

kill -SIGHUP `ps aux|grep ‘syslog’|grep -v ‘grep’|awk '{print $

整个 nice 值是可以在父程序 --> 子程序之间传递的呢!

fuser 由文件找出正在使用该文件的程序

lsof +d /dev 列出被程序所开启的文件

pidof

核心版本∶ /proc/version
系统核心功能∶ /proc/sys/kernel
netstat -tulp

depmod

? fdisk:第八章曾经谈过,可以使用 fdisk -l 将分割表列出;
? hdparm:第八章谈过癿,可观察硬盘癿信息不测试读写速度;
? dmesg:第十七章谈过, 观察核心运作过程当中所显示癿各项讯息记录;
? vmstat:第十七章谈过,可分析系统 (CPU/RAM/IO) 目前癿状态;
? lspci:列出整个 PC 系统癿 PCI 接口装置!很有用癿挃令;
? lsusb:列出目前系统上面各个 USB 端口口癿状态,不违接癿 USB 装置;
? iostat:不 vmstat 类似,可实时列出整个 CPU 不接口讴备癿 Input/Output 状态。s

lm_sensors
sensors-detect

./config --help

patch

ldd

whatis ls
man –k
find /etc -name passwd >alloutput 2>&1
cat test.txt | xargs rm -r

至少1G内存
内存大小 Swap分区大小
1G-2G RAM的1.5倍
2G-8G 与RAM相等
大于8G RAM的0.75倍

xauth add :0 . mcookie

DISPLAY HostName:0.0
在這裡 HostName 指的是目前近端所使用的電腦的網域名稱或是 IP 位址位址。
如圖六所示, HostName 是我目前這台電腦,在 HostName 後加一個冒號,再加上數字 0,句點,最後再加上數字 0。

Note:第一個數字 0,代表我現在近端這台電腦的第一張顯示卡,如果有多張顯示卡,則按照順序加上去。第二個數字 0,代表我現在近端這台電腦的這張顯示卡的第一個螢幕,同理,如果同張顯示卡可以接多個螢幕,其數字依序往上加。

一些技巧
strace ls
ls /etc -l | grep “^d” | wc -l
cut -d: -f7 /etc/passwd | sort | uniq |wc -l
whoami
who is he
w
APUE
startx – :1
startx – :2

linux dd 加载额外的驱动
linux ks kick start

生产系统硬盘经常使用lvm

图形安装:linux或直接回车
字符安装:linux text
检测介质:linux mediacheck 检测安装文件是否原装
急救模式:linux rescue
跳过硬件检测:linux noprobe
linux askmethod
本地硬盘安装原文件必须放在ext3或fat格式的分区下
在linux下安装wine可以模拟windows的api,可以玩cs等游戏
ttyN代表文本的第N个界面,虚拟的控制台,实际上是模拟的串口控制台,大型机上有串口,linux下串口用ttys代表终端
echo aaaaaa > /dev/tty1
echo aaaaaa > /dev/tty11
pts/0 不是实际的tty的终端,图形界面下登录动态的创建/dev/pts/0目录并成为终端
pts/1
x-window下切换到1-6按ctrl+alt+fn可以切换到文本控制台
1-6下切换1-7使用ctrl+fn
可以打开多个x-window

w
kill -9 pts/2 杀掉某个控制台

x-window 至少要耗费120M以上的内存

bash是linux默认的shell,使用chsh -l查看系统shell
直接输入tcsh可以临时使用tcsh这个shell,如果想一直使用可以更改passwd文件相应用户的shell

lastb -f /var/log/wtmp.1
strings /var/log/wtmp
netstat -atpun

which passwd | xargs ls -l

vi /etc/sysconfig/i18n
将内容改为
LANG=“zh_CN.GB18030”
LANGUAGE=“zh_CN.GB18030:zh_CN.GB2312:zh_CN”
SUPPORTED=“zh_CN.GB18030:zh_CN:zh:en_US.UTF-8:en_US:en”
SYSFONT=“lat0-sun16”
这样中文在SSH,telnet终端就可以正常显示了。
或者改成下面的,正常显示英文。
LANG=“en_US.UTF-8”
SUPPORTED=“en_US.UTF-8:en_US:en”
SYSFONT=“latarcyrheb-sun16”

/etc/sysconfig/i18n

LANG=“zh_CN.GB2312”

man 5 vsftpd.conf

VNCSERVERS=“1:root”
VNCSERVERARGS[2]="-geometry 800x600 -nolisten tcp -nohttpd -localhost"
开机启动vnc

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

骆驼1024

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值