Oracle وحي Database 11g Release 2 is not certified to run on غير مصدقة قاعدة البيانات 11g الإصدار 2 لتشغيل على Fedora فيدورا 13 (Goddard) but I wanted to use it to debug a problem with a particular application which used this database. 13 (غودارد) ولكني أردت أن استخدامه لتصحيح المشكلة مع تطبيق معين التي تستخدم قاعدة البيانات هذه. I checked on the Internet for details about how to install this version of the Oracle database on Fedora 13 but did not come across comprehensive instructions. راجعت على شبكة الانترنت للحصول على تفاصيل حول كيفية تثبيت هذا الإصدار من قاعدة بيانات أوراكل على فيدورا 13 ولكن لم يأت عبر تعليمات شاملة. I therefore decided to write this post as a guide for others who may also wish to install this database on Fedora 13. ولذلك قررت أن أكتب هذا المنصب بمثابة دليل للآخرين الذين قد يرغبون أيضا إلى تثبيت قاعدة البيانات هذه على فيدورا 13.
First of all you need to add a number of kernel parameters to /etc/sysctl.conf if they do not already exist in this file or have values less then what is shown here. أولا وقبل كل شيء بحاجة إلى إضافة عدد من المعلمات نواة ل/ sysctl.conf / الخ إذا لم تكن موجودة بالفعل في هذا الملف أو تحتوي على قيم أقل من ما يتم عرضه هنا. These are minimum required values by the way; they can be higher. هذه هي الحد الأدنى من القيم المطلوبة من جانب الطريق ، بل يمكن أن تكون أعلى.
fs.aio-max-nr = 1048576 fs.file-max = 6815744 kernel.shmall = 2097152 kernel.shmmax = 536870912 kernel.shmmni = 4096 # semaphores: semmsl, semmns, semopm, semmni kernel.sem = 250 32000 100 128 net.ipv4.ip_local_port_range = 9000 65500 net.core.rmem_default=262144 net.core.rmem_max=4194304 net.core.wmem_default=262144 net.core.wmem_max=1048586
Compared to مقارنة Sybase ASE سايبيس بورصة عمان which only requires kernel.shmmax , an Oracle database requires significantly more kernel parameter tweeking. الأمر الذي يتطلب فقط kernel.shmmax ، قاعدة بيانات أوراكل يتطلب أكثر بكثير tweeking المعلمة النواة.
The current value of a kernel parameter can be displayed using the following command: يمكن عرض القيمة الحالية للمعلمة النواة باستخدام الأمر التالي :
# /sbin/sysctl -a | grep
If you do not want to reboot your system, just execute the following command to update the kernel with the new parameters: إذا كنت لا تريد إعادة تشغيل النظام الخاص بك ، فقط تنفيذ الأمر التالي لتحديث النواة مع المعلمات الجديد :
# /sbin/sysctl -p
You need to install a number of software packages on your system if the packages are not already installed. تحتاج إلى تثبيت عدد من حزم البرمجيات على النظام الخاص بك إذا لم يتم تثبيت حزم بالفعل. If you have installed the Development Tools package group, the majority of the necessary packages will already be installed. قمت بتثبيت حزمة تطوير مجموعة أدوات ، وغالبيتهم من الإرادة اللازمة حزم إذا بالفعل يتم تثبيتها. Install the Development Tools package group and the following packages if not already installed: تثبيت حزمة أدوات تطوير مجموعة والحزم التالية إذا لم يتم تركيبه بالفعل :
- binutils binutils
- libaio, libaio-devel libaio ، libaio - التنمية)
- ksh شلن كيني
- sysstat sysstat
- unixODBC, unixODBC-devel unixODBC ، unixODBC - التنمية)
- compat-libstdc++-33 المتوافق - libstdc + + -33
Next, you need to modify PAM (Plugable Authentication Module) to increase session limits for the oracle user which we will create later on. وبعد ذلك ، تحتاج إلى تعديل حزب الأصالة والمعاصرة (Plugable مصادقة الوحدة) لزيادة حدود جلسة للمستخدم أوراكل التي سنقوم خلق في وقت لاحق. Add the following line to /etc/pam.d/login if it does not already exist: أضف السطر التالي إلى / الخ / pam.d / الدخول إذا كان غير موجود بالفعل :
session required pam_limits.so
and add the following lines to /etc/security/limits.conf : وإضافة الأسطر التالية إلى / الخ / الأمن / limits.conf :
oracle soft nproc 2047
oracle hard nproc 16384
oracle soft nofile 1024
oracle hard nofile 65536
Note that this file may not currently exist on your system. لاحظ أن هذا الملف قد لا تكون موجودة حاليا على نظامك. You may have to create it. قد تضطر إلى إنشائه.
Now create a number of new users and groups as follows: الآن إنشاء عدد من المستخدمين الجدد ومجموعات على النحو التالي :
groupadd oinstall groupadd dba groupadd oper groupadd asmadmin useradd -g oinstall -G dba,oper,asmadmin oracle
and set a password for the new oracle user. ووضع كلمة سر للمستخدم أوراكل جديد.
You must disable Secure Linux (SELINUX) while installing the database. يجب عليك تعطيل تأمين لينكس (SELINUX) أثناء تثبيت قاعدة البيانات. Edit /etc/selinux/config as follows: تحرير / الخ / selinux / التكوين على النحو التالي :
SELINUX=disabled
and execute setenforce off . وتنفيذ setenforce قبالة.
Edit the /etc/redhat-release file replacing the current release information – Fedora release 13 (Goodwin) – with the following: تحرير / الخ ملف ريدهات النشر / استبدال الإصدار الحالي من المعلومات -- الافراج عن فيدورا 13 (غودوين) -- بما يلي :
redhat release 5
You must create the directories in which the Oracle database software will be installed. يجب إنشاء الدلائل التي سيتم تثبيت برنامج قاعدة بيانات أوراكل. In our example, the directory is /app/oracle and the SID is dbhome_1 . في مثالنا ، والدليل هو / وام / أوراكل ، وسيد هو dbhome_1.
mkdir -p /app/oracle/product/11.2.0/dbhome_1 chown -R oracle:oinstall /app chmod -R 775 /app
The remaining steps require that you are logged in as oracle . الخطوات المتبقية تتطلب تسجيل كما كنت في أوراكل. As user oracle , download Oracle Database 11g R2 from كما أوراكل المستخدم ، تحميل قاعدة بيانات أوراكل 11g R2 من Oracle وحي and place the two files you downloaded into the same subdirectory. ووضع الملفين الذي قمت بتحميله في الدليل نفسه. I placed them in ~oracle/tmp but you are free to choose any subdirectory. أنا وضعت لهم في أوراكل ~ / tmp ولكن أنت حر في اختيار أي دليل فرعي. Then unzip both files. ثم بفك كلا الملفين.
# unzip linux.x64_11gR2_database_1of2.zip # unzip linux.x64_11gR2_database_2of2.zip # ls -d */ database/ #
A single subdirectory called database is created. إنشاء قاعدة بيانات تسمى الدليل هو واحد. This subdirectory contains the unzipped files. هذا الدليل يحتوي على الملفات محلول.
Assuming that the user oracle is using the bash shell, add the following lines to the oracle user's .bash_profile file, changing ORACLE_HOSTNAME , ORACLE_HOME , etc. as required to suit your particular requirements: على افتراض أن أوراكل المستخدم باستخدام قذيفة باش ، أضف الأسطر التالية للمستخدم أوراكل. bash_profile الملف ، وتغيير ORACLE_HOSTNAME ، ORACLE_HOME ، وما إلى ذلك كما هو مطلوب لتناسب الاحتياجات الخاصة بك خاصة :
# Oracle Settings
TMP=/tmp; export TMP
TMPDIR=$TMP; export TMPDIR
ORACLE_HOSTNAME=ultra.xfpmurphy.com; export ORACLE_HOSTNAME
ORACLE_UNQNAME=dbhome_1; export ORACLE_UNQNAME
ORACLE_BASE=/app/oracle; export ORACLE_BASE
ORACLE_HOME=$ORACLE_BASE/product/11.2.0/dbhome_1; export ORACLE_HOME
ORACLE_SID=dbhome_1; export ORACLE_SID
ORACLE_TERM=xterm; export ORACLE_TERM
PATH=/usr/sbin:$PATH; export PATH
PATH=$ORACLE_HOME/bin:$PATH; export PATH
LD_LIBRARY_PATH=$ORACLE_HOME/lib:/lib:/usr/lib; export LD_LIBRARY_PATH
CLASSPATH=$ORACLE_HOME/JRE:$ORACLE_HOME/jlib:$ORACLE_HOME/rdbms/jlib; export CLASSPATH
if [ $USER = "oracle" ]; then
if [ $SHELL = "/bin/ksh" ]; then
ulimit -p 16384
ulimit -n 65536
else
ulimit -u 16384 -n 65536
fi
fi
If you are using a different shell, you will need to set up these enviromental variables and limits using the appropriate shell syntax and shell initialization file. إذا كنت تستخدم قذيفة مختلفة ، وسوف تحتاج لتشكيل هذه المتغيرات البيئية والحدود باستخدام بناء الجملة المناسبة وقذيفة قذيفة ملف التهيئة. You may also need to set the NLS_LANG environmental variable to match your country, language and desired character set, eg germany_germany.we8iso8859p1 . قد تحتاج أيضا لتعيين متغير البيئة NLS_LANG لمطابقة بلدكم واللغة ومجموعة الأحرف المطلوب ، على سبيل المثال germany_germany.we8iso8859p1.
Oracle databases are installed using the Oracle Universal Installer (OUI) which is GUI-based and uses the X Window system. يتم تثبيت قواعد بيانات أوراكل باستخدام أوراكل العالمي المثبت (أوي) الذي هو واجهة المستخدم الرسومية القاعدة ويستخدم نظام النافذة العاشر. There is no equivalent command line installer. لا يوجد سطر الأوامر مكافئ المثبت. You may need to set the your DISPLAY environmental variable and use the xhost utility to configure server access. قد تحتاج إلى تعيين متغير البيئة الخاص عرض واستخدام الأداة المساعدة لتكوين xhost الوصول إلى الخادم. Start OUI by issuing the runInstaller command in the ~oracle/tmp/database directory. بدء أوي بإصدار runInstaller الأمر في أوراكل ~ / tmp / دليل قاعدة البيانات.
If OUI cannot determine your IP address because it is not in /etc/hosts then you will get the following error: إذا أوي لا يمكن تحديد عنوان بروتوكول الإنترنت لأنها ليست في / الخ / تستضيف ثم ستحصل الخطأ التالي :
[INS-06101] IP address of localhost could not be determined
If you see an error message similar to one of the following: “Failed to connect to server”, “Connection refused by server” or “Can't open display”, then you have a problem with X Windows, either with permissions or the DISPLAY variable. وإذا كنت ترى رسالة خطأ مشابهة لما أحد الإجراءات التالية : "فشل الاتصال" الملقم "اتصال رفض من قبل ملقم" أو "لا يمكن فتح" العرض ، ثم لديك مشكلة مع ويندوز إكس ، إما مع أو أذونات عرض متغير. I am going to assume you know how to fix such problems. وانا ذاهب الى تولي تعرف كيفية إصلاح هذه المشاكل.
After answering a few basic questions, you should see the following Typical Install Configuration screen: بعد الإجابة على بعض الأسئلة الأساسية ، ويجب أن نرى ما يلي نموذجي الشاشة تكوين تثبيت :

