Подсчёт количества символов, слов и строк [в файле]

Для всего вышеуказанного служит команда wc.

man wc

NAME
   wc -- word, line, character, and byte count

SYNOPSIS
   wc [-Lclmw] [file ...]

...
The following options are available:

   -L      The number of characters in the longest input line is written to
           the standard output.  When more then one file argument is speci-
           fied, the longest input line of all files is reported as the
           value of the final ``total''.

   -c      The number of bytes in each input file is written to the standard
           output.  This will cancel out any prior usage of the -m option.

   -l      The number of lines in each input file is written to the standard
           output.

   -m      The number of characters in each input file is written to the
           standard output.  If the current locale does not support multi-
           byte characters, this is equivalent to the -c option.  This will
           cancel out any prior usage of the -c option.

   -w      The number of words in each input file is written to the standard
           output.
...
ENVIRONMENT
   The LANG, LC_ALL and LC_CTYPE environment variables affect the execution
   of wc as described in environ(7).

EXIT STATUS
   The wc utility exits 0 on success, and >0 if an error occurs.

EXAMPLES
   Count the number of characters, words and lines in each of the files
   report1 and report2 as well as the totals for both:

         wc -mlw report1 report2

   Find the longest line in a list of files:

         wc -L file1 file2 file3 | fgrep total
HISTORY
   A wc command appeared in Version 1 AT&T UNIX.

Скрипт для создания пакета FreeBSD (из уже установленного пакета или порта) + зависимостей

#!/bin/sh

if [ 0 -ne `id -u` ]
then
        echo "This script must be run under root!"
        exit 2
