TOP UNIX-V
DDNOS NOS-2 UNIX-V.1
DOMAIN NTOS UNIX-V.2
DOS OS/DDP UNIX-V.3
EDX OS/2 UNIX-PC
ELF OS4 UNKNOWN
EMBOS OS86 UT2D
EMMOS OSX V
EPOS PCDOS VM
FOONEX PERQ/OS VM/370
FUZZ PLI VM/CMS
GCOS PSDOS/MIT VM/SP
GPOS PRIMOS VMS
HDOS RMX/RDOS VMS/EUNICE
IMAGEN ROS VRTX
INTERCOM RSX11M WAITS
IMPRESS RTE-A WANG
INTERLISP SATOPS WIN32
IOS SCO-XENIX/386 X11R3
IRIX SCS XDE
ISI-68020 SIMP XENIX
ITS SUN
Appendix C Installing DNS on a Sun when running NIS
====================
2) How to get DNS to be used when running NIS ?
First setup the appropriate /etc/resolv.conf file.
Something like this should do the "trick".
;
; Data file for a client.
;
domain local domain
nameserver address of primary domain nameserver
nameserver address of secondary domain nameserver
where: "local domain" is the domain part of the hostnames.
For example, if your hostname is "thor.ece.uc.edu"
your "local domain" is "ece.uc.edu".
You will need to put a copy of this resolv.conf on
all NIS(YP) servers including slaves.
Under SunOS 4.1 and greater, change the "B=" at the top
of the /var/yp/Makefile to "B=-b" and setup NIS in the
usual fashion.
You will need reboot or restart ypserv for these changes
to take affect.
Under 4.0.x, edit the Makefile or apply the following "diff":
*** Makefile.orig Wed Jan 10 13:22:11 1990
--- Makefile Wed Jan 10 13:22:01 1990
***************
*** 63 ****
! | $(MAKEDBM) - $(YPDBDIR)/$(DOM)/hosts.byname; \
--- 63 ----
! | $(MAKEDBM) -b - $(YPDBDIR)/$(DOM)/hosts.byname; \
***************
*** 66 ****
! | $(MAKEDBM) - $(YPDBDIR)/$(DOM)/hosts.byaddr; \
--- 66 ----
! | $(MAKEDBM) -b - $(YPDBDIR)/$(DOM)/hosts.byaddr; \
====================
--
Craig Richmond. Computer Officer - Dept of Economics (morning) 380 3860
University of Western Australia Dept of Education (afternoon) 2368
craig@ecel.uwa.edu.au Dvorak Keyboards RULE! "Messes are only acceptable
if users make them. Applications aren't allowed this freedom" I.M.VI 2-4
.
&dDUUCP - Unix to Unix Copy&d@
Sistema peresylki fajlov po telefonu.
Esli uucp pravil'no skonfigurirovano, to ego ispol'zovanie
vyglyadit primerno tak:
uucp -r moj_fajl 'pulsar!fajl_tam'
pereshlet moj_fajl na udalennuyu mashinu pulsar. Hotya, skoree
vsego ne sdelaet, iz-za ogranichenij na prava dostupa. A,
vprochem, takaya komanda skoree vsego srabotaet:
uucp -r moj_fajl 'pulsar!~'
cherez nekotoroe vremya etot fajl vy smozhete obnaruzhit' na mashine
pulsar v kataloge
/usr/spool/uucppublic/
v etot katalog razresheno kopirovanie s udalennyh mashin, dlya ne-
go ispol'zuetsya special'noe oboznachenie: "~"
Pust' vas ne udivlyaet, chto v komande uucp ispol'zovalis' odi-
narnye kavychki. Oni nuzhny, chtoby zaekranirovat' "!" i "~" ot
vashego komandnogo interpretatora ksh ili bash. Klyuch -r v koman-
de uucp nuzhen, chtoby NE ZASTAVLYATX nashu mashinu nemedlenno nachi-
nat' zvonit' na pulsar. Ona sama pozvonit, v predusmotrennoe
dlya etogo vremya.
uucp podderzhivaetsya na dvuh urovnyah:
1. Pol'zovatel'skij. |to komandy uucp - postanovka fajla
v ochered' na udalennuyu peresylku, i uux - postanovka
v ochered' na peresylku udalennoj komandy.
2. Sistemnyj. Periodicheski, avtomaticheski zapuskaetsya demon
uucico - (UUCP Copy in Copy out). On sozvanivaetsya s udalennymi
mashinami po telefonu. Na udalennoj mashine takzhe zapuskaetsya
"vstrechnyj" demon uucico. Nash demon "protalkivaet" na udalennuyu
mashinu vse fajly, kotorye k etomu vremeni nakopilis' v ocheredi
na otpravku tuda. Posle etogo on "prinimaet" fajly, kotorye
prigotovila dlya nas udalennaya mashina (ih k nam protalkivaet
"vstrechnyj" demon uucico, a nash prinimaet). Posle etogo seans
uucico zakanchivaetsya. A pol'zovateli obnaruzhivayut, chto u nih
voznikli novye fajly.
Predpolagaetsya, chto sistemnye administratory na nashej i na
udalennoj mashine ne zabyli pravil'no opisat' i prokonfiguriro-
vat' sistemu UUCP.
&dDKonfiguraciya nashej mashiny kak UUCP klienta.&d@
Posle etogo nasha mashina smozhet zvonit' na udalennye mashiny i
posylat'/zabirat' ottuda fajly. Dlya etogo my dolzhny zadat':
1. Nashe sobstvennoe UUCP imya.
2. Imya(imena) udalennoj(yh) UUCP sistemy.
3. Telefonnyj nomer(a), po kotoromu nuzhno tuda zvonit'.
4. Login i parol', kotorye vydeleny tam dlya nashego uucp-account'a.
5. Port, k kotoromu podklyuchen nash modem.
6. Naborshchik - opisanie "AT" komand dlya upravleniya nashim modemom.
|ti dannye zadayutsya v neskol'kih konfiguracionnyh fajlah, koto-
rye dolzhny lezhat' v kataloge /etc/uucp/ (ili /usr/lib/uucp/ ,
ili /usr/lib/uucp/taylor_config ) (ili v kakom nibud'
drugom, sm. man uucp dlya bolee tochnoj informacii). |to fajly:
Config # zadaet imya nashej mashiny (i mnogoe drugoe) ;
Systems # opisyvaet udalennye uucp-sistemy: imya, no-
# mer telefona, uucp-logname, uucp-passwd ;
Devices # porty, k kotorym podklyucheny modemy.
Dialers # opisyvaet modemy-naborshchiki (sistemu AT-ko-
# mand).
(A v Linux oni nazyvayutsya: config, sys, port, dial)
Itak, predstavim klassicheskij sluchaj. U vas odin Hayes-sovmes-
timyj modem V32/V42bis na 14400 baud (GVC, ZyXEL, US-
Robotics...), podklyuchennyj k posledovatel'nomu portu /dev/modem
(esli u vas port nazyvaetsya /dev/contty03, vam nikto ne meshaet
sdelat' simvolicheskij link ln -s /dev/contty03 /dev/modem ne
tak li ?). Imya vashego uzla fedfuru.
VNIMANIE. Na bol'shinstve Unix-ov vydeleny razdel'nye special'-
nye fajly dlya odnogo i togo-zhe porta: terminal'naya liniya (dlya
podklyucheniya terminala ili modema, NA kotoryj budut zvonit' -
ispol'zuetsya dlya getty ili ttymon), i liniya s modemnym upravle-
niem, na vyhod - naprimer, chtob zvonit' NARUZHU modemom. |ti
special'nye fajly i nazyvayutsya po raznomu, naprimer:
SunOS: /dev/ttyy01 IN, /dev/ttyz01 OUT
Linux: /dev/ttyS1 IN, /dev/cua1 OUT
ISC: /dev/ttyFD01 IN, /dev/ttyFM01 OUT
SVR4/88: /dev/contty00 IN, /dev/??????? OUT
###sleduyushchij abzac napisan "melkim shriftom"(mozhno ne chitat')###
Na samom dele vse ne sovsem tak. Citiruyu Linux-Serial-HOWTO:
> There has been some discussion on the merits of /dev/mouse
> and /dev/modem. I strongly discourage the use of these links.
> In particular, if you are planning on using your modem for
> dialin you will run into problems because the lock files will
> not work correctly if you use /dev/modem. Also, Taylor UUCP
does not support symlinks either. Odnako uugetty pozvolyaet
korrektno otrabatyvat' etu situaciyu. Sm. parametr ALTLOCK v
/etc/defaults/getty fajle.
################_konec_"melkogo shrifta"_#######################
Vam nado podklyuchit'sya k dvum uucp-uzlam:
1: Uzel Relkom, imya uzla kiae, telefony: 9469984, 9469994. Vy
zaregistrirovany tam pod imenem/parolem uufedurp/ABCd8
2: Vashe moskovskoe otdelenie, imya uzla fedfond, telefon 095-
125-7623. Vy zaregistrirovany tam pod imenem/parolem
uufedurp/KLmn10
V kataloge /etc/uucp redaktiruem fajly Systems, Devices, Dialers
Systems: ------- Udalennye mashiny -----------------------------
kiae Any modem1 19200 946-9984 "" \n\r\d\r\d\r ogin:-BREAK-ogin:
uufedurp ssword: ABCd8
fedfond Any modem1 19200 8w095-125-7623 "" \n\r ogin:-BREAK-ogin:
uufedurp ssword: KLmn10
Devices: --------------- Opisanie portov ----------------------
modem1 contty03 - 19200 gvc1440
Dialers: --------------- Komandy modemov ----------------------
gvc1440 =,-, "" \M\dATZ\r\c OK\r \EATDP\T\r\c CONNECT \m\c
---------------- |to vse --------------------------------------
###sleduyushchij abzac napisan "melkim shriftom"(mozhno ne chitat')###
A dal'she idet opisanie Taylor-uucp. Problema v tom, chto v stan-
dartnoj postavke SVR4/88 _net_ Taylor-uucp, a est' tol'ko t.n.
HoneyDanBer-uucp, on zhe BNU (Basic Networking Utilities).
Taylor novee i gibche, k tomu zhe podderzhivaet dva formata konfi-
guracionnyh fajlov - tradicionnyj (Config, Systems, Devices,
Dialers, ...) i svoj (config, sys, port, dial, ...). Est' kon-
verter tuda-obratno. V Linuxe Taylor-uucp skompilirovan tak,
chtoby snachala iskat' Taylor-konfiguraciyu v
/usr/lib/uucp/taylor_config/, esli tam nichego net - iskat'
HDB-konfiguraciyu v /usr/lib/uucp/hdb_config/. IMHO glavnyj
iz®yan HDB - nevozmozhnost' ukazyvat' al'ternativnye nomera tele-
fonov.
################_konec_"melkogo shrifta"_#######################
###sleduyushchij abzac napisan "melkim shriftom"###
Esli vy ispol'zuete ne ustarevshij BNU-uucp, a Taylor-uucp 1.05:
V kataloge /usr/lib/uucp/taylor_config sozdaem fajly config,
sys, port, dial sleduyushchego soderzhaniya:
/* Primechanie: v distributivah RedHat Linux konfiguracionnye fajly
uucp dolzhny lezhat' v /etc/uucp/ */
config: -------------------------------------------------------
uuname fedfuru # Nashe sobstvennoe imya
sys: ------- Udalennye mashiny ---------------------------------
system kiae # Uzel Relkom ############################
myname fedfuru
time Any
port modem # Imya opisaniya porta v fajle port
speed 38400
chat ogin:-BREAK-ogin: uufedurp ssword: ABCd8
phone 946-9984
alternate # Vtoroj telefonnyj nomer.
phone 946-9994
system fedfond # Moskovskoe otdelenie ##################
time Any
myname fedfuru
port modem # Imya opisaniya porta v fajle port
speed 38400
chat ogin:-BREAK-ogin: uufedurp ssword: KLmn10
phone 8w095-125-7623
port: --------------- Opisanie portov ------------------------
port modem # Oboznachenie porta iz fajla sys
type modem
device /dev/modem
speed 38400
dialer gvc1440 # Imya naborshchika-modema v fajle dial
dial: --------------- Komandy modemov ------------------------
dialer gvc1440 # Oboznachenie naborshchika iz fajla port
# Stroka inicializacii modema.
# Vmesto \T budet podstavlen telefonnyj nomer
chat "" ATZ OK ATH0E0Q0 OK ATDP\T CONNECT
# ATZ - zagruzit' profile 0
# ATH0 - povesit' trubku
# ATE0 - no echo
# ATQ0 - vyvodit' kod vozvrata
chat-fail BUSY # Vosprinimat' kak oshibku nabora
chat-fail ERROR
chat-fail NO\sCARRIER
chat-fail NO\sDIALTONE
---------------------------------------------------------------
################_konec_"melkogo shrifta"_#######################
Vse. Klientskaya chast' UUCP skonfigurirovana. Teper', chtoby
"protolknut'" poslannye fajly, dostatochno periodicheski
vypolnyat' komandy:
uucico -s kiae
uucico -s fedfond
A eshche luchshe, dobavit' eti komandy v crontab, chtoby oni vypolnyalis'
avtomaticheski, po neskol'ko raz v sutki.
&dDKonfigurirovanie UUCP s ispol'zovaniem sysadm&d@.
Vse vysheperechislennye nastrojki mozhno sdelat', ispol'zuya utili-
tu sistemnogo administratora sysadm. Nado vojti v menyu
network_services / basic_network
&dDKonfigurirovanie servernoj chasti UUCP.&d@
Itak, my uzhe mozhem zvonit' na chuzhie mashiny, i peresylat' na nih
fajly. Teper' nuzhno sdelat', chtoby chuzhie mashiny (klienty) mogli
zvonit' nam. Dlya etogo nuzhno:
1: Imet' opisanie zvonyashchej nam uucp-sistemy v fajle Systems -
dlya klienta takoe zhe, kak i dlya servera.
2: Proverit' prava dostupa dlya klienta v fajle Permitions
2: Zavesti dlya nego special'nyj uucp-login
3: Ubedit'sya, chto modem stoit v "Auto-answer" rezhime, i na port
/dev/modem zapushchena programma getty (ili ttymon), pozvolyayu-
shchaya loginit'sya po telefonu na port /dev/modem
1. Opisanie dobavlyaetsya v fajl Systems, (nomer telefona i
nazvanie porta ne obyazatel'ny), esli my sami ne
sobiraemsya tuda zvonit', no ya by posovetoval ih vpisat', dlya
edinoobraziya.
2. V fajle /etc/passwd zavesti strochku vida:
uupetrov:x:1002:14:UU Petrov:/var/spool/uucp:/usr/lib/uucp/uucico
vypolnit' komandy:
pwconv
passwd uupetrov
3. Lyuboj terminal'noj programmoj "vojti" v modemnyj port i vy-
polnit' komandy
atz0 # Zagruzit' pol'zovatel'skij profile 0
ats0=1 # Registr0=1 - snimat' trubku posle 1-go zvonka
at&w0 # Sohranit' tekushchij setup v profile 0
at&y0 # CHtoby pri vklyuchenii pitaniya zagruzhalsya profajl 0
# at&f # zagruzit' zavodskie ustanovki, esli vy zaputalis'
# s profajlami, mozhno sdelat' modemu "reset"
Vvidu otsutstviya kommunikacionnyh programm v SVR4 (za
isklyucheniem sumasshedshego "cu"), ispol'zujte "echo".
echo atz0 > /dev/modem
echo ats0=0 > /dev/modem
echo at&w0 > /dev/modem # i tak dalee
A eshche luchshe gold, tam est' rezhim pryamoj svyazi s lyubym portom.
4. V fajle /etc/inittab imet' strochku vida:
c3:234:respawn:/usr/lib/saf/ttymon -g -d /dev/modem -l contty
&dDCHto gde lezhit v sisteme UUCP.&d@
/usr/bin/uucp - pereslat' fajly s/na udalennuyu uucp-sistemu
/usr/bin/uux - vypolnit' komandu na udalennoj uucp-sisteme
/usr/bin/uustat - statistika po vypolnennym peresylkam
/usr/lib/uucp/uu* - sistemnye utility UUCP
/etc/uucp/ - katalog konfiguracionnyh fajlov UUCP
/usr/lib/uucp/taylor_config - konfiguraciya UUCP v Linux
/usr/lib/uucp/ - konfiguraciya UUCP v drugih
sistemah
/var/spool/uucppublic - katalog v kotoryj mozhno peresylat'
fajly s udalennyh mashin
/usr/spool/mqueue - ocheredi otpravlyaemoj elektronnoj pochty
/usr/ucblib/mqueue - ili zdes' eta ochered' ?
/var/spool/uucp/"mashina" - ochered' fajlov na otpravku na "mashinu"
/var/spool/uucp/.Log - statistika o rabote uucp
&dDOstalos' nastroit' nashu elektronnuyu pochtu.&d@
Esli u vas samyj prostejshij sluchaj: vsya vasha pochta prohodit che-
rez odin "znayushchij" host, s kotorym vy soedineny po uucp, to na-
do v fajle /etc/sendmail.cf imet' takuyu stroku:
. . .
# "Smart" relay host (may be null)
DSuucp-dom:kiae
. . .
V etom sluchae vsya vasha vneshnyaya pochta (t.e. otpravlyaemaya za
predely vashej lokal'noj seti) budet perepravlyat'sya po uucp na
uucp-uzel "kiae" i dal'nejshej ee dostavkoj budet ozabochen
imenno kiae. Predpolagaetsya, chto on uspeshno spravitsya s etoj
zadachej.
A eshche chtoby bylo opisanie uucp-dom (nizhe v tom zhe fajle).
Kstati, chtoby vseh okonchatel'no zaputat', sendmail.cf na Moton
role lezhit vovse ne v /etc/, a v /usr/ucblib/.
Esli u vas kakoj-libo drugoj sluchaj - to eto - tyazhelyj sluchaj.
Derzajte, uspehov vam!
# I nado sdelat', chtob sendmail ne otrezal 8-j bit u posylaemoj pochty
# Esli sendmail8.x.x, to v sendmail.cf:
# strip message body to 7 bits on input?
O7False
# A eshche byvaet, chto sendmail ne znaet, kak pravil'no nazyvaetsya
# nasha mashina. Togda my pishem chto-to v takom stile:
Cwlocalhost feduru.urup.ru feduru.mss.ru
&dDProverka rabotosposobnosti i otladka konfiguracii.&d@
Dlya nachala proverim, pravil'no li podsoedinen modem.
Zapuskaem programmu cu - emulyator terminala.
cu -l /dev/modem # Ili kak tam u vas etot port nazyvaetsya
Posle etogo vy pereklyuchites' na rabotu so svoim modemnym por-
tom. Vse, chto vy budete nabirat' s klaviatury, budet perenap-
ravlyat'sya v port /dev/modem , vse, chto "prihodit" s etogo por-
ta, budet risovat'sya na vashem terminale. Poprobujte modemom
nabrat' telefonnyj nomer
atdp100
Prover'te, pravil'no li skonfigurirovan "port" modema i opisa-
nie sistemy v fajle Systems.
cu pulsar
Prover'te prava dostupa k fajlam /dev/modem, /dev/contty*. Dol-
zhno byt' (???):
crw-rw---- 1 root uucp ... /dev/contty0
crw-rw---- 1 root uucp ... /dev/modem
Zapustite uucico s maksimal'nym urovnem vydachi otladochnoj in-
formacii. Zapuskat' nado iz pod pol'zovatelya uucp
/usr/lib/uucp/uucico -r1 -x9 -f -s pulsar
/usr/lib/uucp/uucico -x all -f -s kiae
A zatem posmotrite na soderzhanie fajlov so statistikoj uucp v
kataloge /var/spool/uucp :
.Admin/audit.local
.Log/
.Status/
ERRLOG
LOGFILE
SYSLOG
Naprimer, takoj komandoj
tail -f /var/uucp/.Admin/audit.local &
tail -f /var/uucp/.Log/uucico/kiae
&dDPo rezul'tatam perepiski&d@.
###sleduyushchij abzac napisan "melkim shriftom"(mozhno ne chitat')####
Dmitry Mayorov Compulsory Health Insurance Fund
Phone: +7 (812) 112-3517 St. Petersburg, Russia
> Naveshal fil'trov na sendmail, rmail,
> a vot eto neponyatno. Ili oni nauchilis' vse iz koi8 v iso pere-
> vorachivat' na letu ?
Net, konechno, potrebovalos' lechit'. Delo sil'no uprostilo to
obstoyatel'stvo, chto vnutri seti vezde ISO. Perekodirovat' po-
etomu mne nado tol'ko to, chto idet cherez UUCP, to bish' naruzhu.
Dlya etogo prishlos':
1. Popravit' sendmail.cf:
# RelCom UUCP - with ISO 8859-5 to KOI-8 translation
Muucp-koi, P=/usr/local/bin/_uux, F=mDFMhu, S=52/31, R=21, M=100000,
^^^^^^^^^^^^^^^^^^^ moj, sm. nizhe
A=_uux - -r -a$f -gC $h!rmail ($u)
2. Sdelat' /usr/local/bin/_uux iz treh strok:
#!/bin/sh
PATH=:/usr/bin:/usr/local/bin:/usr/ucb:/bin:
/usr/local/bin/iso-koi | /usr/bin/uux $*
(iso-koi - ponyatno kakoj fil'tr)
|to vse, na samom dele, ves'ma gryaznyj hack - vryad li stoit ego
vklyuchat' v uchebnik. Ono, konechno, rabotaet, no vot nado po
krajnej mere eshche i pravil'nyj kod vozvrata kak-to obespechit' -
s proverkoj oshibok i prochimi fenechkami.
CHtoby prinimaemaya pochta iz KOI prevrashchalas' v ISO, dostatochno:
1. Pereimenovat' rmail v /usr/local/bin/__rmail;
2. Sdelat' svoj rmail, tozhe iz treh strochek:
#!/bin/sh
PATH=:/usr/bin:/usr/local/bin:/usr/ucb:/bin:
/usr/local/bin/koi-iso | /usr/local/bin/__rmail $*
Vysheukazannuyu ekzekuciyu nado proizvodit' imenno nad rmail, po-
tomu chto rbmail proveryaet kontrol'nye summy.
A vot rbmail v SVR4/88 sovsem net. Nado iskat' ishodniki, sobi-
rat'... A RelCom (po krajnej mere moj provajder) imenno ego
pol'zuet. |to tret'ya prichina (posle otsutstviya Taylor-uucp i
udobnogo Mail-user agenta), po kotoroj ya ne stal podnimat'
uucp/e-mail na Motorole.
--
Dmitry Mayorov Compulsory Health Insurance Fund
Phone: +7 (812) 112-3517 St. Petersburg, Russia
-- Konec citaty --
################_konec_"melkogo shrifta"_#######################
&dDSolaris: nastrojka uucp po direct line&d@
V fajle Systems na Solyarke udalennaya mashina opisyvaetsya tak:
ranisi Any dirt06 9600 unused "" P_ZERO "" \n\c ogin:-\n\c-ogin: uuintra\n\c ssword: parolf9f10\n\c "" P_ZERO
Po sravneniyu s normal'nym tailor-uucp prestarelyj solyarkin
po pryamomu kabelyu vykinul neskol'ko fortelej:
Ne zahotel idti naruzhu s 38400, prishlos' stavit' 9600
Posylaemyj ^M v konce kazhdoj stroki chat-a prinimayushchij
Linux ponimat' otkazalsya, prishlos' delat' v konce \n\c
Rabotat' stal tol'ko s nasil'stvenno vzvedennym P_ZERO -
"no parity" - bez etogo na prieme vmesto latinicy poluchalas'
8-bitnaya rusica.
V uucp-ovyj crontab stavim raz v 5 minut vyzov uucico
0,5,10,15,18,20,25,30,35,40,45,50,55 * * * * (\
/usr/lib/uucp/uucico -r1 -f -s ranisi ; sleep 30 ; \
/usr/lib/sendmail -q ) > /dev/null 2>&1
U solyarnogo uucico ne okazalos' klyucha "force" redial (-f -
sovsem ne tot force, kotorogo hotelos' mne)
&dDCHtob zastavit' uucico hodit' na telnetovskij port&d@
> v logah nablyudaetsya otkrovennyj musor: \177}\030\177} \177}#\177}
port type pipe
port command /bin/telnet -8E hostname
&dDSecure uucp po tcp&d@
&dDVariant 1. port type tcp with ssh-port forwarding&d@
NA SERVERE: konfigurite uucp-tcp-server s localhost
/etc/inetd.conf :
uucp stream tcp nowait uucp /usr/sbin/tcpd /usr/sbin/uucico -l
/etc/hosts.allow :
uucico: 127.0.0.1
# uucico zhelaet ego chitat', a rabotaet on s uid uucp - prihoditsya dat' read
chmod og+r /etc/hosts.allow
/etc/uucp/passwd : propisatx uu-login, parol' _neshifrovannyj_
uuyourlogin yourpasswd
NA KLIENTE: konnekt budete delat' na localhost, a ssh delaet ego probros
/etc/inetd.conf :
uucp stream tcp nowait uucp /usr/sbin/tcpd /usr/sbin/uucico -l
/etc/hosts.allow :
uucico: 127.0.0.1
/etc/uucp/port : opisat' port tcp-connect
port tcp-connect
type tcp
service 540
/etc/uucp/sys : dobavit' tip porta
. . .
port tcp-connect
address 127.0.0.1
chat ogin: \L ssword: \P
alternate
. . .
"Pered upotrebleniem" zapuskaem iz pod root ssh s aktivizirovannym forward
ssh1 -C -L 540:127.0.0.1:540 193.232.173.6
.
&dDSistema pechati v Unix. LP spoolling&d@
(opisana sistema pechati v System V)
Pechatat', konechno, mozhno i tak: cat file > /dev/lp. No v
mnogopol'zovatel'skoj sisteme takoj fokus ne vsegda projdet.
Poetomu pechataemyj fajl stavyat v ochered' na pechat'.
Imeem printer. U printera est'
IMYA_PRINTERA - pridumyvaetsya administratorom.
PORT_PRINTERA - special'nyj fajl v kotoryj nado
vytalkivat' dannye dlya pechati.
INTERFEJSNAYA_PROGRAMMA - programma, kotoraya kak raz i
budet etim zanimat'sya.
Esli u nas normal'no skonfigurena sistema pechati, to
pechatat'sya mozhno tak:
lp -d IMYA_PRINTERA file
ili, esli my hotim napechatat' na "default" printere
cat file | lp
lpstat Posmotret' v kakom sostoyanii ochered' pechati
cancel [identifikator_zaprosa ...] [printer ...]
Srubit' zapros na pechat'
lp prosto skladyvaet fajl v SPOOL KATALOG. DEMON PECHATI
lpsched obnaruzhivaet vnov' postupivshij fajl, stavit ego v
ochered' na pechat', i, kogda ochered' dohodit, zapuskaet nakonec
INTERFEJSNUYU PROGRAMMU, vhod kotoroj beretsya iz pechataemogo
fajla, a ee vyvod perenapravlyaetsya na PORT_PRINTERA.
&dDPodklyuchit' k sisteme novyj printer&d@
---------------------------------------------------------------
lpshut # na vremya rekonfiguracii nado "gasit'" lpsched
lpadmin -pLJ_printer -i/usr/lib/lp/model/lj_print -v/dev/lpt2
ili
lpadmin -pNash_Nowyj_Printer -mstandard -v/dev/contty
enable Nash_Nowyj_Printer
accept Nash_Nowyj_Printer
lpsched # posle rekonfiguracii nado vnov' zapustit' lpsched
---------------------------------------------------------------
accept - pozvolyaet stavit' v ochered' pechat' na etom printere
enable - razreshaet pechatat' stoyashchie v ocheredi zadaniya
klyuchi komandy lpadmin
-pImya_Novogo_Printera
-vPORT_PRINTERA
-iINTERFEJSNAYA_PROGRAMMA - marshrutnoe imya programmy,
kotoraya pechataet
-mMODELX_PROGRAMMY - imya "modeli" takoj programmy,
lezhashchej v kataloge
/usr/lib/lp/model
-o nobanner - razreshit' useru pisat' lp -o nobanner
(rekomenduyu amputirovat' banner v interfejsnom skripte)
-d printer - sdelat' printerom po umolchaniyu
-?Udalennyj_host - mozhno podklyuchat' printer udalennoj mashiny
-?Imya_printera_na_udalennom_hoste
(klyuchi ne pomnyu, posmotret' v man)
-s host!printer - dlya Solaris - podklyuchenie udalennogo printera
# pered etim vpisat' printer v /etc/lp/Systems
Vmeste s sistemoj nakopleniya vyvoda na printery
postavlyayutsya obrazcy interfejsnyh programm. Oni predstavlyayut
soboj shell-procedury, perekodiruyushchimi pechataemyj fajl v format
sootvetstvuyushchego printera.
&dDPrimery&d@
lpadmin -pstar1 -i/udd/print/inter -v/dev/xpit0 # lokal'nyj printer
lpadmin -pstar1 -mdumb -v/dev/lpt1
&dDPodklyuchit' k sisteme udalennyj printer&d@
(klyuchi var'iruyutsya dlya raznyh versij Unix)
HP-UX:
lpadmin -pLJ_printer -?host -?printer
Solaris:
vpisat' udalennuyu mashinu v /etc/lp/Systems a zatem
lpadmin -pLJ_printer -s 'host!printer' ; accept LJ_printer
lpadmin -dstar1 # Ustanovit' printerom po umolchani`
lpadmin -xstar1 # Likvidirovat' printer star1
&dDFajly&d@
/usr/lib/lp/model # Obrazcy interfejsnyh programm (modeli)
/etc/lp # Katalog konfiguracii sistemy LP
/var/spool/lp/* # Katalogi s ocheredyami
man lpadmin # Estestvenno!
.
&dDGraficheskaya obolochka X-Windows System&d@
Dlya nachala nemnogo istorii i obshchih mest. Predstavim, chto
nam nuzhno napisat' programmu, kotoraya budet rabotat' v
graficheskom rezhime. Nam potrebuetsya: oprashivat' klaviaturu,
snimat' sobytiya i koordinaty myshi, risovat' na ekrane, ... Kak
eto delalos' na MS-DOSe? Ochen' prosto. Pishem odnu bol'shuyu
programmu, v nej - vse: i logika, i obrabotka sobytij, i
slezhenie za peremeshcheniyami myshi, nu, a kogda trebuetsya chto-to
narisovat', my daem komandu na zapis' v porty EGA kontrollera,
risuem piksel... CHerez god poyavlyaetsya kontroller VGA, eshche cherez
god SVGA 800x600, 16 cvetov, vsled za nim UVGA 1024x768, 256
cvetov, zatem XGA 1280x1024, 16Mb cvetov...
&dDOsnovnaya ideya X Windows&d@.
Imeem dve nezavisimyh programmy. Odna umeet risovat' na
graficheskom monitore, i voobshche, obsluzhivat' vse eto zhelezo. Ona
nazyvaetsya X-server. Vtoraya programma - nazyvaem ee klient X
Windows, risovat' fizicheski ne umeet. Zato ona znaet, chto
imenno nado risovat', i umeet komandovat'. Komandy tipa:
"narisovat' pryamougol'nik", "provesti liniyu", "otkryt' okno",
"vyvesti simvol v zadannom fonte", "oprosit' koordinaty myshi",
i t.p. peredayutsya X-serveru, a tot ih ispolnyaet - risuet.
Format i specifikacii etih komand opublikovany,
standartizovany, i shiroko izvestny. Vse vmeste oni nazyvayutsya
"Protokol X Windows".
Itak, povtorim.
X-server. Programma, kotoraya napisana special'no pod
konkretnoe fizicheskoe ustrojstvo (imeetsya v vidu - monitor,
grafkontroller, mysh' i klaviatura), umeet na nem risovat', i
umeet ponimat' komandy risovaniya po protokolu X Windows System.
X-klient. Prikladnaya programma, obespechivayushchaya graficheskij
interfejs s pol'zovatelem. Komandy dlya risovaniya na ekrane
peredaet X serveru po protokolu X Windows System.
X-terminal. YAshchik (monitor, grafkontroller, mysh',
klaviatura, nu i, estestvenno, processor i operativnaya pamyat'),
na kotorom zapushchena programma X-server. X-terminalom mozhet
sluzhit' samaya obyknovennaya graficheskaya Unix-rabochaya stanciya, na
kotoroj X server vypolnyaetsya, kak odna iz mnogih prikladnyh
zadach. Specializirovannyj X-terminal - yashchik, na kotorom
zapuskaetsya tol'ko X server, i nichego krome. Mozhno ispol'zovat'
PC pod MS-DOSom, na kotorom zapushchena DOSovskaya programma,
realizuyushchaya X server.
Xlib - biblioteka C-ishnyh funkcij, realizuyushchih protokol X
Windows System. S pomoshch'yu etoj biblioteki mozhno pisat'
graficheskie programmy - X-klienty.
CHto my s etogo imeem.
My poluchaem universal'nyj GAPI - (Graphical Application
Programming Interface) - sredstvo programmirovaniya graficheskih
prilozhenij. Pol'zovatel'skie graficheskie programmy pri etom
polnost'yu otvyazany ot zheleza, ot konkretnogo grafkontrollera.
O zheleze pust' bespokoitsya X-server.
Protokol X Windows umeet "ezdit'" po seti: naprimer po TCP/IP,
ili po DEC-net. Poetomu Xserver mozhet krutit'sya na odnoj
mashine, a X-klient - na drugoj. To est', kartinka risuetsya na
odnoj mashine, a programma, kotoraya ee obespechivaet - krutitsya
na drugoj.
X-server sposoben obsluzhivat' srazu mnogo klientov, prichem vseh
- odnovremenno. Na nashem graficheskom ekrane mozhet byt' otkryto
srazu mnogo okon - kazhdoe okno porozhdaetsya ego sobstvennym X
klientom. Klienty eti mogut byt' zapushcheny i na nashej mashine (k
kotoroj podklyuchena graficheskaya podsistema), i na udalennyh ma-
shinah, soedinennnyh s nami po seti.
CHego nam eto stoit.
Ponyatno chego. Resursov. X Windows ochen' lyubit resursy - pamyat',
processor, disk. Sposoben s®est' ih v neogranichennyh koliches-
tvah. A eshche ved' nado programmirovat'. (K schast'yu, ne vsem na-
do). Kto videl, kak vyglyadyat programmy dlya MS Windows ili Mac,
mozhet predstavit' sebe vneshnij vid ishodnyh tekstov X-ovoj
programmy.
&dDKak eto zapuskaetsya&d@.
Pust' v nashej seti est' mashina s graficheskoj podsistemoj i X
serverom, i setevoj adres etoj mashiny pcat107.foms.msk.ru
na pcat107 nuzhno vypolnit' komandu:
xhost + # razreshit' X-ovym programmam s LYUBOJ mashiny
# risovat' na ekrane mashiny pcat107
Zapuskaem na nashem komp'yutere X-ovuyu programmu, tak, chtoby ee
okoshko risovalos' na monitore pcat107. Dlya etogo na nashem
komp'yutere nuzhno vypolnit' komandu:
xterm -display pcat107:0.0 &
&dDBiblioteki, Motif, i vojna kruglyh i kvadratnyh knopok&d@.
Mozhno pisat' X-ovye programmy, ispol'zuya biblioteku Xlib.
Mnogie tak i pishut, hotya eto ves'ma tyazhelo - uzh bol'no nevysok
uroven' Xlib'a. V pomoshch' programmistam bylo sozdano neskol'ko
toolkit'ov - bibliotek bolee vysokogo urovnya, v kotoryh reali-
zovany razlichnye widget'y. Widget - neperevodimyj termin X
Windows. Skleen iz dvuh slov - Window i Gadget
(prisposoblenie), yavlyaetsya graficheskim ob®ektom s privyazannymi
k nemu svojstvami i reakciyami na dejstviya pol'zovatelya. Primery
widgetow: "knopka", "menyushka", "okoshko s tekstom", "linejka
prokrutki",...
Izvestny sleduyushchie toolkit'y:
Xaw -
Anthena Widgets. Ochen' cherno-belyj, ochen' ploskij,
ves'ma nebogatyj. Zato - besplatnyj. Posmotrite, kak
vyglyadyat programmy xterm, xedit, xman. Oni sdelanny
na Xaw.
xview -
Nabor bibliotek i ob®ektov, ispol'zovannyh v realiza-
cii nabora pol'zovatel'skih utilit Sun-ovskoj versii
X Windows - "Open Windows". Ves'ma simpatichno. Krug-
lye knopki, "shpricy-igolki" (zamechatel'naya veshch'!),
ochen' horosho produmannyj interfejs pol'zovatelya, v
tom chisle aktivno ispol'zuemaya treh-knopochnaya mysh'.
Ishodnye teksty bibliotek xview otkryty, predostavlya-
yutsya besplatno. Odnako nabor DeskSet - 15 pol'zova-
tel'skih utilit vhodyashchih v OpenWindows, sdelannyj na
biblioteke xview, SunSoft gotov predostavit' tol'ko
za platu. V binarnom vide - ves'ma deshevo ($100). V
ishodnyh tekstah - ves'ma dorogo ($200K)
Motif -
Biblioteka postavlyayutsya organizaciej OSF za ne sovsem
malen'kuyu platu. Ishodnye teksty bibliotek nedostup-
ny, libo chrezmerno dorogi. Knopki - kvadratnye, da i
voobshche Motif'ovskie prilozheniya do bezobraziya napomi-
nayut MS Windows (chto, IMHO, yavlyaetsya ser'eznym pres-
tupleniem)
V bor'be BSD i Unix V pobedil, kak izvestno, System V, a v voj-
ne kruglyh i kvadratnyh knopok vyigral Motif.
&dDKonfigurirovanie X Windows&d@
V Linux ispol'zuetsya X11 v realizacii XFree86.
CHtoby ego skonfigurirovat', vypolnite komandu
xf86config
&dDZapusk X Windows&d@.
Na nekotoryh mashinah on sam zapuskaetsya. A takzhe inogda
udaetsya zapustit' ego vruchnuyu komandami: startx i/ili openwin
Solaris:
1. Ustanovite peremennye okruzheniya:
OPENWINHOME=/usr/openwin export OPENWINHOME
LD_LIBRARY_PATH=/usr/openwin/lib export LD_LIBRARY_PATH
PATH=/usr/openwin/bin:$PATH export PATH
XAPPLERESDIR=/usr/openwin/lib/app-defaults export XAPPLERESDIR
2. Zapustite X Windows komandoj
openwin
"Normal'nye" Unix'y:
1. Ustanovite peremennye okruzheniya:
PATH=/usr/bin/X11:$PATH
XAPPLERESDIR=/usr/lib/X11/app-defaults
2. Zapustite X Windows komandoj
startx
"Nenormal'nye" Unix'y (Unixware).
Kogda registriruete pol'zovatelya, otvet'te Yes na vopros
"Hotite graficheskij DeskTop". Togda posle login'a X Windows
budet zapuskat'sya avtomaticheski. Esli vy prozevali, i otvetili
No, to nikakim osmyslennym sposobom zapustit' X Windows dlya
sebya vam ne udastsya.
&dDNastrojki pol'zovatel'skogo okruzheniya X Windows&d@
Pri nalichii pol'zovatel'skih nastroechnyh fajlov, lezhashchih v
domashnem kataloge pol'zovatelya, ispol'zuyutsya oni. Esli ih net,
ispol'zuyutsya standartnye, obshchestvennye, obychno lezhashchie v
kataloge /usr/lib/X11 ili /usr/openwin/lib
Personal'nye i obshchestvennye pol'zovatel'skie nastrojki
hranyatsya v fajlah:
$HOME/.Xdefaults
$HOME/.OWdefaults
/usr/lib/X11/Xdefaults
/usr/openwin/lib/Xdefaults
/usr/openwin/lib/app-defaults/*
Posle lyubyh ispravlenij fajl s resursami neobhodimo perezachitat':"
xrdb -merge .Xdefaults
Okruzhenie (desktop) - t.e. programmy, kotorye startuyut
avtomaticheski pri zapuske X Windows nahoditsya v fajlah:
Solaris:
$HOME/.openwin-init
/usr/openwin/lib/openwin-init
"Normal'nnye" X windows:
$HOME/.xinitrc
/usr/lib/X11/xinit/xinitrc
Nastrojki window-manager'a - t.e. - povedenie okon,
menyushki pol'zovatelya, raskladka komand na klavishi myshki, ...
Solaris:
$HOME/.openwin-menu
$HOME/.openwin-menu-*
/usr/openwin/lib/openwin-menu
/usr/openwin/lib/openwin-menu-*
Linux
$HOME/.fvwmrc
/usr/lib/X11/fvwm/system.fvwmrc
.
&dDRedaktor VI. Spisok komand&d@
&dDREZHIMY&d@: Vvoda == ESC ====> Komandnyj == :Q ==> Redaktora ed
^ | ^ |
+----aAiIcCrRs <---+ +----- vi -------+
&dD &d@ &dDPEREMESHCHENIE PO FAJLU&d@
{strelki},hjkl
^U/^D tabulyaciya vverh/vniz
^F/^B stranicu vniz/vverh
^E/^Y podvinut'sya na stroku vniz/vverh
w/b/e vpered/nazad na slovo/v konec slova
W/B/E vpered/nazad na slovo/v konec oprobelennogo slova
(/) nazad/vpered na predlozhenie
{/} nazad/vpered na abzac
[[/]] nazad/vpered na funkciyu ili sekciyu
% najti parnuyu skobku ( ili {
{n}G na stroku {n}
{n}| v kolonku {n}
H/M/L v nachalo/seredinu/konec ekrana
z/z./z- tekushchuyu stroku v nachalo/seredinu/konec ekrana
^/$/0 nachalo/konec stroki
&dD &d@ &dDREDAKTIROVANIE TEKSTA&d@
x unichtozhit' simvol
X zaboj
J skleit' stroki
&dD &d@ &dDV REZHIMY VVODA&d@
a/i / A/I vstavka za/pered _ / koncom/nachalom stroki
R rezhim zameny
r bukva na bukvu
s bukva na bukvy
o/O vstavit' stroku pod/nad _
C$ Zamenit' konec stroki
&dD &d@ &dDINFORMACIYA&d@
^G o tekushchem fajle i stroke
&dD &d@ &dDOTKATKA&d@
u otkatka (odna)
^L/^R pererisovat'
&dD &d@ &dDREDAKTIROVANIE V REZHIME VVODA&d@
ESC vernut'sya v komandnyj rezhim
Zaboj Zaboj
^W/^U Ubrat' slovo/Ubrat' stroku
^V Vstavit' CRTL-simvol[y]
&dD &d@ &dDOPERATORY S POZICIONIROVANIEM&d@
p/P vspomnit' fragment za/pered _
{n} ["bukva_bufer] "komanda" {m}"komanda pozicionirovaniya"
ves' fragment zapominaetsya! ili povtor komandy dlya stroki
d unichtozhat' fragment
y zapominat' frag
c zamenit' fragment (==> v rezhim vvoda )
&dD<&d@/&dD>&d@ sdvinut' vlevo/vpravo
! komanda propustit' fragment cherez fil'tr
&dD &d@ &dDPRIMERY&d@
7yy zapomnit' 7 strok v neimenovannom bufere
"aAd{ dobavit' k buf a s udaleniem ot _ do nachala abzaca
!G sort otsortirovat' stroki ot kursora i do konca
&dD &d@ &dD"MAKROKOMANDY"&d@
:map klavisha_imya_makro telo_makrokomandy {CR}
:map! klavisha_imya_makro telo_makrokomandy {CR} - v rezhime vvoda
:ab sokrashchenie sokrashchaemyj_tekst {CR} - v rezhime vvoda
&dD &d@ &dDPOISK&d@
?stroka iskat' vverh
/stroka iskat' vniz
n povtorit' poisk
N vernut'sya na poslednyuyu najdennuyu stroku
&dD &d@ &dDPOISK_S_ZAMENOJ&d@
:s/reg_vyrazh/zamena/gc - global'nyj s podtverzhdeniem
:Q/vi vhod / vyhod v rezhim ed
:g/stroka - postavit' vizual'nyj fil'tr
:+5 dvizhenie po fajlu
&dD &d@ &dDREDAKTOR_ED. Vhod ":" (nadolgo "Q") Vyhod "CR" / (VI)&d@
^^ Perejti v al'ternativnoe okno
:[1,$] w [>>] [file] zapisat' v file [ot 1 do $ stroki]
:q[!] zakonchit' seans [forsirovanno]
:[15]r [file] ili [!komanda] vstavit' posle [15] str
:e redaktirovat' novyj fajl
:n redaktirovat' sleduyushchij fajl
:sh vyjti v Shell
:! komanda zapustit' na vypolnenie Shellom
&dD &d@ &dDUSTANOVKA REZHIMOV VI&d@
:set nu / nonu numerovat'/nenumerovat' stroki
:set smd{CR} pokazyvat' tekushchij rezhim
EXINIT="konfiguracionnye komandy" - peremennaya okruzheniya
.exrc - fajl s komandami konfiguracii
.
&dDKak podklyuchit' russkie fonty k komp'yuteru s X11&d@
1. Sozdaem katalog cyrfonts. Kopiruem tuda fajly *.bdf ili *.pcf
mkdir cyrfonts
cp *.bdf *.pcf cyrfonts
Zamechanie: predpochtitel'no dobyt' fonty v formate PCF a ne
BDF Problema v tom, prilozhenie zakazyvaet razmer fonta,
kotorogo u X ili FONT-servera net, to FONT-server pytaetsya
skalirovat' i v sluchae .BDF pogibaet i ubivaet vse, chto pod nim
zapushcheno. Konvertirovat' bdf-fonty mozhno komandoj bdftopcf.
2. V kataloge s fontami sozdaem oglavlenie fontov dlya
X-server'a : fonts.dir
cd cyrfonts
mkfontdir
3. Ukazyvaem X-server'u, chtob on bral fonty iz nashego kataloga
xset +fp $HOME/cyfonts
xset fp rehash
4. Pol'zuemsya russkimi fontami.
xterm -fn koi9x15
mailtool -fn koi6x10
i t.d.
&dDCHtoby russkie fonty vklyuchalis' i nahodilis' po umolchaniyu&d@
5. Do zapuska X-Windows ustanovit' peremennuyu okruzheniya FONTPATH
Esli u vas Bourne Shell /bin/sh ili bash ili ksh
FONTPATH=$HOME/cyrfonts: export FONTPATH
Esli sud'ba ugorazdila pol'zovat'sya C-Shell /bin/csh ili tcsh
setenv FONTPATH $HOME/cyrfonts:
6. Ili skopirovat' fonty v direktoriyu so standartnymi fontami.
cp *.bdf /usr/lib/X11/fonts/misc
cd /usr/lib/X11/fonts/misc
mkfontdir
xset fp rehash
7. Esli u vas XFree, to dobavit' strochku v fajl /etc/X11/XF86Config
FontPath "/home/yourname/cyrfonts/"
8. Ustanovit' font po umolchaniyu v svoem .Xdefaults fajle.
Dobavit' v fajl .Xdefaults takie strochki:
font.name: koi9x15
icon.font.name: koi6x10
XTerm*font: koi6x10
XTerm*VT100*font1: koi6x10
XTerm*VT100*font2: koi8x13
XTerm*VT100*font3: misc16
XTerm*VT100*font4: misc24
XTerm*VT100*font5: demos8x14
XTerm*VT100*font6: demos8x16
emacs.font: koi9x15
emacs.default_font: koi9x15
&dDEsli u vas SunOs 4.1.1 i, sootvetstvenno, NeWS&d@
Togda vsya vysheopisannaya procedura ne srabotaet. U NeWS
sovershenno sobstvennyj format fontov.
1. Preobrazuem fonty v format NeWS
convertfont *.bdf
2. Sozdaem oglavlenie dlya NeWS server'a
bldfamily
3. Podklyuchaem fonty v tochnosti, kak v standartnom X11
xset +fp `pwd` # Dopolnyaem katalog, podklyuchaem fonty.
xset fp rehash # CHtob server perezachital katalogi s fontami
vse.
Eshche mozhno v fajl Synonims.list votknut' strochku s aliasami.
Inache fonty budut brat'sya tol'ko po imeni fajlov.
&dDRedaktirovanie fontov.&d@
Nekotorye komplektty X-Windows imeyut redaktor fontov. On mozhet nazyvat'sya
xfed, fontedit, xfd. Esli u vas takovogo net, poprobujte najti ishodniki.
xfed font.bdf
convertfont -v font poluchaem font.vfp
fontedit font.vfp
zatem convertfont -b ?? font.vfp i poluchaem font.ff
&dDPodklyuchenie russkoj klaviatury v X-Windows&d@
Dostan'te fajly s raskladkoj klaviatury. (Ih mozhno najti vo
mnogih mestah, v chastnosti zdes'). Vypolnite komandu
xmodmap fajl-s-raskladkoj.xmm
Pereklyuchatel' rus/lat - klavisha CapsLock
CHtoby otklyuchit' russkuyu klaviaturu, vypolnitte komandu
xmodmap default.xmm
&dDPodklyuchenie russkoj klaviatury v XFree86&d@
XF86Config:
Section Keyboard
LeftAlt Meta
AltGr ModeShift
Right_Ctl ModeLock
ScrollLock ScrollLock
EndSection
Veshaet pereklyuchatel' na pravyj Ctrl, pri etom eshche i lampochka
CapsLock budet zagorat'sya.
&dDPereklyuchatel' kirilicy v XFree86 3.2.2&d@
V svezhej versii Xfree_3.3.2