Check the settings carefully before proceeding further. تحقق من إعدادات بعناية قبل المضي قدما.
Next OUI checks that the installed software development and runtime packages are correct: الشيكات القادمة أوي أن تطوير البرمجيات وتثبيت حزم وقت صحيحة :

Fedora 13 will fail all these checks. سوف تفشل فيدورا 13 كل هذه الشيكات. Just tick the check box Ignore All on the top right hand to ignore these errors. ضع علامة فقط خانة الاختيار تجاهل الكل على أعلى جهة الحق في تجاهل هذه الأخطاء. So long as you have the latest version of each of these packages installed, all will be fine. وطالما كان لديك إصدار أحدث من كل من هذه الحزم المثبتة ، وجميع ما يرام. Note that you do not need to install pdksh (Public Domain Korn Shell) if you have ksh installed. لاحظ أنك لا تحتاج إلى تثبيت pdksh (المجال العام كورن شل) إذا قمت بتثبيت وشلن كيني.
During the installation, OUI will popup a dialog window advising you that an error has occurred with ins_emagent.mk . أثناء التثبيت ، سوف أوي منبثقة نافذة الحوار إعلامك الذي حدث خطأ مع ins_emagent.mk. See below: انظر أدناه :

This error is due to a change in the GCC linker in Fedora 13. هذا الخطأ هو نتيجة لتغيير في دول مجلس التعاون الخليجي رابط في فيدورا 13. The announcement is ويأتي هذا الإعلان here هنا . . The fix is to edit $ORACLE_HOME/sysman/lib/ins_emagent.mk , search for the line $(MK_EMAGENT_NMECTL) and replace the line with $(MK_EMAGENT_NMECTL) -lnnz11 as shown above. الإصلاح هو لتحرير $ ORACLE_HOME / sysman / ليب / ins_emagent.mk ، ابحث عن السطر $ (MK_EMAGENT_NMECTL) ، واستبدال خط مع $ (MK_EMAGENT_NMECTL) ، lnnz11 كما هو مبين أعلاه.
After saving the changed file, select the Retry option, and the install should successfully continue. بعد حفظ الملف تغيير ، حدد خيار إعادة المحاولة ، وتثبيت ينبغي أن تستمر بنجاح. Eventually you should see the Database Configuration Assistant screen as shown below: في نهاية المطاف يجب أن تشاهد شاشة مساعد تكوين قاعدة البيانات كما هو مبين أدناه :