else
        if [ $# -ne 1 ]
        then
                echo "You must set name of package!"
                exit 1
        else
                echo "Creating package $1 and dependecies"
                pkg_create -Rb `pkg_info|grep $1|awk '{print $1;}'`
                exit 0
        fi
fi

Добавляем новый диск под FreeBSD

Первое действие — включаем возможность изменения разделов (фича FreeBSD7, со значением по-умолчанию система не даст ничего сделать).

# sysctl kern.geom.debugflags=16

Второе — размечаем весь диск под FreeBSD UFS.

# fdisk -I /dev/daN

Третье — создаём новую файловую систему. Если у нас один слайс на весь диск, то будет newfs /dev/daNs1, если же куча слайсов, то перед newfs надо долго плясать с бубном и командой bsdlabel (c флажком -w).

# newfs /dev/daNsM

Последнее — tunefs — включаем Soft-Updates.

# tunefs -n enable daNsM

Тюнинг FreeBSD для работы в качестве маршрутизатора

$ uname -rs
FreeBSD 6.4-STABLE
$ cat /etc/sysctl.conf
kern.polling.enable=1

kern.ipc.maxsockbuf=2097152
kern.ipc.somaxconn=8192

kern.maxfiles=65536
kern.maxfilesperproc=32768

net.inet.tcp.delayed_ack=0
net.inet.tcp.sendspace=65536
net.inet.tcp.recvspace=65536

net.inet.udp.recvspace=65536
net.inet.udp.maxdgram=57344

net.local.stream.sendspace=65536
net.local.stream.recvspace=65536

kern.random.sys.harvest.ethernet=0
kern.random.sys.harvest.interrupt=0

Конфиг ядра FreeBSD 7 для работы в VMware ESXi (FreeBSD/amd64)

cpu    HAMMER
ident  VMWARE

options  SCHED_ULE     # ULE scheduler
options  PREEMPTION    # Enable kernel thread preemption
options  INET          # InterNETworking
options  INET6         # IPv6 communications protocols
options  SCTP          # Stream Control Transmission Protocol
options  FFS           # Berkeley Fast Filesystem
options  SOFTUPDATES   # Enable FFS soft updates support
options  UFS_ACL       # Support for access control lists
options  UFS_DIRHASH   # Improve performance on big directories
options  UFS_GJOURNAL  # Enable gjournal-based UFS journaling
options  MD_ROOT       # MD is a potential root device
options  NFSCLIENT     # Network Filesystem Client
options  NFSSERVER     # Network Filesystem Server
options  NFSLOCKD      # Network Lock Manager
options  NFS_ROOT      # NFS usable as /, requires NFSCLIENT
options  NTFS          # NT File System
options  MSDOSFS       # MSDOS Filesystem
options  CD9660        # ISO 9660 Filesystem
options  PROCFS        # Process filesystem (requires PSEUDOFS)
options  PSEUDOFS      # Pseudo-filesystem framework
options  GEOM_PART_GPT # GUID Partition Tables.
options  GEOM_LABEL    # Provides labelization
options  COMPAT_43TTY  # BSD 4.3 TTY compat [KEEP THIS!]
options  COMPAT_IA32   # Compatible with i386 binaries
options  COMPAT_FREEBSD4  # Compatible with FreeBSD4
options  COMPAT_FREEBSD5  # Compatible with FreeBSD5
options  COMPAT_FREEBSD6  # Compatible with FreeBSD6
options  SCSI_DELAY=5000  # Delay (in ms) before probing SCSI
options  KTRACE        # ktrace(1) support
options  STACK         # stack(9) support
options  SYSVSHM       # SYSV-style shared memory
options  SYSVMSG       # SYSV-style message queues
options  SYSVSEM       # SYSV-style semaphores
options  _KPOSIX_PRIORITY_SCHEDULING # POSIX P1003_1B real-time extensions
options  KBD_INSTALL_CDEV # install a CDEV entry in /dev
options  ADAPTIVE_GIANT   # Giant mutex is adaptive.
options  STOP_NMI         # Stop CPUS using NMI instead of IPI
options  AUDIT            # Security event auditing
#options  KDTRACE_FRAME   # Ensure frames are compiled in
#options  KDTRACE_HOOKS   # Kernel DTrace hooks

# Make an SMP-capable kernel by default
options  SMP   # Symmetric MultiProcessor Kernel

# CPU frequency control
device  cpufreq

# Bus support.
device  acpi
device  pci

# Floppy drives
device  fdc

# ATA and ATAPI devices
device  ata
device  atadisk        # ATA disk drives
device  atapicd        # ATAPI CDROM drives
options  ATA_STATIC_ID # Static device numbering

# SCSI Controllers
device  mpt  # LSI-Logic MPT-Fusion

# SCSI peripherals
device  scbus  # SCSI bus (required for SCSI)
device  ch     # SCSI media changers
device  da     # Direct Access (disks)
device  cd     # CD
device  pass   # Passthrough device (direct SCSI access)
device  ses    # SCSI Environmental Services (and SAF-TE)

# atkbdc0 controls both the keyboard and the PS/2 mouse
device  atkbdc  # AT keyboard controller
device  atkbd   # AT keyboard
device  psm     # PS/2 mouse

device  kbdmux  # keyboard multiplexer

device  vga     # VGA video card driver

# syscons is the default console driver, resembling an SCO console
device  sc

# Serial (COM) ports
device  sio     # 8250, 16[45]50 based serial ports
device  uart    # Generic UART driver

# Parallel port
device  ppc
device  ppbus   # Parallel port bus (required)
device  ppi     # Parallel port interface device
#device  vpo    # Requires scbus and da

# PCI Ethernet NICs.
device  em      # Intel PRO/1000 Gigabit Ethernet Family

# Pseudo devices.
device  loop     # Network loopback
device  random   # Entropy device
device  ether    # Ethernet support
device  sl       # Kernel SLIP
device  ppp      # Kernel PPP
device  tun      # Packet tunnel.
device  pty      # Pseudo-ttys (telnet etc)
device  md       # Memory "disks"
device  gif      # IPv6 and IPv4 tunneling
device  faith    # IPv6-to-IPv4 relaying (translation)
device  firmware # firmware assist module

# The `bpf' device enables the Berkeley Packet Filter.
# Be aware of the administrative consequences of enabling this!
# Note that 'bpf' is required for DHCP.
device  bpf      # Berkeley packet filter

Конфиг ядра FreeBSD 7 для работы в VMware ESXi (FreeBSD/i386)

Конфиг ядра GENERIC, из которого исключены все ненужные при работе под ESXi драйверы + некоторые ненужные опции:

cpu  I686_CPU
ident  VMWARE

options  SCHED_ULE     # ULE scheduler
options  PREEMPTION    # Enable kernel thread preemption
options  INET          # InterNETworking
options  INET6         # IPv6 communications protocols
options  SCTP          # Stream Control Transmission Protocol
options  FFS           # Berkeley Fast Filesystem
options  SOFTUPDATES   # Enable FFS soft updates support
options  UFS_ACL       # Support for access control lists
options  UFS_DIRHASH   # Improve performance on big directories
options  UFS_GJOURNAL  # Enable gjournal-based UFS journaling
options  MD_ROOT       # MD is a potential root device
options  NFSCLIENT     # Network Filesystem Client
options  NFSSERVER     # Network Filesystem Server
options  NFSLOCKD      # Network Lock Manager
options  NFS_ROOT      # NFS usable as /, requires NFSCLIENT
options  MSDOSFS       # MSDOS Filesystem
options  CD9660        # ISO 9660 Filesystem
options  PROCFS        # Process filesystem (requires PSEUDOFS)
options  PSEUDOFS      # Pseudo-filesystem framework
options  GEOM_PART_GPT # GUID Partition Tables.
options  GEOM_LABEL    # Provides labelization
options  COMPAT_43TTY  # BSD 4.3 TTY compat [KEEP THIS!]
options  COMPAT_FREEBSD4  # Compatible with FreeBSD4
options  COMPAT_FREEBSD5  # Compatible with FreeBSD5
options  COMPAT_FREEBSD6  # Compatible with FreeBSD6
options  SCSI_DELAY=5000  # Delay (in ms) before probing SCSI
options  KTRACE        # ktrace(1) support
options  STACK         # stack(9) support
options  SYSVSHM       # SYSV-style shared memory
options  SYSVMSG       # SYSV-style message queues
options  SYSVSEM       # SYSV-style semaphores
options  _KPOSIX_PRIORITY_SCHEDULING # POSIX P1003_1B real-time extensions
options  KBD_INSTALL_CDEV # install a CDEV entry in /dev
options  ADAPTIVE_GIANT   # Giant mutex is adaptive.
options  STOP_NMI      # Stop CPUS using NMI instead of IPI
options  AUDIT         # Security event auditing
#options  KDTRACE_HOOKS   # Kernel DTrace hooks

# To make an SMP kernel, the next two lines are needed
options  SMP   # Symmetric MultiProcessor Kernel
device  apic   # I/O APIC

# CPU frequency control
device  cpufreq

# Bus support.
device  eisa
device  pci

# Floppy drives
device  fdc

# ATA and ATAPI devices
device  ata
device  atadisk  # ATA disk drives
device  atapicd  # ATAPI CDROM drives
options  ATA_STATIC_ID # Static device numbering

# SCSI Controllers
device  mpt  # LSI-Logic MPT-Fusion

# SCSI peripherals
device  scbus  # SCSI bus (required for SCSI)
device  ch     # SCSI media changers
device  da     # Direct Access (disks)
device  cd     # CD
device  pass   # Passthrough device (direct SCSI access)
device  ses    # SCSI Environmental Services (and SAF-TE)

# atkbdc0 controls both the keyboard and the PS/2 mouse
device  atkbdc  # AT keyboard controller
device  atkbd   # AT keyboard
device  psm     # PS/2 mouse

device  kbdmux  # keyboard multiplexer

device  vga     # VGA video card driver

# syscons is the default console driver, resembling an SCO console
device  sc

# Add suspend/resume support for the i8254.
device  pmtimer

# Serial (COM) ports
device  sio    # 8250, 16[45]50 based serial ports
device  uart   # Generic UART driver

# Parallel port
device  ppc
device  ppbus  # Parallel port bus (required)
device  ppi    # Parallel port interface device
device  plip   # TCP/IP over parallel
#device  vpo   # Requires scbus and da

# If you've got a "dumb" serial or parallel PCI card that is
# supported by the puc(4) glue driver, uncomment the following
# line to enable it (connects to sio, uart and/or ppc drivers):
#device  puc

# PCI Ethernet NICs.
device  le  # AMD Am7900 LANCE and Am79C9xx PCnet

# Pseudo devices.
device  loop      # Network loopback
device  random    # Entropy device
device  ether     # Ethernet support
device  sl        # Kernel SLIP
device  ppp       # Kernel PPP
device  tun       # Packet tunnel.
device  pty       # Pseudo-ttys (telnet etc)
device  md        # Memory "disks"
device  gif       # IPv6 and IPv4 tunneling
device  faith     # IPv6-to-IPv4 relaying (translation)
device  firmware  # firmware assist module

# The `bpf' device enables the Berkeley Packet Filter.
# Be aware of the administrative consequences of enabling this!
# Note that 'bpf' is required for DHCP.
device  bpf  # Berkeley packet filter

В результате

  • из dmesg исчез принтер lpt0;
  • avail memory увеличилась на 4MB;
  • kernel (file) меньше 10201628 -> 5130367;
  • kernel (dir) меньше 139390 KB -> 31520 KB (на 106 MB);
  • кол-во модулей 1136 -> 569 - в два раза.

Смена пароля суперпользователя PostgreSQL (FreeBSD)

В файле /usr/local/pgsql/data/pg_hba.conf локальная аутентификация должна быть настроена как TRUST, для чего должна быть такая строка:

local   all         all                               trust

После изменения файла pg_hba.conf необходимо перечитать конфигурацию PostgreSQL:

# /usr/local/etc/rc.d/posgtresql reload

Следующей командой получаем доступ к консоли управления СУБД:

# psql -d template1 -U pgsql

В ней выполняем команды:

$ ALTER USER pgsql WITH PASSWORD 'newpassword';
$ \q

Всё, можно пользоваться новым паролем, а заодно стоит поменять TRUST на MD5, PASSWORD etc. — тогда просто так не пустит в консоль управления.

Настройка сервера DHCP в FreeBSD

Установка сервера

# cd /usr/ports/net/isc-dhcp40-server
# make install clean

При установке выбираем следующие опции:

DHCP_PARANOIA add -user, -group and -chroot options
DHCP_JAIL add -chroot and -jail options
OPENSSL_BASE use the base system OpenSSL (required by TLS)

Настройка

# cd /usr/local/etc
# cp dhcpd.conf.sample dhcpd.conf

dhcpd.conf:

# Настройки, общие для всех поддерживаемых сетей
option domain-name "example.org";
option domain-name-servers 10.0.0.200, 192.168.10.100;
# Параметры времени аренды IP-адреса, выставлены на максимум
default-lease-time 720000;
min-lease-time 720000;
max-lease-time 720000;
# Наш сервер - официальный сервер для нашей сетки, что мы и подтверждаем
authoritative;
# Включаем взаимодействие с Dynamic DNS, важно - по умолчанию стоит ad-hoc схема, но она не работает!
ddns-update-style interim;
# Ведение логов
log-facility local7;
# Различные настройки локальной сети:
subnet 10.0.0.0 netmask 255.255.255.0 {    # сеть 10.0.0.0/24
range 10.0.0.1 10.0.0.30;                  # диапазон выдаваемых IP-адресов
option routers 10.0.0.200;                 # шлюз
option subnet-mask 255.255.255.0;          # маска подсети
option broadcast-address 10.0.0.255;       # широковещательный адрес
option ntp-servers 10.0.0.100, 10.0.0.200; # адреса серверов синхронизации времени
}
# Привязка статичных IP к MAC-адресам
host server.example.org {
hardware ethernet 00:aa:bb:cc:dd:ee;
fixed-address 10.0.0.88;
}

Запуск

Сервер DHCP предоставляет много опций запуска, в основном, связанных с безопасностью, я выбрал запуск в песочнице, с правами ограниченного пользователся dhcpd:dhcpd (который создаётся при установке пакета).

Итак, /etc/rc.conf:

dhcpd_enable="YES"
dhcpd_conf="/usr/local/etc/dhcpd.conf"   # указываем конфиг
dhcpd_ifaces="bge0"                      # интерфейс, на котором слушает сервер
dhcpd_withuser="dhcpd"                   # запускать от пользователя
dhcpd_withgroup="dhcpd"                  # запускать от группы
dhcpd_chuser_enable="YES"                # runs w/o privileges?
dhcpd_chroot_enable="YES"                # запуск в песочнице
dhcpd_devfs_enable="YES"                 # использовать devfs
dhcpd_rootdir="/var/db/dhcpd"            # путь к песочнице

Собственно, запуск:

# /usr/local/etc/rc.d/isc-dhcpd start

Ссылки

Цифры (Douglas Couplend - Generation X)

Процент бюджета США, расходуемый:

  • на нужды престарелых — 30;
  • на нужды образования — 2.

Число мёртвых озер в Канаде: 14000.

Число работающих, приходящихся на одного человека, получающего пособие:

  • в 1949 — 13;
  • в 1990 — 3,4;
  • в 2003 — 1,9.

Процент мужчин в возрасте 25 — 29 лет, никогда не состоявших в браке:

  • в 1970 — 19;
  • в 1987 — 42.

Процент женщин в возрасте 25 — 29 лет, никогда не состоявших в браке:

  • в 1970 — 11;
  • в 1987 — 29.

Процент замужних женщин в возрасте 20 — 24 лет:

  • в 1960 — 72;
  • в 1984 — 43.

Процент людей в возрасте до 25 лет, живущих в бедности:

  • в 1979 — 20;
  • в 1984 — 33.

Количество людей, которых можно убить одним фунтом измельченного в порошок плутония (при попадании в организм через дыхательные пути): 42 000 000 000. Запас плутония в США на 1984 год, в фунтах: 380 000. Произведение этих чисел: 16000 000 000 000 000.

Доля дохода (в процентах), необходимая в качестве вступительного взноса при первом приобретении дома в рассрочку: - в 1967 — 22; - в 1987 — 32.

Процент домовладельцев среди лиц в возрасте от 25 до 29 лет:

  • в 1973 — 43,6;
  • в 1987 — 35,9.

Реальные изменения в цене за период с 1957 по 1987 г. (в процентах):

  • золотого 18-каратового кольца с алмазом в 1 карат: +322;
  • гарнитура для столовой из восьми предметов: +259;
  • билета в кино: +180;
  • авиабилета до Лондона (Великобритания): -80.

Шанс попасть на телеэкран для американца: 1 к 4.

Процент американцев, утверждающих, что они не смотрят телевизор: 8.

Количество часов, проводимых за одну неделю у телеэкрана теми, кто утверждает, что не смотрит телевизор: 10.

Количество убийств, которое среднестатистический ребенок успевает увидеть по телевизору к 16 годам: 18 000.

Количество рекламных роликов, которое американские дети успевают увидеть по телевизору к 18 годам: 350 000.

То же количество, выраженное в днях (при условии, что средняя продолжительность рекламного ролика — 40 секунд): 160,4.

Количество телевизоров:

  • в 1947 — 170 тысяч;
  • в 1991 — 750 млн.

Рост дохода для граждан старше 65 лет- за период с 1967 по 1987 г. (в процентах): 52,6; для всех остальных граждан: -7.

Процент женатых мужчин в возрасте 30 — 34 лет, проживающих со своими супругами:

  • в 1960 — 85, 7;
  • в 1987 — 64, 7.

Процент замужних женщин в возрасте 30 — 34 лет, проживающих со своими супругами:

  • в 1960 — 88,7;
  • в 1987 — 68,2.

Процент граждан США в возрасте 18 — 29 лет, согласных с утверждением, что нет смысла выполнять работу, которая не может принести тебе полного удовлетворения: 58; несогласных: 40.

Процент граждан США в возрасте 18 — 29 лет, согласных с утверждением, что при нынешнем положении дел нашему поколению будет гораздо труднее добиться комфортной жизни, чепредыдущим: 65; несогласных: 33.

Процент граждан США в возрасте 18-29 лет, ответивших да на вопрос: Хотите ли вы, чтобы ваша супружеская жизнь была похожа на жизнь ваших родителей?: 44; ответивших нет: 55.

FreeBSD: создание RAID-массива gmirror

Создание программного RAID-массива на основе gmirror (зеркалирование)

  1. Разрешаем изменение разделов:
    # sysctl kern.geom.debugflags=16
  2. Создаём RAID-массив на диске ad0 и указываем алгоритм записи round-robin:
    # gmirror label -v -b -n round-robin gm0 /dev/ad0
  3. Включаем подгружение ядерного модуля geom_mirror при загрузке ядра:
    # echo geom_mirror_load=\"YES\" >> /boot/loader.conf
  4. Редактируем /etc/fstab — заменяем монтируемые разделы на разделы RAID-диска:
    # cp /etc/fstab /etc/fstab.orig
    # sed -e s/ad0/"mirror\/gm0"/ /etc/fstab.orig /etc/fstab
  5. Перезагружаем систему: # reboot
  6. Добавляем в массив второй диск (ad2):
    # gmirror insert gm0 /dev/ad2
  7. Смотрим статус RAID-массива и дожидаемся синхронизации дисков в массиве (Status: COMPLETE):
    # gmirror status...
  8. Снова перезагружаем систему (в принципе, необязательно):
    # reboot

Что делать если один из дисков вышел из строя

Замена диска ad2:

# gmirror forget gm0
# gmirror insert gm0 /dev/ad2

Ссылки

  1. Официальная документация FreeBSD
  2. OpenNet — разжёванно и переварено
  3. OpenNet — кратко, но ёмко

Samba 3 (FreeBSD) + Windows 2003 AD

Постановка задачи

Необходимо создать файловый сервер для Windows-клиентов на основе машины под управлением FreeBSD с авторизацией в Windows 2003 Active Directory.

Решение

Для настройки авторизации в Samba пользователей AD необходимо выолнить следующие действия:

  1. вписать хостнейм добавляемого компьютера в AD DNS;
  2. настроить Kerberos/etc/krb5.conf;
  3. настроить Samba/usr/local/etc/smb.conf;
  4. настроить Name Service Switch/etc/nsswitch.conf;
  5. настроить DNS/etc/resolv.conf;
  6. синхронизировать системное время с контроллером AD;
  7. включить компьютер в домен;
  8. пользоваться.

Kerberos

/etc/krb5.conf:


[logging]
default = FILE:/var/log/kerberos/krb5libs.log
kdc = FILE:/var/log/kerberos/krb5kdc.log
admin_server = FILE:/var/log/kerberos/kadmind.log

[libdefaults]
ticket_lifetime = 24000
default_realm = DOMAIN.EXAMPLE.ORG
dns_lookup_realm = false
dns_lookup_kdc = false
kdc_req_checksum_type = 2
checksum_type = 2
ccache_type = 1
forwardable = true
proxiable = true

[realms]
DOMAIN.EXAMPLE.ORG = {
kdc = dc.domain.example.org
admin_server = dc.domain.example.org

default_domain = example.org
}

[domain_realm]
.domain.example.org = DOMAIN.EXAMPLE.ORG

[pam]
debug = false
ticket_lifetime = 36000
renew_lifetime = 36000
forwardable = true
krb4_convert = false

[login]
krb4_convert = false
krb4_get_tickets = false

Проверяем работу Kerberos:

$ kinit Administrator@DOMAIN.EXAMPLE.ORG
Administrator@EXAMPLE.ORG's Password:
kinit: NOTICE: ticket renewable lifetime is 1 week

Samba

Параметры установки

$ cd /usr/ports/net/samba3
# make config

В появившемся окне опций сборки порта необходимо выделить следующие пункты:

LDAP;
ADS;
WINBIND;
ACL SUPPORT.

Далее обычно:

# make install clean
Конфигурация

/usr/local/etc/smb.conf:


[global]

workgroup = DOMAIN

server string = some server string

security = ads
realm = DOMAIN.EXAMPLE.ORG
hosts allow = 192.168.0. 127.
interfaces = 192.168.0.0/24
auth methods = winbind
password server = 192.168.0.1
passdb backend = tdbsam
client NTLMv2 auth = yes
deadtime = 360
max open files = 100000
idmap uid = 600-20000
idmap gid = 600-20000
os level = 8
paranoid server security = no
winbind enum users = yes
winbind enum groups = yes
winbind nested groups = no
winbind refresh tickets = yes
nt acl support = yes
case sensitive = no
log level = 0 vfs:1
log file = /var/log/samba/%m
max log size = 50

display charset = koi8-r
unix charset = koi8-r
dos charset = cp866

load printers = no
show add printer wizard = no

[Share]
path=/data/share
comment = Windows shared resource
valid users = "@EXAMPLE\Domain Users"
admin users = "@EXAMPLE\Domain Administrators" 

[ShareForOneUser]

path=/data/shareforoneuser

comment = another one windows shared resource
valid users = DOMAIN\user

NSS

/etc/nsswitch.conf:


group: files winbind
group_compat: nis
hosts: files dns
networks: files
passwd: files winbind
passwd_compat: nis
shells: files
services: compat
services_compat: nis
protocols: files
rpc: files

DNS

Первым сервером DNS должен быть Dynamic DNS на контроллере домена (иначе далее, не удастся добавить компьютер в домен), поэтому пишем в /etc/resolv.conf:

domain  example.org
nameserver      192.168.0.1

В файле /etc/hosts должна быть корректная запись хостнейма добавляемого в домен компьютера.

Синхронизация времени с контроллером домена

# net time set -S 192.168.0.1

Этот пункт необязателен — у меня все компьютеры синхронизируют время по NTP, поэтому я его пропустил. Добавление компьютера в домен

# net ads join -U Administrator
Administrator's password:
Using short domain name -- EXAMPLE
Joined 'FILESERVER' to realm 'EXAMPLE.ORG'

Ссылки

  • (http://www.lissyara.su/?id=1180) — первоначальный источник информации по теме;
  • (http://wiki.samba.org/index.php/Samba_&_Active_Directory) — официальная документация проекта Samba.

FreeBSD & APC Back-UPS RS 1500VA via USB

Устанавливаем демон работы с UPS'ом и включаем его в автозагрузку

$ cd /usr/ports/sysutils/apcupsd
# make install clean
# echo 'apcupsd_enable=\"YES\"' >> /etc/rc.conf

Прим.: при установке порта выскакивает окошко с опциями сборки — все опции надо оставить по-умолчанию.

Настраиваем демон — редактируем /usr/local/etc/apcupsd/apcupsd.conf

Мой конфиг получился таким:


$ cat apcupsd.conf |grep -v #

UPSNAME myUPS

UPSCABLE smart

UPSTYPE usb
DEVICE

LOCKFILE /var/spool/lock

SCRIPTDIR /usr/local/etc/apcupsd

PWRFAILDIR /var/run
NOLOGINDIR /var/run
ONBATTERYDELAY 6

BATTERYLEVEL 5

MINUTES 3

TIMEOUT 0

ANNOY 300
ANNOYDELAY 60

NOLOGON disable
KILLDELAY 0

NETSERVER on
NISIP 0.0.0.0
NISPORT 3551

EVENTSFILE /var/log/apcupsd.events
EVENTSFILEMAX 10

UPSCLASS standalone
UPSMODE disable

STATTIME 0
STATFILE /var/log/apcupsd.status
LOGSTATS off
DATATIME 0

Прим.: демон работает в режиме сетевого сервера (NETSERVER on) — чтобы к нему могли подключаться и другие компы, работающие от этого UPS'а.

Squid: ограничение доступа по времени

squid.conf:

acl machine_ip src 10.0.0.3
acl time_deny time SMTWHFA 00:00-11:59
http_access deny machine time_deny

Пояснения:

  • machine_ip — список IP, для которых вводятся ограничения;
  • time_deny — задание временного интервала для ограничения;
  • SMTWHFA — дни недели, S = Sunday, M = Monday и т.д.

deny можно заменить на allow — тогда смысл правила инвертируется.

iPhone

# uname -a
Darwin 192.168.0.2 9.0.0d1 Darwin Kernel Version 9.0.0d1: Wed Oct 10 00:07:50 PDT 2007; root:xnu-933.0.0.204.obj~7/RELEASE_ARM_S5L8900XRB iPhone1,1 unknown
# who am i
root     ttyp0    Apr  3 15:04 (192.168.0.1)
# id
uid=0(root) gid=0(wheel) groups=0(wheel)
# pwd
/var/root
# mount
/dev/disk0s1 on / (hfs, local, noatime)
devfs on /dev (devfs, local)
/dev/disk0s2 on /private/var (hfs, local, noatime)
# df -h
Filesystem     Size   Used  Avail Capacity  Mounted on
/dev/disk0s1   300M   278M    19M    94%    /
devfs           18K    18K     0B   100%    /dev
/dev/disk0s2   7.3G   3.0G   4.3G    41%    /private/var
# uptime
uptime: couldn't get boot time
# ps ax
PID  TT  STAT      TIME COMMAND
  1  ??  Ss     0:00.51 /sbin/launchd
 12  ??  Ss     0:00.34 /usr/sbin/BTServer
 13  ??  Ss     0:01.87 /System/Library/Frameworks/CoreTelephony.framework/Su
 15  ??  Ss     0:42.43 /System/Library/CoreServices/SpringBoard.app/SpringBo
 16  ??  Ss     0:09.13 /usr/sbin/configd
 17  ??  Ss     0:00.12 /usr/libexec/crashreporterd
 18  ??  Ss     0:00.07 /usr/sbin/cron
 19  ??  Ss     0:00.85 /System/Library/Frameworks/IAP.framework/Support/iapd
 20  ??  Ss     0:01.48 /usr/sbin/mDNSResponder -launchd
 21  ??  Ss     0:02.33 /usr/libexec/lockdownd
 22  ??  Ss     0:03.64 /usr/sbin/syslogd
 23  ??  Ss     0:00.27 /usr/sbin/update
 24  ??  Ss     0:00.12 /usr/libexec/ptpd -t usb
 25  ??  Ss     0:05.75 /usr/sbin/mediaserverd
 26  ??  Ss     0:00.73 /usr/sbin/notifyd
 31  ??  S      0:00.68 /Applications/MobilePhone.app/MobilePhone --launchedF
 32  ??  Z      0:00.00 (SpringBoard)
 33  ??  Z      0:00.00 (SpringBoard)
 39  ??  S      0:01.64 /usr/sbin/sshd -i
 40  ??  Ss     0:00.22 -sh
 54  ??  Z      0:00.00 (SpringBoard)
 57  ??  Z      0:00.00 (SpringBoard)
 60  ??  Z      0:00.00 (SpringBoard)
 61  ??  Z      0:00.00 (SpringBoard)
 62  ??  Z      0:00.00 (SpringBoard)
 72  ??  S      0:01.50 /usr/sbin/sshd -i
 73  ??  Ss     0:00.21 -sh
104  ??  S      0:01.74 /usr/sbin/sshd -i
105  ??  Ss     0:00.44 -sh
147  ??  S      0:01.48 /usr/sbin/sshd -i
148  ??  Ss     0:00.13 -sh
163  ??  S      0:01.82 /usr/sbin/sshd -i
171  ??  S      0:01.99 /Applications/Preferences.app/Preferences --launchedF
164  p0  Ss     0:00.47 -sh
208  p0  R+     0:00.02 ps ax
# ls /
.svn            System          dev             private         usr
Applications    bin             etc             sbin            var
Library         cores           mach            tmp

Страницы