zoukankan      html  css  js  c++  java
  • FreeBSD笔记

    1、查看CPU:
    sysctl hw.model hw.ncpu
    dmesg | grep "CPU:"
            
    2、查看内存:
    dmesg | grep "real memory" | awk -F '[( )]' '{print $2,$4,$7,$8}'

    查看swap:
    top | grep "Swap:" | awk '{print $1,$2}'

    3、查看硬盘:
    diskinfo -vt /dev/ad0
    disklable /dev/ad0s2 #查看分区信息
    看硬盘大小:
    dmesg | grep "sector" | awk '{print $1,$2}'
    diskinfo -v /dev/da0 | grep "in bytes" | awk -F'[()]' '{print $2}'
    4、查看服务器品牌:
    dmesg | grep "ACPI APIC"
    5、挂载文件系统:
    fat32:mount_msdosfs -L zh_CN.eucCN /dev/ad0s1 /mnt
    ntfs:mount_ntfs -C eucCn /dev/ad0s1 /mnt
    cdrom:mount_cd9660 /dev/acd0 /mnt
    注:ntfs在FreeBSD中只能读无法写入

    6、给文件添加或禁用系统禁删标志(目录不适用):
    chflags sunlink file1
    chflags nosunlink file1
    7、初始化磁盘:
    fdisk -BI ad1
    8、建立FreeBSD分区:
    disklabel -B -w -r ad1s1 auto
    9、建立逻辑分区:
    disklabel -e ad1s1
    10、格式化分区,创建文件系统:
    newfs /dev/ad1s1e
    11、显示PCI硬件信息:
    pciconf -lv
    12、开启Linux 二进制兼容支持(启用这一功能最简单的方法是载入 linux KLD 模块):
    kldload linux
         让Linux兼容在系统初始化时自动启用,在/etc/rc.conf中中入:
         linux_enable="YES"
    13、检查KLD模块是否加载:
    kldstat
    14、在内核中静态链接进Linux二进制兼容模式,在内核配置文件里面加入:
    options COMPAT_LINUX
    15、设置网卡em0的IP地址:
    ifconfig em0 inet 192.0.2.10 netmask 255.255.255.0
    16、给网卡em0设置添加一个别名IP地址:
    ifconfig em0 inet 192.168.51.45/24 add
    17、删除网卡的别名IP地址:
    ifconfig em0 inet 192.168.51.45 -alias
    18、设置网卡em0的工作模式为100baseTX全双式:
    ifconfig em0 media 100baseTX mediaopt full-duplex
    19、当/usr/local/etc/rc.d下的脚本无法自动启动时,可尝试在/etc/rc.conf中加入一行:
    local_startup="/usr/local/etc/rc.d"
    20、在ports中寻找需要的软件,进入/usr/ports目录执行:
    make search name=lsof 或 echo /usr/ports/*/*lsof* 或 whereis lsof
    make search key=关键字 # 在名字、注释、描述中搜索关键字
    21、使用package方式安装管理软件,使用以下命令:
    pkg_add lsof-4.56.4.tgz # 安装软件包
    pkg_info  # 列出已安装所有软件包
    pkg_version  # 统计所有安装的软件版本,比较本地package的版本与ports目录中的当前版本是否一致
    pkg_delete lsof-4.56.4 # 删除软件包,需提供完整包名
    22、使用CVSup协议更新本地ports:(将cvsup.FreeBSD.org改为离得较近的CVSup服务器)
    csup -L 2 -h cvsup.FreeBSD.org /usr/share/examples/cvsup/ports-supfile
    23、一些shell会缓存环境变量PATH中指定的目录里的可执行文件,以加快查找速度,这会造成一些新安装的命令无法运行,执行以下命令,然后才能运行新安装的那些命令:
    rehash 或 hash -r
    24、当不是所有时间都能上网时,可在/usr/ports下执行以下命令,所有需要的文件都将被下载:(此命令可以在下级目录中执行,如/usr/ports/comms/nmp)
    make fetch # 只下载所需要文件,不下载依赖包
    make fetch-recursive # 连同依赖包一起下载
    25、改变默认的Ports目录:
    make WRKDIRPREFIX=/usr/home/example/ports install # 在/usr/home/example/ports中编译port,安装到/usr/local
    make PREFIX=/usr/home/example/local install # 在/usr/ports中编译port,安装到/usr/home/example/local
    make WRKDIRPREFIX=../ports PREFIX=../local install # 在../ports中编译port,安装到../local

    26、使用portsclean工具清除临时目录和distfiles目录:
    portsclean -C # 清除安装时的临时目录
    portsclean -D # 清除distfiles目录下所有port都不引用的文件
    portsclean -DD # 删除目前安装的port没有使用的源码包文件

    27、强制手动检测SCSI设备,SCSI总线扫描:
    camcontrol rescan all

    28、显示SCSI设备列表:
    camcontrol devlist

    29、利用管道修改用户密码:
    echo "password" | pw usermod root -h 0
    30、sed插入行:
    sed -i -E '/service port/a \\
    apex port : 18306\\
    ' /home/xiyou/config

    31、用freebsd的MBR覆盖现有的MBR:
    fdisk -B -b /boot/boot0 device

    32、根据一个新的文件重新构建用户列表:
    pwd_mkdb -p /etc/master.passwd.new # -p即为生成新的/etc/passwd
    33、取时间:
    date -v -1d +%Y%m%d # Freebsd取昨天日期方法
    date -v -1w +%Y%m%d # Freebsd取上周今日方法
    date -v -1m +%Y%m%d # Freebsd取上个月今日方法
    date -v -1y +%Y%m%d # Freebsd取去年今日的方法
    34、以xiyou用户身份执行命令或脚本:
    su - xiyou -c "cd /home/xiyou/script; ./start_apex.sh &"
    35、tar打包时排除某个子目录:
    tar zcvf Apex09010702.tgz --exclude=ApexItemServer/hook_log ApexItemServer
      注:上例是使用GUN版本的tar程序格式,否则--exclude参数应放在最后
      
    36、锁住终端:
    lock -np #-n 永不超时,-p 使用系统密码作为开启终端的密匙

    37、显示ATA设备列表:
    atacontrol list

    38、查看网络流量:
    systat -if 1 #1表示1秒刷新屏幕一次,Traffic 流量 peak 峰值 average 平均值
    netstat 1

    39、查看硬盘详细分区实时读写状况:
    gstat

    40、进单用户模式也需要密码:
    a. vi /etc/ttys 找到when going to single-user mode
    b. 修改console none unknown off后面的secure,改为insecure
    c. 存盘退出

    41、在FreeBSD5.X以上加载,卸载ISO文件:
    mount:
    mdconfig -a -t vnode -f myisofile.iso #屏幕输出md0或者类似的设备名
    mount -t cd9660 /dev/md0 /mnt
    umount:
    umount /mnt
    mdconfig -d -u 0 #-u后面的数字和前面的md?中的数字一致
    mdconfig -l #可以列出关于配置md?设备的信息

    42、更新配置文件,比如编辑了.cshrc等文件,就需要用source命令:
    source .cshrc
    43、修复UFS文件系统分区:
    fsck_ufs /dev/ad1

    44、pf防火墙
    pfctl -e                 # 启动pf防火墙
    pfctl -d                 # 停止pf防火墙
    pfctl -sa | grep Status  #查看状态
    pfctl -f /etc/pf.conf    # 载入 pf.conf 文件
    pfctl -nf /etc/pf.conf   # 检查配置文件错误,但不载入
    pfctl -Nf /etc/pf.conf   # 只载入文件中的NAT规则
    pfctl -Rf /etc/pf.conf   # 只载入文件中的过滤规则
    pfctl -sn    # 显示当前的NAT规则
    pfctl -sr    # 显示当前的过滤规则
    pfctl -ss    # 显示当前的状态表
    pfctl -si    # 显示过滤状态和计数
    pfctl -sa    # 显示任何可显示的

    pfctl -t http_table -T show               #查看动态表
    pfctl -t http_table -T add 192.168.1.X    #添加一个IP到表
    pfctl -t http_table -T del 192.168.1.X    #从表中删除IP

    45、系统优化+防止ddos
    加载文件修改
    # vi /boot/loader.conf #加入如下文本
    kern.dfldsiz="2147483648"             # Set the initial data size limit
    kern.maxdsiz="2147483648"             # Set the max data size
    kern.ipc.nmbclusters="0"             # Set the number of mbuf clusters
    kern.ipc.nsfbufs="66560"              # Set the number of sendfile(2) bufs
    ##解释:
    a.   第一,第二行主要是为了突破1G内存设置的
    b.   第三行其实是bsd的一个bug,当系统并发达到一个数量级的时候,系统会crash,这个是非常糟糕的事情,所幸更改了这个参数后,在高并发的时候,基本可以没有类似情况,当然非常bt的情况,还得进一步想办法
    c.   第四行是读取的文件数,如果你下载的文件比较大,且比较多,加大这个参数,是非常爽的
    Sysctl修改
    #vi /etc/rc.local
    sysctl kern.ipc.maxsockets=100000    ##增加并发的socket,对于ddos很有用
    sysctl kern.ipc.somaxconn=65535      ##打开文件数
    sysctl net.inet.tcp.msl=2500         ##timeout时间
    加速ports安装
    #vi /etc/make.conf     ##加入如下
    MASTER_SITE_OVERRIDE?=http://ports.hshh.org/${DIST_SUBDIR}/
    MASTER_SITE_OVERRIDE?=http://ports.cn.freebsd.org/${DIST_SUBDIR}/
    Freebsd颜色显示
    secureCRT设置:仿真:终端->linux>勾选ANSI颜色-->确定
    #vi /etc/csh.cshrc ##加入如下
    setenv LSCOLORS ExGxFxdxCxegedabagExEx
    setenv CLICOLOR yes
    #cd /usr/ports/edit/vim;make install
    #echo "syntax on">/root/.vimrc
    #echo "alias vi        vim" >>/root/.cshrc
    ##颜色主要是靠vim来显示的,因此需要安装vim,然后把vi alias成vim就可以了
    46、查看系统状态
    fstat     #报告系统中打开文件的信息
    pstat -T   #显示这几个系统表的状态,包括当前使用的和可以利用的系统表空间,因此可以用来检查系统在当前负载下是使用多大的系统表,帮助进行优化系统性能
    systat    #缺省情况下systat是报告处理器的使用率,包括总利用状态、空闲使用率和各个进程的使用率
             通过指定参数,systat也能进行I/O的统计、虚存的统计、网络的统计等,这些参数包括-iostat, -vmstat, -mbufs, -netstat, -ip, -icmp, -tcp, -swap等
    kldstat -v  #显示内核加载的模块
    klsdstat -m ipfilter   #显示指定模块
    pnpinfo    #即插即用设备
    devinfo -u  #显示设备占用的IRQ和内存地址

  • 相关阅读:
    更新内核遇到 requested datatype primary not available
    在tmux缓冲区中搜索
    逻辑卷lvm消失问题.
    linux中的常用的proxy 代理方式
    windows下powershell的包管理工具
    一次docker镜像的迁移
    MAC OS 10.15 挂载ntfs文件系统并设置自动挂载RW模式.
    在linux中设置优先使用ipv4,而不是ipv6
    [搬家]新域名 akagi201.org
    基于Three.js的全景---photo-sphere-viewer
  • 原文地址:https://www.cnblogs.com/studio313/p/1629338.html
Copyright © 2011-2022 走看看