Do not ignore the Password Management button; press it and change the passwords for SYS and SYSTEM . لا نتجاهل زر إدارة كلمة المرور ، اضغط عليه وتغيير كلمات السر لتميز الكلية والنظام.
You are now ready to do a basic smoketest of the installed database software. انت الآن على استعداد للقيام smoketest الأساسية للبرنامج قواعد البيانات المثبتة.
$ id uid=502(oracle) gid=501(oinstall) groups=501(oinstall),502(dba),503(oper),504(asmadmin) $ cd $ORACLE_HOME $ lsnrctl start LSNRCTL for Linux: Version 11.2.0.1.0 - Production on 06-AUG-2010 20:47:56 Copyright (c) 1991, 2009, Oracle. All rights reserved. Starting /app/oracle/product/11.2.0/dbhome_1/bin/tnslsnr: please wait... TNSLSNR for Linux: Version 11.2.0.1.0 - Production System parameter file is /app/oracle/product/11.2.0/dbhome_1/network/admin/listener.ora Log messages written to /app/oracle/diag/tnslsnr/ultra/listener/alert/log.xml Listening on: (DESCRIPTION=(ADDRESS=(PROTOCOL=ipc)(KEY=EXTPROC1521))) Listening on: (DESCRIPTION=(ADDRESS=(PROTOCOL=tcp)(HOST=ultra.xxxxxxxxxx.com)(PORT=1521))) Connecting to (DESCRIPTION=(ADDRESS=(PROTOCOL=IPC)(KEY=EXTPROC1521))) STATUS of the LISTENER ------------------------ Alias LISTENER Version TNSLSNR for Linux: Version 11.2.0.1.0 - Production Start Date 06-AUG-2010 20:47:58 Uptime 0 days 0 hr. 0 min. 0 sec Trace Level off Security ON: Local OS Authentication SNMP OFF Listener Parameter File /app/oracle/product/11.2.0/dbhome_1/network/admin/listener.ora Listener Log File /app/oracle/diag/tnslsnr/ultra/listener/alert/log.xml Listening Endpoints Summary... (DESCRIPTION=(ADDRESS=(PROTOCOL=ipc)(KEY=EXTPROC1521))) (DESCRIPTION=(ADDRESS=(PROTOCOL=tcp)(HOST=ultra.xxxxxxxxxx.com)(PORT=1521))) The listener supports no services The command completed successfully $ $ emctl start dbconsole Oracle Enterprise Manager 11g Database Control Release 11.2.0.1.0 Copyright (c) 1996, 2009 Oracle Corporation. All rights reserved. https://ultra.xxxxxxxxxxx.com:1158/em/console/aboutApplication Starting Oracle Enterprise Manager 11g Database Control ...... started. ------------------------------------------------------------------ Logs are generated in directory /app/oracle/product/11.2.0/dbhome_1/ultra.xxxxxxxxxx.com_orcl/sysman/log $ $ sqlplus / as sysdba SQL*Plus: Release 11.2.0.1.0 Production on Fri Aug 6 20:50:12 2010 Copyright (c) 1982, 2009, Oracle. All rights reserved. Connected to an idle instance. SQL> startup ORACLE instance started. Total System Global Area 839282688 bytes Fixed Size 2217992 bytes Variable Size 524290040 bytes Database Buffers 306184192 bytes Redo Buffers 6590464 bytes Database mounted. Database opened. SQL> exit Disconnected from Oracle Database 11g Enterprise Edition Release 11.2.0.1.0 - 64bit Production With the Partitioning, OLAP, Data Mining and Real Application Testing options $
If you have got this far with your installation of Oracle 11g, all is well. إذا كنت قد حصلت على هذا الآن مع تثبيت أوراكل 11g ، كل شيء على ما يرام. The core Oracle 11g database software is installed and working. يتم تثبيت برنامج قاعدة البيانات أوراكل الأساسية 11g والعمل. You may have some tweaking to do for your particular requirements but that is outside the scope of this post. قد يكون لديك بعض التغيير والتبديل على القيام لتلبية احتياجات معينة ولكن هذا هو خارج نطاق هذه الوظيفة. Note the listener supports no services message; we will address this shortly. لاحظ المستمع تؤيد أية رسالة الخدمات ؛ سنتطرق إلى هذا في وقت قريب.
First, as root , we need to fix up a couple of files. أولا ، كما الجذر ، نحن بحاجة إلى إصلاح عن اثنين من الملفات. Edit the /etc/oratab file setting the restart flag for each instance to Y : تحرير / الخ / oratab ملف إعداد إعادة العلم لكل مثيل لص :
DB11G:/u01/app/oracle/product/11.2.0/dbhome_1:Y
Edit the /etc/redhat-release file to restore the original release information: تحرير / ريدهات الخ / النشر الملف لاستعادة المعلومات الإصدار الأصلي :
Fedora release 13 (Goodwin)
At this stage you should be able to invoke the Oracle sqldeveloper GUI by invoking $ORACLE_HOMEsqldeveloper/sqldeveloper/bin/sqldeveloper . في هذه المرحلة يجب أن تكون قادرة على التمسك sqldeveloper أوراكل واجهة المستخدم الرسومية من خلال التذرع $ ORACLE_HOMEsqldeveloper / sqldeveloper / بن / sqldeveloper. Once you have configured a valid connection, you should see a screen similar to this: وبمجرد الانتهاء من تكوين اتصال صالحة ، يجب أن تشاهد شاشة مشابهة لهذه :

If you configure listener.ora you can also access the Oracle Enterprise Console via the Web as shown here: إذا قمت بتكوين listener.ora يمكنك أيضا الوصول إلى المؤسسة أوراكل وحدة التحكم عن طريق الانترنت كما هو موضح هنا :

Here is what is in my listener.ora : هنا هو ما هو في listener.ora بلدي :
$ cat $ORACLE_HOME/admin/listener.ora
LISTENER =
(DESCRIPTION_LIST =
(DESCRIPTION =
(ADDRESS = (PROTOCOL = TCP)(HOST = ultra.xfpmurphy.com)(PORT = 1521))
)
)
SID_LIST_LISTENER =
(SID_LIST =
(SID_DESC =
(GLOBAL_DBNAME = DBHOME)
(ORACLE_HOME = /app/oracle/product/11.2.0/dbhome_1)
(SID_NAME = orcl)
)
)
ADR_BASE_FPM = /app/oracle
$
You will obviously have to use different values for HOST and possibly SID_NAME , ORACLE_HOME and GLOBAL_DBNAME . هل سيكون من الواضح لاستخدام قيم مختلفة عن المضيفة وربما SID_NAME ، ORACLE_HOME وGLOBAL_DBNAME.
To automatically start and shop the Oracle database during system startup and shutdown you need to place an appropriate script in the /etc/rc.d/init.d directory and symbolically link it to the appropriate rc directories. لبدء تلقائيا ومتجر قاعدة البيانات أوراكل أثناء بدء تشغيل النظام وإيقاف تحتاج لوضع السيناريو المناسب في / الخ / rc.d / init.d دليل وصلة رمزية لمناسبة الدلائل على اتفاقية روتردام. Here is a script to start or stop the Oracle database using dbinit : وهنا برنامج نصي لبدء تشغيل أو إيقاف قاعدة البيانات أوراكل باستخدام dbinit :
#!/bin/bash
#
# init file for starting and stopping Oracle 11g database using dbstart/dbstop
#
# chkconfig: 35 80 30
# description: Oracle database startup and shutdown script
#
. /etc/rc.d/init.d/functions
ORACLE_BASE=/app/oracle
ORACLE_HOME=$ORACLE_BASE/product/11.2.0/dbhome_1
ORACLE_SID=dbhome_1
case "$1" in
start)
echo -n $"Starting Oracle DB:"
su - oracle -c "$ORACLE_HOME/bin/dbstart $ORACLE_HOME"
echo "OK"
;;
stop)
echo -n $"Stopping Oracle DB:"
su - oracle -c "$ORACLE_HOME/bin/dbshut $ORACLE_HOME"
echo "OK"
;;
*)
echo $"Usage: $0 {start|stop}"
esac
and here is an alternative script to start and stop the Oracle database using Oracle Enterprise Manager Database Control: وهنا برنامج نصي بديل لبدء وإيقاف قاعدة البيانات أوراكل باستخدام أوراكل قاعدة بيانات لمراقبة إدارة المؤسسة :
#!/bin/bash
#
# init file for starting and stopping Oracle 11g database using emctl
#
# chkconfig: 35 80 30
# description: Oracle database startup and shutdown script using Enterprise manager console
#
. /etc/rc.d/init.d/functions
ORACLE_BASE=/app/oracle
ORACLE_HOME=$ORACLE_BASE/product/11.2.0/dbhome_1
ORACLE_SID=dbhome_1
case "$1" in
start)
echo -n $"Starting Oracle Enterprise Manager Database Console:"
su - oracle -c "$ORACLE_HOME/bin/emctl start dbconsole"
echo "OK"
;;
stop)
echo -n $"Stopping Oracle Enterprise Manager Database Console:"
su - oracle -c "$ORACLE_HOME/bin/emctl stop dbconsole"
echo "OK"
;;
*)
echo $"Usage: $0 {start|stop}"
esac
I assume that you know how to install a new init script so I am not going to describe the process here. وأفترض أنك تعرف كيفية تثبيت البرنامج النصي الجديد الحرف الأول حتى وأنا لن تصف عملية هنا.
Please let me know if I left out anything important that you feel would of been of help to you in installing Oracle 11g on Fedora 13 and I will add it to this post. واسمحوا لي ان اعرف ما اذا كنت استبعد أي شيء المهم أن تشعر أن من كان عونا لكم في تثبيت أوراكل 11g على فيدورا 13 وأضيف إلى هذا المنصب.























Hi Finnbarr مرحبا Finnbarr
Very helpful description. وصف مفيدة جدا. Thanks a lot. شكرا جزيلا. Sole problem I had, was the SID, which was not consistent in your description. المشكلة الوحيدة كانت لي ، كان سيد ، الذي لا يتفق في وصفك. Would be helpful to use orcl only. سيكون من المفيد استخدام رمز تداولها فقط.
And a another small problem I had was وهناك مشكلة أخرى صغيرة قد كنت
Error listening on: (DESCRIPTION=(ADDRESS=(PROTOCOL=IPC)(KEY=EXRTPROC1521))) الاستماع على خطأ : (وصف = (عنوان = (البروتوكول = التصنيف الدولي للبراءات) (مفتاح = EXRTPROC1521)))
TNS-12555: TNS:permission denied ونفى تي - 12555 : تي : إذن
TNS-12560: TNS:protocol adapter error تي - 12560 : تي : بروتوكول خطأ محول
TNS-00525: Insufficient privilege for operation تي - 00525 : غير كافية لتشغيل امتياز
Linux Error: 1: Operation not permitted لينكس خطأ : 1 : عملية غير مسموح
Could solve this using this post: http://forums.oracle.com/forums/thread.jspa?threadID=931431, by replacing the KEY to EXRTPROC0 ويمكن حل هذا باستخدام هذا المنصب : http://forums.oracle.com/forums/thread.jspa؟threadID=931431 ، عن طريق استبدال مفتاح الى EXRTPROC0
Final wish: Maybe, you can also describe how to install a new init script. أتمنى النهائي : ربما ، يمكنك أيضا وصف كيفية تثبيت البرنامج النصي الجديد الحرف الأول. Then, your tutorial is complete in all terms :-) بعد ذلك ، البرنامج التعليمي الخاص في اكتمال جميع الشروط :-)